• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python pubsub.Publisher类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中wx.lib.pubsub.Publisher的典型用法代码示例。如果您正苦于以下问题:Python Publisher类的具体用法?Python Publisher怎么用?Python Publisher使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了Publisher类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: __init__

    def __init__(self, parent, id = -1):

        pre = wx.PrePanel()

        res = xmlres.loadGuiResource('ViewSelectPanel.xrc')
        res.LoadOnPanel(pre, parent, "ID_VIEWSELECTPANEL")
        self.PostCreate(pre)
        
        self._view_select = xrc.XRCCTRL(self, "ID_VIEW_SELECT")
        
        self._find_text = xrc.XRCCTRL(self, "ID_REFRESH_FIND")
        self._clear_filter = xrc.XRCCTRL(self, "ID_CLEAR_FIND")
        self._filter_text = xrc.XRCCTRL(self, "ID_TEXT_FILTER")
                
        # temp var for delayed selection of view
        self._the_view = -1

        self._our_problem = False
        
        self._initViewSelect()
              
        self.Bind(wx.EVT_LIST_ITEM_SELECTED, self._onViewSelected, self._view_select)
        self.Bind(wx.EVT_TEXT, self._onFilterText, self._filter_text)
        self.Bind(wx.EVT_BUTTON, self._onRefreshFilter, self._find_text)
        self.Bind(wx.EVT_BUTTON, self._onClearFilter, self._clear_filter)
        self.Bind(wx.EVT_TEXT_ENTER, self._onRefreshFilter, self._filter_text)
        self.Bind(wx.EVT_UPDATE_UI, self._onUpdateUI)
        Publisher.subscribe(self._onViewChanged, signals.SET_VIEW)
开发者ID:jorgb,项目名称:airs,代码行数:28,代码来源:ViewSelectPanel.py


示例2: terminate

		def terminate(self, error = False, msg = None):
			""" Thread termination routine
				param error: False if thread is terminate without error
				param msg: message to submit
			"""

			if not self.end_flag:
				if error:

					###for traceback
					etype = msg[0]
					evalue = msg[1]
					etb = traceback.extract_tb(msg[2])
					sys.stderr.write('Error in routine: your routine here\n')
					sys.stderr.write('Error Type: ' + str(etype) + '\n')
					sys.stderr.write('Error Value: ' + str(evalue) + '\n')
					sys.stderr.write('Traceback: ' + str(etb) + '\n')

					### only for displayed application (-nogui)
					if wx.GetApp():
						wx.CallAfter(Publisher.sendMessage, "error", msg)
						### error sound
						wx.CallAfter(playSound, SIMULATION_ERROR_SOUND_PATH)

				else:
					for m in filter(lambda a: hasattr(a, 'finish'), self.model.componentSet):
						### call finished method
						Publisher.sendMessage('%d.finished'%(id(m)))

					### only for displayed application (-nogui)
					if wx.GetApp() : wx.CallAfter(playSound, SIMULATION_SUCCESS_SOUND_PATH)

			self.end_flag = True
开发者ID:AsmaDhanePersonal,项目名称:DEVSimPy,代码行数:33,代码来源:SimulationGUI.py


示例3: decrementClientMinutes

 def decrementClientMinutes(self, subminutes):
     """
     subtrack some of the minutes the client is having
     """
     Publisher.sendMessage("sendingRemaing.Minutes",  data=subminutes)
     self.decrement = self.getClientMinutes() - subminutes
     self.saveRunningStatus(self.decrement)
     
     if(self.setClientMinutes(self.decrement) == False):
         raise ValueError("Unable to set client time")
     else:
         try:
             #print "Doing something like sending to the server"
             #Publish a message to the window.py which will send a message to
             #the server.
             try:
                 #print "Duplicating"
                 Publisher.sendMessage("sendRemainingMinutes", data=str(self.getClientMinutes()))
             except:
                 raise 
             else:
                 self._parent.owed_timetext.SetLabel(str(self.getClientMinutes()))
                 
         except:
             return False
         
     #set the client runtime
     self.setClientRuntime(self.getClientRuntime() + int(subminutes))
     try:
         self.incrementRuntime(self.getClientRuntime())
     except:
         raise 
