Example #1
0
 def windowsinit(self, iconfile):
     bitmap=wx.Bitmap(guihelper.getresourcefile(iconfile), wx.BITMAP_TYPE_PNG)
     icon=wx.EmptyIcon()
     icon.CopyFromBitmap(bitmap)
     self.SetIcon(icon, "BitFling")
     wx.EVT_TASKBAR_RIGHT_UP(self, self.OnRButtonUp)
     wx.EVT_TASKBAR_LEFT_UP(self, self.OnLButtonUp)
     #wx.EVT_TASKBAR_MOVE(self, self.OnMouseMotion)
     wx.EVT_TASKBAR_LEFT_DOWN(self, self.OnLeftDown)
Example #2
0
    def registerMinimizeToTray(self):
        self.tbIcon = wx.TaskBarIcon()
        icon = wx.Icon("images/task.ico", wx.BITMAP_TYPE_ICO)
        self.tbIcon.SetIcon(icon, "Tasks")

        wx.EVT_TASKBAR_LEFT_DCLICK(self.tbIcon, self.ToggleShow)  # left click
        wx.EVT_TASKBAR_LEFT_UP(self.tbIcon,
                               self.ToggleShow)  # double left click
        wx.EVT_TASKBAR_RIGHT_UP(self.tbIcon,
                                self.ToggleShow)  # single left click

        self.Bind(wx.EVT_ICONIZE, self.onMinimize)  # binding for minimizing
Example #3
0
    def OnInit(self):
        self.tray_icon = TrayIcon()
        self.main_window = MainWindow(None, -1, "")
        self.SetTopWindow(self.main_window)
        self.main_window.Show()

        wx.EVT_TASKBAR_LEFT_UP(self, self.show_window)
        wx.EVT_TASKBAR_RIGHT_UP(self, self.show_popup_menu)

        self.popup_menu = wx.Menu()
        self.quit_menu_item = self.popup_menu.Append(-1, "Quit")
        self.Bind(wx.EVT_MENU, self.quit_now, self.quit_menu_item)

        return True
Example #4
0
 def __init__(self, parent, title):
     wx.Frame.__init__(self, parent, style=wx.FRAME_NO_TASKBAR)
     self.tbicon = BatteryTaskBarIcon(self)
     wx.EVT_TASKBAR_LEFT_UP(self.tbicon, self.OnTaskBarLeftClick)
Example #5
0
    def __init__(self):
        # SUPER #
        kwargs = {
            'parent': None,
            'title': diwavars.TRAY_TOOLTIP,
            'size': diwavars.FRAME_SIZE,
            'style': wx.FRAME_NO_TASKBAR
        }
        GUItemplate.__init__(self, **kwargs)

        # UI can not be shown yet.
        self.Hide()
        self.Freeze()
        NodeScreen.update_bitmaps()
        profiles = ChooseDiwaProfileDialog.ListDatabaseProfiles()
        if len(profiles):
            params = {'profiles': profiles}
            ret = show_modal_and_destroy(ChooseDiwaProfileDialog, None, params)
            if ret:  # If non-zero return value, we should exit
                LOGGER.info('Application closed!')
                self.Destroy()
                wx.GetApp().ExitMainLoop()
                return

        # List for choices
        LOGGER.debug('WxPython version {0!s}'.format(wx.version()))
        self.list = EventList(self)
        self.splash_screen = MySplashScreen()
        self.splash_screen.Show()
        self.screen_selected = None
        self.ui_initialized = False
        self.diwa_state = state.State(parent=self)
        self.InitUICore()
        self.diwa_state.initialize()
        pub.sendMessage('update_screens', update=True)
        if self.diwa_state.config_was_created:
            self.OnPreferences(None)

        # UI can be shown now.
        self.Thaw()
        self.Show()

        # Perform initial testing before actual initialization.
        initial_test = state.initialization_test()
        if initial_test:
            self.splash_screen.Hide()
            self.splash_screen.Destroy()
            if initial_test:
                params = {'message': initial_test}
                show_modal_and_destroy(ErrorDialog, self, params)
            self.Destroy()
            wx.GetApp().ExitMainLoop()
            return
        diwavars.set_default_cursor(self.GetCursor())
        diwavars.set_blank_cursor(wx.StockCursor(wx.CURSOR_BLANK))
        self.overlay = BlackOverlay((0, 0), wx.DisplaySize(), self, '')
        self.Bind(wx.EVT_SET_FOCUS, self.OnFocus)
        try:
            self.trayicon = SysTray(self)
            self.trayicon.Bind(wx.EVT_MENU, self.OnExit, id=wx.ID_EXIT)
            self.trayicon.Bind(wx.EVT_MENU, self.OnPreferences, id=wx.ID_SETUP)
            self.trayicon.Bind(wx.EVT_MENU, self.OnSession, id=wx.ID_NEW)
            self.trayicon.Bind(wx.EVT_MENU, self.OnAboutBox, id=wx.ID_ABOUT)
            self.trayicon.Bind(wx.EVT_MENU,
                               self.SelectProjectDialog,
                               id=wx.ID_VIEW_LIST)
            self.Bind(wx.EVT_CLOSE, self.OnExit)
            self.trayicon.Bind(wx.EVT_MENU,
                               self.OpenProjectDir,
                               id=wx.ID_INDEX)
            self.icon = wx.Icon(diwavars.TRAY_ICON, wx.BITMAP_TYPE_PNG)
            self.trayicon.SetIcon(self.icon, diwavars.TRAY_TOOLTIP)
            wx.EVT_TASKBAR_LEFT_UP(self.trayicon, self.OnTaskBarActivate)
            self.Refresh()
            self.Show(True)
            self.splash_screen.Hide()
            self.splash_screen.Destroy()
        except Exception as excp:
            LOGGER.exception('load exception: {0!s}'.format(excp))
            self.splash_screen.Hide()
            self.splash_screen.Destroy()
            self.Destroy()
