def __init__(self, parent, mainframe):
        wx.Panel.__init__(self, parent, -1)

        self.mainframe = mainframe

        self.sizer = wx.BoxSizer(wx.VERTICAL)
        self.chkPep8 = wx.CheckBox(
            self, -1, tr("Check syntax for PEP8-style at python program run"))
        self.chkPep8.SetValue(self.mainframe.pref.auto_py_pep8_check)
        self.sizer.Add(self.chkPep8, 0, wx.ALL, 2)
        self.list = EasyList.AutoWidthListCtrl(self,
                                               style=wx.LC_REPORT
                                               | wx.LC_SINGLE_SEL)
        self.list.InsertColumn(0, tr("File path"))
        self.list.InsertColumn(1, tr("Line number"))
        self.list.InsertColumn(2, tr("Description"))
        self.list.SetColumnWidth(0, 400)
        self.list.SetColumnWidth(1, 60)
        self.list.SetColumnWidth(2, 200)

        self.sizer.Add(self.list, 1, wx.EXPAND)

        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(), self.OnEnter)
        wx.EVT_CHECKBOX(self.chkPep8, self.chkPep8.GetId(), self.OnCheckPep8)

        self.SetSizer(self.sizer)
        self.SetAutoLayout(True)
        def __init__(self, parent, id, title):
            wx.Dialog.__init__(self, parent, wx.ID_ANY, title)
            sizer = wx.BoxSizer(wx.HORIZONTAL)

            #list
            self.list = wx.ListCtrl(self, self.ID_LIST, wx.DefaultPosition,
                                    wx.DefaultSize)  #, wx.LC_SMALL_ICON)
            wx.EVT_LIST_ITEM_ACTIVATED(self, self.ID_LIST, self.OnConnServer)
            sizer.Add(self.list, 1, wx.EXPAND)

            # buttons
            sizer2 = wx.BoxSizer(wx.VERTICAL)
            btn = wx.Button(self, self.ID_ADDSERVER, "&Add Server")
            wx.EVT_BUTTON(self, self.ID_ADDSERVER, self.OnAddServer)
            sizer2.Add(btn, 0, wx.EXPAND)

            btn2 = wx.Button(self, self.ID_DELSERVER, "&Delete Server")
            wx.EVT_BUTTON(self, self.ID_DELSERVER, self.OnDelServer)
            sizer2.Add(btn2, 0, wx.EXPAND)

            btn2 = wx.Button(self, self.ID_CONSERVER, "&Connect to server")
            wx.EVT_BUTTON(self, self.ID_CONSERVER, self.OnConnServer)
            sizer2.Add(btn2, 1, wx.EXPAND)

            btn3 = wx.Button(self, self.ID_CANCEL, "Ca&ncel")
            wx.EVT_BUTTON(self, self.ID_CANCEL, self.OnCancel)
            sizer2.Add(btn3, 0, wx.EXPAND)

            sizer.Add(sizer2, 0, wx.EXPAND)
            self.SetSizer(sizer)

            self.loadServers()
            self.updateList()
    def __init__(self, parent, mainframe):
        self.initmixin()

        wx.Panel.__init__(self, parent, -1)

        self.mainframe = mainframe
        self.pref = mainframe.pref

        self.sizer = wx.BoxSizer(wx.HORIZONTAL)

        self.list = EasyList.AutoWidthListCtrl(self,
                                               style=wx.LC_REPORT
                                               | wx.LC_SINGLE_SEL)
        self.list.InsertColumn(0, tr("Important"))
        self.list.InsertColumn(1, tr("Line"))
        self.list.InsertColumn(2, tr("Due date"))
        self.list.InsertColumn(3, tr("Description"))
        self.list.InsertColumn(4, tr("Filename"))
        self.list.SetColumnWidth(0, self.pref.todo_column1)
        self.list.SetColumnWidth(1, self.pref.todo_column2)
        self.list.SetColumnWidth(2, self.pref.todo_column3)
        self.list.SetColumnWidth(3, self.pref.todo_column4)
        self.list.SetColumnWidth(4, self.pref.todo_column5)

        self.sizer.Add(self.list, 1, wx.EXPAND)

        self.editor = None

        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(), self.OnEnter)
        wx.EVT_LIST_COL_END_DRAG(self.list, self.list.GetId(), self.OnSize)
        self.SetSizer(self.sizer)
        self.SetAutoLayout(True)
    def createWidgets(self):
        self.listCtrl = wxskinListCtrl(self,
                                       ID_LISTCTRL,
                                       style=wx.LC_REPORT | wx.SUNKEN_BORDER
                                       | wx.LC_SINGLE_SEL | wx.LC_VRULES
                                       | wx.LC_HRULES)
        self.listCtrl.InsertColumn(0, "Name")
        self.listCtrl.InsertColumn(1, "Number")

        ColumnSorterMixin.__init__(self, 2)

        self.currentItem = 0

        wx.EVT_SIZE(self, self.OnSize)
        wx.EVT_LIST_ITEM_SELECTED(self, ID_LISTCTRL, self.OnItemSelected)
        wx.EVT_LIST_ITEM_ACTIVATED(self, ID_LISTCTRL, self.OnItemActivated)
        wx.EVT_CLOSE(self, self.closeWindow)

        wx.EVT_LEFT_DCLICK(self.listCtrl, self.OnPopupEdit)
        wx.EVT_RIGHT_DOWN(self.listCtrl, self.OnRightDown)

        # for wxMSW and wxGTK respectively
        wx.EVT_COMMAND_RIGHT_CLICK(self.listCtrl, ID_LISTCTRL,
                                   self.OnRightClick)
        wx.EVT_RIGHT_UP(self.listCtrl, self.OnRightClick)
Exemple #5
0
    def __register_interests(self):
        wx.EVT_LIST_ITEM_ACTIVATED(self, ID_ALLERGY_LIST,
                                   self._on_allergy_activated)

        # client internal signals
        gmDispatcher.connect(signal=u'post_patient_selection',
                             receiver=self._schedule_data_reget)
Exemple #6
0
    def __init__(self, parent, mainframe):
        wx.Panel.__init__(self, parent, -1)

        self.mainframe = mainframe
        self.pref = Globals.pref

        self.sizer = sizer = ui.VBox(
            namebinding='widget').create(self).auto_layout()
        box = sizer.add(ui.HBox)
        box.add(ui.Check(self.pref.pylint_convention, tr('Convention')),
                name='convention').bind('check', self.OnCheckConvention)
        box.add(ui.Check(self.pref.pylint_refactor, tr('Refactor')),
                name='refactor').bind('check', self.OnCheckRefactor)
        box.add(ui.Check(self.pref.pylint_warning, tr('Warning')),
                name='warning').bind('check', self.OnCheckWarning)
        box.add(ui.Check(self.pref.pylint_error, tr('Error')),
                name='error').bind('check', self.OnCheckError)
        box.add(ui.Check(self.pref.pylint_fatal, tr('Fatal')),
                name='fatal').bind('check', self.OnCheckFatal)
        self.list = CheckList.List(self,
                                   columns=[
                                       (tr("Filename"), 400, 'left'),
                                       (tr("Type"), 100, 'left'),
                                       (tr("LineNo"), 60, 'left'),
                                       (tr("Description"), 200, 'left'),
                                   ],
                                   style=wx.LC_REPORT | wx.SUNKEN_BORDER
                                   | wx.LC_SINGLE_SEL)

        sizer.add(self.list, proportion=1, flag=wx.EXPAND)

        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(), self.OnEnter)

        sizer.auto_fit(0)
Exemple #7
0
 def CreateControls(self):
     """Create our sub-controls"""
     wx.EVT_LIST_COL_CLICK(self, self.GetId(), self.OnReorder)
     wx.EVT_LIST_ITEM_SELECTED(self, self.GetId(), self.OnNodeSelected)
     wx.EVT_MOTION(self, self.OnMouseMove)
     wx.EVT_LIST_ITEM_ACTIVATED(self, self.GetId(), self.OnNodeActivated)
     self.CreateColumns()
