Exemplo n.º 1
0
 def __init__(self):
     wx.Frame.__init__(self, None, -1, "Accelerator Example")
     p = wx.Panel(self)
     menu = wx.Menu()
     simple = menu.Append(-1, "Simple &menu item")
     accel = menu.Append(-1, "&Accelerated\tCtrl-A")
     menu.AppendSeparator()
     exit = menu.Append(-1, "E&xit")
     self.Bind(wx.EVT_MENU, self.OnSimple, simple)
     self.Bind(wx.EVT_MENU, self.OnAccelerated, accel)
     self.Bind(wx.EVT_MENU, self.OnExit, exit)
     menuBar = wx.MenuBar()
     menuBar.Append(menu, "&Menu")
     self.SetMenuBar(menuBar)
     acceltbl = wx.AcceleratorTable([(wx.ACCEL_CTRL, ord('Q'), exit.GetId())
                                     ])
     self.SetAcceleratorTable(acceltbl)
Exemplo n.º 2
0
    def SetUpShortcuts(self):
        prevId = wx.NewId()
        nextId = wx.NewId()
        saveId = wx.NewId()

        self.Bind(wx.EVT_MENU, self.OnPrev, id=prevId)
        self.Bind(wx.EVT_MENU, self.OnNext, id=nextId)
        self.Bind(wx.EVT_MENU, self.OnSave, id=saveId)

        accel = wx.AcceleratorTable(
            [
                (wx.ACCEL_NORMAL, ord("Q"), prevId),
                (wx.ACCEL_NORMAL, ord("E"), nextId),
                (wx.ACCEL_CTRL, ord("S"), saveId),
            ]
        )
        self.SetAcceleratorTable(accel)
Exemplo n.º 3
0
    def InitFrame(self):
        menubar = wx.MenuBar()
        fileMenu = wx.Menu()
        editMenu = wx.Menu() 
        # Make sizer and add panels to sizer to for auto-resizing
        sizer=wx.BoxSizer(wx.HORIZONTAL)
        self.apanel = PlotNotebook(self, id=-1, pos=(100,100), size=(300,300))
        self.panel = MainPanel(self, id=wx.ID_ANY, pos=(0,100), size=(100,100))
        sizer.Add(self.panel, 1, wx.EXPAND|wx.ALL, 5)

        #Build Menu
        oid = wx.NewId()
        aid = wx.NewId()
        ##FILE##
        #Open Option
        openitem = fileMenu.Append(wx.ID_ANY, "Open\tCtrl+O", "Open") 
        #Bind Item
        self.Bind(wx.EVT_MENU, self.panel.onOpenFile, openitem)
        #Bind Keyboard Shortcut
        self.Bind(wx.EVT_MENU, self.panel.onOpenFile, id=oid)
        #Analyze Item
        analyzeitem = fileMenu.Append(wx.ID_ANY, "Analyze\tReturn", "Analyze")
        #Bind Item
        self.Bind(wx.EVT_MENU, self.panel.analyze, analyzeitem)
        #Bind Keyboard Shortcut
        self.Bind(wx.EVT_MENU, self.panel.analyze, id=aid)


        ##EDIT##
        #Change Channel Names
        self.channelname = editMenu.Append(wx.ID_ANY, "Set Channel Names", "Configure Channels")
        self.Bind(wx.EVT_MENU, self.panel.configchannelname, self.channelname)
        self.channelname.Enable(False)
        #Configure Rise and Fall Parameters
        self.timingparamconfig = editMenu.Append(wx.ID_ANY, "Configure Timing Parameter", "Configure Parameter")
        self.Bind(wx.EVT_MENU, self.panel.configtimingparam, self.timingparamconfig)
        self.timingthresholdconfig = editMenu.Append(wx.ID_ANY, "Configure Timing Threshold", "Configure Threshold")
        self.Bind(wx.EVT_MENU, self.panel.configtimingthreshold, self.timingthresholdconfig)

        menubar.Append(fileMenu, '&File')
        menubar.Append(editMenu, '&Edit')
        self.SetMenuBar(menubar)
        sizer.Add(self.apanel, 3, wx.ALIGN_TOP|wx.EXPAND, 0)
        self.accel_tbl = wx.AcceleratorTable([(wx.ACCEL_CTRL, ord('O'), oid)])
        self.SetAcceleratorTable(self.accel_tbl)
        self.SetSizer(sizer)
Exemplo n.º 4
0
 def InitUI(self):
     self.panel = panel = FamilyTreePanel(self)
     self.statusbar = self.CreateStatusBar()
     
     sizer = wx.BoxSizer()
     sizer.Add(panel, 1, wx.EXPAND)
     self.SetSizer(sizer)
     
     exitID = wx.NewId()
     self.Bind(wx.EVT_MENU, self.OnBack,id=exitID)
     accel_tbl = wx.AcceleratorTable([(wx.ACCEL_CMD, ord('W'), exitID)])
     self.SetAcceleratorTable(accel_tbl)
             
     self.Bind(wx.EVT_BUTTON, self.OnBack, self.panel.back)
     self.Bind(wx.EVT_BUTTON, self.OnPlus, self.panel.plus)
     self.Bind(wx.EVT_BUTTON, self.OnMinus, self.panel.minus)
     self.Bind(wx.EVT_SIZE, self.OnSize)
Exemplo n.º 5
0
Arquivo: menu.py Projeto: ehoac/wfund
 def createMenuItem(self,
                    menu,
                    label,
                    status,
                    handler,
                    key_code,
                    flags=wx.ACCEL_CTRL,
                    kind=wx.ITEM_NORMAL):
     if not label:
         menu.AppendSeparator()
         return
     menuItem = menu.Append(-1, label, status, kind)
     self.Bind(wx.EVT_MENU, handler, menuItem)
     if key_code:
         acceltbl = wx.AcceleratorTable([(flags, ord(key_code),
                                          menuItem.GetId())])
         self.SetAcceleratorTable(acceltbl)