开发者ID:latest-release,项目名称:jetclient,代码行数:32,代码来源:timecounter.py


示例4: __init__

 def __init__(self, ip, portFrom, portTo):
     Thread.__init__(self)
     self.IP = ip
     self.portFrom = portFrom
     self.portTo = portTo
     Publisher.sendMessage("scanThread", "started")
     self.start()
开发者ID:Rasmus-Riis,项目名称:Huge_py,代码行数:7,代码来源:portscanner.py


示例5: __init__

	def __init__(self, model, view, xmlData):
		self.model = model
		self.view = view
		self.xmlData = xmlData
		
		Publisher.subscribe(self.psXmlDataChanged, "status.change.xmldatachanged")
		Publisher.subscribe(self.itemSelected, "config.function.selected")
开发者ID:wenxin-liao,项目名称:hgamer3d,代码行数:7,代码来源:Functions.py


示例6: __init__

	def __init__(self, model):
		self.model = model
		self.data = None
		self.config = model.getConfig()
		self.confPath = "."
		Publisher.subscribe(self.psXmlChanged, "status.change.xmlchanged")
		Publisher().subscribe(self.psConfigPathChanged, "config.path.changed")
开发者ID:wenxin-liao,项目名称:hgamer3d,代码行数:7,代码来源:ParsedXml.py


示例7: __init__

    def __init__(self, *args, **kwargs):
        MyPanel.__init__(self, *args, **kwargs)        

        sum_box = wx.StaticBox(self, label="Preferences")
        box_sizer = wx.StaticBoxSizer(sum_box, wx.VERTICAL)
        fgs = wx.FlexGridSizer(rows=3, cols=5)
        box_sizer.Add(fgs, proportion=1, flag=wx.EXPAND)

        fgs.AddMany([(wx.StaticText(self, style=wx.ALIGN_LEFT), 0, wx.EXPAND), 
                    (wx.StaticText(self, label="1st", style=wx.ALIGN_LEFT), 0, wx.EXPAND), 
                    (wx.StaticText(self, label="2nd", style=wx.ALIGN_LEFT), 0, wx.EXPAND),  
                    (wx.StaticText(self, label="3rd", style=wx.ALIGN_LEFT), 0, wx.EXPAND), 
                    (wx.StaticText(self, label="Other", style=wx.ALIGN_LEFT), 0, wx.EXPAND) ])

        self.RoomPrefFields = [wx.StaticText(self, size=self.sz_num_field, style=wx.ALIGN_LEFT), 
                wx.StaticText(self, size=self.sz_num_field, style=wx.ALIGN_LEFT), 
                wx.StaticText(self, size=self.sz_num_field, style=wx.ALIGN_LEFT), 
                wx.StaticText(self, size=self.sz_num_field, style=wx.ALIGN_LEFT)] 
        fgs.Add(wx.StaticText(self, label="Rooms   ", style=wx.TE_LEFT), flag = wx.EXPAND)
        for field in self.RoomPrefFields:
            fgs.Add(field, flag=wx.EXPAND)

        self.TimePrefFields = [wx.StaticText(self, size=self.sz_num_field, style=wx.ALIGN_LEFT), 
                wx.StaticText(self, size=self.sz_num_field, style=wx.ALIGN_LEFT), 
                wx.StaticText(self, size=self.sz_num_field, style=wx.ALIGN_LEFT), 
                wx.StaticText(self, size=self.sz_num_field, style=wx.ALIGN_LEFT)]
        fgs.Add(wx.StaticText(self, label="Times   ", style=wx.TE_LEFT), flag = wx.EXPAND)
        for field in self.TimePrefFields:
            fgs.Add(field, flag=wx.EXPAND)

        self.SetSizerAndFit(box_sizer)
        pub.subscribe(self.updatePrefs, "assignments_calced")
开发者ID:vgupta1,项目名称:ClassE,代码行数:32,代码来源:plotPanels.py


