def __DoLayout(self): """Layout the log viewer window""" # Setup ControlBar ctrlbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) if wx.Platform == '__WXGTK__': ctrlbar.SetWindowStyle(eclib.CTRLBAR_STYLE_DEFAULT) # View Choice self._srcfilter = wx.Choice(ctrlbar, wx.ID_ANY, choices=[]) ctrlbar.AddControl( wx.StaticText(ctrlbar, label=_("Show output from") + ":")) ctrlbar.AddControl(self._srcfilter) # Clear Button ctrlbar.AddStretchSpacer() cbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_DELETE), wx.ART_MENU) if cbmp.IsNull() or not cbmp.IsOk(): cbmp = None clear = eclib.PlateButton(ctrlbar, wx.ID_CLEAR, _("Clear"), cbmp, style=eclib.PB_STYLE_NOBG) ctrlbar.AddControl(clear, wx.ALIGN_RIGHT) ctrlbar.SetVMargin(1, 1) self.SetControlBar(ctrlbar)
def __DoLayout(self): """Layout and setup the results screen ui""" ctrlbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) if wx.Platform == '__WXGTK__': ctrlbar.SetWindowStyle(eclib.CTRLBAR_STYLE_DEFAULT) ctrlbar.AddStretchSpacer() # Cancel Button cbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_STOP), wx.ART_MENU) if cbmp.IsNull() or not cbmp.IsOk(): cbmp = wx.ArtProvider.GetBitmap(wx.ART_ERROR, wx.ART_MENU, (16, 16)) cancel = eclib.PlateButton(ctrlbar, wx.ID_CANCEL, _("Cancel"), cbmp, style=eclib.PB_STYLE_NOBG) self._cancelb = cancel ctrlbar.AddControl(cancel, wx.ALIGN_RIGHT) # Clear Button cbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_DELETE), wx.ART_MENU) if cbmp.IsNull() or not cbmp.IsOk(): cbmp = None clear = eclib.PlateButton(ctrlbar, wx.ID_CLEAR, _("Clear"), cbmp, style=eclib.PB_STYLE_NOBG) self._clearb = clear ctrlbar.AddControl(clear, wx.ALIGN_RIGHT) ctrlbar.SetVMargin(1, 1) self.SetControlBar(ctrlbar) self.SetWindow(self._list)
def __init__(self, parent): super(BookmarkWindow, self).__init__(parent) # Attributes self._list = BookmarkList(self) #Setup self.SetWindow(self._list) ctrlbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) ctrlbar.SetVMargin(2, 2) if wx.Platform == '__WXGTK__': ctrlbar.SetWindowStyle(eclib.CTRLBAR_STYLE_DEFAULT) self.SetControlBar(ctrlbar) # Populate the listctrl with anything already in the cache marks = EdBookmarks.GetMarks() for fname, linenum in marks: self._list.AddBookmark(fname, unicode(linenum + 1)) # Message Handlers ed_msg.Subscribe(self.OnBookmark, ed_msg.EDMSG_UI_STC_BOOKMARK) # Event Handlers self.Bind(wx.EVT_WINDOW_DESTROY, self.OnDestroy, self) self.Bind(wx.EVT_LIST_ITEM_ACTIVATED, self.OnItemActivate, self._list)
def __init__(self, parent, id, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.NO_BORDER | wx.TAB_TRAVERSAL): eclib.ControlBox.__init__(self, parent, id, pos, size, style) # Attributes self._mw = parent filters = u"".join(syntax.syntax.GenFileFilters()) self._menbar = BrowserMenuBar(self) self._browser = FileBrowser(self, ID_FILEBROWSE, dir=wx.GetHomeDir(), style=wx.DIRCTRL_SHOW_FILTERS | wx.DIRCTRL_EDIT_LABELS | wx.BORDER_SUNKEN, filter=filters) self._browser.SetMainWindow(self._mw) self._config = PathMarkConfig(ed_glob.CONFIG['CACHE_DIR']) for item in self._config.GetItemLabels(): self._menbar.AddItem(item) # Setup hidden files checkbox bbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) if wx.Platform == '__WXGTK__': bbar.SetWindowStyle(eclib.CTRLBAR_STYLE_DEFAULT) self._showh_cb = wx.CheckBox(bbar, self.ID_SHOW_HIDDEN, _("Show Hidden Files")) self._showh_cb.SetValue(False) bbar.AddControl(self._showh_cb, wx.ALIGN_LEFT) # Layout self.SetWindow(self._browser) self.SetControlBar(self._menbar, wx.TOP) self.SetControlBar(bbar, wx.BOTTOM) if wx.Platform == '__WXMSW__': bbar.Hide() self.Layout() #---- Add Menu Items ----# viewm = self._mw.GetMenuBar().GetMenuByName("view") self._mi = viewm.InsertAlpha(ID_FILEBROWSE, _("File Browser"), _("Open File Browser Sidepanel"), wx.ITEM_CHECK, after=ed_glob.ID_PRE_MARK) # Event Handlers self.Bind(wx.EVT_CHECKBOX, self.OnCheck) self.Bind(wx.EVT_MENU, self.OnMenu) # Messages ed_msg.Subscribe(self.OnUpdateFont, ed_msg.EDMSG_DSP_FONT)
def __DoLayout(self): """Layout the window""" #-- Setup ControlBar --# ctrlbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) if wx.Platform == '__WXGTK__': ctrlbar.SetWindowStyle(eclib.CTRLBAR_STYLE_DEFAULT) # Preferences prefbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_PREF), wx.ART_MENU) pref = eclib.PlateButton(ctrlbar, ID_SETTINGS, '', prefbmp, style=eclib.PB_STYLE_NOBG) pref.SetToolTipString(_("Settings")) ctrlbar.AddControl(pref, wx.ALIGN_LEFT) # Exe ctrlbar.AddControl(wx.StaticText(ctrlbar, label=_("exec") + ":"), wx.ALIGN_LEFT) exe = wx.Choice(ctrlbar, ID_EXECUTABLE) exe.SetToolTipString(_("Program Executable Command")) ctrlbar.AddControl(exe, wx.ALIGN_LEFT) # Script Label ctrlbar.AddControl((5, 5), wx.ALIGN_LEFT) self._chFiles = wx.Choice(ctrlbar, choices=['']) ctrlbar.AddControl(self._chFiles, wx.ALIGN_LEFT) # Args ctrlbar.AddControl((5, 5), wx.ALIGN_LEFT) ctrlbar.AddControl(wx.StaticText(ctrlbar, label=_("args") + ":"), wx.ALIGN_LEFT) args = wx.TextCtrl(ctrlbar, ID_ARGS) args.SetToolTipString(_("Script Arguments")) ctrlbar.AddControl(args, wx.ALIGN_LEFT) # Spacer ctrlbar.AddStretchSpacer() # Run Button rbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_BIN_FILE), wx.ART_MENU) if rbmp.IsNull() or not rbmp.IsOk(): rbmp = None run = eclib.PlateButton(ctrlbar, ID_RUN, _("Run"), rbmp, style=eclib.PB_STYLE_NOBG) ctrlbar.AddControl(run, wx.ALIGN_RIGHT) # Clear Button cbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_DELETE), wx.ART_MENU) if cbmp.IsNull() or not cbmp.IsOk(): cbmp = None clear = eclib.PlateButton(ctrlbar, wx.ID_CLEAR, _("Clear"), cbmp, style=eclib.PB_STYLE_NOBG) ctrlbar.AddControl(clear, wx.ALIGN_RIGHT) ctrlbar.SetVMargin(1, 1) self.SetControlBar(ctrlbar) self.SetWindow(self._buffer)
def __init__(self, parent, log): eclib.SegmentBook.__init__(self, parent, style=eclib.SEGBOOK_STYLE_NO_DIVIDERS|\ eclib.SEGBOOK_STYLE_LABELS) # Attributes self.log = log self._menu = None self._imglst = list() # self._imglst = wx.ImageList(32, 32, mask=False) # Setup bmp = IconFile.Monkey.GetBitmap() self._imglst.append(bmp) # self._imglst.Add(bmp) bmp = IconFile.Devil.GetBitmap() self._imglst.append(bmp) # self._imglst.Add(bmp) self.SetUsePyImageList(True) # HACK workaround for mask issues on msw self.SetImageList(self._imglst) self.AddPage(wx.TextCtrl(self, style=wx.TE_MULTILINE, value="Hello"), "Text Editor", img_id=0) bpanel = wx.Panel(self) bpanel.SetBackgroundColour(wx.BLUE) self.AddPage(bpanel, "Blue Panel", img_id=1) self.AddPage(wx.TextCtrl(self, style=wx.TE_MULTILINE, value="Test Control"), "Text Editor2", img_id=0) todo = wx.ListBox(self, choices=[ 'http://editra.org', 'http://wxpython.org', 'http://python.org', 'http://xkcd.com' ]) self.AddPage(todo, "Favorites", img_id=1) # Add a sub controlbar cbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) cbar.SetVMargin(3, 3) self.SetControlBar(cbar, wx.BOTTOM) cbar.AddControl(wx.Button(cbar, wx.ID_NEW)) cbar.AddControl(wx.Button(cbar, wx.ID_DELETE)) # Event Handlers self.Bind(eclib.EVT_SB_PAGE_CHANGING, self.OnPageChanging) self.Bind(eclib.EVT_SB_PAGE_CHANGED, self.OnPageChanged) self.Bind(eclib.EVT_SB_PAGE_CONTEXT_MENU, self.OnPageMenu) self.Bind(wx.EVT_BUTTON, self.OnButton) self.Bind(wx.EVT_MENU, self.OnButton, id=wx.ID_NEW) self.Bind(wx.EVT_MENU, self.OnButton, id=wx.ID_DELETE)
def __init__(self, parent): """Initialize the window""" super(ShelfWindow, self).__init__(parent) # Attributes # Parent is ed_shelf.EdShelfBook self._mw = ed_basewin.FindMainWindow(self) self._log = wx.GetApp().GetLog() self._listCtrl = CheckResultsList(self, style=wx.LC_REPORT|wx.BORDER_NONE) self._jobtimer = wx.Timer(self) self._checker = None self._curfile = u"" self._hasrun = False # Setup self._listCtrl.set_mainwindow(self._mw) ctrlbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) ctrlbar.SetVMargin(2, 2) if wx.Platform == '__WXGTK__': ctrlbar.SetWindowStyle(eclib.CTRLBAR_STYLE_DEFAULT) rbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_PREF), wx.ART_MENU) if rbmp.IsNull() or not rbmp.IsOk(): rbmp = None self.cfgbtn = eclib.PlateButton(ctrlbar, wx.ID_ANY, bmp=rbmp, style=eclib.PB_STYLE_NOBG) self.cfgbtn.SetToolTipString(_("Configure")) ctrlbar.AddControl(self.cfgbtn, wx.ALIGN_LEFT) self._lbl = wx.StaticText(ctrlbar) ctrlbar.AddControl(self._lbl) ctrlbar.AddStretchSpacer() rbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_BIN_FILE), wx.ART_MENU) if rbmp.IsNull() or not rbmp.IsOk(): rbmp = None self.runbtn = eclib.PlateButton(ctrlbar, wx.ID_ANY, _("Lint"), rbmp, style=eclib.PB_STYLE_NOBG) ctrlbar.AddControl(self.runbtn, wx.ALIGN_RIGHT) # Layout self.SetWindow(self._listCtrl) self.SetControlBar(ctrlbar, wx.TOP) # Event Handlers self.Bind(wx.EVT_TIMER, self.OnJobTimer, self._jobtimer) self.Bind(wx.EVT_BUTTON, self.OnShowConfig, self.cfgbtn) self.Bind(wx.EVT_BUTTON, self.OnRunLint, self.runbtn) self.Bind(wx.EVT_WINDOW_DESTROY, self.OnDestroy, self) # Editra Message Handlers ed_msg.Subscribe(self.OnFileLoad, ed_msg.EDMSG_FILE_OPENED) ed_msg.Subscribe(self.OnFileSave, ed_msg.EDMSG_FILE_SAVED) ed_msg.Subscribe(self.OnPageChanged, ed_msg.EDMSG_UI_NB_CHANGED) ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_CHANGED)
def __init__(self, parent, log): eclib.SegmentBook.__init__(self, parent, style=eclib.SEGBOOK_STYLE_NO_DIVIDERS|\ eclib.SEGBOOK_STYLE_LABELS) # Attributes self.log = log self._menu = None self._imglst = list() # self._imglst = wx.ImageList(32, 32, mask=False) # Setup bmp = IconFile.Monkey.GetBitmap() self._imglst.append(bmp) # self._imglst.Add(bmp) bmp = IconFile.Devil.GetBitmap() self._imglst.append(bmp) # self._imglst.Add(bmp) self.SetUsePyImageList(True) # HACK workaround for mask issues on msw self.SetImageList(self._imglst) self.AddPage(wx.TextCtrl(self, style=wx.TE_MULTILINE, value="Hello"), "Text Editor", img_id=0) self.AddPage(wx.GenericDirCtrl(self), "File Browser", img_id=1) self.AddPage(wx.TextCtrl(self, style=wx.TE_MULTILINE, value="Test Control"), "Text Editor2", img_id=0) todo = wx.ListBox(self, choices=[ 'Wake up', 'Finish Event handling', 'Take a nap', 'Procrastinate for a while', 'Drink some coffee', 'Check in code' ]) self.AddPage(todo, "TODO List", img_id=1) # Add a sub controlbar cbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) cbar.SetVMargin(3, 3) self.SetControlBar(cbar, wx.BOTTOM) cbar.AddControl(wx.Button(cbar, wx.ID_NEW)) cbar.AddControl(wx.Button(cbar, wx.ID_DELETE)) # Event Handlers self.Bind(eclib.EVT_SB_PAGE_CHANGING, self.OnPageChanging) self.Bind(eclib.EVT_SB_PAGE_CHANGED, self.OnPageChanged) self.Bind(eclib.EVT_SB_PAGE_CONTEXT_MENU, self.OnPageMenu) self.Bind(wx.EVT_BUTTON, self.OnButton) self.Bind(wx.EVT_MENU, self.OnButton, id=wx.ID_NEW) self.Bind(wx.EVT_MENU, self.OnButton, id=wx.ID_DELETE)
def __DoLayout(self): """Layout the control box""" ctrlbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) if wx.Platform == '__WXGTK__': ctrlbar.SetWindowStyle(eclib.CTRLBAR_STYLE_DEFAULT) self._choice = wx.Choice(ctrlbar, wx.ID_ANY, choices=self._styles) ctrlbar.AddControl( wx.StaticText(ctrlbar, label=_("Color Scheme") + u":"), wx.ALIGN_LEFT) ctrlbar.AddControl(self._choice, wx.ALIGN_LEFT) cbmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_DELETE), wx.ART_MENU) self._clear = eclib.PlateButton(ctrlbar, label=_("Clear"), bmp=cbmp, style=eclib.PB_STYLE_NOBG) ctrlbar.AddStretchSpacer() ctrlbar.AddControl(self._clear, wx.ALIGN_RIGHT) self.SetControlBar(ctrlbar) self.SetWindow(self._shell)
def __init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.NO_BORDER, menu=None): """ Initializes the CBrowserPane class""" eclib.ControlBox.__init__(self, parent, id, pos, size, style) #---- private attr ----# self._mainwin = ed_basewin.FindMainWindow(self) self._mi = menu self.__log = wx.GetApp().GetLog() self._timer = wx.Timer(self, ID_TIMER) self._intervall = 500 # milli seconds self._taskChoices = TASK_CHOICES #---- Gui ----# ctrlbar = eclib.ControlBar(self, style=eclib.CTRLBAR_STYLE_GRADIENT) if wx.Platform == '__WXGTK__': ctrlbar.SetWindowStyle(eclib.CTRLBAR_STYLE_DEFAULT) self.SetControlBar(ctrlbar) self._listctrl = CustomListCtrl(self) self.SetWindow(self._listctrl) tasklbl = wx.StaticText(ctrlbar, label=_("Taskfilter: ")) ctrlbar.AddControl(tasklbl, wx.ALIGN_LEFT) self._taskFilter = wx.Choice(ctrlbar, choices=self._taskChoices) self._taskFilter.SetStringSelection(self._taskChoices[0]) ctrlbar.AddControl(self._taskFilter, wx.ALIGN_LEFT) ctrlbar.AddStretchSpacer() self._checkBoxAllFiles = wx.CheckBox(ctrlbar, label=_("All opened files")) ctrlbar.AddControl(self._checkBoxAllFiles, wx.ALIGN_RIGHT) self._checkBoxAfterKey = wx.CheckBox(ctrlbar, label=_("After key")) self._checkBoxAfterKey.SetToolTipString(_("Update as you type")) ctrlbar.AddControl(self._checkBoxAfterKey, wx.ALIGN_RIGHT) btn = wx.Button(ctrlbar, wx.ID_REFRESH, label=_("Refresh")) ctrlbar.AddControl(btn, wx.ALIGN_RIGHT) #---- Bind events ----# self.Bind(wx.EVT_TIMER, lambda evt: self.UpdateCurrent(), self._timer) self.Bind(wx.EVT_BUTTON, lambda evt: self.UpdateCurrent(), btn) self.Bind(wx.EVT_CHOICE, lambda evt: self.UpdateCurrent(), self._taskFilter) # Main notebook events ed_msg.Subscribe(self.OnPageClose, ed_msg.EDMSG_UI_NB_CLOSED) ed_msg.Subscribe(self.OnPageChange, ed_msg.EDMSG_UI_NB_CHANGED) self.Bind(wx.EVT_CHECKBOX, lambda evt: self.UpdateCurrent(), self._checkBoxAllFiles) # File action messages ed_msg.Subscribe(self.OnListUpdate, ed_msg.EDMSG_FILE_SAVED) ed_msg.Subscribe(self.OnListUpdate, ed_msg.EDMSG_FILE_OPENED) ed_msg.Subscribe(self.OnKey, ed_msg.EDMSG_UI_STC_KEYUP)