Exemple #1
0
 def __init__(self, parent, title, graph):
     #super(ChildFrame, self).__init__(parent, title=title, size=graph['size'])
     super(ChildFrame, self).__init__(parent, title=title)
     self.graph = graph
     self.pen_color = wx.Colour('black')
     self.foreground_color = wx.Colour('gray')
     self.background_color = wx.Colour('white')
     self.dictionary = {}
     self.get_dict(self.graph, self.dictionary)
     icon = wx.Icon()
     if self.graph['type'] == 'onnx':
         icon.CopyFromBitmap(wx.Bitmap(os.path.join(pwd(), 'icons', 'onnx.png'),
                                       wx.BITMAP_TYPE_ANY))
     elif self.graph['type'] == 'tensorflow':
         icon.CopyFromBitmap(wx.Bitmap(os.path.join(pwd(), 'icons', 'tf.png'),
                                       wx.BITMAP_TYPE_ANY))
     elif self.graph['type'] == 'keras':
         icon.CopyFromBitmap(wx.Bitmap(os.path.join(pwd(), 'icons', 'keras.png'),
                                       wx.BITMAP_TYPE_ANY))
     elif self.graph['type'] == 'pytorch':
         icon.CopyFromBitmap(wx.Bitmap(os.path.join(pwd(), 'icons', 'pytorch.png'),
                                       wx.BITMAP_TYPE_ANY))
     else: icon.CopyFromBitmap(wx.Bitmap(os.path.join(pwd(), 'icons', 'model.png'),
                                         wx.BITMAP_TYPE_ANY))
     self.SetIcon(icon)
     self.canvas = wx.ScrolledCanvas(self, True)
     self.property = propgrid.PropertyGrid(self, size=(300, 500))
     self.box = wx.BoxSizer(wx.HORIZONTAL)
     self.box.Add(self.canvas, wx.ID_ANY, flag=wx.EXPAND|wx.ALL|wx.LEFT, border=1)
     self.box.Add(self.property, 0, flag=wx.EXPAND|wx.RIGHT, border=1)
     self.SetSizer(self.box)
     self.dc = None
     self.canvas.Bind(wx.EVT_PAINT, self.on_paint)
     self.canvas.Bind(wx.EVT_LEFT_DOWN, self.on_left_down)
     self.thumbnail = wx.Panel(self.canvas, style=wx.SIMPLE_BORDER)
     self.thumbnail.Bind(wx.EVT_PAINT, self.on_paint_thumb)
     self.thumbnail.Bind(wx.EVT_LEFT_DOWN, self.on_key_down)
     self.thumb_dc = None
     #self.thumb_ratio = 20
     self.thumb_ratio_x = 20
     self.thumb_ratio_y = 20
     self.thumb_max_len = 300
     self.Maximize()
     self.Show(True)
     canvas_size = self.canvas.GetSize()
     self.x_units, self.y_units = math.ceil(canvas_size[0]/2), math.ceil(canvas_size[1]/2)
     self.GetParent().add_history([self.GetId(), self.graph['name'], self.graph['selected']])
