def __init__(self, plotCanvas, multPlots= False, allowselect = False): NavigationToolbar.__init__(self, plotCanvas) # delete the toolbar button we don't want if (not multPlots): CONFIGURE_SUBPLOTS_TOOLBAR_BTN_POSITION = 7 self.DeleteToolByPos(CONFIGURE_SUBPLOTS_TOOLBAR_BTN_POSITION) self.AddSimpleTool(self.ON_CUSTOM_LEFT, wx.Bitmap(os.path.join(g_util.resource_path("images"), "scroll_left.png")), 'Pan to the left', 'Pan graph to the left') wx.EVT_TOOL(self, self.ON_CUSTOM_LEFT, self._on_custom_pan_left) self.AddSimpleTool(self.ON_CUSTOM_RIGHT, wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "scroll_right.png")), 'Pan to the right', 'Pan graph to the right') wx.EVT_TOOL(self, self.ON_CUSTOM_RIGHT, self._on_custom_pan_right) self.SetToolBitmapSize(wx.Size(16, 16)) self.Realize()
def _init_ctrls(self, prnt): RB.RibbonBar.__init__(self, name='ribbon', parent=prnt, id=wxID_PANEL1) self.SetArtProvider(RB.RibbonAUIArtProvider()) self.SetFont(wx.Font(9, wx.SWISS, wx.NORMAL, wx.NORMAL, False, u'Tahoma')) fileMenu = RB.RibbonPage(self, wxID_FileMenu, "File", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "3d_graph.png"))) #----PlotMenu------------- home = RB.RibbonPage(self, wx.ID_ANY, "Plot", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "3d_graph.png"))) #------Plot Type --------------------------------------------------------------------------- plot_panel = RB.RibbonPanel(home, wx.ID_ANY, "Plots", wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, RB.RIBBON_PANEL_NO_AUTO_MINIMISE) plots_bar = RB.RibbonButtonBar(plot_panel, wx.ID_ANY) plots_bar.AddSimpleButton(wxID_RIBBONPLOTTIMESERIES, "Time Series", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "tsa_icon.png")), "") plots_bar.AddSimpleButton(wxID_RIBBONPLOTPROB, "Probablity", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "probability.png")), "") plots_bar.AddSimpleButton(wxID_RIBBONPLOTHIST, "Histogram", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "histogram.png")), "") plots_bar.AddSimpleButton(wxID_RIBBONPLOTBOX, "Box/Whisker", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "box_whisker.png")), "") plots_bar.AddSimpleButton(wxID_RIBBONPLOTSUMMARY, "Summary", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "summary.png")), "") #-- PLOT OPTIONS----------------------------------------------------------------------------- PlotOptions_panel = RB.RibbonPanel(home, wx.ID_ANY, "Plot Options", wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, RB.RIBBON_PANEL_NO_AUTO_MINIMISE) self.PlotsOptions_bar = RB.RibbonButtonBar(PlotOptions_panel, wx.ID_ANY) self.PlotsOptions_bar.AddDropdownButton(wxID_RIBBONPLOTTSTYPE, "Plot Type", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "plot_type.png")), "") self.PlotsOptions_bar.AddSimpleButton(wxID_RIBBONPLOTTSLEGEND, "Show Legend", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "legend.png")), help_string="show legend on plot", kind = 0x4) self.PlotsOptions_bar.AddSimpleButton( wxID_RIBBONPLOTDATESTART, "# Hist Bins" , wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "blank.png")), "") self.PlotsOptions_bar.AddSimpleButton( wxID_RIBBONPLOTDATESTART, "# Hist Bins", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "blank.png")), "") self.PlotsOptions_bar.EnableButton(wxID_RIBBONPLOTDATESTART, False) self.spnBins = wx.SpinCtrl(id=wxID_FRAME1SPINCTRL1, initial=50, max=100, min=1, name='spnBins', parent=self.PlotsOptions_bar, pos= wx.Point(84,6), #without color button size=wx.Size(43, 25),style=wx.SP_ARROW_KEYS) self.spnBins.Enabled = False self.PlotsOptions_bar.AddDropdownButton(wxID_RIBBONPLOTBOXTYPE, "Box Whisker Type", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "box_whisker_type.png")), "") self.PlotsOptions_bar.EnableButton(wxID_RIBBONPLOTTSTYPE, False) self.PlotsOptions_bar.EnableButton(wxID_RIBBONPLOTTSLEGEND, False) dateTime_panel = RB.RibbonPanel(home, wx.ID_ANY, "Date Time", wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, RB.RIBBON_PANEL_NO_AUTO_MINIMISE) self.dateTime_buttonbar = RB.RibbonButtonBar(dateTime_panel) self.dateTime_buttonbar.AddSimpleButton( wxID_RIBBONPLOTDATESTART, "" , wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "Blank.png")), "") self.dateTime_buttonbar.AddSimpleButton( wxID_RIBBONPLOTDATESTART, "" , wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "Blank.png")), "") self.dateTime_buttonbar.AddSimpleButton( wxID_RIBBONPLOTDATESTART, "" , wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "Blank.png")), "") self.dateTime_buttonbar.EnableButton(wxID_RIBBONPLOTDATESTART, False) self.dpStartDate = wx.DatePickerCtrl(id=wxID_STARTDPDATE, name=u'dpStartDate', parent=self.dateTime_buttonbar, pos=wx.Point(5, 8), size=wx.Size(120, 24), style=wx.DP_DROPDOWN) self.dpStartDate.SetValue(wx.DateTimeFromDMY(16, 1, 2008, 0, 0, 0)) self.dpStartDate.SetLabel(repr(wx.DateTimeFromDMY(16, 1, 2008, 0, 0, 0))) self.dpStartDate.SetToolTipString(u'Start Date') self.dpEndDate = wx.DatePickerCtrl(id=wxID_ENDDPDATE, name=u'dpEndDate', parent=self.dateTime_buttonbar, pos=wx.Point(5, 40), size=wx.Size(120, 24), style=wx.DP_DROPDOWN) self.dpEndDate.SetValue(wx.DateTimeFromDMY(01, 04, 2008, 0, 0, 0)) self.dpEndDate.SetLabel(repr(wx.DateTimeFromDMY(1, 04, 2008, 0, 0, 0))) self.dpEndDate.SetToolTipString(u'End Date') self.dateTime_buttonbar.AddSimpleButton(wxID_RIBBONPLOTDATEFULL, "Full Date Range", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "full_date_range.png")), "") self.dateTime_buttonbar.EnableButton(wxID_RIBBONPLOTDATEFULL, False) self.dpEndDate.Enabled = False self.dpStartDate.Enabled= False #------------------------------------------------------------------------------- editPage = RB.RibbonPage(self, wx.ID_ANY, "Edit", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "blank.png"))) main_panel = RB.RibbonPanel(editPage, wx.ID_ANY, "Main", wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, RB.RIBBON_PANEL_NO_AUTO_MINIMISE) self.main_bar = RB.RibbonButtonBar(main_panel) self.main_bar.AddSimpleButton(wxID_RIBBONEDITSERIES, "Edit Series", bitmap=wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "edit.png")), help_string="", kind = 0x4) self.main_bar.AddSimpleButton(wxID_RIBBONEDITRESTORE, "Restore", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "restore.png")), "") self.main_bar.AddSimpleButton(wxID_RIBBONEDITSAVE, "Save", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "save_data.png")), "") self.main_bar.EnableButton(wxID_RIBBONEDITRESTORE, False) self.main_bar.EnableButton(wxID_RIBBONEDITSAVE, False) #------------------------------------------------------------------------------ edit_panel = RB.RibbonPanel( editPage, wx.ID_ANY, "Edit Functions" , wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, RB.RIBBON_PANEL_NO_AUTO_MINIMISE) self.edit_bar= RB.RibbonButtonBar(edit_panel) self.edit_bar.AddSimpleButton(wxID_RIBBONEDITFILTER, "Filter Points", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "filter_list.png")), "") self.edit_bar.AddSimpleButton(wxID_RIBBONEDITCHGVALUE, "Change Value", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "edit_view.png")), "") self.edit_bar.AddSimpleButton(wxID_RIBBONEDITINTEROPOLATE, "Interpolate", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "interpolate.png")), "") self.edit_bar.AddSimpleButton(wxID_RIBBONEDITLINFILTER, "Linear Drift", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "lin_drift.png")), "") self.edit_bar.AddSimpleButton(wxID_RIBBONEDITFLAG, "Flag", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "flag.png")), "") self.edit_bar.AddSimpleButton(wxID_RIBBONEDITADDPOINT, "Add Point", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "add.png")), "") self.edit_bar.AddSimpleButton(wxID_RIBBONEDITDELPOINT, "Delete Point", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "delete.png")), "") self.edit_bar.AddSimpleButton(wxID_RIBBONEDITRECORD, "Record", bitmap= wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "record.png")), help_string="", kind = 0x4) self.edit_bar.EnableButton(wxID_RIBBONEDITFILTER, False) self.edit_bar.EnableButton(wxID_RIBBONEDITCHGVALUE, False) self.edit_bar.EnableButton(wxID_RIBBONEDITINTEROPOLATE, False) self.edit_bar.EnableButton(wxID_RIBBONEDITLINFILTER, False) self.edit_bar.EnableButton(wxID_RIBBONEDITFLAG, False) self.edit_bar.EnableButton(wxID_RIBBONEDITADDPOINT, False) self.edit_bar.EnableButton(wxID_RIBBONEDITDELPOINT, False) self.edit_bar.EnableButton(wxID_RIBBONEDITRECORD, False) #------------------------------------------------------------------------------- viewPage = RB.RibbonPage(self, wx.ID_ANY, "View", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "blank.png"))) view_panel = RB.RibbonPanel( viewPage, wx.ID_ANY, "Tools" , wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, RB.RIBBON_PANEL_NO_AUTO_MINIMISE) view_bar= RB.RibbonButtonBar(view_panel) view_bar.AddSimpleButton(wxID_RIBBONVIEWPLOT, "Plot", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "line_chart.png")), "") view_bar.AddSimpleButton(wxID_RIBBONVIEWTABLE, "Table", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "table.png")), "") view_bar.AddSimpleButton(wxID_RIBBONVIEWSERIES, "Series Selector", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "bitmap_editor.png")), "") view_bar.AddSimpleButton(wxID_RIBBONVIEWCONSOLE, "Python Console", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "window_command_line.png")), "") view_bar.AddSimpleButton(wxID_RIBBONVIEWSCRIPT, "PythonScript", wx.Bitmap(g_util.resource_path("images" + g_util.slash() + "script.png")), "") self.CurrPage = 1 self.SetActivePageByIndex(self.CurrPage) self.BindEvents() Publisher.subscribe(self.toggleEditButtons, ("edit.EnableButtons")) Publisher.subscribe(self.resetDateRange, ("resetdate"))