def __init__(self, parent, id_num): """Initialize a notebook with a blank text control in it @param parent: parent window of the notebook @param id_num: this notebooks id """ FNB.FlatNotebook.__init__( self, parent, id_num, style=FNB.FNB_FF2 | FNB.FNB_X_ON_TAB | FNB.FNB_SMART_TABS | FNB.FNB_BACKGROUND_GRADIENT | FNB.FNB_DROPDOWN_TABS_LIST | FNB.FNB_ALLOW_FOREIGN_DND) # Notebook attributes self.LOG = wx.GetApp().GetLog() self.DocMgr = ed_editv.EdEditorView.DOCMGR self._searchctrl = ed_search.SearchController(self, self.GetCurrentCtrl) self._searchctrl.SetLookinChoices( Profile_Get('SEARCH_LOC', default=list())) self.pg_num = -1 # Track new pages (aka untitled docs) self.control = None self.frame = self.GetTopLevelParent() # MainWindow self._index = dict() # image list index self._ses_load = False self._menu = None # Set Additional Style Parameters self.SetNonActiveTabTextColour(wx.Colour(102, 102, 102)) ed_icon = ed_glob.CONFIG['SYSPIX_DIR'] + u"editra.png" self.SetNavigatorIcon(wx.Bitmap(ed_icon, wx.BITMAP_TYPE_PNG)) # Setup the ImageList and the default image imgl = wx.ImageList(16, 16) txtbmp = wx.ArtProvider.GetBitmap(str(synglob.ID_LANG_TXT), wx.ART_MENU) self._index[synglob.ID_LANG_TXT] = imgl.Add(txtbmp) self.SetImageList(imgl) # Notebook Events self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CHANGING, self.OnPageChanging) self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CHANGED, self.OnPageChanged) self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CLOSING, self.OnPageClosing) self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CLOSED, self.OnPageClosed) self.Bind(wx.stc.EVT_STC_MODIFIED, self.OnUpdatePageText) self._pages.Bind(wx.EVT_LEFT_UP, self.OnLeftUp) self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CONTEXT_MENU, self.OnTabMenu) self.Bind(wx.EVT_MENU, self.OnCopyTabPath, id=ed_glob.ID_COPY_PATH) self.Bind(wx.EVT_IDLE, self.OnIdle) # Message handlers ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_CHANGED) ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_NOTEBOOK) # Add a blank page self.NewPage()
def __init__(self, parent): """Initialize a notebook with a blank text control in it @param parent: parent window of the notebook @param id_num: this notebooks id """ style = aui.AUI_NB_DEFAULT_STYLE | \ aui.AUI_NB_WINDOWLIST_BUTTON | \ aui.AUI_NB_SMART_TABS | \ aui.AUI_NB_USE_IMAGES_DROPDOWN | \ aui.AUI_NB_TAB_EXTERNAL_MOVE | \ aui.AUI_NB_TAB_FIXED_WIDTH | \ aui.AUI_NB_ORDER_BY_ACCESS super(EdPages, self).__init__(parent, style=style) # Notebook attributes self.LOG = wx.GetApp().GetLog() self._idletimer = wx.Timer(self, ID_IDLE_TIMER) self.DocMgr = ed_editv.EdEditorView.DOCMGR self._searchctrl = ed_search.SearchController(self, self.GetCurrentCtrl) self._searchctrl.SetLookinChoices( Profile_Get('SEARCH_LOC', default=list())) self._searchctrl.SetFileFilters( Profile_Get('SEARCH_FILTER', default=u'')) self.pg_num = -1 # Track new pages (aka untitled docs) self.mdown = -1 self.control = None self.frame = self.GetTopLevelParent() # MainWindow self._index = dict() # image list index self._ses_load = False self._menu = ebmlib.ContextMenuManager() # Setup Tab Navigator ed_icon = ed_glob.CONFIG['SYSPIX_DIR'] + u"editra.png" bmp = wx.Bitmap(ed_icon, wx.BITMAP_TYPE_PNG) if bmp.IsOk(): self.SetNavigatorIcon(bmp) else: util.Log("[ed_pages][warn] Bad bitmap: %s" % ed_icon) # Setup the ImageList and the default image imgl = wx.ImageList(16, 16) txtbmp = wx.ArtProvider.GetBitmap(str(synglob.ID_LANG_TXT), wx.ART_MENU) self._index[synglob.ID_LANG_TXT] = imgl.Add(txtbmp) robmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_READONLY), wx.ART_MENU) self._index[ed_glob.ID_READONLY] = imgl.Add(robmp) self.SetImageList(imgl) # Set custom options self.SetSashDClickUnsplit(True) self.SetMinMaxTabWidth(125, 135) self.UpdateFontSetting() # Notebook Events self.Bind(wx.EVT_WINDOW_DESTROY, self.OnDestroy, self) self.Bind(aui.EVT_AUINOTEBOOK_PAGE_CHANGING, self.OnPageChanging) self.Bind(aui.EVT_AUINOTEBOOK_PAGE_CHANGED, self.OnPageChanged) self.Bind(aui.EVT_AUINOTEBOOK_PAGE_CLOSE, self.OnPageClosing) self.Bind(aui.EVT_AUINOTEBOOK_PAGE_CLOSED, self.OnPageClosed) self.Bind(aui.EVT_AUINOTEBOOK_TAB_DCLICK, self.OnTabLeftDClick) self.Bind(aui.EVT_AUINOTEBOOK_BG_DCLICK, self.OnBGLeftDClick) self.Bind(aui.EVT_AUINOTEBOOK_TAB_MIDDLE_DOWN, self.OnMClickDown) self.Bind(aui.EVT_AUINOTEBOOK_TAB_MIDDLE_UP, self.OnMClickUp) self.Bind(aui.EVT_AUINOTEBOOK_TAB_RIGHT_UP, self.OnTabMenu) self.Bind(aui.EVT_AUINOTEBOOK_ALLOW_DND, self.OnAllowDnD) self.Bind(aui.EVT_AUINOTEBOOK_END_DRAG, self.OnDragFinished) self.Bind(aui.EVT_AUINOTEBOOK_DRAG_DONE, self.OnDragFinished) self.Bind(wx.stc.EVT_STC_CHANGE, self.OnUpdatePageText) self.Bind(wx.EVT_MENU, self.OnMenu) self.Bind(wx.EVT_TIMER, self.OnIdle, id=ID_IDLE_TIMER) # Message handlers ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_CHANGED) ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_NOTEBOOK) ed_msg.Subscribe(self.OnUpdatePosCache, ed_msg.EDMSG_UI_STC_POS_JUMPED) ed_msg.RegisterCallback(self.OnDocPointerRequest, ed_msg.EDREQ_DOCPOINTER) ed_msg.Subscribe(self.OnConfigMsg, ed_msg.EDMSG_PROFILE_CHANGE + ('FONT3', )) # Add a blank page self.NewPage() self._idletimer.Start(400)
def __init__(self, parent, id_num): """Initialize a notebook with a blank text control in it @param parent: parent window of the notebook @param id_num: this notebooks id """ style = aui.AUI_NB_DEFAULT_STYLE | \ aui.AUI_NB_WINDOWLIST_BUTTON | \ aui.AUI_NB_SMART_TABS | \ aui.AUI_NB_USE_IMAGES_DROPDOWN | \ aui.AUI_NB_TAB_EXTERNAL_MOVE # | \ # aui.AUI_NB_TAB_FIXED_WIDTH if wx.Platform == '__WXMAC__': style |= aui.AUI_NB_CLOSE_ON_TAB_LEFT aui.AuiNotebook.__init__(self, parent, id_num, style=style) # Notebook attributes self.LOG = wx.GetApp().GetLog() self._idletimer = wx.Timer(self, ID_IDLE_TIMER) self.DocMgr = ed_editv.EdEditorView.DOCMGR self._searchctrl = ed_search.SearchController(self, self.GetCurrentCtrl) self._searchctrl.SetLookinChoices( Profile_Get('SEARCH_LOC', default=list())) self._searchctrl.SetFileFilters( Profile_Get('SEARCH_FILTER', default='')) self.pg_num = -1 # Track new pages (aka untitled docs) self.mdown = -1 self.control = None self.frame = self.GetTopLevelParent() # MainWindow self._index = dict() # image list index self._ses_load = False self._menu = None # Setup Tab Navigator ed_icon = ed_glob.CONFIG['SYSPIX_DIR'] + u"editra.png" self.SetNavigatorIcon(wx.Bitmap(ed_icon, wx.BITMAP_TYPE_PNG)) # Setup the ImageList and the default image imgl = wx.ImageList(16, 16) txtbmp = wx.ArtProvider.GetBitmap(str(synglob.ID_LANG_TXT), wx.ART_MENU) self._index[synglob.ID_LANG_TXT] = imgl.Add(txtbmp) robmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_READONLY), wx.ART_MENU) self._index[ed_glob.ID_READONLY] = imgl.Add(robmp) self.SetImageList(imgl) # Set custom options self.SetSashDClickUnsplit(True) # Notebook Events self.Bind(aui.EVT_AUINOTEBOOK_PAGE_CHANGING, self.OnPageChanging) self.Bind(aui.EVT_AUINOTEBOOK_PAGE_CHANGED, self.OnPageChanged) self.Bind(aui.EVT_AUINOTEBOOK_PAGE_CLOSE, self.OnPageClosing) self.Bind(aui.EVT_AUINOTEBOOK_PAGE_CLOSED, self.OnPageClosed) self.Bind(aui.EVT_AUINOTEBOOK_TAB_DCLICK, self.OnTabLeftDClick) self.Bind(aui.EVT_AUINOTEBOOK_BG_DCLICK, self.OnBGLeftDClick) self.Bind(aui.EVT_AUINOTEBOOK_TAB_MIDDLE_DOWN, self.OnMClickDown) self.Bind(aui.EVT_AUINOTEBOOK_TAB_MIDDLE_UP, self.OnMClickUp) self.Bind(aui.EVT_AUINOTEBOOK_TAB_RIGHT_UP, self.OnTabMenu) self.Bind(aui.EVT_AUINOTEBOOK_ALLOW_DND, self.OnAllowDnD) self.Bind(wx.stc.EVT_STC_CHANGE, self.OnUpdatePageText) self.Bind(wx.EVT_MENU, self.OnMenu) self.Bind(wx.EVT_TIMER, self.OnIdle, id=ID_IDLE_TIMER) # Message handlers ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_CHANGED) ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_NOTEBOOK) ed_msg.Subscribe(self.OnUpdatePosCache, ed_msg.EDMSG_UI_STC_POS_JUMPED) ed_msg.RegisterCallback(self.OnDocPointerRequest, ed_msg.EDREQ_DOCPOINTER) # Add a blank page self.NewPage() self._idletimer.Start(333) # Do idle checks 3 times a second
def __init__(self, parent, id_num): """Initialize a notebook with a blank text control in it @param parent: parent window of the notebook @param id_num: this notebooks id """ FNB.FlatNotebook.__init__( self, parent, id_num, style=FNB.FNB_FF2 | FNB.FNB_X_ON_TAB | FNB.FNB_SMART_TABS | FNB.FNB_DROPDOWN_TABS_LIST | FNB.FNB_ALLOW_FOREIGN_DND) # Notebook attributes self.LOG = wx.GetApp().GetLog() self._idletimer = wx.Timer(self, ID_IDLE_TIMER) self.DocMgr = ed_editv.EdEditorView.DOCMGR self._searchctrl = ed_search.SearchController(self, self.GetCurrentCtrl) self._searchctrl.SetLookinChoices( Profile_Get('SEARCH_LOC', default=list())) self._searchctrl.SetFileFilters( Profile_Get('SEARCH_FILTER', default='')) self.pg_num = -1 # Track new pages (aka untitled docs) self.control = None self.frame = self.GetTopLevelParent() # MainWindow self._index = dict() # image list index self._ses_load = False self._menu = None # Set Additional Style Parameters self.SetNonActiveTabTextColour(wx.Colour(102, 102, 102)) ed_icon = ed_glob.CONFIG['SYSPIX_DIR'] + u"editra.png" self.SetNavigatorIcon(wx.Bitmap(ed_icon, wx.BITMAP_TYPE_PNG)) # Setup the ImageList and the default image imgl = wx.ImageList(16, 16) txtbmp = wx.ArtProvider.GetBitmap(str(synglob.ID_LANG_TXT), wx.ART_MENU) self._index[synglob.ID_LANG_TXT] = imgl.Add(txtbmp) robmp = wx.ArtProvider.GetBitmap(str(ed_glob.ID_READONLY), wx.ART_MENU) self._index[ed_glob.ID_READONLY] = imgl.Add(robmp) self.SetImageList(imgl) # Notebook Events self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CHANGING, self.OnPageChanging) self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CHANGED, self.OnPageChanged) self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CLOSING, self.OnPageClosing) self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CLOSED, self.OnPageClosed) self.Bind(wx.stc.EVT_STC_CHANGE, self.OnUpdatePageText) self._pages.Bind(wx.EVT_LEFT_UP, self.OnLeftUp) self._pages.Bind(wx.EVT_LEFT_DCLICK, self.OnLeftDClick) self._pages.Bind(wx.EVT_MIDDLE_UP, self.OnMClick) self.Bind(FNB.EVT_FLATNOTEBOOK_PAGE_CONTEXT_MENU, self.OnTabMenu) self.Bind(wx.EVT_MENU, self.OnMenu) self.Bind(wx.EVT_TIMER, self.OnIdle, id=ID_IDLE_TIMER) # Message handlers ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_CHANGED) ed_msg.Subscribe(self.OnThemeChanged, ed_msg.EDMSG_THEME_NOTEBOOK) ed_msg.Subscribe(self.OnUpdatePosCache, ed_msg.EDMSG_UI_STC_POS_JUMPED) ed_msg.RegisterCallback(self.OnDocPointerRequest, ed_msg.EDREQ_DOCPOINTER) # Add a blank page self.NewPage() self._idletimer.Start(333) # Do idle checks 3 times a second