Exemple #2
0
    def __init__(self, title):
        """Initialise widgets and layout."""
        super().__init__(parent=None, title=title, size=(300, 200))

        # Configure the file menu
        fileMenu = wx.Menu()
        menuBar = wx.MenuBar()
        fileMenu.Append(wx.ID_EXIT, "&Exit")
        menuBar.Append(fileMenu, "&File")
        self.SetMenuBar(menuBar)
        self.scrollable = wx.ScrolledCanvas(self, wx.ID_ANY)
        self.scrollable.SetSizeHints(200, 200)
        self.scrollable.ShowScrollbars(wx.SHOW_SB_ALWAYS, wx.SHOW_SB_DEFAULT)
        self.scrollable.SetScrollbars(20, 20, 15, 10)
        # Configure the widgets
        self.text = wx.StaticText(self, wx.ID_ANY, str(
            self.GetClientSize().GetHeight()))
        # self.text = wx.StaticText(self, wx.ID_ANY, "Some text")
        self.run_button = wx.Button(self, wx.ID_ANY, "Run")

        # Bind events to widgets
        self.Bind(wx.EVT_MENU, self.on_menu)
        self.run_button.Bind(wx.EVT_BUTTON, self.on_run_button)

        # Configure sizers for layout
        main_sizer = wx.BoxSizer(wx.HORIZONTAL)
        side_sizer = wx.BoxSizer(wx.VERTICAL)

        main_sizer.Add(side_sizer, 1, wx.ALL, 5)
        self.canvas = MyGLCanvas(self.scrollable, wx.ID_ANY,
                                 wx.DefaultPosition, wx.Size(300, 200))
        self.canvas.SetSizeHints(500, 500)
        side_sizer.Add(self.text, 1, wx.TOP, 10)
        side_sizer.Add(self.run_button, 1, wx.ALL, 5)
        main_sizer.Add(self.scrollable, 1,  wx.EXPAND+wx.TOP, 5)
        self.SetSizeHints(200, 200)
        self.SetSizer(main_sizer)

        self.Bind(wx.EVT_SIZE, self.on_resize)

        self.CreateStatusBar(3)
        self.SetStatusText("Ready", 0);
    def InitUI(self):
        menubar = wx.MenuBar()
        fileMenu = wx.Menu()
        fileItem = fileMenu.Append(wx.ID_EXIT, 'Quit', 'Quit application')
        menubar.Append(fileMenu, '&File')
        self.SetMenuBar(menubar)

        self.Bind(wx.EVT_MENU, self.OnQuit, fileItem)
        self.Bind(wx.EVT_SIZE, self.on_resize)

        self.SetSize(NIMA_START_SIZE)
        self.SetTitle('NIMA Scorer')

        self.root_panel = wx.ScrolledCanvas(self)
        # self.root_panel = wx.ScrolledWindow(self)
        self.root_panel.SetBackgroundColour("grey")
        self.root_panel.SetAutoLayout(True)
        self.root_panel.SetScrollRate(10, 10)
        dt = NIMAFileDropTarget(self)
        self.root_panel.SetDropTarget(dt)

        # self.vbox = wx.BoxSizer(wx.VERTICAL)
        self.vbox = wx.GridSizer(3,0,0)
        self.root_panel.SetSizer(self.vbox)