Exemplo n.º 6
0
    def __init__(self,
                 parent=None,
                 attrpanel=None,
                 frame=None,
                 id=-1,
                 pos=wx.DefaultPosition,
                 size=wx.DefaultSize,
                 style=wx.BORDER,
                 name="ShapeCanvas"):
        wx.ScrolledWindow.__init__(self, parent, id, pos, size, style, name)
        self.attrpanel = attrpanel
        self.frame = frame
        wx.EVT_PAINT(self, self.OnPaint)
        wx.EVT_MOUSE_EVENTS(self, self.OnMouseEvent)
        self.Bind(wx.EVT_KEY_DOWN, self.OnKeyPressed)
        self.Bind(wx.EVT_KEY_UP, self.OnKeyUp)
        self.Bind(wx.EVT_ERASE_BACKGROUND, self.OnEraseBackground)
        self.curselshapelist = []
        self.curselshape = None
        self.hotshape = None
        self.cureditshape = None
        self.isdragging = False
        self.startdragpos = [0, 0]
        self.dragseltype = SEL_NONE
        self.cmdhdr = None
        self.SetBackgroundColour("LIGHT BLUE")
        self.oneMoveKeyTrunkStart = False
        self.oneMoveKeyTrunkCmdObj = None
        self.cmdhdr = CommandHandler(self)
        self.copiedshapes = []

        self.delayUpdateAttrTimer = wx.Timer(self)
        self.Bind(wx.EVT_TIMER, self.OnDelayUpdateAttrTimer,
                  self.delayUpdateAttrTimer)

        acceltbl = wx.AcceleratorTable([
            (wx.ACCEL_CTRL, ord('Z'), 20001),  #MENU_UNDO
            (wx.ACCEL_CTRL, ord('Y'), 20002),  #MENU_REDO
            (wx.ACCEL_CTRL, ord('C'), 20017),  #MENU_COPY
            (wx.ACCEL_CTRL, ord('V'), 20018)  #MENU_PASTE
        ])
        self.SetAcceleratorTable(acceltbl)

        global g_shapetree
        g_shapetree = self.frame.GetShapeTree()
Exemplo n.º 7
0
    def __init__(self, parent, id=wx.ID_ANY):
        wx.Dialog.__init__(self,
                           parent,
                           id,
                           "DNS Manager",
                           style=wx.DEFAULT_DIALOG_STYLE | wx.TAB_TRAVERSAL)

        vs = wx.BoxSizer(wx.VERTICAL)

        self.dnsManager = DNSManager(self)
        self.dnsManager.SetMinSize((700, 500))

        vs.Add(self.dnsManager, 1, flag=wx.ALL | wx.EXPAND, border=4)

        self.helpBtn = wx.Button(self, label=_('&Help'))
        self.Bind(wx.EVT_BUTTON, self.onHelp, self.helpBtn)

        self.closeBtn = wx.Button(self, label=_('&Close (Ctrl-Q)'))
        self.Bind(wx.EVT_BUTTON, self.onClose, self.closeBtn)
        self.Bind(wx.EVT_CLOSE, self.onClose)

        hs = wx.BoxSizer(wx.HORIZONTAL)
        hs.AddStretchSpacer()
        hs.Add(self.helpBtn, flag=wx.ALL | wx.ALIGN_RIGHT, border=4)
        hs.Add(self.closeBtn, flag=wx.ALL | wx.ALIGN_RIGHT, border=4)
        vs.Add(hs, flag=wx.EXPAND)

        self.SetSizerAndFit(vs)
        vs.Fit(self)

        # Add Ctrl-Q to close the dialog.
        self.Bind(wx.EVT_MENU, self.onClose, id=wx.ID_CLOSE)
        self.Bind(wx.EVT_MENU, self.onUndo, id=wx.ID_UNDO)
        self.Bind(wx.EVT_MENU, self.onRedo, id=wx.ID_REDO)
        accel_tbl = wx.AcceleratorTable([
            (wx.ACCEL_CTRL, ord('Q'), wx.ID_CLOSE),
            (wx.ACCEL_CTRL, ord('Z'), wx.ID_UNDO),
            (wx.ACCEL_CTRL, ord('Y'), wx.ID_REDO),
        ])
        self.SetAcceleratorTable(accel_tbl)

        self.CentreOnParent(wx.BOTH)
        wx.CallAfter(self.SetFocus)

        wx.CallAfter(self.dnsManager.refresh)
Exemplo n.º 8
0
 def create_actions(self):
     """define what can be done in this screen
     """
     accel_list = []
     self.actionlist = ((_('a_from'), 'Ctrl+L', self.activate_left),
                        (_('b_tag'), 'Ctrl+Right', self.move_right),
                        (_('a_to'), 'Ctrl+R', self.activate_right),
                        (_('b_untag'), 'Ctrl+Left', self.move_left),
                        (_('b_newtag'), 'Ctrl+N', self.add_trefw))
     for name, shortcut, callback in self.actionlist:
         act = wx.MenuItem(id=wx.NewId(), text=name)
         act.Bind(wx.EVT_MENU, callback)
         accel = wx.AcceleratorEntry(cmd=act.GetId())
         ok = accel.FromString(shortcut)
         if ok:
             accel_list.append(accel)
     accel_table = wx.AcceleratorTable(accel_list)
     self.SetAcceleratorTable(accel_table)