示例8: LoadMarkets

    def LoadMarkets(self):
        self.markets = self.session.GetAvailableMarkets()

        if self.markets == None:
            return False

        self.treeMarkets.DeleteAllItems()
        root = self.treeMarkets.AddRoot('Markets')

        # Add all markets to the tree
        items = {}
        for market in self.markets:
            path = ''
            parent = root
            # Iterate over the market path
            for item in market.menuPathParts:
                path = path + item
                if path in items:
                    parent = items[path]
                    continue
                # Add this node if it doesn't exist
                parent = items[path] = self.treeMarkets.AppendItem(parent, item)
            # After all of the parent nodes are present, at the market type
            items[path + market.marketName] = self.treeMarkets.AppendItem(items[path], market.marketName)
            # Attach the market information to the tree object for extraction later
            self.treeMarkets.SetPyData(items[path + market.marketName], market)

        self.treeMarkets.Expand(root)

        pub.sendMessage(SUBJECT_STATUSBAR,
            'Found ' + str(len(self.markets)) + ' available ' + self.session.sessionType + ' markets')

        return True
开发者ID:cfredericks,项目名称:python,代码行数:33,代码来源:algomanagementpanel.py


示例9: __init__

	def __init__(self, *args, **kwargs):
		"""
		General Notebook class for Diagram Notebook on the right part of DEVSimPy.
		"""

		# for splash screen
		pub.sendMessage('object.added', message='Loading notebook diagram...\n')

		Printable.__init__(self)

		# local copy
		self.parent = args[0]
		self.pages = []			# keeps track of pages

		### to propagate the dsp file path in __setstate__ of Block object
		self.current_dsp_file_path = ""

		#icon under tab
		imgList = wx.ImageList(16, 16)
		for img in [os.path.join(ICON_PATH_16_16,'network.png')]:
			imgList.Add(wx.Image(img, wx.BITMAP_TYPE_PNG).ConvertToBitmap())
		self.AssignImageList(imgList)

		### binding
		self.Bind(wx.EVT_LEFT_DCLICK, self.__AddPage)
开发者ID:capocchi,项目名称:DEVSimPy,代码行数:25,代码来源:DiagramNotebook.py


示例10: __onNewFile

	def __onNewFile(self, event):
		data = {
				'file': None,
				'prjid': None
				}

		pub.sendMessage('notebook.addpage', data)
开发者ID:opendefinition,项目名称:warpig,代码行数:7,代码来源:WpMainMenu.py


示例11: __init__

    def __init__(self, iview):
        '''
        Constructor
        '''
        # ---- projectos
        pub().subscribe(self.add_project_in_tree, T.ADD_PROJECT_IN_TREE)
        pub().subscribe(self.pre_close, T.CLOSE_PROJECT)
        pub().subscribe(self.pre_open, T.OPEN_PROJECT)
        pub().subscribe(self.pre_hide, T.HIDE_PROJECT)
        pub().subscribe(self.pre_unhide, T.UNHIDE_PROJECT)
        pub.subscribe(self.pre_delete, T.DELETE_PROJECT)
        pub().subscribe(self.update_language, T.LANGUAGE_CHANGED)

        # ---- vistas
        pub().subscribe(self.add_view_in_tree, T.ADD_VIEW_IN_TREE)
        pub().subscribe(self.delete_view, T.DELETE_VIEW_TREE)

        # --- results
        pub().subscribe(self.add_results_in_tree, T.ADD_RESULTS_IN_TREE)
        pub().subscribe(self.delete_result, T.DELETE_RESULT_TREE)

        self.iview = iview
        self.init_tree()

        # ---- variables de estado
        self.last_sate_project = None
        self.less_project = False
开发者ID:abrahanfretes,项目名称:tava,代码行数:27,代码来源:ptree.py


示例12: _show_toolbars

 def _show_toolbars(self, event):
     if self._toolbars_shown:
         pub.sendMessage(topic='HIDE_TOOLBAR', data=None)
         self._toolbars_shown = False
     else:
         pub.sendMessage(topic='SHOW_TOOLBAR', data=None)
         self._toolbars_shown = True
开发者ID:jspobst,项目名称:spikepy,代码行数:7,代码来源:menu_bar.py