Example #6
0
    def __init__(self, parent, id, title, paths):
        """
		Setup Application Window
		
		@author: Derek Buranen
		@author: Aaron Gerber
		@author: Markus Roth
		"""
        self.ToggleValue = 0
        self.paths = paths
        self.process = Gitso.Processes.Processes(paths)

        # Disable until 0.7 release
        self.enablePMP = False

        #if re.match('(?:open|free|net)bsd|linux',sys.platform):
        wsize = (350, 260)
        xval1 = 155
        xval2 = 250

        wx.Frame.__init__(self,
                          parent,
                          wx.ID_ANY,
                          title,
                          size=wsize,
                          style=wx.DEFAULT_FRAME_STYLE
                          & ~(wx.FRAME_SHAPED | wx.RESIZE_BORDER
                              | wx.RESIZE_BOX | wx.MAXIMIZE_BOX))
        self.Bind(wx.EVT_CLOSE, self.OnCloseWindow)
        self.Bind(wx.EVT_ICONIZE, self.OnIconizeWindow)

        icon = wx.Icon(os.path.join(self.paths['main'], 'gitso.ico'),
                       wx.BITMAP_TYPE_ICO)
        if sys.platform == 'win32':
            self.SetBackgroundColour(wx.Colour(236, 233, 216))

        self.SetIcon(icon)
        self.TrayIcon = GitsoTaskBarIcon(icon, self)
        wx.EVT_TASKBAR_LEFT_UP(self.TrayIcon, self.RestoreWindow)

        #Buttons
        self.connectButton = wx.Button(self, 10, _("Start"),
                                       wx.Point(xval1, 144))
        self.connectButton.SetDefault()
        wx.EVT_BUTTON(self, 10, self.ConnectSupport)
        self.stopButton = wx.Button(self, wx.ID_STOP, "", wx.Point(xval2, 144))
        self.stopButton.Enable(False)
        wx.EVT_BUTTON(self, wx.ID_STOP, self.KillPID)

        # Radio Boxes
        self.rb1 = wx.RadioButton(self,
                                  -1,
                                  _('Get Help'), (10, 15),
                                  style=wx.RB_GROUP)
        self.rb2 = wx.RadioButton(self, -1, _('Give Support'), (10, 80))
        self.rb1.SetValue(True)

        self.Bind(wx.EVT_RADIOBUTTON, self.RadioToggle, id=self.rb1.GetId())
        self.Bind(wx.EVT_RADIOBUTTON, self.RadioToggle, id=self.rb2.GetId())

        # checkbox for natpmp
        if sys.platform == 'darwin' or re.match('(?:open|free|net)bsd|linux',
                                                sys.platform):
            if self.enablePMP:
                self.cb1 = wx.CheckBox(self, -1, _('Use NAT-PMP'), (130, 48))
                self.cb1.Enable(False)

        # Checkbox for low color
        self.cb2 = wx.CheckBox(self, -1, _('Use low colors'), (40, 104))
        self.cb2.Set3StateValue(False)
        self.cb2.SetValue(self.paths['low-colors']
                          )  # Use value of --low-colors from command line
        self.cb2.Enable(False)

        # the combobox Control
        self.sampleList = self.paths['list']

        self.sampleList = self.getHosts(
            self.sampleList, os.path.join(self.paths['main'], 'hosts.txt'))
        self.sampleList = self.getHosts(self.sampleList,
                                        self.paths['preferences'])
        self.displayHostBox(self.sampleList, _("Enter/Select Support Address"))
        self.delete_entry = False

        # Menu
        menuBar = wx.MenuBar()
        fileMenu = wx.Menu()

        editMenu = wx.Menu()
        editMenu.Append(11, _("&Cut\tCtrl+X"), _("Cut IP Address"))
        editMenu.Append(12, _("&Copy\tCtrl+C"), _("Copy IP Address"))
        editMenu.Append(wx.ID_PASTE, _("&Paste\tCtrl+V"),
                        _("Paste IP Address"))
        wx.EVT_MENU(self, 11, self.SetClipboard)
        wx.EVT_MENU(self, 12, self.SetClipboard)
        wx.EVT_MENU(self, wx.ID_PASTE, self.GetClipboard)

        fileMenu.Append(13, _("&Clear History"), _("Clear History"))
        if sys.platform == 'darwin':
            fileMenu.Append(wx.ID_ABOUT, _("&About"), _("About Gitso"))
            wx.EVT_MENU(self, wx.ID_ABOUT, self.ShowAbout)
        else:
            fileMenu.Append(wx.ID_EXIT, _("&Quit\tCtrl+Q"), _("Quit Gitso"))
            wx.EVT_MENU(self, wx.ID_EXIT, self.OnCloseWindow)

        helpMenu = wx.Menu()
        helpMenu.Append(wx.ID_ABOUT, _("&About"), _("About Gitso"))
        wx.EVT_MENU(self, wx.ID_ABOUT, self.ShowAbout)

        wx.EVT_MENU(self, 13, self.clearHistory)

        menuBar.Append(fileMenu, _("&File"))
        menuBar.Append(editMenu, _("&Edit"))

        if re.match('(?:open|free|net)bsd|linux',
                    sys.platform) or sys.platform == 'win32':
            menuBar.Append(helpMenu, _("&Help"))

        self.SetMenuBar(menuBar)

        self.statusBar = self.CreateStatusBar()
        self.statusBar.SetStatusWidths([350])
        self.setMessage(_("Idle"), False)

        self.SetDefaultItem(self.hostField)
        #self.hostField.SetFocus()

        self.SetThemeEnabled(True)
        self.Centre()
        self.Show(True)

        if self.paths['listen']:
            self.Iconize(True)
            self.rb2.Value = True
            self.RadioToggle(None)
            self.ConnectSupport(None)
        elif self.paths['connect'] != "":
            self.rb1.Value = True
            self.RadioToggle(None)
            self.hostField.Value = self.paths['connect']
            self.ConnectSupport(None)