Exemple #8
0
 def init_events(self):
     tID = self.GetId()
     wx.EVT_LIST_BEGIN_DRAG(self, tID, self.OnMouseDown)
     wx.EVT_LEFT_DCLICK(self, self.OnDoubleClick)
     wx.EVT_LIST_ITEM_SELECTED(self, tID, self.OnItemSelected)
     wx.EVT_LIST_ITEM_ACTIVATED(self, tID, self.OnItemSelected)
     wx.EVT_LIST_ITEM_RIGHT_CLICK(self, tID, self.OnRightClick)
     wx.EVT_CHAR(self, self.OnKeyPress)
Exemple #9
0
    def __init__(self, parent, ID, mainControl):
        EnhancedListControl.__init__(self,
                                     parent,
                                     ID,
                                     style=wx.LC_REPORT | wx.LC_SINGLE_SEL
                                     | wx.LC_NO_HEADER)

        self.mainControl = mainControl

        self.InsertColumn(0, u"", width=3000)

        self.updatingThreadHolder = Utilities.ThreadHolder()
        self.tocList = [
        ]  # List of tuples (char. start in text, headLevel, heading text)
        self.tocListStarts = [
        ]  # List of the char. start items of self.tocList
        self.mainControl.getMiscEvent().addListener(self)
        self.sizeVisible = True  # False if this window has a size
        # that it can't be read (one dim. less than 5 pixels)
        self.ignoreOnChange = False

        self.docPagePresenterSink = wxKeyFunctionSink(
            (("loaded current doc page", self.onUpdateNeeded),
             ("changed live text", self.onUpdateNeeded)
             #                 ("options changed", self.onUpdateNeeded)
             ))

        self.__sinkApp = wxKeyFunctionSink(
            (("options changed", self.onUpdateNeeded), ),
            wx.GetApp().getMiscEvent(), self)

        #         if not self.mainControl.isMainWindowConstructed():
        #             # Install event handler to wait for construction
        #             self.__sinkMainFrame = wxKeyFunctionSink((
        #                     ("constructed main window", self.onConstructedMainWindow),
        #             ), self.mainControl.getMiscEvent(), self)
        #         else:
        #             self.onConstructedMainWindow(None)

        self.__sinkMainFrame = wxKeyFunctionSink(
            (("idle visible", self.onIdleVisible), ),
            self.mainControl.getMiscEvent(), self)

        currPres = self.mainControl.getCurrentDocPagePresenter()
        if currPres is not None:
            self.docPagePresenterSink.setEventSource(currPres.getMiscEvent())

        self.lastSelection = (-1, -1)

        self.updateList()

        wx.EVT_WINDOW_DESTROY(self, self.OnDestroy)
        wx.EVT_LIST_ITEM_SELECTED(self, self.GetId(), self.OnItemSelected)
        wx.EVT_LIST_ITEM_ACTIVATED(self, self.GetId(), self.OnItemActivated)
        wx.EVT_SIZE(self, self.OnSize)

        wx.EVT_KILL_FOCUS(self, self.OnKillFocus)
    def __init__(self, parent, ID, mainControl):
        EnhancedListControl.__init__(self,
                                     parent,
                                     ID,
                                     style=wx.LC_REPORT | wx.LC_SINGLE_SEL)

        self.mainControl = mainControl

        self.InsertColumn(0, _(u"Page Name"), width=100)
        self.InsertColumn(1, _(u"Visited"), width=100)

        colConfig = self.mainControl.getConfig().get(
            "main", "wikiWideHistory_columnWidths", u"100,100")

        self.setColWidthsByConfigString(colConfig)

        #         self.updatingThreadHolder = Utilities.ThreadHolder()

        self.mainControl.getMiscEvent().addListener(self)

        self.layerVisible = True
        self.sizeVisible = True  # False if this window has a size
        # that it can't be read (one dim. less than 5 pixels)
        self.ignoreOnChange = False

        self.historyOverviewSink = wxKeyFunctionSink(
            (("changed wiki wide history", self.onUpdateNeeded), ))

        self.__sinkApp = wxKeyFunctionSink(
            (("options changed", self.onUpdateNeeded), ),
            wx.GetApp().getMiscEvent(), self)

        if not self.mainControl.isMainWindowConstructed():
            # Install event handler to wait for construction
            self.__sinkMainFrame = wxKeyFunctionSink(
                (("constructed main window", self.onConstructedMainWindow), ),
                self.mainControl.getMiscEvent(), self)
        else:
            self.onConstructedMainWindow(None)

        wx.EVT_CONTEXT_MENU(self, self.OnContextMenu)

        wx.EVT_WINDOW_DESTROY(self, self.OnDestroy)
        #         wx.EVT_LIST_ITEM_SELECTED(self, self.GetId(), self.OnItemSelected)
        wx.EVT_LIST_ITEM_ACTIVATED(self, self.GetId(), self.OnItemActivated)
        wx.EVT_SIZE(self, self.OnSize)
        #         wx.EVT_KEY_DOWN(self, self.OnKeyDown)
        wx.EVT_MIDDLE_DOWN(self, self.OnMiddleButtonDown)

        wx.EVT_MENU(self, GUI_ID.CMD_WIKI_WIDE_HISTORY_DELETE_ALL,
                    self.OnCmdDeleteAll)

        self.onWikiStateChanged(None)
Exemple #11
0
 def __init__(self, panel, **options):
     wx.ListCtrl.__init__(self, parent=panel, style=panel.LIST_STYLE)
     self.imageList = wx.ImageList(16, 16)
     self.pyIcon = self.imageList.Add(panel.icons['source_py.png'])
     self.files = []
     self.panel = panel
     self.SetImageList(self.imageList, wx.IMAGE_LIST_SMALL)
     self.SetDropTarget(DropAdd(self.add))
     self.SetHelpText(help.RECENT)
     #events
     wx.EVT_LIST_ITEM_SELECTED(self, -1, self.onLeftClick)
     wx.EVT_LIST_ITEM_ACTIVATED(self, -1, self.onRightClick)
     wx.EVT_LIST_ITEM_MIDDLE_CLICK(self, -1, self.onMiddleClick)
Exemple #12
0
 def CreateControls(self):
     """Create our sub-controls"""
     wx.EVT_LIST_COL_CLICK(self, self.GetId(), self.OnReorder)
     wx.EVT_LIST_ITEM_SELECTED(self, self.GetId(), self.OnNodeSelected)
     wx.EVT_MOTION(self, self.OnMouseMove)
     wx.EVT_LIST_ITEM_ACTIVATED(self, self.GetId(), self.OnNodeActivated)
     for i, column in enumerate(self.columns):
         column.index = i
         self.InsertColumn(i, column.name)
         if not windows or column.targetWidth is None:
             self.SetColumnWidth(i, wx.LIST_AUTOSIZE)
         else:
             self.SetColumnWidth(i, column.targetWidth)
     self.SetItemCount(0)
    def __init__(self, parent):
        wx.Dialog.__init__(self,
                           parent,
                           -1,
                           tr('Plugin Manager'),
                           size=(600, 400))
        self.parent = parent
        self.mainframe = parent
        self.state = {}

        self.plugins = self.loadPlugins()
        for key in self.plugins.keys():
            self.state[key] = False
        text = file(self.mainframe.plugin_initfile).read()
        re_i = re.compile("^\s+import\s+(\w+)$", re.M)
        result = re_i.findall(text)
        for key in result:
            self.state[key] = True

        box = wx.BoxSizer(wx.VERTICAL)
        self.list = CheckList.CheckList(self,
                                        columns=[
                                            (tr("Name"), 120, 'left'),
                                            (tr("Description"), 220, 'left'),
                                            (tr("Author"), 80, 'left'),
                                            (tr("Version"), 40, 'center'),
                                            (tr("Date"), 80, 'left'),
                                        ],
                                        style=wx.LC_REPORT | wx.SUNKEN_BORDER)
        self.list.load(self.getdata)

        box.Add(self.list, 1, wx.EXPAND | wx.ALL, 5)
        box2 = wx.BoxSizer(wx.HORIZONTAL)
        self.btnOK = wx.Button(self, wx.ID_OK, tr("OK"), size=(80, -1))
        self.btnOK.SetDefault()
        box2.Add(self.btnOK, 0, 0, 5)
        self.btnCancel = wx.Button(self,
                                   wx.ID_CANCEL,
                                   tr("Cancel"),
                                   size=(80, -1))
        box2.Add(self.btnCancel, 0, 0, 5)
        box.Add(box2, 0, wx.ALIGN_CENTER | wx.ALL, 5)

        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(), self.OnEnter)
        wx.EVT_BUTTON(self.btnOK, wx.ID_OK, self.OnOK)

        self.SetSizer(box)
        self.SetAutoLayout(True)