示例13: _RealtimeMode

 def _RealtimeMode(self):
     now = datetime.datetime.now() 
     oldtime = self.lastupdate + datetime.timedelta(seconds=self.period)
     if self.lastupdate.date().year != 2000:            
         if oldtime.date() != now.date():
             oldtime = datetime.datetime(now.date().year, now.date().month, now.date().day, 9, 30, 0) + datetime.timedelta(seconds=self.period)
         if self.lastupdate.time() == datetime.time(11, 30, 0):
             oldtime = datetime.datetime(self.lastupdate.date().year, self.lastupdate.date().month,  self.lastupdate.date().day, 13, 0, 0)\
             + datetime.timedelta(seconds=self.period)
                                    
     
               
     #now =  datetime.datetime(now.year, now.month, now.day, now.hour, now.minute) 
     
     if now > oldtime :
         print now, ",",  oldtime                
         q = GoogleIntradayQuote(self.symbol,self.period, self.num_day)
         if self.lastupdate == q.df.index[-1]:
             return
         if True:#q.dtstamp[-1] == now:
             self.lastupdate = q.df.index[-1]
             if self.period == 60:
                 self.realtimedata = q.df
                 pub.sendMessage(self._message_topic, self.realtimedata) 
             else:                    
                 self.quotedata = q
                 pub.sendMessage(self._message_topic, self.quotedata.df) 
开发者ID:changqinghuo,项目名称:TradeSoft,代码行数:27,代码来源:DataManager.py


示例14: pluginMenu

    def pluginMenu(self, evt):

        #Wont need this check once Issue 72 is fixed.
        if self.data.has_key('rtdose'):

            #Load RTPlan and first DICOM slice.
            rtd = self.data['rtdose']
            ct1 = self.data['images'][0]
            #Number of slices.
            N = len(self.data['images'])

            #Get slice spacing t, use difference instead of tags to get direction.
            t = self.data['images'][1].ImagePositionPatient[2]-self.data['images'][0].ImagePositionPatient[2]
            zpos = ct1.ImagePositionPatient[2]
            #Check current type of GFOV and switch.
            if rtd.has_key('GridFrameOffsetVector'):
                if rtd.GridFrameOffsetVector[0] == 0.:
                    logger.info("Found Type A - Relative Coordinates\nConverting to Type B - Absolute")
                    #Convert to Type B (Absolute)
                    rtd.GridFrameOffsetVector = list(np.arange(zpos, zpos + t*N, t))
                elif rtd.GridFrameOffsetVector[0] == zpos:
                    logger.info("Found Type B - Absolute Coordinates\nConverting to Type A - Relative")
                    #Convert to Type A (Relative)
                    rtd.GridFrameOffsetVector = list(np.arange(0., abs(t)*N,abs(t)))
            else:
                logger.info("GridFrameOffsetVector key not found in RT-Dose!")

            #Print results.
            np.set_printoptions(precision=2)
            logger.info(np.array(rtd.GridFrameOffsetVector))
            #Publish new rtdose.
            pub.sendMessage('patient.updated.raw_data', self.data)

        else:
            logger.info("Please load a RT-Dose file!")
开发者ID:zoulianmp,项目名称:DicomPyler,代码行数:35,代码来源:GFOVswitch.py


示例15: run

    def run(self):

        old = datetime.datetime.now() + datetime.timedelta(minutes = -1)
        old = datetime.datetime(old.year, old.month, old.day, old.hour, old.minute)
        while not self.done:
            try:                
                now = datetime.datetime.now()                
               # print now, "  ", old
                
                if self._IsMarketOpen(now):#now > old: 
                    self._RealtimeMode() 
                    #time.sleep(1)                   
 
                else:
                    q = GoogleIntradayQuote(self.symbol,self.period, self.num_day)
                    self.quotedata = q
                    pub.sendMessage(self._message_topic, self.quotedata.df) 
                    self.done = True 
                time.sleep(1)   
                        
                         
     
                
            except:
                print str(sys.exc_info())
                self.done = False
开发者ID:changqinghuo,项目名称:TradeSoft,代码行数:26,代码来源:DataManager.py


示例16: GetQuoteData

 def GetQuoteData(self, quote, period=300, num_day=5): 
     try:       
         self.quotedata = GoogleIntradayQuote(quote,period, num_day)
         pub.sendMessage("ANALYSISDATA", self.quotedata.df)
         return self.quotedata
     except:
         pass       
