def OnInit(self): import DetachedFrame import __builtin__ import gettext from DomainInterface.DomainStructure import DomainStructure from DomainInterface.DomainBehavior import DomainBehavior __builtin__.__dict__['ICON_PATH']='icons' __builtin__.__dict__['ICON_PATH_16_16']=os.path.join(ICON_PATH,'16x16') __builtin__.__dict__['NB_HISTORY_UNDO']= 5 __builtin__.__dict__['DOMAIN_PATH']='Domain' __builtin__.__dict__['FONT_SIZE']=12 __builtin__.__dict__['_'] = gettext.gettext __builtin__.__dict__['LOCAL_EDITOR'] = False diagram = Container.Diagram() self.frame = DetachedFrame.DetachedFrame(None, -1, "Test", diagram) newPage = Container.ShapeCanvas(self.frame, wx.NewId(), name='Test') newPage.SetDiagram(diagram) getDiagramFromXML("Diagram.xml", canvas=newPage) #diagram.SetParent(newPage) self.frame.Show() return True
def AddEditPage(self, title, defaultDiagram = None): """ Adds a new page for editing to the notebook and keeps track of it. @type title: string @param title: Title for a new page """ ### title page list title_pages = map(lambda p: p.name, self.pages) ### occurrence of title in existing title pages c = title_pages.count(title) title = title+"(%d)"%c if c != 0 else title ### new page newPage = Container.ShapeCanvas(self, wx.NewId(), name=title) ### new diagram d = defaultDiagram or Container.Diagram() d.SetParent(newPage) ### diagram and background new page setting newPage.SetDiagram(d) ### print canvas variable setting self.print_canvas = newPage self.print_size = self.GetSize() self.pages.append(newPage) self.AddPage(newPage, title, imageId=0) self.SetSelection(self.GetPageCount()-1)
def makeSimulation(filename, T): """ """ import Container a = Container.Diagram() if a.LoadFile(filename): sys.stdout.write("\nFichier charge\n") try: master = Container.Diagram.makeDEVSInstance(a) #print "master -> " , master #print "a -> " , a except: return False else: sim = runSimulation(master, T) thread = sim.Run() # first_time = time.time() # while(thread.isAlive()): # new_time = time.time() # Printer(new_time - first_time) sys.stdout.write("\nTime : %s" % str(master.FINAL_TIME)) sys.stdout.write("\nFin.\n")
def makeJS(filename): """ """ import Container a = Container.Diagram() if a.LoadFile(filename): sys.stdout.write("\nFichier charge\n") master = Container.Diagram.makeDEVSInstance(a) addInner = [] liaison = [] model = {} labelEnCours = str(os.path.basename(a.last_name_saved).split('.')[0]) # path = os.path.join(os.getcwd(),os.path.basename(a.last_name_saved).split('.')[0] + ".js") # genere le fichier js dans le dossier de devsimpy # path = filename.split('.')[0] + ".js" # genere le fichier js dans le dossier du dsp charg�. #Position initial du 1er modele x = [40] y = [40] bool = True from Join import makeDEVSConf, makeJoin model, liaison, addInner = makeJoin(a, addInner, liaison, model, bool, x, y, labelEnCours) makeDEVSConf(model, liaison, addInner, "%s.js" % labelEnCours) else: return False
def OnInit(self): from . import DetachedFrame import builtins import gettext from .DomainInterface.DomainStructure import DomainStructure from .DomainInterface.DomainBehavior import DomainBehavior builtins.__dict__['ICON_PATH'] = 'icons' builtins.__dict__['ICON_PATH_16_16'] = os.path.join( ICON_PATH, '16x16') builtins.__dict__['NB_HISTORY_UNDO'] = 5 builtins.__dict__['DOMAIN_PATH'] = 'Domain' builtins.__dict__['FONT_SIZE'] = 12 builtins.__dict__['_'] = gettext.gettext builtins.__dict__['LOCAL_EDITOR'] = False diagram = Container.Diagram() self.frame = DetachedFrame.DetachedFrame(None, -1, "Test", diagram) newPage = Container.ShapeCanvas(self.frame, wx.NewIdRef(), name='Test') newPage.SetDiagram(diagram) path = os.path.join(os.path.expanduser("~"), 'Downloads', 'Watershed.xml') #path = os.path.join(os.path.expanduser("~"),'Downloads','example.xmlsestree') getDiagramFromXMLSES(path, canvas=newPage) #diagram.SetParent(newPage) self.frame.Show() return True
def LoadDiagram(self, l): """ Load diagram at the level l in the current canvas """ layers = self.GetLayers() canvas = self print("current level is", l, layers) if l in layers: dia = canvas.GetDiagramByLevel(l) canvas.SetCurrentLevel(l) sys.stdout.write("load diagram %d" % l) sys.stdout.write(str(self.layers)) else: dia = Container.Diagram() dia.SetParent(canvas) canvas.SetCurrentLevel(l) #canvas.SetDiagram(dia) print("New diagram at level %s" % l, self.layers) ### add new or update new attributes layers and current_layer to diagram setattr(dia, 'layers', canvas.GetLayers()) setattr(dia, 'current_level', canvas.GetCurrentLevel()) setattr(dia, 'DAM', canvas.GetDAM()) setattr(dia, 'UAM', canvas.GetUAM()) ### add new or update new attributes layers and current_layer to diagram at level 0 d0 = canvas.GetDiagramByLevel(0) setattr(d0, 'layers', canvas.GetLayers()) setattr(d0, 'current_level', canvas.GetCurrentLevel()) setattr(d0, 'DAM', canvas.GetDAM()) setattr(d0, 'UAM', canvas.GetUAM()) #======================================================================= # ### Add Attributes for dump only for ContainerBlock #======================================================================= # frame = canvas.GetTopLevelParent() # is_detached_frame = isinstance(frame, DetachedFrame.DetachedFrame) # parent_frame_is_canvas = isinstance(frame.GetParent(), Container.ShapeCanvas) # if is_detached_frame and not parent_frame_is_canvas: # d0 = canvas.GetDiagramByLevel(0) # ### only once # if not (d0.HasAttr('layers') and d0.HasAttr('current_level')): # d0.AddAttributes(['layers', 'current_level']) # self.SetDiagramByLevel(0, d0) #======================================================================= ### update canvas canvas.SetDiagram(dia) canvas.deselect() canvas.Refresh()
def OnInit(self): import gettext #builtins.__dict__['PYDEVS_SIM_STRATEGY_DICT'] = {'original':'SimStrategy1', 'bag-based':'SimStrategy2', 'direct-coupling':'SimStrategy3'} #builtins.__dict__['PYPDEVS_SIM_STRATEGY_DICT'] = {'original':'SimStrategy4', 'distributed':'SimStrategy5', 'parallel':'SimStrategy6'} builtins.__dict__['NB_HISTORY_UNDO'] = 5 builtins.__dict__['ICON_PATH'] = 'icons' builtins.__dict__['ICON_PATH_16_16'] = os.path.join(ICON_PATH, '16x16') builtins.__dict__['_'] = gettext.gettext diagram = Container.Diagram() self.frame = DetachedFrame(None, -1, "Test", diagram) self.frame.Show() return True