Exemplo n.º 9
0
 def _bindUserStop(self):
     # if standalone, no binding can be done
     windows = [wx.GetTopLevelParent(self)]
     if not self.IsStandalone():
         windows.append(self.giface.lmgr)
         windows.extend([mapw for mapw in self.giface.GetAllMapDisplays()])
     bindings = {"stopTask": self.OnUserStop, 'scanOnce': self.OnScanOnce, 'taskNext': self.OnNextTask,
                 'taskPrevious': self.OnPreviousTask, 'startTask': self.StartAutomated}
     if "keyboard_events" in self.configuration:
         items = []
         for eventName in self.configuration['keyboard_events']:
             eventId = wx.NewId()
             items.append((wx.ACCEL_NORMAL, self.configuration['keyboard_events'][eventName], eventId))
             for win in windows:
                 win.Bind(wx.EVT_MENU, bindings.get(eventName, lambda evt: self.CustomAction(eventName)), id=eventId)
         accel_tbl = wx.AcceleratorTable(items)
         for win in windows:
             win.SetAcceleratorTable(accel_tbl)
Exemplo n.º 10
0
    def InitUI(self):

        self.panel = AddNewCagePanel(self)

        self.sizer = sizer = wx.BoxSizer()
        sizer.Add(self.panel, 1, wx.EXPAND)
        self.SetSizer(sizer)

        exitID = wx.NewId()
        self.Bind(wx.EVT_MENU, self.OnCancel, id=exitID)
        accel_tbl = wx.AcceleratorTable([(wx.ACCEL_CMD, ord('W'), exitID)])
        self.SetAcceleratorTable(accel_tbl)

        self.panel.add.Bind(wx.EVT_BUTTON, self.OnAdd)
        self.panel.can.Bind(wx.EVT_BUTTON, self.OnCancel)
        self.Bind(wx.EVT_TEXT, self.OnChange, self.panel.house)
        self.Bind(wx.EVT_TEXT, self.OnChange, self.panel.cmin)
        self.Bind(wx.EVT_TEXT, self.OnChange, self.panel.cmax)
Exemplo n.º 11
0
    def _updateAcceleratorTables(self):
        # Key - window, value - list of the wx.AcceleratorEntry instances
        entries = {}

        for actionInfo in self._actionsInfo.values():
            if actionInfo.hotkeyId is not None:
                assert actionInfo.hotkey is not None
                entry = wx.AcceleratorEntry(cmd=actionInfo.hotkeyId)
                entry.FromString(str(actionInfo.hotkey))
                if entry.IsOk():
                    if actionInfo.window not in entries:
                        entries[actionInfo.window] = []

                    entries[actionInfo.window].append(entry)

        for window in entries.keys():
            accelTable = wx.AcceleratorTable(entries[window])
            window.SetAcceleratorTable(accelTable)
Exemplo n.º 12
0
 def __create_accel(self):
     """Create accelerated table for menu."""
     acceltbl = wx.AcceleratorTable([
         (wx.ACCEL_CTRL, ord('N'), self.drawer.create_child.GetId()),
         (wx.ACCEL_CTRL, ord('S'), self.drawer.save_note.GetId()),
         (wx.ACCEL_CTRL, ord('Q'), self.drawer.exit.GetId()),
         (wx.ACCEL_CTRL, ord('Z'), self.drawer.undo.GetId()),
         (wx.ACCEL_CTRL, ord('Y'), self.drawer.redo.GetId()),
         (wx.ACCEL_CTRL, wx.WXK_UP, self.drawer.order_up.GetId()),
         (wx.ACCEL_CTRL, wx.WXK_DOWN, self.drawer.order_down.GetId()),
         (wx.ACCEL_CTRL | wx.ACCEL_SHIFT, wx.WXK_UP,
          self.drawer.order_parent_up.GetId()),
         (wx.ACCEL_CTRL | wx.ACCEL_SHIFT, wx.WXK_DOWN,
          self.drawer.order_parent_down.GetId()),
         (wx.ACCEL_CTRL, ord('I'), self.drawer.count_total.GetId()),
         (wx.ACCEL_CTRL, ord('O'), self.drawer.options.GetId()),
     ])
     self.drawer.SetAcceleratorTable(acceltbl)
Exemplo n.º 13
0
    def bindKeyShortcuts(self):

        self.canvas.Bind(wx.EVT_KEY_DOWN, self.OnDwnKeyPress)
        self.canvas.Bind(wx.EVT_KEY_UP, self.OnUpKeyPress)
        self.canvas.Bind(wx.EVT_ENTER_WINDOW, self.ChangeCursor)

        # Create an accelerator table
        myKeyId_1 = wx.NewId()
        myKeyId_2 = wx.NewId()
        self.Bind(wx.EVT_MENU, self.onCtrlShiftF1, id=myKeyId_1)
        self.Bind(wx.EVT_MENU, self.onShiftAltY, id=myKeyId_2)

        accel_tbl = wx.AcceleratorTable([
            (wx.ACCEL_SHIFT | wx.ACCEL_CTRL, wx.WXK_F1, myKeyId_1),
            (wx.ACCEL_SHIFT | wx.ACCEL_ALT, ord('Y'), myKeyId_2)
        ])

        self.SetAcceleratorTable(accel_tbl)
Exemplo n.º 14
0
    def __init__(self, frame, ceciliaEditor):
        MainMenuBar.__init__(self, frame, ceciliaEditor)
        self.isEditor = True
        accel_tbl = wx.AcceleratorTable([(wx.ACCEL_CTRL, wx.WXK_UP, ID_UPPER_POWER2),
                                         (wx.ACCEL_CTRL, wx.WXK_DOWN, ID_LOWER_POWER2),
                                         (wx.ACCEL_CTRL,  ord('L'), ID_INSERT_PATH),
                                         (wx.ACCEL_CTRL,  ord('T'), ID_OPEN_CSD),
                                         (wx.ACCEL_CTRL|wx.ACCEL_SHIFT,  ord('T'), ID_OPEN_LOG),
                                         (wx.ACCEL_CTRL,  ord('U'), 2012)])
        self.ceciliaEditor.SetAcceleratorTable(accel_tbl)

        self.buildFileMenu()
        self.buildEditMenu()
        self.buildFormatMenu()
        self.buildCsoundMenu()
        self.buildWindowMenu()
        self.buildHelpMenu()
        self.buildMenuBar()