Exemple #4
0
    def SetValue(self, cont):
        self.workflow, self.cont = parse(cont), cont
        sizer_scroll = wx.BoxSizer(wx.HORIZONTAL)

        self.scr_workflow = wx.ScrolledCanvas(self, wx.ID_ANY,
                                              wx.DefaultPosition,
                                              wx.DefaultSize)
        self.scr_workflow.SetScrollRate(30, 0)
        self.scr_workflow.ShowScrollbars(wx.SHOW_SB_NEVER, wx.SHOW_SB_NEVER)
        self.scr_workflow.SetMinSize((600, -1))

        sizer_chapter = wx.BoxSizer(wx.HORIZONTAL)
        self.spn_scroll = wx.SpinButton(self, wx.ID_ANY, wx.DefaultPosition,
                                        wx.DefaultSize, wx.SP_HORIZONTAL)
        sizer_scroll.Add(self.spn_scroll, 0, wx.ALL | wx.EXPAND, 3)

        for chapter in self.workflow['chapter']:
            self.pan_chapter = wx.Panel(self.scr_workflow, wx.ID_ANY,
                                        wx.DefaultPosition, wx.DefaultSize,
                                        wx.SIMPLE_BORDER | wx.TAB_TRAVERSAL)
            sizer_frame = wx.BoxSizer(wx.VERTICAL)

            self.lab_chapter = wx.StaticText(self.pan_chapter, wx.ID_ANY,
                                             chapter['title'],
                                             wx.DefaultPosition,
                                             wx.DefaultSize, wx.ALIGN_CENTRE)
            self.lab_chapter.Wrap(-1)
            self.lab_chapter.SetBackgroundColour(
                wx.SystemSettings.GetColour(wx.SYS_COLOUR_INACTIVECAPTION))

            sizer_frame.Add(self.lab_chapter, 0, wx.ALL | wx.EXPAND, 0)

            sizer_section = wx.BoxSizer(wx.HORIZONTAL)
            for section in chapter['section']:
                btn = wx.Button(self.pan_chapter, wx.ID_ANY, section['title'],
                                wx.DefaultPosition, wx.DefaultSize,
                                wx.BU_EXACTFIT)
                sizer_section.Add(btn, 0, wx.ALL, 3)
                btn.Bind(wx.EVT_BUTTON,
                         lambda e, x=section['title']: self.f(x))
                btn.Bind(wx.EVT_ENTER_WINDOW,
                         lambda e, info=section['hint']: self.set_info(info))
                #self.m_button1.Bind( wx.EVT_LEAVE_WINDOW, self.on_out )

            sizer_frame.Add(sizer_section, 0, wx.EXPAND, 3)
            sizer_btn = wx.BoxSizer(wx.HORIZONTAL)
            sizer_btn.AddStretchSpacer(1)

            self.btn_snap = wx.StaticText(self.pan_chapter, wx.ID_ANY,
                                          u" Snap ", wx.DefaultPosition,
                                          wx.DefaultSize, 0 | wx.SIMPLE_BORDER)
            self.btn_snap.Wrap(-1)
            sizer_btn.Add(self.btn_snap, 0, wx.ALL, 3)

            self.btn_load = wx.StaticText(self.pan_chapter, wx.ID_ANY,
                                          u" Load ", wx.DefaultPosition,
                                          wx.DefaultSize, 0 | wx.SIMPLE_BORDER)
            self.btn_load.Wrap(-1)
            sizer_btn.Add(self.btn_load, 0, wx.ALL, 3)

            self.btn_step = wx.StaticText(self.pan_chapter, wx.ID_ANY, u" >> ",
                                          wx.DefaultPosition, wx.DefaultSize,
                                          0 | wx.SIMPLE_BORDER)
            self.btn_step.Wrap(-1)
            sizer_btn.Add(self.btn_step, 0, wx.ALL, 3)
            sizer_frame.Add(sizer_btn, 0, wx.EXPAND, 3)

            self.pan_chapter.SetSizer(sizer_frame)
            self.pan_chapter.Layout()
            sizer_frame.Fit(self.pan_chapter)
            sizer_chapter.Add(self.pan_chapter, 0, wx.EXPAND | wx.ALL, 3)

        sizer_scroll.Add(self.scr_workflow, 1, wx.EXPAND | wx.ALL, 0)
        sizer_info = wx.BoxSizer(wx.VERTICAL)
        sizer_info.SetMinSize(wx.Size(260, -1))
        self.btn_help = wx.StaticText(self, wx.ID_ANY,
                                      u" Click For Detail Document ",
                                      wx.DefaultPosition, wx.DefaultSize,
                                      wx.ALIGN_CENTRE | wx.SIMPLE_BORDER)
        self.btn_help.Wrap(-1)
        self.btn_help.SetBackgroundColour(
            wx.SystemSettings.GetColour(wx.SYS_COLOUR_INACTIVECAPTION))

        sizer_info.Add(self.btn_help, 0, wx.ALL | wx.EXPAND, 0)

        self.txt_info = wx.TextCtrl(
            self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition,
            wx.DefaultSize, wx.TE_AUTO_URL | wx.TE_MULTILINE | wx.TE_READONLY)
        sizer_info.Add(self.txt_info, 1, wx.TOP | wx.EXPAND, 3)

        sizer_scroll.Add(sizer_info, 0, wx.EXPAND | wx.ALL, 3)

        self.scr_workflow.SetSizer(sizer_chapter)
        self.scr_workflow.Layout()

        self.SetSizer(sizer_scroll)

        #self.Fit()
        self.Layout()

        self.spn_scroll.Bind(wx.EVT_SPIN, self.on_spn)
        self.btn_help.Bind(wx.EVT_LEFT_DOWN, self.on_help)
Exemple #5
0
 def test_scrolcvsDefaultCtor(self):
     w = wx.ScrolledCanvas()
     w.Create(self.frame)
     self.commonBits(w)
Exemple #6
0
 def test_scrolcvsCtor(self):
     w = wx.ScrolledCanvas(self.frame)
     self.commonBits(w)