Exemple #14
0
    def __init__(self,
                 parent=None,
                 id=-1,
                 title="BitPim Protocol Analyser",
                 data=None):
        """Start the show

        @param data: data to show.  If None, then it will be obtained from the clipboard
        """
        wx.Frame.__init__(self,
                          parent,
                          id,
                          title,
                          size=(800, 750),
                          style=wx.DEFAULT_FRAME_STYLE)
        # add a status bar to display various status items
        self.CreateStatusBar(len(self._pane_widths))
        self.SetStatusWidths(self._pane_widths)

        topsplit = wx.SplitterWindow(self,
                                     -1,
                                     style=wx.SP_3D | wx.SP_LIVE_UPDATE)

        self.list = Eventlist(topsplit, 12)

        botsplit = wx.SplitterWindow(topsplit,
                                     -1,
                                     style=wx.SP_3D | wx.SP_LIVE_UPDATE)
        topsplit.SplitHorizontally(self.list, botsplit, 300)

        self.tree = wx.TreeCtrl(botsplit, 23, style=wx.TR_DEFAULT_STYLE)
        self.hex = hexeditor.HexEditor(botsplit,
                                       _set_pos=self.set_pos,
                                       _set_sel=self.set_sel,
                                       _set_val=self.set_val)
        botsplit.SplitHorizontally(self.tree, self.hex, 200)

        if data is None:
            data = self.getclipboarddata()

        self.newdata(data)

        wx.EVT_LIST_ITEM_SELECTED(self, self.list.GetId(), self.OnListBoxItem)
        wx.EVT_LIST_ITEM_ACTIVATED(self, self.list.GetId(), self.OnListBoxItem)

        wx.EVT_TREE_SEL_CHANGED(self, self.tree.GetId(), self.OnTreeSelection)

        self.Show()
    def __build(self):
        #
        # Construct the GUI.
        #
        # self.sizer is the overall hsizer
        # self.list is the list control widget living in self.sizer
        # bsizer is the vsizer that holds the buttons.
        #
        # We invoke _buildButtons to fill in the button sizer; to be
        # provided by our subclass.
        #
        # We also invoke _configList to configure the list control.
        #
        # If a subclass wishes to add somethign below the list control, it
        # can define _buildExtra(parent, sizer), where parent is the
        # parent panel for any extra widgets, and sizer is the overall
        # vsizer to which the extra-builder should add its widgets.
        #

        self.topsizer = wx.BoxSizer(wx.VERTICAL)
        self.sizer = wx.BoxSizer(wx.HORIZONTAL)

        self.list = wx.ListCtrl(self,
                                -1,
                                style=wx.LC_REPORT | wx.LC_SINGLE_SEL
                                | wx.LC_VRULES)
        self.sizer.Add(self.list, 1, wx.EXPAND)

        wx.EVT_LIST_ITEM_SELECTED(self.list, self.list.GetId(),
                                  self.OnListItemSelected)
        wx.EVT_LIST_ITEM_DESELECTED(self.list, self.list.GetId(),
                                    self.OnListItemDeselected)
        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(),
                                   self.OnListItemActivated)

        bsizer = wx.BoxSizer(wx.VERTICAL)
        self.sizer.Add(bsizer, 0, wx.EXPAND)

        self._buildButtons(bsizer)

        self.topsizer.Add(self.sizer, 1, wx.EXPAND)
        self._buildExtra(self, self.topsizer)

        self._initList()

        self.SetSizer(self.topsizer)
        self.SetAutoLayout(1)
        self.Fit()
Exemple #16
0
    def __init__(self, parent, image_size=(16, 16), **traits):
        """ Creates a new table viewer.

        'parent' is the toolkit-specific control that is the table's parent.

        'image_size' is a tuple in the form (int width, int height) that
        specifies the size of the images (if any) displayed in the table.

        """

        # Base-class constructor.
        super(TableViewer, self).__init__(**traits)

        # Create the toolkit-specific control.
        self.control = table = _Table(parent, image_size, self)

        # Get our actual id.
        wxid = table.GetId()

        # Table events.
        wx.EVT_LIST_ITEM_SELECTED(table, wxid, self._on_item_selected)
        wx.EVT_LIST_ITEM_ACTIVATED(table, wxid, self._on_item_activated)
        wx.EVT_LIST_BEGIN_DRAG(table, wxid, self._on_list_begin_drag)
        wx.EVT_LIST_BEGIN_RDRAG(table, wxid, self._on_list_begin_rdrag)

        wx.EVT_LIST_BEGIN_LABEL_EDIT(
            table, wxid, self._on_list_begin_label_edit
        )

        wx.EVT_LIST_END_LABEL_EDIT(
            table, wxid, self._on_list_end_label_edit
        )

        # fixme: Bug[732104] indicates that this event does not get fired
        # in a virtual list control (it *does* get fired in a regular list
        # control 8^().
        wx.EVT_LIST_ITEM_DESELECTED(table, wxid, self._on_item_deselected)

        # Create the widget!
        self._create_widget(parent)

        # We use a dynamic handler instead of a static handler here, as we
        # don't want to react if the input is set in the constructor.
        self.on_trait_change(self._on_input_changed, 'input')

        return
Exemple #17
0
 def __init__(self, parent):
     #--Columns
     self.cols = conf.settings['mash.utils.cols']
     self.colAligns = conf.settings['mash.utils.colAligns']
     self.colNames = conf.settings['mash.colNames']
     self.colReverse = conf.settings.getChanged('mash.utils.colReverse')
     self.colWidths = conf.settings['mash.utils.colWidths']
     #--Data/Items
     self.data = mosh.UtilsData = mosh.UtilsData()
     self.sort = conf.settings['mash.utils.sort']
     #--Links
     self.mainMenu = UtilsList.mainMenu
     self.itemMenu = UtilsList.itemMenu
     #--Parent init
     gui.List.__init__(self,parent,-1,ctrlStyle=(wx.LC_REPORT|wx.SUNKEN_BORDER))
     #--Events
     wx.EVT_LIST_ITEM_SELECTED(self,self.listId,self.OnItemSelected)
     wx.EVT_LIST_ITEM_ACTIVATED(self,self.listId,self.OnItemActivated)
Exemple #18
0
    def __init__(self, parent, id, mainControl):
        d = wx.PrePanel()
        self.PostCreate(d)

        self.mainControl = mainControl
        res = wx.xrc.XmlResource.Get()
        res.LoadOnPanel(self, parent, "LogWindow")
        self.ctrls = XrcControls(self)
        self.ctrls.lcEntries.InsertColumn(0, _(u"Message"))

        self.messages = []
        self.sizeVisible = True

        wx.EVT_LIST_ITEM_ACTIVATED(self, GUI_ID.lcEntries,
                                   self.OnEntryActivated)
        wx.EVT_BUTTON(self, GUI_ID.btnClearLog, self.OnClearLog)
        wx.EVT_BUTTON(self, GUI_ID.btnHideLogWindow, self.OnHideLogWindow)
        wx.EVT_SIZE(self, self.OnSize)