Exemplo n.º 15
0
    def __init__(self, *args, **kwargs):
        """
        Constructor.
        """
        super(CarberryPanelGauges, self).__init__(*args, **kwargs)

        # Background image
        image = wx.Image(BACKGROUND)
        width, height = wx.GetDisplaySize()
        image = image.Scale(width, height, wx.IMAGE_QUALITY_HIGH)
        self.bitmap = wx.BitmapFromImage(image)
        self.Bind(wx.EVT_PAINT, self.on_paint)

        # Create an accelerator table for controls
        lid = wx.NewId()
        cid = wx.NewId()
        rid = wx.NewId()
        self.Bind(wx.EVT_MENU, self.on_ctrl_c, id=cid)
        self.Bind(wx.EVT_MENU, self.on_left, id=lid)
        self.Bind(wx.EVT_MENU, self.on_right, id=rid)
        self.accelerator_table = wx.AcceleratorTable([
            (wx.ACCEL_CTRL, ord('C'), cid),
            (wx.ACCEL_NORMAL, wx.WXK_LEFT, lid),
            (wx.ACCEL_NORMAL, wx.WXK_RIGHT, rid),
        ])
        self.SetAcceleratorTable(self.accelerator_table)

        # Handle events for mouse clicks - to be replaced with touchscreen events
        self.Bind(wx.EVT_LEFT_DOWN, self.on_left)
        self.Bind(wx.EVT_RIGHT_DOWN, self.on_right)

        # Connection
        self.connection = None

        # Sensors
        self.istart = 0
        self.sensors = []

        # Port
        self.port = None

        # List to hold children widgets
        self.boxes = []
        self.texts = []
Exemplo n.º 16
0
    def __init__(self, parent, ID, title):
        style = wx.CAPTION | wx.SYSTEM_MENU | wx.CLOSE_BOX | \
                wx.MAXIMIZE_BOX | wx.MINIMIZE_BOX | wx.RESIZE_BORDER | wx.FRAME_NO_TASKBAR
        size = parent.GetSize()
        wx.Dialog.__init__(self,
                           parent,
                           ID,
                           title,
                           pos=parent.GetScreenPosition(),
                           size=size,
                           style=style)
        # need this to enable validation in all subwindows
        self.SetExtraStyle(wx.WS_EX_VALIDATE_RECURSIVELY)
        self.SetMinSize(size)

        self.leftPanel = wx.Panel(self, -1, style=wx.BORDER_SUNKEN)
        self.rightPanel = wx.Panel(self, -1, style=wx.BORDER_SUNKEN)
        hbox = wx.BoxSizer(wx.HORIZONTAL)
        hbox.Add(self.leftPanel, 1, wx.ALL | wx.EXPAND, 0)
        hbox.Add(self.rightPanel, 1, wx.ALL | wx.EXPAND, 0)

        self.testresultview = trTestresultPanel(self.rightPanel,
                                                viewonly=False)
        self.testcaseview = trTestcasePanel(self.leftPanel, viewonly=False)
        self.Bind(hl.EVT_HYPERLINK_LEFT, self.OnRunScript)

        btnsizer = wx.StdDialogButtonSizer()

        btn = wx.Button(self, wx.ID_SAVE)
        at = wx.AcceleratorTable([(wx.ACCEL_CTRL, ord('S'), wx.ID_SAVE)])
        self.SetAcceleratorTable(at)
        self.SetAffirmativeId(wx.ID_SAVE)
        btn.SetDefault()
        btnsizer.AddButton(btn)

        btn = wx.Button(self, wx.ID_CANCEL)
        btnsizer.AddButton(btn)
        btnsizer.Realize()

        sizer = wx.BoxSizer(wx.VERTICAL)
        sizer.Add(hbox, 1, wx.ALL | wx.EXPAND, 6)
        sizer.Add(btnsizer, 0, wx.ALIGN_RIGHT | wx.ALL, 5)
        self.SetSizer(sizer)
        self.Layout()
Exemplo n.º 17
0
    def __init__(self, *args, **kwargs):
        """
        Constructor.
        """
        super(OBDPanelGauges, self).__init__(*args, **kwargs)

        # Background image
        image = wx.Image(GAUGE_FILENAME)
        width, height = wx.GetDisplaySize()
        image = image.Scale(width, height, wx.IMAGE_QUALITY_HIGH)
        self.bitmap = wx.BitmapFromImage(image)
        self.Bind(wx.EVT_PAINT, self.OnPaint)

        # Create an accelerator table
        lid = wx.NewId()
        cid = wx.NewId()
        rid = wx.NewId()
        self.Bind(wx.EVT_MENU, self.onCtrlC, id=cid)
        self.Bind(wx.EVT_MENU, self.onLeft, id=lid)
        self.Bind(wx.EVT_MENU, self.onRight, id=rid)
        self.accel_tbl = wx.AcceleratorTable([
            (wx.ACCEL_CTRL, ord('C'), cid),
            (wx.ACCEL_NORMAL, wx.WXK_LEFT, lid),
            (wx.ACCEL_NORMAL, wx.WXK_RIGHT, rid),
        ])
        self.SetAcceleratorTable(self.accel_tbl)

        # Handle events for mouse clicks
        self.Bind(wx.EVT_LEFT_DOWN, self.onLeft)
        self.Bind(wx.EVT_RIGHT_DOWN, self.onRight)

        # Connection
        self.connection = None

        # Sensors
        self.istart = 0
        self.sensors = []

        # Port
        self.port = None

        # List to hold children widgets
        self.boxes = []
        self.texts = []