Example #7
0
    def CreateMenu(self):
        self.Bind(wx.EVT_TASKBAR_RIGHT_UP, self.ShowMenu)
        self.Bind(wx.EVT_MENU, self.parentApp.OpenBrowser, id=ID_OPEN_BROWSER)
        self.Bind(wx.EVT_MENU, self.parentApp.StartWeb, id=ID_START_WEB)
        self.Bind(wx.EVT_MENU, self.parentApp.StopWeb, id=ID_STOP_WEB)
        self.Bind(wx.EVT_MENU, self.parentApp.WebOnStart, id=ID_WEB_ON_START)
        self.Bind(wx.EVT_MENU, self.parentApp.BrowserOnWebStart, id=ID_BROWSER_ON_WEB_START)
        self.Bind(wx.EVT_MENU, self.parentApp.StartScan, id=ID_START_SCAN)
        self.Bind(wx.EVT_MENU, self.parentApp.StopScan, id=ID_STOP_SCAN)
        self.Bind(wx.EVT_MENU, self.parentApp.TriggerScan, id=ID_TRIGGER_SCAN)
        self.Bind(wx.EVT_MENU, self.parentApp.TriggeredOnStart, id=ID_SCAN_TRIGGERED)
        self.Bind(wx.EVT_MENU, self.parentApp.ScanOnStart, id=ID_SCAN_ON_START)
        self.Bind(wx.EVT_MENU, self.parentApp.NotLocate, id=ID_NOT_LOC)
        self.Bind(wx.EVT_MENU, self.parentApp.StartLoad, id=ID_START_LOAD)
        self.Bind(wx.EVT_MENU, self.parentApp.CleanLogs, id=ID_CLEAN_LOAD)
        self.Bind(wx.EVT_MENU, self.parentApp.OnExit, id=wx.ID_EXIT)
	wx.EVT_TASKBAR_LEFT_UP(self, self.parentApp.OpenBrowser)

        self.menu=wx.Menu()
	self.menu.Append(ID_MENU_SCAN_STATUS,"")
	self.menu.FindItemById(ID_MENU_SCAN_STATUS).Enable(False)
	self.menu.AppendSeparator()
        menuscan = wx.Menu()
        menuscan.Append(ID_START_SCAN, "&Start scan")
        menuscan.Append(ID_STOP_SCAN, "S&top scan")
	menuscan.AppendSeparator()
	menuscan.Append(ID_START_LOAD, "&Load scan from log")
	menuscan.AppendSeparator()
	menuscan.Append(ID_CLEAN_LOAD, "&Clean all logs")

        self.menu.AppendMenu(ID_MENU_SCAN, "Wifi &scan", menuscan)

        menuweb = wx.Menu()
        menuweb.Append(ID_MENU_WEB_STATUS,"")
	menuweb.FindItemById(ID_MENU_WEB_STATUS).Enable(False)
	menuweb.AppendSeparator()
	menuweb.Append(ID_START_WEB, "&Start web interface")
        menuweb.Append(ID_STOP_WEB, "S&top web interface")
	self.menu.AppendMenu(ID_MENU_WEB, "&Web interface", menuweb)


	self.menu.AppendSeparator()

        menuopt = wx.Menu()
        menuopt.Append(ID_SCAN_ON_START, 'Run &scan at start', 'Scan at start', kind=wx.ITEM_CHECK)
        menuopt.Check(ID_SCAN_ON_START, self.options['ScanOnStart'])
	menuopt.Append(ID_NOT_LOC, 'Don\'t &locate (offline mode)', 'Don\'t locate', kind=wx.ITEM_CHECK)
        menuopt.Check(ID_NOT_LOC, self.options['NotLocate'])
	menuopt.AppendSeparator()
        menuopt.Append(ID_SCAN_TRIGGERED, "Run scan as &root at start", 'Root scan at start', kind=wx.ITEM_CHECK)
        menuopt.Check(ID_SCAN_TRIGGERED, self.options['TriggeredOnStart'])
        menuopt.AppendSeparator()
	menuopt.Append(ID_WEB_ON_START, 'Run &web interface at start', 'Web interface at start', kind=wx.ITEM_CHECK)
        menuopt.Check(ID_WEB_ON_START, self.options['WebOnStart'])
	menuopt.Append(ID_BROWSER_ON_WEB_START, 'Run &browser at start', 'Browser at start', kind=wx.ITEM_CHECK)
        menuopt.Check(ID_BROWSER_ON_WEB_START, self.options['BrowserOnWebStart'])
        self.menu.AppendMenu(ID_MENU_OPT, "&Options", menuopt)

	self.menu.AppendSeparator()
        self.menu.Append(ID_TRIGGER_SCAN, "Scan as &root")
	self.menu.AppendSeparator()
        self.menu.Append(ID_OPEN_BROWSER, "Open &browser","This will open a new Browser")
	self.menu.AppendSeparator()

	self.menu.Append(wx.ID_EXIT, "&Quit")