Exemple #19
0
    def __init__(self):
        wxDialogWithHelpers.__init__(
            self,
            None,
            wx.NewId(),
            "Testing wxListCtrlWithHelpers", (1, 1), (600, 400),
            style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER)

        self.button = wxButtonWithHelpers(self, wx.NewId(), "Button",
                                          wx.DefaultPosition, wx.DefaultSize)
        wx.EVT_BUTTON(self, self.button.GetId(), self.on_button)

        self.button_was_clicked = False

        self.list = \
            wxListCtrlWithHelpers(self, wx.NewId(),
                                                       style = wx.LC_REPORT | wx.LC_HRULES | wx.LC_SINGLE_SEL)

        self.list.InsertColumn(0, "This is Col #1")
        self.list.InsertColumn(1, "This is Col #2")
        self.list.InsertColumn(2, "This is Col #3")

        self.list.InsertStringItem(0, "item 0-0")
        self.list.SetStringItem(0, 1, "item 0-1")
        self.list.SetStringItem(0, 2, "item 0-2")

        self.list.InsertStringItem(1, "item 1-0")
        self.list.SetStringItem(1, 1, "item 1-1")
        self.list.SetStringItem(1, 2, "item 1-2")

        wx.EVT_LIST_ITEM_SELECTED(self.list, self.list.GetId(),
                                  self.on_list_ctrl_selected)
        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(),
                                   self.on_list_ctrl_item_activated)
        wx.EVT_CHAR(self.list, self.on_list_char)

        self.list_ctrl_item_selected = None
        self.last_key_pressed = {}
        self.last_item_selected = {}
        self.last_list_item_activated = None
Exemple #20
0
    def __init__(self, mainControl, dialog, parent, ID):
        EnhancedListControl.__init__(self,
                                     parent,
                                     ID,
                                     style=wx.LC_REPORT | wx.LC_NO_HEADER)

        self.bagList = []
        self.mainControl = mainControl
        self.dialog = dialog
        self.contextMenuItem = -1

        self.InsertColumn(0, u"", width=1)  # wiki word
        self.InsertColumn(1, u"", width=1)  # trash date

        #         wx.EVT_CONTEXT_MENU(self, self.OnContextMenu)
        wx.EVT_LIST_ITEM_ACTIVATED(self, self.GetId(),
                                   self.dialog.OnCmdRestoreSelected)
        wx.EVT_KEY_DOWN(self, self.OnKeyDown)
        #         wx.EVT_MENU(self, GUI_ID.CMD_TRASHBAG_RESTORE,
        #                 self.OnCmdTrashBagRestore)

        self.updateContent()
    def __init__(self, parent, id, title):
        wx.Frame.__init__(self,
                          parent,
                          wx.NewId(),
                          title,
                          size=(200, 100),
                          style=wx.DEFAULT_FRAME_STYLE
                          | wx.NO_FULL_REPAINT_ON_RESIZE)

        main_sizer = wx.BoxSizer(wx.VERTICAL)

        self.items = [('a1', 'a2', 'a3', 'a4'), ('b1', 'b2' 'b3', 'b4')]
        self.list = wx.ListCtrl(self,
                                wx.NewId(),
                                wx.DefaultPosition,
                                wx.DefaultSize,
                                style=wx.LC_REPORT | wx.LC_HRULES
                                | wx.LC_SINGLE_SEL)

        self.list.InsertColumn(0, "")
        self.list.InsertColumn(1, "Written form")

        for ii in range(len(self.items)):
            self.list.InsertStringItem(ii, "%d" % (ii + 1))
            self.list.SetStringItem(ii, 1, self.items[ii][0])
            self.list.SetStringItem(ii, 1, self.items[ii][1])

        self.list.SetColumnWidth(0, wx.LIST_AUTOSIZE_USEHEADER)
        self.list.SetColumnWidth(1, wx.LIST_AUTOSIZE_USEHEADER)

        self.list.ScrollList(0, len(self.items))
        main_sizer.Add(self.list, 1, wx.EXPAND | wx.ALL)

        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(),
                                   self.on_item_activated)
        wx.EVT_LIST_ITEM_SELECTED(self.list, self.list.GetId(),
                                  self.on_item_selected)

        self.Show(True)
    def dispose(self):
        """ Disposes of the contents of an editor.
        """
        # Remove all of the wx event handlers:
        control = self.control
        parent = control.GetParent()
        id = control.GetId()
        wx.EVT_LIST_BEGIN_DRAG(parent, id, None)
        wx.EVT_LIST_BEGIN_LABEL_EDIT(parent, id, None)
        wx.EVT_LIST_END_LABEL_EDIT(parent, id, None)
        wx.EVT_LIST_ITEM_SELECTED(parent, id, None)
        wx.EVT_LIST_ITEM_DESELECTED(parent, id, None)
        wx.EVT_LIST_KEY_DOWN(parent, id, None)
        wx.EVT_LIST_ITEM_ACTIVATED(parent, id, None)
        wx.EVT_LIST_COL_END_DRAG(parent, id, None)
        wx.EVT_LIST_COL_RIGHT_CLICK(parent, id, None)
        wx.EVT_LIST_COL_CLICK(parent, id, None)
        wx.EVT_LEFT_DOWN(control, None)
        wx.EVT_LEFT_DCLICK(control, None)
        wx.EVT_RIGHT_DOWN(control, None)
        wx.EVT_RIGHT_DCLICK(control, None)
        wx.EVT_MOTION(control, None)
        wx.EVT_SIZE(control, None)

        self.context_object.on_trait_change(
            self.update_editor,
            self.extended_name + '_items',
            remove=True)

        if self.factory.auto_update:
            self.context_object.on_trait_change(
                self.refresh_editor, self.extended_name + '.-', remove=True)

        self.on_trait_change(self._refresh, 'adapter.+update', remove=True)
        self.on_trait_change(self._rebuild_all, 'adapter.columns',
                             remove=True)

        super(TabularEditor, self).dispose()
Exemple #23
0
	def __init__(self, parent, aFileName = None):
		wx.Panel.__init__(self, parent, -1, style=wx.WANTS_CHARS)

		# our actual list
		tID = wx.NewId()
		self.list = gmXdtListCtrl(
			self,
			tID,
			style=wx.LC_REPORT | wx.SUNKEN_BORDER | wx.LC_VRULES
		)#|wx.LC_HRULES)

		self.list.InsertColumn(0, _("XDT field"))
		self.list.InsertColumn(1, _("XDT field content"))

		self.filename = aFileName

		# set up events
		wx.EVT_SIZE(self, self.OnSize)

		wx.EVT_LIST_ITEM_SELECTED(self, tID, self.OnItemSelected)
		wx.EVT_LIST_ITEM_DESELECTED(self, tID, self.OnItemDeselected)
		wx.EVT_LIST_ITEM_ACTIVATED(self, tID, self.OnItemActivated)
		wx.EVT_LIST_DELETE_ITEM(self, tID, self.OnItemDelete)

		wx.EVT_LIST_COL_CLICK(self, tID, self.OnColClick)
		wx.EVT_LIST_COL_RIGHT_CLICK(self, tID, self.OnColRightClick)
#		wx.EVT_LIST_COL_BEGIN_DRAG(self, tID, self.OnColBeginDrag)
#		wx.EVT_LIST_COL_DRAGGING(self, tID, self.OnColDragging)
#		wx.EVT_LIST_COL_END_DRAG(self, tID, self.OnColEndDrag)

		wx.EVT_LEFT_DCLICK(self.list, self.OnDoubleClick)
		wx.EVT_RIGHT_DOWN(self.list, self.OnRightDown)

		if wx.Platform == '__WXMSW__':
			wx.EVT_COMMAND_RIGHT_CLICK(self.list, tID, self.OnRightClick)
		elif wx.Platform == '__WXGTK__':
			wx.EVT_RIGHT_UP(self.list, self.OnRightClick)