Exemplo n.º 18
0
    def initAccels(self):
        self.accelTableList = [
            (wx.ACCEL_NORMAL, ord('0'), Menu_ZoomReset),
            (wx.ACCEL_NORMAL, ord('9'), Menu_ZoomCenter),
            (wx.ACCEL_NORMAL, ord('d'), Menu_Zoom2x),
            (wx.ACCEL_NORMAL, ord('h'), Menu_Zoom_5x),
            #(wx.ACCEL_NORMAL, ord('c'), Menu_Color),
            (wx.ACCEL_NORMAL, ord('r'), Menu_Reload),
            #(wx.ACCEL_NORMAL, ord('o'), Menu_chgOrig),
            #(wx.ACCEL_NORMAL, ord('g'), Menu_grid),
            (wx.ACCEL_NORMAL, ord('b'), Menu_noGfx),

            #(wx.ACCEL_CTRL, ord('c'), Menu_SaveClipboard),
            (wx.ACCEL_NORMAL, wx.WXK_HOME, Menu_ZoomCenter),
            (wx.ACCEL_NORMAL, wx.WXK_PAGEDOWN, Menu_ZoomOut),
            (wx.ACCEL_NORMAL, wx.WXK_PAGEUP, Menu_ZoomIn),
            #(wx.ACCEL_NORMAL, wx.WXK_NEXT, Menu_ZoomOut),
            #(wx.ACCEL_NORMAL, wx.WXK_PRIOR,Menu_ZoomIn),
            (wx.ACCEL_CTRL, wx.WXK_LEFT, 1051),
            (wx.ACCEL_CTRL, wx.WXK_RIGHT, 1052),
            (wx.ACCEL_CTRL, wx.WXK_UP, 1053),
            (wx.ACCEL_CTRL, wx.WXK_DOWN, 1054),
            (wx.ACCEL_ALT, ord('0'), Menu_ZoomReset),
            (wx.ACCEL_ALT, ord('9'), Menu_ZoomCenter),
            (wx.ACCEL_ALT, ord('d'), Menu_Zoom2x),
            (wx.ACCEL_ALT, ord('h'), Menu_Zoom_5x),
            #(wx.ACCEL_ALT, ord('c'), Menu_Color),
            (wx.ACCEL_ALT, ord('r'), Menu_Reload),
            #(wx.ACCEL_ALT, ord('o'), Menu_chgOrig),
            #(wx.ACCEL_ALT, ord('g'), Menu_grid),
            (wx.ACCEL_ALT, ord('b'), Menu_noGfx),
            (wx.ACCEL_ALT, wx.WXK_HOME, Menu_ZoomCenter),
            (wx.ACCEL_ALT, wx.WXK_PAGEDOWN, Menu_ZoomOut),
            (wx.ACCEL_ALT, wx.WXK_PAGEUP, Menu_ZoomIn)
            # (wx.ACCEL_ALT, wx.WXK_NEXT, Menu_ZoomOut),
            # (wx.ACCEL_ALT, wx.WXK_PRIOR, Menu_ZoomIn)
        ]
        ## WXK_NEXT is page-down key
        ## WXK_PRIOR is  page-up key

        self.accelTableList_default = list(
            self.accelTableList)  # backup for later resetting
        _at = wx.AcceleratorTable(self.accelTableList)
        self.SetAcceleratorTable(_at)
Exemplo n.º 19
0
 def onPageChanged(self, e):
     if self.ignorePageChanged: return
     selection = e.GetSelection()
     page = self.nbctl.GetPage(selection)
     doc = self.documents[selection]
     oldDoc = self.documents[
         self.oldSelection] if self.oldSelection >= 0 else None
     self.oldSelection = selection
     project, oldProject = doc.project, oldDoc.project if oldDoc else None
     self.updateWindowTitle(doc)
     menubar = self.GetMenuBar()
     docMenus = doc.getSpecificMenus()
     oldDocMenus = oldDoc.getSpecificMenus() if oldDoc else ()
     if oldDocMenus != docMenus:
         doc.acceleratorTable = []
         MenuManager.spliceMenus(menubar, 2, len(oldDocMenus), docMenus,
                                 doc.acceleratorTable)
     if oldProject != project:
         projMenus = project.getSpecificMenus() if project else ()
         oldProjMenus = oldProject.getSpecificMenus() if oldProject else ()
         if oldProjMenus != projMenus:
             project.acceleratorTable = []
             MenuManager.spliceMenus(menubar, 2 + len(docMenus),
                                     len(oldProjMenus), projMenus,
                                     project.acceleratorTable)
     MenuManager.replaceItems(menubar.GetMenu(0), len(FILE_MENU), -1,
                              doc.getFileMenuSpecificItems(),
                              doc.acceleratorTable)
     MenuManager.replaceItems(menubar.GetMenu(1), len(EDIT_MENU), None,
                              doc.getEditMenuSpecificItems(),
                              doc.acceleratorTable)
     for name, id in EDIT_MENU:
         menubar.Enable(
             id,
             hasattr(doc, name) and callable(getattr(doc, name))
             and doc.canDo(id))
     for name, id in FILE_MENU:
         menubar.Enable(id, doc.canDo(id))
     menubar.Refresh()
     page.SetAcceleratorTable(
         wx.AcceleratorTable(doc.acceleratorTable +
                             (project.acceleratorTable if project else [])))
     doc.onFocus()
Exemplo n.º 20
0
    def __init__(self, parent, raw_header_str, caption,
                 pos=wx.DefaultPosition, size=(500,300),
                 style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER):
        self.parent = parent
        wx.Dialog.__init__(self, parent, -1, caption, pos, size, style)
        x, y = pos
        if x == -1 and y == -1:
            self.CenterOnScreen(wx.BOTH)
        self.cur_selection = (0, 0)
        self.raw_header_str = raw_header_str
        self.raw_header_str_lower = raw_header_str.lower()
        self.text = text = wx.TextCtrl(self, -1, raw_header_str, style=wx.TE_MULTILINE | wx.TE_READONLY)

        font1 = wx.Font(12, wx.FONTFAMILY_MODERN, wx.NORMAL, wx.FONTWEIGHT_LIGHT, False)
        self.text.SetFont(font1)
        self.text.SetInitialSize((600,400))

        main_sizer = wx.BoxSizer(wx.VERTICAL)
        main_sizer.Add(self.text, 1, wx.EXPAND | wx.ALL, border=5)
        ok = wx.Button(self, wx.ID_OK, "OK")
        ok.SetDefault()
        ok.Bind(wx.EVT_BUTTON, self.on_close)

        buttons_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.search = wx.SearchCtrl(self, size=(200, -1), style=wx.TE_PROCESS_ENTER)
        self.search.ShowSearchButton(True)
        self.search.ShowCancelButton(True)
        # TODO:  make layout of search & OK button prettier (OK should be right-aligned properly)
        buttons_sizer.Add(self.search, 0, wx.ALL | wx.EXPAND)
        buttons_sizer.Add((315, 0), 1, wx.EXPAND)
        buttons_sizer.Add(ok, 0, wx.ALL)
        main_sizer.Add(buttons_sizer, 0, wx.ALL, border=4)
        self.SetSizerAndFit(main_sizer)
        self.set_cur_selection()
        self.Bind(wx.EVT_SEARCHCTRL_SEARCH_BTN, self.on_search, self.search)
        self.Bind(wx.EVT_TEXT_ENTER, self.on_search, self.search)
        self.last_search_str = ''
        self.last_find_index = 0
        self.is_dialog_still_open = True
        self.Bind(wx.EVT_CLOSE, self.on_close)
        new_id = wx.NewId()
        self.Bind(wx.EVT_MENU, self.on_cmd_w, id=new_id)
        self.SetAcceleratorTable(wx.AcceleratorTable([(wx.ACCEL_CMD, ord(str('w')), new_id)]))
Exemplo n.º 21
0
    def _bind(self):
        for btn in self.buttons:
            btn.Bind(wx.EVT_ENTER_WINDOW, self.OnEnter)
            btn.Bind(wx.EVT_LEAVE_WINDOW, self.OnLeave)
            btn.Bind(wx.EVT_SET_FOCUS, self.OnEnter)
            btn.Bind(wx.EVT_KILL_FOCUS, self.OnLeave)
            self.Bind(wx.EVT_BUTTON, self.OnBotton, btn)
        self.Bind(wx.EVT_PAINT, self.OnPaint)
        self.Bind(wx.EVT_RIGHT_UP, self.OnCancel)
        for ctrl in itertools.chain(self.GetChildren(), self.panel.GetChildren()):
            ctrl.Bind(wx.EVT_RIGHT_UP, self.OnCancel)

        backid = wx.NewId()  # 効果音を鳴らすためIDCANCELではなく別定義
        self.Bind(wx.EVT_MENU, self.OnCancel, id=backid)
        seq = [
            (wx.ACCEL_NORMAL, wx.WXK_BACK, backid),
            (wx.ACCEL_NORMAL, ord('_'), backid)]
        accel = wx.AcceleratorTable(seq)
        self.SetAcceleratorTable(accel)
Exemplo n.º 22
0
    def __init__(self, parent):
        wx.Panel.__init__(self, parent)

        parent.ToggleWindowStyle(wx.STAY_ON_TOP)  # 窗口置顶方便拖拽文件

        sampleList = ['原文', '对比', '差异', '压缩']
        st1 = wx.StaticText(self, -1, '')
        st2 = wx.StaticText(self, -1, '')
        st3 = wx.StaticText(self, -1, '产生结果:')
        ch1 = wx.Choice(self, -1, choices=sampleList)
        self.cb1 = wx.CheckBox(self, -1, '提取')
        self.cb2 = wx.CheckBox(self, -1, '追加')
        bt1 = wx.Button(self, label='打开')
        bt2 = wx.Button(self, label='保存')

        ch1.SetSelection(2)

        self.info = st1
        self.notebook = Notebook(self, sampleList)

        box = wx.BoxSizer(wx.HORIZONTAL)
        box.Add(st1, 1, wx.ALIGN_CENTER_VERTICAL)
        box.Add(st2, 0, wx.ALIGN_CENTER_VERTICAL)
        box.Add(st3, 0, wx.ALIGN_CENTER_VERTICAL)
        box.Add(ch1, 0)
        box.Add(self.cb1, 0, wx.EXPAND | wx.LEFT, 8)
        box.Add(self.cb2, 0, wx.EXPAND)
        box.Add(bt1, 0)
        box.Add(bt2, 0)

        sizer = wx.BoxSizer(wx.VERTICAL)
        sizer.Add(self.notebook, 1, wx.EXPAND | wx.ALL)
        sizer.Add(box, 0, wx.EXPAND)
        self.SetSizer(sizer)

        ch1.Bind(wx.EVT_CHOICE, self.OnChoice)
        bt1.Bind(wx.EVT_BUTTON, self.OnOpen)
        bt2.Bind(wx.EVT_BUTTON, self.OnSave)

        accelTbl = wx.AcceleratorTable([(wx.ACCEL_CTRL, ord('O'), bt1.GetId()),
                                        (wx.ACCEL_CTRL, ord('S'), bt2.GetId())
                                        ])
        self.SetAcceleratorTable(accelTbl)
