Overseer partly worked
This commit is contained in:
parent
ebdd8275a6
commit
a32af3237f
@ -10,6 +10,10 @@ ID_DUPLICATE_MODEL = wx.NewId()
|
|||||||
ID_DELETE_MODEL = wx.NewId()
|
ID_DELETE_MODEL = wx.NewId()
|
||||||
ID_PROCESS_MODEL = wx.NewId()
|
ID_PROCESS_MODEL = wx.NewId()
|
||||||
|
|
||||||
|
class MyTreeListCtrl(wx.gizmos.TreeListCtrl):
|
||||||
|
def Refresh(self, erase, rect):
|
||||||
|
wx.gizmos.TreeListCtrl.Refresh(False, rect)
|
||||||
|
|
||||||
class MainFrame (wx.Frame):
|
class MainFrame (wx.Frame):
|
||||||
|
|
||||||
def __init__(self, parent):
|
def __init__(self, parent):
|
||||||
@ -27,8 +31,10 @@ class MainFrame (wx.Frame):
|
|||||||
bSizer4 = wx.BoxSizer(wx.VERTICAL)
|
bSizer4 = wx.BoxSizer(wx.VERTICAL)
|
||||||
|
|
||||||
self.m_user_models = wx.gizmos.TreeListCtrl(self,
|
self.m_user_models = wx.gizmos.TreeListCtrl(self,
|
||||||
style = wx.TR_DEFAULT_STYLE | wx.TR_HIDE_ROOT | wx.TR_EDIT_LABELS)
|
#self.m_user_models = MyTreeListCtrl(self,
|
||||||
self.m_user_models.SetMinSize(wx.Size(-1,200))
|
#self.m_user_models = wx.TreeCtrl(self,
|
||||||
|
style = wx.TR_DEFAULT_STYLE | wx.TR_HIDE_ROOT | wx.TR_EDIT_LABELS | wx.TR_ROW_LINES)
|
||||||
|
self.m_user_models.SetMinSize(wx.Size(-1, 200))
|
||||||
self.m_user_models.AddColumn("Model name")
|
self.m_user_models.AddColumn("Model name")
|
||||||
self.m_user_models.AddColumn("Status")
|
self.m_user_models.AddColumn("Status")
|
||||||
self.m_user_models.AddColumn("Progress")
|
self.m_user_models.AddColumn("Progress")
|
||||||
|
@ -64,47 +64,41 @@ class MainFrame(forms.MainFrame):
|
|||||||
self.server.Stop()
|
self.server.Stop()
|
||||||
self.Destroy()
|
self.Destroy()
|
||||||
|
|
||||||
# todo1 вменяемый цикл обхода!
|
|
||||||
def Overseer(self):
|
def Overseer(self):
|
||||||
|
try:
|
||||||
def SeeTheItem(item):
|
|
||||||
um = self.m_user_models
|
|
||||||
md = um.GetPyData(item)
|
|
||||||
print um.GetItemText(item)
|
|
||||||
job = md.job
|
|
||||||
if job:
|
|
||||||
t = os.path.basename(job.taskd.execpath)
|
|
||||||
p = job.percent * 100
|
|
||||||
print t, p
|
|
||||||
um.SetItemText(item, '{}: {:.2F}%'.format(t, p), 1)
|
|
||||||
|
|
||||||
child, cookie = um.GetFirstChild()
|
|
||||||
while child.IsOk():
|
|
||||||
SeeTheItem(child)
|
|
||||||
child, cookie = um.GetNextChild(child, cookie)
|
|
||||||
|
|
||||||
#try:
|
|
||||||
server = self.server
|
|
||||||
while True:
|
while True:
|
||||||
print 'cycle'
|
if True:
|
||||||
um = self.m_user_models
|
wx.MutexGuiEnter()
|
||||||
item = um.GetFirstVisibleItem()
|
#print '-- cycle --'
|
||||||
SeeTheItem(item)
|
um = self.m_user_models
|
||||||
|
#um.Freeze()
|
||||||
|
item = um.GetRootItem()
|
||||||
|
while item.IsOk():
|
||||||
|
md = um.GetPyData(item)
|
||||||
|
job = md.job if md else None
|
||||||
|
if job and job.IsRunning():
|
||||||
|
t = os.path.basename(job.taskd.execpath)
|
||||||
|
p = job.percent * 100
|
||||||
|
#print t, p
|
||||||
|
um.SetItemText(item, str(job.GetState()), 1)
|
||||||
|
um.SetItemText(item, '{}: {:.2F}%'.format(t, p), 2)
|
||||||
|
item = um.GetNext(item)
|
||||||
|
#um.Thaw()
|
||||||
|
wx.MutexGuiLeave()
|
||||||
time.sleep(0.5)
|
time.sleep(0.5)
|
||||||
#except:
|
except Exception, e:
|
||||||
# pass
|
print 'Error in overseer: ', e
|
||||||
|
|
||||||
def NewProject(self, project):
|
def NewProject(self, project):
|
||||||
# 1. загрузить спецификации модели
|
# 1. загрузить спецификации модели
|
||||||
# 2. создать одну модель по умолчанию
|
# 2. создать одну модель по умолчанию
|
||||||
model = project
|
model = project
|
||||||
um = self.m_user_models
|
um = self.m_user_models
|
||||||
root = um.AddRoot('')
|
root = um.AddRoot('Root')
|
||||||
data = task.DataDefinition(model)
|
data = task.DataDefinition(model)
|
||||||
|
|
||||||
child = um.AppendItem(root, 'Default')
|
child = um.AppendItem(root, 'Default')
|
||||||
um.SetPyData(child, data)
|
um.SetPyData(child, data)
|
||||||
um.SetItemText(child, '234', 1)
|
|
||||||
|
|
||||||
def SelectUserModel(self, model_def):
|
def SelectUserModel(self, model_def):
|
||||||
|
|
||||||
@ -169,6 +163,7 @@ class MainFrame(forms.MainFrame):
|
|||||||
md[param] = value
|
md[param] = value
|
||||||
|
|
||||||
def OnTest(self, event):
|
def OnTest(self, event):
|
||||||
|
|
||||||
um = self.m_user_models
|
um = self.m_user_models
|
||||||
id = um.GetSelection()
|
id = um.GetSelection()
|
||||||
md = um.GetItemPyData(id)
|
md = um.GetItemPyData(id)
|
||||||
@ -184,19 +179,10 @@ class MainFrame(forms.MainFrame):
|
|||||||
md = um.GetItemPyData(id)
|
md = um.GetItemPyData(id)
|
||||||
child = um.AppendItem(parent, title + ' Copy')
|
child = um.AppendItem(parent, title + ' Copy')
|
||||||
um.SetPyData(child, md.Copy())
|
um.SetPyData(child, md.Copy())
|
||||||
|
self.SetStatusText('Copy for "{}" created'.format(title), 0)
|
||||||
|
|
||||||
def OnIdle(self, event):
|
def OnIdle(self, event):
|
||||||
## server = self.server
|
|
||||||
## self.m_job_list.Freeze()
|
|
||||||
## self.m_job_list.Clear()
|
|
||||||
## with server.queue_lock:
|
|
||||||
## for j in server.jobs_queue:
|
|
||||||
## t = os.path.dirname(j.taskd.execpath)
|
|
||||||
## p = j.percent * 100.0
|
|
||||||
## self.m_job_list.Append('{}: {:.2}%'.format(t, p))
|
|
||||||
## self.m_job_list.Thaw()
|
|
||||||
pass
|
pass
|
||||||
#time.sleep(1)
|
|
||||||
|
|
||||||
#-----------------------------------------------------------------------------
|
#-----------------------------------------------------------------------------
|
||||||
# Приложение
|
# Приложение
|
||||||
|
@ -184,6 +184,7 @@ class Job:
|
|||||||
self.comment = ''
|
self.comment = ''
|
||||||
self.result = None
|
self.result = None
|
||||||
self.proc = None
|
self.proc = None
|
||||||
|
self.client_data = None
|
||||||
|
|
||||||
def ProcessMsg(self, msg):
|
def ProcessMsg(self, msg):
|
||||||
# разбираем полученный ответ
|
# разбираем полученный ответ
|
||||||
|
@ -79,7 +79,7 @@ def main():
|
|||||||
while l <= r:
|
while l <= r:
|
||||||
y = sin_taylor(l, d)
|
y = sin_taylor(l, d)
|
||||||
res.append([l, y])
|
res.append([l, y])
|
||||||
write(answer(round(l / r, 2)))
|
write(answer(l / r))
|
||||||
l += h
|
l += h
|
||||||
time.sleep(0.2)
|
time.sleep(0.2)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user