开发者ID:changqinghuo,项目名称:TradeSoft,代码行数:7,代码来源:DataManager.py


示例17: _createRooms

def _createRooms(d, roomInventory, respectRoom, num_prefs = 3):
    """return a prefernece ordered, list of rooms.  
    d is a dictionary of room_prefs {"Room 1":"E51-135", "Room 2":"E62-133"}
    blank requests are ignored.
    Rooms not in inventory will be created if respectRoom = True.
    If room not inventory, and not "respect", will log error."""
    out, all_in_inv = [], True
    for ix_pref in range(1, num_prefs + 1):
        roomName = d.get("Room " + str(ix_pref), "").strip()
        del d["Room " + str(ix_pref)]

        if not roomName:
            continue
        
        #search for it in the list.  
        room_list = filter(lambda x: str(x) == roomName, roomInventory)
        
        if room_list:
            assert len(room_list) == 1
            out.append(room_list[0])
#         elif respectRoom:
#             out.append(ses.Room(roomName, ses.Room.MAX_SIZE))
        else:
            out.append(ses.Room(roomName, ses.Room.MAX_SIZE))
            all_in_inv = False

            #only issue warning if not respect room
            if not respectRoom:
                pub.sendMessage("warning", "Room %s not in inventory" % roomName)


    return out, all_in_inv
开发者ID:vgupta1,项目名称:ClassE,代码行数:32,代码来源:readData.py


示例18: __init__

    def __init__(self, app):

        self.mainwindow = MyParentFrame()
        self.mainwindow.Bind(wx.EVT_MENU, self.On5MinAnalysis, id=ID_Menu_5Min)
        self.mainwindow.Bind(wx.EVT_MENU, self.On30MinAnalysis, id=ID_Menu_30Min)
        self.mainwindow.Bind(wx.EVT_MENU, self.OnDayAnalysis, id=ID_Menu_Day)
        self.mainwindow.Bind(wx.EVT_MENU, self.OnNewRealtimeWindow, id=ID_Menu_Realtime)

        self.mainwindow.Show(True)
        app.SetTopWindow(self.mainwindow)

        self.mainwindow.Bind(wx.EVT_KEY_DOWN, self.OnKeyDown)
        self.mainwindow.symbol_ctrl.Bind(wx.EVT_TEXT_ENTER, self.OnSymbolCtrlEnter)

        self.data_manager = DataManager()
        self.data_manager.start()
        self.symbol = "000001"
        self.data_manager.UpdateSymbol(self.symbol)
        # self.realtime_data = self.data_manager.GetQuoteData(self.symbol, 60, 1).df
        # self.analysis_data = self.data_manager.GetQuoteData(self.symbol, 1800, 30).df
        self._lastclose = self.data_manager.GetLastClose(self.symbol)
        self.realtime_data = None
        self.analysis_data = None
        # for d in self.data_manager.symbol_quote_dict.keys():
        pub.subscribe(self.AnalysisDataArrive, "ANALYSISDATA")
        pub.subscribe(self.RealtimeDataArrive, "REALTIMEDATA")
        self.mainwindow.SetFocus()
        self.realtime_window = None
        self.analysis_window = None
开发者ID:ongbe,项目名称:TradeSoft,代码行数:29,代码来源:control-copy.py


示例19: _update_strategy

 def _update_strategy(self, value=None):
     '''
         Called when a control_panel's value is changed and is valid.  Also
     called when the user changes the method of a stage.
     '''
     strategy = self.get_current_strategy()
     pub.sendMessage('SET_CURRENT_STRATEGY', data=strategy)
开发者ID:jspobst,项目名称:spikepy,代码行数:7,代码来源:strategy_pane.py


示例20: save

    def save(self):
        fout = open("library.db",'wb')
        pickle.dump(self.books,fout)
        fout.close()

        print "Saved", len(self.books), "books"
        pub.sendMessage("SAVED",len(self.books))
开发者ID:DoctorEyebrows,项目名称:Mystery,代码行数:7,代码来源:model.py



注:本文中的wx.lib.pubsub.Publisher类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python pub.sendMessage函数代码示例发布时间:2022-05-26
下一篇:
Python listctrl.ListCtrlAutoWidthMixin类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap