def load_plugins(): data = loader.build_plugins('menus') extends = glob('plugins/*/menus') keydata = {} for i in data[1]: if isinstance(i, tuple): keydata[i[0].title] = i[1] for i in extends: plgs = loader.build_plugins(i) data[2].extend(plgs[2]) for j in plgs[1]: if not isinstance(j, tuple): continue name = j[0].title if name in keydata: keydata[name].extend(j[1]) else: data[1].append(j) return extend_plgs(data[:2]), data[2]
def start(): from skimage.data import camera, astronaut import wx.lib.agw.advancedsplash as AS app = wx.App(False) ''' bitmap = wx.Bitmap('data/logolong.png', wx.BITMAP_TYPE_PNG) shadow = wx.Colour(255,255,255) asp = AS.AdvancedSplash(None, bitmap=bitmap, timeout=1000, agwStyle=AS.AS_TIMEOUT | AS.AS_CENTER_ON_PARENT | AS.AS_SHADOW_BITMAP, shadowcolour=shadow) asp.Update()''' uistyle = Source.manager('config').get('uistyle') or 'imagepy' frame = ImageJ(None) if uistyle == 'imagej' else ImagePy(None) frame.load_menu(extend_plgs(loader.build_plugins('menus'))) frame.load_tool(extend_tols(loader.build_tools('tools')), 'Transform') frame.load_widget(extend_wgts(loader.build_widgets('widgets'))) frame.Fit() #frame.show_img([camera()], 'camera') #frame.show_img([astronaut()], 'astronaut') frame.Show() app.MainLoop()
def load(self): datas = loader.build_plugins('menus') keydata = {} for i in datas[1]: if isinstance(i, tuple): keydata[i[0].__name__.split('.')[-1]] = i[1] #print(keydata) extends = glob('plugins/*/menus') for i in extends: plgs = loader.build_plugins(i) for j in plgs[1]: if not isinstance(j, tuple): continue name = j[0].__name__.split('.')[-1] if name in keydata: keydata[name].extend(j[1]) else: datas[1].append(j) root = self.tre_plugins.AddRoot('Plugins') self.addnode(root, datas[1])