class PostProcessingPanel(BenchPanel):
    def __init__(self, parent, sub_data_plots, filenames_to_compare_to, subplots_names):
        super(PostProcessingPanel, self).__init__(parent)
        self.widgets = self._init_widgets(sub_data_plots, filenames_to_compare_to, subplots_names)

    def _init_widgets(self, sub_data_plots, filenames_to_compare_to, subplots_names):
        self.listBox1 = DropboxFilesSidebar(self, filenames_to_compare_to)
        self.plot_canvas = PlotCanvas(self, sub_data_plots)
        self.reset_topbar = ResetTopbar(self)
        self.plot_selector = PlotSelector(self, post_processing_plot_types, subplots_names)

        self.topbar_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.topbar_sizer.Add(self.reset_topbar, 2, wx.GROW)
        self.topbar_sizer.Add(self.plot_selector, 1, wx.GROW)

        self.vertical_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.vertical_sizer.Add(self.listBox1, 1, wx.GROW)
        self.vertical_sizer.Add(self.plot_canvas, 5, wx.GROW)

        self.panel_sizer = wx.BoxSizer(wx.VERTICAL)
        self.panel_sizer.Add(self.topbar_sizer, 1, wx.GROW)
        self.panel_sizer.Add(self.vertical_sizer, 20, wx.GROW)

        self.SetSizer(self.panel_sizer)
        self.Show()

        return [self.listBox1, self.plot_selector, self.plot_canvas, self.reset_topbar]

    def update_subplots(self, subplots):
        self.plot_canvas.update_subplots(subplots)
        self.refresh_canvas()

    def refresh_canvas(self):
        self.plot_canvas.draw()
Ejemplo n.º 2
0
class RealTimePanel(BenchPanel):
    def __init__(self, parent, sub_data_plots, subplots_names):
        super(RealTimePanel, self).__init__(parent)
        self.widgets = self._init_widgets(sub_data_plots, subplots_names)
        self._init_timer(parent)

    def _init_widgets(self, sub_data_plots, subplots_names):
        self.start_stop_buttons = StartStopTopbar(self)
        self.plot_canvas = PlotCanvas(self, sub_data_plots)
        self.plot_selector = PlotSelector(self, real_time_plot_types, subplots_names)

        self.topbar_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.topbar_sizer.Add(self.start_stop_buttons, 2, wx.GROW)
        self.topbar_sizer.Add(self.plot_selector, 1, wx.GROW)

        self.vertical_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.vertical_sizer.Add(self.plot_canvas, 5, wx.GROW)

        self.parent_sizer = wx.BoxSizer(wx.VERTICAL)
        self.parent_sizer.Add(self.topbar_sizer, 1, wx.GROW)
        self.parent_sizer.Add(self.vertical_sizer, 20, wx.GROW)

        self.SetSizer(self.parent_sizer)
        self.Show()

        return [self.start_stop_buttons, self.plot_canvas, self.plot_selector]

    def update_subplots(self, subplots):
        self.plot_canvas.update_subplots(subplots)

    def _init_timer(self, parent):
        self.redrawPeriod = 100
        self.redrawTimer = wx.Timer(parent)
        parent.Bind(wx.EVT_TIMER, self._onRedrawTimer, self.redrawTimer)

    def startTimer(self):
        self.redrawTimer.Start(self.redrawPeriod)

    def stop_timer(self):
        self.redrawTimer.Stop()

    def _onRedrawTimer(self, event):
        try:
            self.draw_plot_canvas()
        except RuntimeError as e:
            print e
Ejemplo n.º 3
0
    def _init_widgets(self, sub_data_plots, subplots_names):
        self.start_stop_buttons = StartStopTopbar(self)
        self.plot_canvas = PlotCanvas(self, sub_data_plots)
        self.plot_selector = PlotSelector(self, real_time_plot_types, subplots_names)

        self.topbar_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.topbar_sizer.Add(self.start_stop_buttons, 2, wx.GROW)
        self.topbar_sizer.Add(self.plot_selector, 1, wx.GROW)

        self.vertical_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.vertical_sizer.Add(self.plot_canvas, 5, wx.GROW)

        self.parent_sizer = wx.BoxSizer(wx.VERTICAL)
        self.parent_sizer.Add(self.topbar_sizer, 1, wx.GROW)
        self.parent_sizer.Add(self.vertical_sizer, 20, wx.GROW)

        self.SetSizer(self.parent_sizer)
        self.Show()

        return [self.start_stop_buttons, self.plot_canvas, self.plot_selector]
    def _init_widgets(self, sub_data_plots, filenames_to_compare_to, subplots_names):
        self.listBox1 = DropboxFilesSidebar(self, filenames_to_compare_to)
        self.plot_canvas = PlotCanvas(self, sub_data_plots)
        self.reset_topbar = ResetTopbar(self)
        self.plot_selector = PlotSelector(self, post_processing_plot_types, subplots_names)

        self.topbar_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.topbar_sizer.Add(self.reset_topbar, 2, wx.GROW)
        self.topbar_sizer.Add(self.plot_selector, 1, wx.GROW)

        self.vertical_sizer = wx.BoxSizer(wx.HORIZONTAL)
        self.vertical_sizer.Add(self.listBox1, 1, wx.GROW)
        self.vertical_sizer.Add(self.plot_canvas, 5, wx.GROW)

        self.panel_sizer = wx.BoxSizer(wx.VERTICAL)
        self.panel_sizer.Add(self.topbar_sizer, 1, wx.GROW)
        self.panel_sizer.Add(self.vertical_sizer, 20, wx.GROW)

        self.SetSizer(self.panel_sizer)
        self.Show()

        return [self.listBox1, self.plot_selector, self.plot_canvas, self.reset_topbar]