Example #8
0
    def __init__(self, parent, uname, upass, dpool, epool):
        # begin wxGlade: MainPannel.__init__
        self.version = 1.0
        self.canlock = True
        self.listall = False
        self.last_copied_pass = None
        wx.Frame.__init__(self,
                          parent,
                          size=(1000, 1000),
                          style=wx.TAB_TRAVERSAL | wx.DEFAULT_FRAME_STYLE
                          | wx.WANTS_CHARS)
        self.DWorkerPool = dpool
        self.EWrokerPool = epool
        self.uname = uname
        self.upass = upass
        self.icon = wx.Icon(
            os.path.join(common.cur_file_dir(), "manpassc.ico"),
            wx.BITMAP_TYPE_ICO)
        self.SetIcon(self.icon)
        #self.chkupdate_thread=checkUpdate.ChkUpdateThread("http://192.168.1.1:8090/ver.txt",self.version,self)

        #username, password must be encoded into utf-8 string before they could be used by crypto functions
        self.lock_label = wx.HyperlinkCtrl(self,
                                           wx.ID_ANY,
                                           _("Unlock Me"),
                                           style=wx.HL_ALIGN_CENTRE)
        self.progress_bar = wx.Gauge(self, wx.ID_ANY)
        self.status_bar = wx.StatusBar(self, wx.ID_ANY)
        self.SetStatusBar(self.status_bar)

        defconflist = [
            (_("Basic Options"), [
                (("addr"), {
                    "desc": _("Listening address"),
                    "value": "127.0.0.1",
                    "type": "string"
                }),
                (("port"), {
                    "desc": _("Listening port"),
                    "value": 9000,
                    "type": "int"
                }),
                (("idle_timer"), {
                    "desc": _("Idle lock timer(seconds)"),
                    "value": 60,
                    "type": "int"
                }),
                (("startup_minimize"), {
                    "desc": _("Minimize the window upon startup"),
                    "value": False,
                    "type": "bool"
                }),
                (("close&lock"), {
                    "desc": _("Lock the window upon close(windows only)"),
                    "value": True,
                    "type": "bool"
                }),
            ]),
        ]
        self.OptionDiag = myoptions.OptionDiag(self, "manpass.conf",
                                               defconflist, self.uname)
        self.confDict = None
        self.confDict = self.OptionDiag.toDict()
        if not common.checkTCPPort(self.confDict['addr'],
                                   self.confDict['port']):
            waitbox = wx.BusyInfo(_("Starting Manpass server, please wait..."))
            cmd = common.getManpassdExeName()
            exename = cmd
            cmd += " -username={uname} -pipepass=true -svrip={ip} -svrport={port}".format(
                uname=self.uname,
                ip=self.confDict['addr'],
                port=self.confDict['port'])
            args = shlex.split(cmd)
            if platform.system() == "Windows":
                startupinfo = subprocess.STARTUPINFO()
                startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
            else:
                startupinfo = None
            try:
                self.svrp = subprocess.Popen(args,
                                             executable=exename,
                                             stdin=subprocess.PIPE,
                                             stdout=subprocess.PIPE,
                                             stderr=subprocess.PIPE,
                                             shell=False,
                                             startupinfo=startupinfo)
            except Exception as Err:
                del waitbox
                wx.MessageBox(unicode(Err), _("Error"), 0 | wx.ICON_ERROR,
                              self)
                self.ExitMe()
                return

            def enqueue_output(out, queue):
                for line in iter(out.readline, b''):
                    queue.put(line)
                out.close()

            errq = Queue.Queue()
            t2 = newUserDiag.EnQThread(self.svrp.stderr, errq)
            t2.daemon = True
            t2.start()
            self.svrp.stdin.write(self.upass + "\n")
            self.svrp.stdin.close()
            ferror = False
            ferror_msg = ""

            def check_output(errq):
                t0 = time.time()
                ferror = False
                while True:
                    wx.GetApp().Yield()
                    try:
                        errline = errq.get_nowait()
                    except Queue.Empty:
                        if time.time() - t0 > 30.0:
                            ferror = True
                            ferror_msg = "Time out"
                            break
                        pass
                    else:
                        if errline.find("Server started") != -1:
                            break
                        if errline.find("Fatal Error") != -1:
                            ferror = True
                            ferror_msg = errline
                            break
                        if (time.time() - t0) > 30.0:
                            ferror = True
                            ferror_msg = "Time out"
                            break
                t2.stop()
                if ferror:
                    ##                    wx.MessageBox(_("Server failed to start!\n")+unicode(ferror_msg),_("Error"),0|wx.ICON_ERROR,self)
                    return _("Server failed to start!\n") + unicode(ferror_msg)
                else:
                    return True

            startresult = check_output(errq)
            if startresult != True:
                del waitbox
                wx.MessageBox(startresult, _("Error"), 0 | wx.ICON_ERROR, self)
                self.ExitMe()
                return
            del waitbox

        try:
            cadata = apiclient.loadCAFile(self.uname, self.upass,
                                          self.confDict['confDir'])
        except Exception as Err:
            wx.MessageBox(
                _("Authentication Failed!\n") + unicode(Err), _("Error"),
                0 | wx.ICON_ERROR, self)
            self.ExitMe()
            return
        try:
            self.apiclient = apiclient.APIClient(
                self.confDict['addr'], self.confDict['port'], cadata,
                os.path.join(self.confDict["confDir"], "ee.cert"),
                os.path.join(self.confDict["confDir"], "ee.key"), self.upass,
                self.DWorkerPool, self.EWrokerPool)
        except Exception as Err:
            ##            traceback.print_exc(Err)
            wx.MessageBox(_("Failed to connect to the server!"), _("Error"),
                          0 | wx.ICON_ERROR, self)
            self.ExitMe()
            return

        self.SetTitle("Manpass - " + self.uname.decode("utf-8"))

        if platform.system() == "Windows":
            self.taskicon = MyTaskbarIcon(self)
            self.taskicon.SetIcon(self.icon)
            wx.EVT_TASKBAR_LEFT_UP(self.taskicon, self.OnDClickTaskIcon)

        self.Bind(wx.EVT_CLOSE, self.HideMe)

        self.timer_lock = wx.Timer(self, wx.NewId())
        self.timer_clear = wx.Timer(self, wx.NewId())
        self.timer_statustxt = wx.Timer(self, wx.NewId())
        self.timer_lock.Start(self.confDict['idle_timer'] * 1000,
                              wx.TIMER_CONTINUOUS)
        self.text_ctrl_search_input = wx.SearchCtrl(self, wx.NewId(), "")
        self.list_ctrl_1 = PassListCtrl(self, self.text_ctrl_search_input)

        self.Bind(wx.EVT_TIMER, self.OnTimerLock, self.timer_lock)
        self.Bind(wx.EVT_TIMER, self.OnTimerClear, self.timer_clear)
        self.Bind(wx.EVT_TIMER, self.OnTimerStatusTxt, self.timer_statustxt)

        self.Bind(wx.EVT_TEXT, self.OnFilter, self.text_ctrl_search_input)
        self.text_ctrl_search_input.Bind(wx.EVT_SET_FOCUS, self.OnFilterAct)
        self.text_ctrl_search_input.Bind(wx.EVT_CHAR, self.OnChar)

        self.Bind(wx.EVT_CHAR, self.OnChar)
        self.list_ctrl_1.Bind(wx.EVT_CHAR, self.OnChar)
        self.lock_label.Bind(wx.EVT_CHAR, self.OnChar)
        ##        self.text_ctrl_search_input.Bind(wx.EVT_SET_FOCUS,self.OnFilterAct)

        self.__set_properties()
        self.__do_layout()
        self.CentreOnScreen()
        self.SetSize((400, 400))
        self.list_ctrl_1.reload()
        self.text_ctrl_search_input.SetFocus()
        self.text_ctrl_search_input.SetValue("")

        #self.Bind(wx.EVT_ICONIZE,self.HideMe)
        self.lock_label.Bind(wx.EVT_HYPERLINK, self.OnUnlock)

        #self.text_ctrl_search_input.Bind(wx.EVT_CHAR,self.resetTimer)

        self.list_ctrl_1.Bind(wx.dataview.EVT_DATAVIEW_SELECTION_CHANGED,
                              self.resetTimer)
        self.list_ctrl_1.Bind(wx.dataview.EVT_DATAVIEW_ITEM_ACTIVATED,
                              self.resetTimer)
        self.list_ctrl_1.Bind(wx.dataview.EVT_DATAVIEW_COLUMN_HEADER_CLICK,
                              self.resetTimer)
        self.list_ctrl_1.Bind(
            wx.dataview.EVT_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK,
            self.resetTimer)
        self.list_ctrl_1.Bind(wx.dataview.EVT_DATAVIEW_ITEM_CONTEXT_MENU,
                              self.resetTimer)
        self.Bind(wx.EVT_ACTIVATE, self.resetTimer)
        self.Bind(common.EVT_MANPASS_FATALERR, self.OnFatal)
        self.Bind(common.EVT_MANPASS_PROGRESS, self.UpdateProgress)
        self.Bind(common.EVT_MANPASS_LOAD_DONE, self.LoadDone)
        self.Bind(wx.EVT_SET_FOCUS, self.OnFocus)
        #self.Bind(checkUpdate.EVT_CHK_UPDATE,self.CheckUpdateDone)

        if platform.system() == "Windows":
            import win32con
            self.RegisterHotKey(52445, win32con.MOD_CONTROL, ord("I"))
            self.Bind(wx.EVT_HOTKEY, self.OnDClickTaskIcon, id=52445)

        if self.confDict['startup_minimize']:
            self.HideMe(None)
        else:
            self.Show(True)
            self.Raise()