Exemplo n.º 23
0
    def __init__(self, parent, *args, **kwargs):
        from .GLWrapperObjects import ObjectsManager
        from .GUIPanel3D import Panel3D

        wx.Panel.__init__(self, parent, *args, **kwargs)

        # --- Data
        self.parent = parent
        self.manager = ObjectsManager()
        #self.manager.addMiscObjects()
        #self.manager.setAnimationCallBack(self.animCallBack, self)

        # --- GUI
        self.panel3D = Panel3D(self, self.manager, hasAnimation=False)
        self.objPanel = ObjectPanel(self, self.manager)

        # --- Layout
        self.sizer = wx.BoxSizer()
        self.sizer.Add(self.objPanel, 0, wx.EXPAND)
        self.sizer.Add(self.panel3D, 1, wx.EXPAND)
        self.SetSizerAndFit(self.sizer)

        # --- Drop
        self.SetDropTarget(FileDropTarget(self))

        # --- Events

        # --- Shortcuts
        idFreqIncr = wx.NewId()
        idFreqDecr = wx.NewId()
        idAmplIncr = wx.NewId()
        idAmplDecr = wx.NewId()
        self.Bind(wx.EVT_MENU, self.onFreqIncr, id=idFreqIncr)
        self.Bind(wx.EVT_MENU, self.onFreqDecr, id=idFreqDecr)
        self.Bind(wx.EVT_MENU, self.onAmplIncr, id=idAmplIncr)
        self.Bind(wx.EVT_MENU, self.onAmplDecr, id=idAmplDecr)
        accel_tbl = wx.AcceleratorTable([
            (wx.ACCEL_NORMAL, ord('w'), idFreqIncr),
            (wx.ACCEL_NORMAL, ord('s'), idFreqDecr),
            (wx.ACCEL_NORMAL, ord('a'), idAmplIncr),
            (wx.ACCEL_NORMAL, ord('d'), idAmplDecr)
        ])
        self.SetAcceleratorTable(accel_tbl)
Exemplo n.º 24
0
 def _OnCreate(self):
     self.grid = self._GetGrid()
     self.grid.SetFocus()
     self.BindEvent(self.grid,
                    wx.grid.EVT_GRID_SELECT_CELL,
                    self.OnCellSelected,
                    skipEvent=False)
     self.subWindows = []
     self.panel = None
     super(GridEditWindow, self)._OnCreate()
     accelerators = [
         (wx.ACCEL_CTRL, ord('D'), self.deleteToolbarItem.GetId()),
         (wx.ACCEL_CTRL, ord('I'), self.insertToolbarItem.GetId()),
         (wx.ACCEL_CTRL, ord('R'), self.retrieveToolbarItem.GetId()),
         (wx.ACCEL_CTRL, ord('S'), self.saveToolbarItem.GetId())
     ]
     self.acceleratorTable = wx.AcceleratorTable(accelerators)
     self.SetAcceleratorTable(self.acceleratorTable)
     self.Retrieve()
Exemplo n.º 25
0
    def init_frame(self):
        self.frame = self.res.LoadFrame(None, 'frame')
        self.menuBar = self.res.LoadMenuBar("frame_menubar")
        self.frame.Bind(wx.EVT_MENU,
                        self.on_file_open,
                        id=xrc.XRCID("file_open_menu"))
        #self.frame.Bind(wx.EVT_MENU, self.on_file_save, id=xrc.XRCID("file_save_menu"))
        self.frame.Bind(wx.EVT_BUTTON,
                        self.on_file_open,
                        id=xrc.XRCID("file_path_button"))
        self.frame.Bind(wx.EVT_MENU, self.on_download_only, \
                        id=xrc.XRCID("process_download_only_menu"))
        self.frame.Bind(wx.EVT_MENU, self.OnText, \
                        id=xrc.XRCID("process_normal_menu"))
        self.frame.Bind(wx.EVT_MENU, self.OnCopy, \
                        id=xrc.XRCID("copy_menu"))
        self.frame.SetMenuBar(self.menuBar)
        self.panel = xrc.XRCCTRL(self.frame, 'panel_1')
        #self.frame.Bind(wx.EVT_BUTTON, self.OnSubmit, id=xrc.XRCID('button'))

        self.title_textctrl = xrc.XRCCTRL(self.panel, "title_textctrl")

        self.title_textctrl.Bind(wx.EVT_TEXT, self.OnText)

        self.output_textctrl = xrc.XRCCTRL(self.panel, "output_box")

        # set up accelerators
        accelEntries = []
        accelEntries.append(
            (wx.ACCEL_CTRL, ord('O'), xrc.XRCID("file_open_menu")))
        accelEntries.append(
            (wx.ACCEL_CTRL, ord('S'), xrc.XRCID("file_save_menu")))
        accelEntries.append(
            (wx.ACCEL_CTRL, ord('d'), xrc.XRCID("process_download_only_menu")))
        accelEntries.append(
            (wx.ACCEL_CTRL, ord('p'), xrc.XRCID("process_normal_menu")))
        accelEntries.append(
            (wx.ACCEL_CTRL | wx.ACCEL_SHIFT, ord('c'), xrc.XRCID("copy_menu")))

        accelTable = wx.AcceleratorTable(accelEntries)
        self.frame.SetAcceleratorTable(accelTable)

        self.frame.Show()