Exemple #24
0
    def __init__(self, mw, parent, id=-1):
        wx.Panel.__init__(self, parent, id)
        self.mw=mw
        vbs=wx.BoxSizer(wx.VERTICAL)

        # General
        bs=wx.StaticBoxSizer(wx.StaticBox(self, -1, "General"), wx.HORIZONTAL)
        bs.Add(wx.StaticText(self, -1, "Fingerprint"), 0, wx.ALL|wx.ALIGN_CENTRE_VERTICAL, 5)
        self.fingerprint=wx.TextCtrl(self, -1, "a", style=wx.TE_READONLY,  size=(300,-1))
        bs.Add(self.fingerprint, 0, wx.EXPAND|wx.ALL|wx.ALIGN_CENTRE_VERTICAL, 5)
        bs.Add(wx.StaticText(self, -1, ""), 0, wx.ALL, 5) # spacer
        bs.Add(wx.StaticText(self, -1, "Port"), 0, wx.ALL|wx.ALIGN_CENTRE_VERTICAL, 5)
        self.porttext=wx.StaticText(self, -1, "<No Port>")
        bs.Add(self.porttext, 0, wx.ALL|wx.ALIGN_CENTRE_VERTICAL, 5)
        vbs.Add(bs, 0, wx.EXPAND|wx.ALL, 5)

        # authorization
        bs=wx.StaticBoxSizer(wx.StaticBox(self, -1, "Authorization"), wx.VERTICAL)
        hbs=wx.BoxSizer(wx.HORIZONTAL)
        butadd=wx.Button(self, wx.NewId(), "Add ...")
        hbs.Add(butadd, 0, wx.ALL|wx.ALIGN_CENTRE_VERTICAL, 5)
        hbs.Add(wx.StaticText(self, -1, ""), 0, wx.ALL, 5) # spacer
        self.butedit=wx.Button(self, wx.NewId(), "Edit ...")
        self.butedit.Enable(False)
        hbs.Add(self.butedit, 0, wx.ALL|wx.ALIGN_CENTRE_VERTICAL, 5)
        hbs.Add(wx.StaticText(self, -1, ""), 0, wx.ALL, 5) # spacer
        self.butdelete=wx.Button(self, wx.NewId(), "Delete")
        self.butdelete.Enable(False)
        hbs.Add(self.butdelete, 0, wx.ALL|wx.ALIGN_CENTRE_VERTICAL, 5)
        bs.Add(hbs, 0, wx.EXPAND|wx.ALL, 5)

        wx.EVT_BUTTON(self, butadd.GetId(), self.OnAddAuth)
        wx.EVT_BUTTON(self, self.butedit.GetId(), self.OnEditAuth)
        wx.EVT_BUTTON(self, self.butdelete.GetId(), self.OnDeleteAuth)

        # and the authorization listview
        self.authlist=wx.ListCtrl(self, wx.NewId(), style=wx.LC_REPORT|wx.LC_SINGLE_SEL)
        self.authlist.InsertColumn(0, "User")
        self.authlist.InsertColumn(1, "Allowed Addresses")
        self.authlist.InsertColumn(2, "Expires")
        self.authlist.SetColumnWidth(0, 300)
        self.authlist.SetColumnWidth(1, 300)
        self.authlist.SetColumnWidth(2, 100)
        bs.Add(self.authlist, 1, wx.EXPAND|wx.ALL, 5)
        
        vbs.Add(bs, 1, wx.EXPAND|wx.ALL, 5)
        self.itemDataMap={}
        wx.lib.mixins.listctrl.ColumnSorterMixin.__init__(self,3)

        wx.EVT_LIST_ITEM_ACTIVATED(self.authlist, self.authlist.GetId(), self.OnEditAuth)
        wx.EVT_LIST_ITEM_SELECTED(self.authlist, self.authlist.GetId(), self.OnAuthListItemFondled)
        wx.EVT_LIST_ITEM_DESELECTED(self.authlist, self.authlist.GetId(), self.OnAuthListItemFondled)
        wx.EVT_LIST_ITEM_FOCUSED(self.authlist, self.authlist.GetId(), self.OnAuthListItemFondled)

        # devices
        bs=wx.StaticBoxSizer(wx.StaticBox(self, -1, "Devices"), wx.VERTICAL)
        buttoggle=wx.Button(self, wx.NewId(), "Toggle Allowed")
        bs.Add(buttoggle, 0, wx.ALL, 5)
        self.devicelist=wx.ListCtrl(self, wx.NewId(), style=wx.LC_REPORT|wx.LC_SINGLE_SEL)
        self.devicelist.InsertColumn(0, "Allowed")
        self.devicelist.InsertColumn(1, "Name")
        self.devicelist.InsertColumn(2, "Available")
        self.devicelist.InsertColumn(3, "Description")
        self.devicelist.SetColumnWidth(0, 100)
        self.devicelist.SetColumnWidth(1, 300)
        self.devicelist.SetColumnWidth(2, 100)
        self.devicelist.SetColumnWidth(3, 300)
        bs.Add(self.devicelist, 1, wx.EXPAND|wx.ALL, 5)

        vbs.Add(bs, 1, wx.EXPAND|wx.ALL, 5)
        
        self.setupauthorization()
        self.SortListItems()
        
        self.SetSizer(vbs)
        self.SetAutoLayout(True)
Exemple #25
0
    def __init__(self, parent, quote, filter = False, market = None, filterEnabled=True, tradableOnly=False):

        iTradeSizedDialog.__init__(self,parent,-1,message('quote_select_title'), size=(460, 460),style=wx.DEFAULT_DIALOG_STYLE | wx.RESIZE_BORDER)

        self.m_parent = parent

        # init
        if quote:
            self.m_isin = quote.isin()
            self.m_ticker = quote.ticker()
            self.m_market = quote.market()
            self.m_place = quote.place()
        else:
            self.m_isin = ''
            self.m_ticker = ''
            self.m_market = market
            self.m_place = market2place(market)

        self.m_filter = filter
        self.m_qlist = QLIST_ALL
        self.m_qlist_tradableOnly = tradableOnly

        self.m_editing = True

        tID = wx.NewId()
        self.m_imagelist = wx.ImageList(16,16)
        self.sm_q = self.m_imagelist.Add(wx.Bitmap(os.path.join(itrade_config.dirRes, 'quote.png')))
        self.sm_i = self.m_imagelist.Add(wx.Bitmap(os.path.join(itrade_config.dirRes, 'invalid.png')))
        self.sm_up = self.m_imagelist.Add(wx.Bitmap(os.path.join(itrade_config.dirRes, 'sm_up.png')))
        self.sm_dn = self.m_imagelist.Add(wx.Bitmap(os.path.join(itrade_config.dirRes, 'sm_down.png')))

        # container
        container = self.GetContentsPane()
        container.SetSizerType("vertical")

        # resizable pane
        pane = sc.SizedPanel(container, -1)
        pane.SetSizerType("horizontal")
        pane.SetSizerProps(expand=True)

        # pane : ISIN or Name selection
        label = wx.StaticText(pane, -1, message('quote_select_isin'))
        label.SetSizerProps(valign='center')

        tID = wx.NewId()
        self.wxIsinCtrl = wx.TextCtrl(pane, tID, self.m_isin)
        self.wxIsinCtrl.SetSizerProps(expand=True)
        wx.EVT_TEXT(self, tID, self.OnISINEdited)

        label = wx.StaticText(pane, -1, message('quote_select_ticker'))
        label.SetSizerProps(valign='center')

        tID = wx.NewId()
        self.wxTickerCtrl = wx.TextCtrl(pane, tID, self.m_ticker)
        self.wxTickerCtrl.SetSizerProps(expand=True)
        wx.EVT_TEXT(self, tID, self.OnTickerEdited)

        # resizable pane
        pane = sc.SizedPanel(container, -1)
        pane.SetSizerType("horizontal")
        pane.SetSizerProps(expand=True)

        # pane : market & list filters
        self.wxLabelMarketCtrl = wx.StaticText(pane, -1, message('quote_select_market'))
        self.wxLabelMarketCtrl.SetSizerProps(valign='center')

        self.wxMarketCtrl = wx.ComboBox(pane,-1, "", style=wx.CB_DROPDOWN|wx.CB_READONLY)
        self.wxMarketCtrl.SetSizerProps(expand=True)
        wx.EVT_COMBOBOX(self,self.wxMarketCtrl.GetId(),self.OnMarket)

        count = 0
        idx = 0
        for eachCtrl in list_of_markets(bFilterMode=False):
            self.wxMarketCtrl.Append(eachCtrl,eachCtrl)
            if eachCtrl==self.m_market:
                idx = count
            count = count + 1

        self.wxMarketCtrl.SetSelection(idx)

        self.wxLabelQListCtrl = wx.StaticText(pane, -1, message('quote_select_list'))
        self.wxLabelQListCtrl.SetSizerProps(valign='center')

        self.wxQListCtrl = wx.ComboBox(pane,-1, "", style=wx.CB_DROPDOWN|wx.CB_READONLY)
        self.wxQListCtrl.SetSizerProps(expand=True)
        wx.EVT_COMBOBOX(self,self.wxQListCtrl.GetId(),self.OnQuoteList)

        self.wxQListCtrl.Append(message('quote_select_alllist'),QLIST_ALL)
        self.wxQListCtrl.Append(message('quote_select_syslist'),QLIST_SYSTEM)
        self.wxQListCtrl.Append(message('quote_select_usrlist'),QLIST_USER)
        if not self.m_qlist_tradableOnly:
            self.wxQListCtrl.Append(message('quote_select_indiceslist'),QLIST_INDICES)
        self.wxQListCtrl.Append(message('quote_select_trackerslist'),QLIST_TRACKERS)
        self.wxQListCtrl.SetSelection(self.m_qlist)

        # select traded or not
        tID = wx.NewId()
        self.wxFilterCtrl = wx.CheckBox(container, tID, message('quote_select_filterfield'))
        self.wxFilterCtrl.SetValue(self.m_filter)
        wx.EVT_CHECKBOX(self, tID, self.OnFilter)
        self.wxFilterCtrl.Enable(filterEnabled)

        # List
        self.m_list = iTradeSelectorListCtrl(container, tID, style = wx.LC_REPORT | wx.SUNKEN_BORDER,size=(440, 380))
        self.m_list.SetSizerProps(expand=True)
        self.m_list.SetImageList(self.m_imagelist, wx.IMAGE_LIST_SMALL)

        # Now that the list exists we can init the other base class,
        # see wxPython/lib/mixins/listctrl.py
        wxl.ColumnSorterMixin.__init__(self, 5)

        wx.EVT_LIST_COL_CLICK(self, tID, self.OnColClick)
        wx.EVT_LIST_ITEM_ACTIVATED(self, tID, self.OnItemActivated)
        wx.EVT_LIST_ITEM_SELECTED(self, tID, self.OnItemSelected)

        # Last Row : OK and Cancel
        btnpane = sc.SizedPanel(container, -1)
        btnpane.SetSizerType("horizontal")
        btnpane.SetSizerProps(expand=True)

        # context help
        if wx.Platform != "__WXMSW__":
            btn = wx.ContextHelpButton(btnpane)

        # OK
        self.wxOK = wx.Button(btnpane, wx.ID_OK, message('valid'))
        self.wxOK.SetDefault()
        self.wxOK.SetHelpText(message('valid_desc'))
        wx.EVT_BUTTON(self, wx.ID_OK, self.OnValid)

        # CANCEL
        btn = wx.Button(btnpane, wx.ID_CANCEL, message('cancel'))
        btn.SetHelpText(message('cancel_desc'))

        # set the right filter and fit everything
        self.OnFilter()

        EVT_POSTINIT(self, self.OnPostInit)
        wx.PostEvent(self,PostInitEvent())
Exemple #26
0
    def __init__(self, parent, mainframe):
        self.parent = parent
        self.mainframe = mainframe
        self.defm3u = os.path.join(Globals.userpath, 'default.m3u')
        if not os.path.isfile(self.defm3u):
            fout = open(self.defm3u, 'w')
            fout.write('#EXTM3U\n')
            fout.close()
        self.m3u = PyM3u.M3u(self.defm3u)
        self.mainframe.m3u = self.m3u
        self.m3u.Load()
        self.mainframe.selectedid = -1
        wx.Panel.__init__(self, parent, -1)
        box = wx.BoxSizer(wx.VERTICAL)
        box1 = wx.BoxSizer(wx.HORIZONTAL)

        self.m3u_filename = wx.StaticText(self, -1, '')
        self.playingname = wx.StaticText(self, -1, '')
        box.Add(self.m3u_filename, 0, wx.ALL | wx.EXPAND, 3)
        box.Add(self.playingname, 0, wx.ALL | wx.EXPAND, 3)

        #add button
        self.ID_ADD = wx.NewId()
        self.btnAdd = wx.Button(self, self.ID_ADD, tr('Add'))
        box1.Add(self.btnAdd, 0, wx.RIGHT, 2)

        self.ID_ADDDIR = wx.NewId()
        self.btnAddDir = wx.Button(self, self.ID_ADDDIR, tr('AddDir'))
        box1.Add(self.btnAddDir, 0, wx.RIGHT, 2)

        self.ID_DEL = wx.NewId()
        self.btnDel = wx.Button(self, self.ID_DEL, tr('Delete'))
        box1.Add(self.btnDel, 0, wx.RIGHT, 2)

        self.ID_OPEN = wx.NewId()
        self.btnOpen = wx.Button(self, self.ID_OPEN, tr('OpenList'))
        box1.Add(self.btnOpen, 0, wx.RIGHT, 2)

        self.ID_SAVE = wx.NewId()
        self.btnSave = wx.Button(self, self.ID_SAVE, tr('SaveList'))
        box1.Add(self.btnSave, 0, wx.RIGHT, 2)

        box.Add(box1, 0, wx.ALL, 3)

        #create listctrl
        self.musiclist = CheckList.List(self,
                                        columns=[
                                            (tr("Id"), 30, 'left'),
                                            (tr("Author - Title"), 280,
                                             'left'),
                                            (tr("Time"), 80, 'right'),
                                            (tr("Path"), 400, 'left'),
                                        ],
                                        style=wx.LC_REPORT | wx.SUNKEN_BORDER)

        box.Add(self.musiclist, 1, wx.EXPAND)

        wx.EVT_BUTTON(self.btnAdd, self.ID_ADD, self.OnAdd)
        wx.EVT_BUTTON(self.btnAddDir, self.ID_ADDDIR, self.OnAddDir)
        wx.EVT_BUTTON(self.btnDel, self.ID_DEL, self.OnDel)
        wx.EVT_BUTTON(self.btnOpen, self.ID_OPEN, self.OnOpen)
        wx.EVT_BUTTON(self.btnSave, self.ID_SAVE, self.OnSave)
        wx.EVT_LIST_ITEM_ACTIVATED(self.musiclist, self.musiclist.GetId(),
                                   self.OnActivated)
        wx.EVT_LIST_ITEM_SELECTED(self.musiclist, self.musiclist.GetId(),
                                  self.OnSelected)

        self.SetSizer(box)
        self.SetAutoLayout(True)
        self.OnUpdateData()
Exemple #27
0
    def __init__(self, parent, title=''):
        if hasattr(Globals.pref, 'searchwin_pos') and hasattr(
                Globals.pref, 'searchwin_size'):
            searchwin_pos = Globals.pref.searchwin_pos
            searchwin_size = Globals.pref.searchwin_size
            wx.Dialog.__init__(self,
                               parent,
                               -1,
                               title,
                               searchwin_pos,
                               searchwin_size,
                               style=wx.RESIZE_BORDER
                               | wx.DEFAULT_DIALOG_STYLE)
        else:
            wx.Dialog.__init__(self,
                               parent,
                               -1,
                               title,
                               size=(600, 400),
                               style=wx.RESIZE_BORDER
                               | wx.DEFAULT_DIALOG_STYLE)
            self.Center()

        self.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_BTNFACE))
        sizer = wx.BoxSizer(wx.VERTICAL)

        sizer1 = wx.BoxSizer(wx.HORIZONTAL)
        label = wx.StaticText(self, -1, tr("Search for:"))
        sizer1.Add(label, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 2)
        self.text = wx.TextCtrl(self, -1, "", style=wx.TE_PROCESS_ENTER)
        self.impact_check = wx.CheckBox(self, -1, tr("Impact Mode"))
        self.autoclose_check = wx.CheckBox(self, -1, tr("Auto Close"))
        sizer1.Add(self.text, 1, wx.ALL, 2)
        sizer1.Add(self.impact_check, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL, 2)
        sizer1.Add(self.autoclose_check, 0, wx.ALL | wx.ALIGN_CENTER_VERTICAL,
                   2)

        self.list = CheckList.List(self,
                                   columns=[
                                       (tr("Function"), 300, 'left'),
                                       (tr("ShortCuts"), 120, 'left'),
                                       (tr("Impact"), 80, 'left'),
                                   ],
                                   style=wx.LC_REPORT | wx.SUNKEN_BORDER
                                   | wx.LC_SINGLE_SEL)
        self.commandar = Commands.getinstance()
        self.cmdbuf = {}
        self.load(self.commandar.search(''))

        sizer.Add(sizer1, 0, wx.EXPAND)
        sizer.Add(self.list, 1, wx.EXPAND, 2)

        btnCancel = wx.Button(self, wx.ID_CANCEL, tr("Cancel"))
        sizer.Add(btnCancel, 0, wx.ALIGN_CENTER, 2)

        wx.EVT_CLOSE(self, self.OnClose)
        wx.EVT_SIZE(self, self.OnSize)
        wx.EVT_BUTTON(self, wx.ID_CANCEL, self.OnClose)
        wx.EVT_TEXT(self.text, self.text.GetId(), self.OnChange)
        wx.EVT_KEY_DOWN(self.text, self.OnKeyDown)
        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(), self.OnEnter)
        wx.EVT_CHECKBOX(self.impact_check, self.impact_check.GetId(),
                        self.OnCheckImpact)
        wx.EVT_CHECKBOX(self.autoclose_check, self.autoclose_check.GetId(),
                        self.OnCheckAutoClose)

        self.impact_check.SetValue(Globals.pref.commands_impact)
        self.autoclose_check.SetValue(Globals.pref.commands_autoclose)

        Globals.mainframe.command_mode = True

        self.SetSizer(sizer)
        self.SetAutoLayout(True)
Exemple #28
0
    def init(self, parent):
        """ Finishes initializing the editor by creating the underlying toolkit
            widget.
        """
        factory = self.factory

        # Set up the adapter to use:
        self.adapter = factory.adapter

        # Determine the style to use for the list control:
        style = wx.LC_REPORT | wx.LC_VIRTUAL | wx.BORDER_NONE

        if factory.editable_labels:
            style |= wx.LC_EDIT_LABELS

        if factory.horizontal_lines:
            style |= wx.LC_HRULES

        if factory.vertical_lines:
            style |= wx.LC_VRULES

        if not factory.multi_select:
            style |= wx.LC_SINGLE_SEL

        if not factory.show_titles:
            style |= wx.LC_NO_HEADER

        # Create the list control and link it back to us:
        self.control = control = wxListCtrl(
            parent,
            -1,
            style=style,
            can_edit=factory.editable,
            edit_labels=factory.editable_labels)
        control._editor = self

        # Create the list control column:
        #fixme: what do we do here?
        #control.InsertColumn( 0, '' )

        # Set up the list control's event handlers:
        id = control.GetId()
        wx.EVT_LIST_BEGIN_DRAG(parent, id, self._begin_drag)
        wx.EVT_LIST_BEGIN_LABEL_EDIT(parent, id, self._begin_label_edit)
        wx.EVT_LIST_END_LABEL_EDIT(parent, id, self._end_label_edit)
        wx.EVT_LIST_ITEM_SELECTED(parent, id, self._item_selected)
        wx.EVT_LIST_ITEM_DESELECTED(parent, id, self._item_selected)
        wx.EVT_LIST_KEY_DOWN(parent, id, self._key_down)
        wx.EVT_LIST_ITEM_ACTIVATED(parent, id, self._item_activated)
        wx.EVT_LIST_COL_END_DRAG(parent, id, self._size_modified)
        wx.EVT_LIST_COL_RIGHT_CLICK(parent, id, self._column_right_clicked)
        wx.EVT_LIST_COL_CLICK(parent, id, self._column_clicked)
        wx.EVT_LEFT_DOWN(control, self._left_down)
        wx.EVT_LEFT_DCLICK(control, self._left_dclick)
        wx.EVT_RIGHT_DOWN(control, self._right_down)
        wx.EVT_RIGHT_DCLICK(control, self._right_dclick)
        wx.EVT_MOTION(control, self._motion)
        wx.EVT_SIZE(control, self._size_modified)

        # Set up the drag and drop target:
        if PythonDropTarget is not None:
            control.SetDropTarget(PythonDropTarget(self))

        # Set up the selection listener (if necessary):
        if factory.multi_select:
            self.sync_value(factory.selected,
                            'multi_selected',
                            'both',
                            is_list=True)
            self.sync_value(factory.selected_row,
                            'multi_selected_rows',
                            'both',
                            is_list=True)
        else:
            self.sync_value(factory.selected, 'selected', 'both')
            self.sync_value(factory.selected_row, 'selected_row', 'both')

        # Synchronize other interesting traits as necessary:
        self.sync_value(factory.update, 'update', 'from')

        self.sync_value(factory.activated, 'activated', 'to')
        self.sync_value(factory.activated_row, 'activated_row', 'to')

        self.sync_value(factory.clicked, 'clicked', 'to')
        self.sync_value(factory.dclicked, 'dclicked', 'to')

        self.sync_value(factory.right_clicked, 'right_clicked', 'to')
        self.sync_value(factory.right_dclicked, 'right_dclicked', 'to')

        self.sync_value(factory.column_clicked, 'column_clicked', 'to')

        # Make sure we listen for 'items' changes as well as complete list
        # replacements:
        try:
            self.context_object.on_trait_change(self.update_editor,
                                                self.extended_name + '_items',
                                                dispatch='ui')
        except:
            pass

        # If the user has requested automatic update, attempt to set up the
        # appropriate listeners:
        if factory.auto_update:
            self.context_object.on_trait_change(self.refresh_editor,
                                                self.extended_name + '.-',
                                                dispatch='ui')

        # Create the mapping from user supplied images to wx.ImageList indices:
        for image_resource in factory.images:
            self._add_image(image_resource)

        # Refresh the editor whenever the adapter changes:
        self.on_trait_change(self._refresh, 'adapter.+update', dispatch='ui')

        # Rebuild the editor columns and headers whenever the adapter's
        # 'columns' changes:
        self.on_trait_change(self._rebuild_all,
                             'adapter.columns',
                             dispatch='ui')

        # Make sure the tabular view gets initialized:
        self._rebuild()

        # Set the list control's tooltip:
        self.set_tooltip()
Exemple #29
0
    def __init__(self, parent, ID, mainControl):
        EnhancedListControl.__init__(self, parent, ID,
                style=wx.LC_REPORT | wx.LC_SINGLE_SEL | wx.LC_NO_HEADER)

        self.mainControl = mainControl

        self.InsertColumn(0, u"", width=3000)

        self.updatingThreadHolder = Utilities.ThreadHolder()
        
        self.versionEntries = []
        self.versionOverview = None
        self.activationMode = self._ACTIVATION_MODE_NORMAL
        
        self.mainControl.getMiscEvent().addListener(self)

        self.layerVisible = True
        self.sizeVisible = True   # False if this window has a size
                # that it can't be read (one dim. less than 5 pixels)
        self.ignoreOnChange = False

        self.docPagePresenterSink = wxKeyFunctionSink((
                ("loaded current doc page", self.onUpdateNeeded),
        ))

        self.versionOverviewSink = wxKeyFunctionSink((
                ("changed version overview", self.onUpdateNeeded),
                ("invalidated version overview", self.onUpdateNeeded)
        ))

        self.__sinkApp = wxKeyFunctionSink((
                ("options changed", self.onUpdateNeeded),
        ), wx.GetApp().getMiscEvent(), self)

        if not self.mainControl.isMainWindowConstructed():
            # Install event handler to wait for construction
            self.__sinkMainFrame = wxKeyFunctionSink((
                    ("constructed main window", self.onConstructedMainWindow),
            ), self.mainControl.getMiscEvent(), self)
        else:
            self.onConstructedMainWindow(None)

#         currPres = self.mainControl.getCurrentDocPagePresenter()
#         if currPres is not None:
#             self.docPagePresenterSink.setEventSource(currPres.getMiscEvent())

        self.docPagePresenterSink.setEventSource(
                self.mainControl.getCurrentPresenterProxyEvent())

        self.lastSelection = (-1, -1)

        self.updateList()

        wx.EVT_CONTEXT_MENU(self, self.OnContextMenu)

        wx.EVT_WINDOW_DESTROY(self, self.OnDestroy)
        wx.EVT_LIST_ITEM_SELECTED(self, self.GetId(), self.OnItemSelected)
        wx.EVT_LIST_ITEM_ACTIVATED(self, self.GetId(), self.OnItemActivated)
        wx.EVT_SIZE(self, self.OnSize)
        wx.EVT_KEY_DOWN(self, self.OnKeyDown)

        wx.EVT_MENU(self, GUI_ID.CMD_VERSIONING_DIFF_INLINE,
                self.OnCmdDiffInline)

        wx.EVT_MENU(self, GUI_ID.CMD_VERSIONING_DIFF_SET_FROM,
                self.OnCmdDiffSetFrom)
        wx.EVT_MENU(self, GUI_ID.CMD_VERSIONING_DIFF_SET_TO,
                self.OnCmdDiffSetTo)

        wx.EVT_MENU(self, GUI_ID.CMD_VERSIONING_DELETE_VERSION,
                self.OnCmdDeleteVersion)
        wx.EVT_MENU(self, GUI_ID.CMD_VERSIONING_DELETE_ALL_VERSION_DATA,
                self.OnCmdDeleteAllVersionData)
Exemple #30
0
    def __init__(self, parent, mainframe):
        self.initmixin()
        self.parent = parent
        self.mainframe = mainframe
        self.pref = self.mainframe.pref
        wx.Panel.__init__(self, parent, -1)

        self.box = wx.BoxSizer(wx.VERTICAL)

        self.box1 = wx.BoxSizer(wx.HORIZONTAL)

        obj = wx.StaticText(self, -1, tr('Account:'))
        self.box1.Add(obj, 0, wx.ALIGN_CENTER_VERTICAL|wx.RIGHT, 2)
        self.ID_SITELIST = wx.NewId()
        self.cmbSite= wx.ComboBox(self, self.ID_SITELIST, "", choices=self.mainframe.pref.blog_sites, size=(100, 20), style=wx.CB_READONLY)
        self.box1.Add(self.cmbSite, 0, wx.ALIGN_CENTER_VERTICAL|wx.RIGHT, 2)

        #manage
        self.ID_MANAGE = wx.NewId()
        self.btnManage = wx.Button(self, self.ID_MANAGE, tr('Manage'), size=(50, -1))
        self.box1.Add(self.btnManage, 0, wx.ALIGN_CENTER_VERTICAL|wx.RIGHT, 2)

        #new button
        self.ID_NEW= wx.NewId()
        self.btnNew = wx.Button(self, self.ID_NEW, tr('New'), size=(40, -1))
        self.box1.Add(self.btnNew, 0, wx.ALIGN_CENTER_VERTICAL|wx.RIGHT, 2)

        #delete button
        self.ID_DELETE= wx.NewId()
        self.btnDelete = wx.Button(self, self.ID_DELETE, tr('Del'), size=(40, -1))
        self.box1.Add(self.btnDelete, 0, wx.ALIGN_CENTER_VERTICAL|wx.RIGHT, 2)

        #get last post
        self.ID_GETPOSTS = wx.NewId()
        self.btnGetposts = wx.Button(self, self.ID_GETPOSTS, tr('Get Post'), size=(65, -1))
        self.box1.Add(self.btnGetposts, 0, wx.ALIGN_CENTER_VERTICAL)

        #get posts more
        self.ID_GETPOSTSMORE = wx.NewId()
        self.btnGetpostsMore = wx.Button(self, self.ID_GETPOSTSMORE, tr('>'), size=(15, -1))
        self.box1.Add(self.btnGetpostsMore, 0, wx.ALIGN_CENTER_VERTICAL|wx.RIGHT, 2)

        #get posts more
        self.ID_CACHE = wx.NewId()
        self.btnCache = wx.Button(self, self.ID_CACHE, tr('Cache'), size=(40, -1))
        self.box1.Add(self.btnCache, 0, wx.ALIGN_CENTER_VERTICAL|wx.RIGHT, 2)

        self.box.Add(self.box1, 0, wx.ALL|wx.EXPAND, 2)

        self.list = wx.ListCtrl(self, -1, style=wx.LC_REPORT | wx.LC_SINGLE_SEL)
        self.box.Add(self.list, 1, wx.EXPAND)

        self.SetSizer(self.box)
        self.SetAutoLayout(True)

        self.load()
        self.data = []
        self.initlist()

        wx.EVT_UPDATE_UI(self.btnDelete, self.ID_DELETE, self.OnUpdateUI)
        wx.EVT_BUTTON(self.btnManage, self.ID_MANAGE, self.OnManage)
        wx.EVT_BUTTON(self.btnNew, self.ID_NEW, self.OnNew)
        wx.EVT_BUTTON(self.btnDelete, self.ID_DELETE, self.OnDelete)
        wx.EVT_BUTTON(self.btnGetposts, self.ID_GETPOSTS, self.OnGetPosts)
        wx.EVT_BUTTON(self.btnGetpostsMore, self.ID_GETPOSTSMORE, self.OnGetPostsMore)
        wx.EVT_BUTTON(self.btnCache, self.ID_CACHE, self.OnCache)
        wx.EVT_LIST_ITEM_ACTIVATED(self.list, self.list.GetId(), self.OnEntryEntered)
        wx.EVT_COMBOBOX(self.cmbSite, self.ID_SITELIST, self.OnSiteChanged)

        if self.popmenulist:
            self.popmenu = makemenu.makepopmenu(self, self.popmenulist, self.imagelist)
            wx.EVT_LIST_ITEM_RIGHT_CLICK(self.list, self.list.GetId(), self.OnRClick)
            wx.EVT_RIGHT_UP(self.list, self.OnRClick)

        self.callplugin('init', self)