Exemplo n.º 26
0
    def __init__(self):
        wx.Frame.__init__(self, None, -1, self.title, size=(600, 600))

        panel = wx.Panel(self)
        notebook = wx.Notebook(panel)

        # start ipc server
        self.ipc = IPCThread()

        # Pages
        firstPage = FirstPage(notebook)
        notebook.AddPage(firstPage, 'First Page')
        self.first = notebook.GetPage(0)

        # Menu
        menubar = wx.MenuBar()
        file_menu = wx.Menu()
        exit_file = file_menu.Append(wx.ID_EXIT, 'Quit' + 'CTRL+Q',
                                     'Quit application')
        exitId = wx.NewId()
        accel_tbl = wx.AcceleratorTable([(wx.ACCEL_CTRL, ord('Q'), exitId)])
        menubar.Append(file_menu, 'File')
        self.SetMenuBar(menubar)
        self.Bind(wx.EVT_MENU, self.OnQuit, exit_file)
        self.Bind(wx.EVT_MENU, self.OnQuit, id=exitId)
        self.SetAcceleratorTable(accel_tbl)

        # Status Bar
        self.statusbar = self.CreateStatusBar(2)
        self.statusbar.SetStatusWidths([300, 300])
        self.statusbar.SetStatusText('Update:')

        # Subscriptions
        Publisher.subscribe(self.updateStatusBar, 'statusbar.update')

        # Sizing
        sizer = wx.BoxSizer()
        sizer.Add(notebook, 1, wx.EXPAND | wx.ALL)
        panel.SetSizer(sizer)
        panel.Layout()

        self.Show()
Exemplo n.º 27
0
    def __init__(self, *args, **kwargs):
        super(ListEditPanel, self).__init__(*args, **kwargs)

        self.lst = AutoWidthListCtrl(self, style=wx.LC_REPORT)
        self.lst.InsertColumn(0, "Index")
        self.lst.InsertColumn(1, "Type")
        self.lst.InsertColumn(2, "Value")
        self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnItemActivated, self.lst)

        listbtns = wx.Panel(self)

        add_button = wx.Button(listbtns, label='&Add')
        self.Bind(wx.EVT_BUTTON, self.OnAdd, add_button)

        remove_button = wx.Button(listbtns, label='&Remove')
        self.Bind(wx.EVT_BUTTON, self.OnRemove, remove_button)

        moveup = wx.Button(listbtns, label='Move &Up')
        self.Bind(wx.EVT_BUTTON, self.OnMoveUp, moveup)

        movedown = wx.Button(listbtns, label='Move &Down')
        self.Bind(wx.EVT_BUTTON, self.OnMoveDown, movedown)

        aTable = wx.AcceleratorTable([
            (wx.ACCEL_ALT, wx.WXK_UP, moveup.GetId()),
            (wx.ACCEL_ALT, wx.WXK_DOWN, movedown.GetId()),
            (wx.ACCEL_NORMAL, wx.WXK_INSERT, add_button.GetId()),
            (wx.ACCEL_NORMAL, wx.WXK_DELETE, remove_button.GetId())
        ])
        self.SetAcceleratorTable(aTable)

        vsizer = wx.BoxSizer(wx.VERTICAL)
        vsizer.Add(add_button)
        vsizer.Add(remove_button)
        vsizer.Add(moveup)
        vsizer.Add(movedown)
        listbtns.SetSizer(vsizer)

        hsizer = wx.BoxSizer(wx.HORIZONTAL)
        hsizer.Add(listbtns, 0, wx.ALIGN_CENTER_VERTICAL)
        hsizer.Add(self.lst, 1, wx.EXPAND)
        self.SetSizer(hsizer)
Exemplo n.º 28
0
    def set_keybindings(self, keybindings=None):
        """
        Method to easily set key bindings.

        Also sets up debug key bindings and events.
        """

        if keybindings is None:
            keybindings = []

        # Add key bindings.
        tbl = []
        bindings = keybindings
        for binding in keybindings:
            keyid = wx.NewId()
            self.Bind(wx.EVT_MENU, binding[2], id=keyid)
            tbl.append((binding[0], binding[1], keyid))

        if len(bindings):
            self.SetAcceleratorTable(wx.AcceleratorTable(tbl))
Exemplo n.º 29
0
    def __init__(self, datepicker, previous, next_):
        self.previous = previous
        self.datepicker = datepicker
        self.next = next_

        ID_PREVIOUS = wx.NewId()
        ID_NEXT = wx.NewId()
        datepicker.Bind(wx.EVT_BUTTON, self._focus_previous, id=ID_PREVIOUS)
        datepicker.Bind(wx.EVT_BUTTON, self._focus_next, id=ID_NEXT)

        accels = [
            wx.AcceleratorEntry(wx.ACCEL_SHIFT, wx.WXK_TAB, ID_PREVIOUS),
            wx.AcceleratorEntry(wx.ACCEL_CTRL | wx.ACCEL_SHIFT, wx.WXK_TAB,
                                ID_PREVIOUS),
            wx.AcceleratorEntry(wx.ACCEL_NORMAL, wx.WXK_TAB, ID_NEXT),
            wx.AcceleratorEntry(wx.ACCEL_CTRL, wx.WXK_TAB, ID_NEXT),
        ]

        acctable = wx.AcceleratorTable(accels)
        datepicker.SetAcceleratorTable(acctable)
Exemplo n.º 30
0
Arquivo: p.py Projeto: lujinda/pylot
 def createButton(self):
     qdButton = wx.Button(self.panel,
                          -1,
                          '贴吧一键签到',
                          pos=(200, 10),
                          size=(-1, -1))
     ctrl = wx.AcceleratorTable([(wx.ACCEL_CTRL, ord('Q'), qdButton.GetId())
                                 ])
     self.SetAcceleratorTable(ctrl)
     self.Bind(wx.EVT_BUTTON, self.OnAddQd, qdButton)
     self.buttonItem = []
     for data in self.buttonData():
         item = wx.Button(self.panel,
                          -1,
                          data[0],
                          pos=data[1],
                          size=data[2])
         self.buttonItem.append(item)
         self.Bind(wx.EVT_BUTTON, data[3], item)
     self.buttonItem[0].SetDefault()