def test_lib_agw_ribbonPanelCtor(self): rib = RB.RibbonBar(self.frame, wx.ID_ANY, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE | RB.RIBBON_BAR_SHOW_PANEL_EXT_BUTTONS) page = RB.RibbonPage(rib, wx.ID_ANY, "Appearance") RB.RibbonPanel(page)
def __init__(self, parent): #wx.Panel.__init__(self, parent, wx.ID_ANY,size=wx.Size(30,103)) wx.Panel.__init__(self, parent, wx.ID_ANY) self._ribbon = RB.RibbonBar(self, wx.ID_ANY) dirName = os.path.dirname(os.path.abspath(sys.argv[0])) bitmapDir = os.path.join(dirName, 'icons') self.bitmap_action_dir = os.path.join(bitmapDir, 'actions') #to tylko na pewien czas #bitmapDir = os.path.join(bitmapDir, 'icons') #sys.path.append(os.path.split(dirName)[0]) self.AddHomePage() self.AddEditPage() self.AddViewPage() self.BindButtons() primary, secondary, tertiary = self._ribbon.GetArtProvider().GetColourScheme(0, 0, 0) #print primary #print secondary #print tertiary art_provider = AR.RibbonArtProvider() art_provider.SetColourScheme(wx.NamedColour("gray"),wx.Colour(255, 223, 114),wx.NamedColour("green")) self._ribbon.SetArtProvider(art_provider) #self._ribbon.GetArtProvider().SetColourScheme(wx.NamedColour("blue"),secondary,tertiary) #self._ribbon.GetArtProvider().SetColourScheme(wx.NamedColour("gray"),wx.NamedColour("yellow"),wx.NamedColour("green")) self._ribbon.Realize() s = wx.BoxSizer(wx.VERTICAL) s.Add(self._ribbon, 0, wx.EXPAND) self.SetSizer(s)
def test_lib_agw_ribbonCtor(self): rib = RB.RibbonBar(self.frame, wx.ID_ANY, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE | RB.RIBBON_BAR_SHOW_PANEL_EXT_BUTTONS) home = RB.RibbonPage(rib, wx.ID_ANY, "Examples", CreateBitmap("ribbon")) toolbar_panel = RB.RibbonPanel( home, wx.ID_ANY, "Toolbar", wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, agwStyle=RB.RIBBON_PANEL_NO_AUTO_MINIMISE) toolbar = RB.RibbonToolBar(toolbar_panel, wx.ID_ANY) toolbar.AddTool(wx.ID_ANY, CreateBitmap("align_left")) toolbar.AddTool(wx.ID_ANY, CreateBitmap("align_center")) toolbar.AddSeparator() toolbar.AddHybridTool( wx.ID_NEW, wx.ArtProvider.GetBitmap(wx.ART_NEW, wx.ART_OTHER, wx.Size(16, 15))) toolbar.AddSeparator() toolbar.AddDropdownTool( wx.ID_UNDO, wx.ArtProvider.GetBitmap(wx.ART_UNDO, wx.ART_OTHER, wx.Size(16, 15)))
def create_ribbon_ui(self): panel = wx.Panel(self) self._ribbon = RB.RibbonBar(panel, wx.ID_ANY, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE | RB.RIBBON_BAR_SHOW_PANEL_EXT_BUTTONS) home = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Home") toolbar_panel = RB.RibbonPanel( home, wx.ID_ANY, "Toolbar", wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, agwStyle=RB.RIBBON_PANEL_NO_AUTO_MINIMISE | RB.RIBBON_PANEL_EXT_BUTTON) toolbar = RB.RibbonToolBar(toolbar_panel, ID_MAIN_TOOLBAR) canvas_rib = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Canvas") toolbox_rib = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Toolbox") self._ribbon.Realize() s = wx.BoxSizer(wx.VERTICAL) s.Add(self._ribbon, 0, wx.EXPAND) panel.SetSizer(s) self.panel = panel
def __init__(self, parent, id=wx.ID_ANY, title="My Ribbon Pane", pos=wx.DefaultPosition, size=(1280, 960), style=wx.DEFAULT_FRAME_STYLE, log=None, api=None): wx.Frame.__init__(self, parent, id, title, pos, size, style) self.panel = panel = MainPanel(self) self.name = 'MainFrame' self.logger = log self.api = api ## Ribbon tool bar self._ribbon = RB.RibbonBar(panel, wx.ID_ANY, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE) ribbonPanels = self.setupRibbonBar() ## Raw panel; this is where the ribbon buttons will load data self.rawPanel = RawPanel(panel, wx.ID_ANY) ## Box for the ribbon at the top and a data panel on the bottom self.mainBox = wx.BoxSizer(wx.VERTICAL) self.mainBox.Add(self._ribbon, 0, wx.EXPAND) self.mainBox.Add(self.rawPanel, 1, wx.EXPAND) self.Layout() ## Apply the layout panel.SetSizer(self.mainBox) ## Bind events self.BindEvents(ribbonPanels) self.CenterOnScreen() self.Show() panel.SendSizeEvent()
def test_lib_agw_ribbonGalleryCtor(self): rib = RB.RibbonBar(self.frame, wx.ID_ANY, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE | RB.RIBBON_BAR_SHOW_PANEL_EXT_BUTTONS) page = RB.RibbonPage(rib, wx.ID_ANY, "Appearance") primary_panel = RB.RibbonPanel(page, wx.ID_ANY, "Primary Colour") RB.RibbonGallery(primary_panel)
def test_lib_agw_ribbonArtProviders(self): rib = RB.RibbonBar(self.frame, wx.ID_ANY, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE | RB.RIBBON_BAR_SHOW_PANEL_EXT_BUTTONS) rib.SetArtProvider(RB.RibbonDefaultArtProvider()) rib.SetArtProvider(RB.RibbonAUIArtProvider()) rib.SetArtProvider(RB.RibbonMSWArtProvider()) rib.SetArtProvider(RB.RibbonOSXArtProvider())
def __init__(self, *args, context=None, **kwds): kwds["style"] = kwds.get("style", 0) | wx.TAB_TRAVERSAL wx.Panel.__init__(self, *args, **kwds) self.context = context self._job = Job( process=self._perform_realization, job_name="realize_ribbon_bar", interval=0.1, times=1, run_main=True, ) self.buttons = [] self.ribbon_bars = [] self.ribbon_panels = [] self.ribbon_pages = [] # Some helper variables for showing / hiding the toolbar self.panels_shown = True self.minmax = None self.context = context self.stored_labels = {} self.stored_height = 0 self.art_provider_count = 0 self.button_lookup = {} self.group_lookup = {} # Define Ribbon. self._ribbon = RB.RibbonBar( self, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE | RB.RIBBON_BAR_SHOW_PANEL_EXT_BUTTONS | RB.RIBBON_BAR_SHOW_PANEL_MINIMISE_BUTTONS, ) self.__set_ribbonbar() sizer_1 = wx.BoxSizer(wx.HORIZONTAL) sizer_1.Add(self._ribbon, 1, wx.EXPAND, 0) self.SetSizer(sizer_1) self.Layout() # self._ribbon self.pipe_state = None self._ribbon_dirty = False
def __init__(self, parent, id=wx.ID_ANY, title="", pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE, log=None): wx.Frame.__init__(self, parent, id, title, pos, size, wx.DEFAULT_FRAME_STYLE+wx.NO_BORDER+wx.CAPTION ) panel = wx.Panel(self) self._ribbon = RB.RibbonBar(panel, wx.ID_ANY, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE|RB.RIBBON_BAR_SHOW_PANEL_EXT_BUTTONS) self._bitmap_creation_dc = wx.MemoryDC() self._colour_data = wx.ColourData() home = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Examples", CreateBitmap("ribbon")) toolbar_panel = mini_toolbar(home) # selection_panel = mini_selection(home) # # ## # ## # ## # ## # ## # ## # ## # ## # ## # ## # ## # # selection_panel = RB.RibbonPanel(home, wx.ID_ANY, "Selection", CreateBitmap("selection_panel")) selection = RB.RibbonButtonBar(selection_panel) selection.AddSimpleButton(ID_SELECTION_EXPAND_V, "Expand Vertically", CreateBitmap("expand_selection_v"), "This is a tooltip for Expand Vertically\ndemonstrating a tooltip") selection.AddSimpleButton(ID_SELECTION_EXPAND_H, "Expand Horizontally", CreateBitmap("expand_selection_h"), "") selection.AddButton(ID_SELECTION_CONTRACT, "Contract", CreateBitmap("auto_crop_selection"), CreateBitmap("auto_crop_selection_small")) # # ## # ## # ## # ## # ## # ## # ## # ## # ## # ## # ## # # shapes_panel = RB.RibbonPanel(home, wx.ID_ANY, "Shapes", CreateBitmap("circle_small")) shapes = RB.RibbonButtonBar(shapes_panel) shapes.AddButton(ID_CIRCLE, "Circle", CreateBitmap("circle"), CreateBitmap("circle_small"), help_string="This is a tooltip for the circle button\ndemonstrating another tooltip", kind=RB.RIBBON_BUTTON_TOGGLE) shapes.AddSimpleButton(ID_CROSS, "Cross", CreateBitmap("cross"), "") shapes.AddHybridButton(ID_TRIANGLE, "Triangle", CreateBitmap("triangle")) shapes.AddSimpleButton(ID_SQUARE, "Square", CreateBitmap("square"), "") shapes.AddDropdownButton(ID_POLYGON, "Other Polygon", CreateBitmap("hexagon"), "") # # ## # ## # ## # ## # ## # ## # ## # ## # ## # ## # ## # # sizer_panel = RB.RibbonPanel(home, wx.ID_ANY, "Panel with Sizer", wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, agwStyle=RB.RIBBON_PANEL_DEFAULT_STYLE) strs = ["Item 1 using a box sizer now", "Item 2 using a box sizer now"] sizer_panelcombo = wx.ComboBox(sizer_panel, wx.ID_ANY, "", wx.DefaultPosition, wx.DefaultSize, strs, wx.CB_READONLY) sizer_panelcombo2 = wx.ComboBox(sizer_panel, wx.ID_ANY, "", wx.DefaultPosition, wx.DefaultSize, strs, wx.CB_READONLY) sizer_panelcombo.Select(0) sizer_panelcombo2.Select(1) sizer_panelcombo.SetMinSize(wx.Size(150, -1)) sizer_panelcombo2.SetMinSize(wx.Size(150, -1)) # not using wx.WrapSizer(wx.HORIZONTAL) as it reports an incorrect min height sizer_panelsizer = wx.BoxSizer(wx.VERTICAL) sizer_panelsizer.AddStretchSpacer(1) sizer_panelsizer.Add(sizer_panelcombo, 0, wx.ALL|wx.EXPAND, 2) sizer_panelsizer.Add(sizer_panelcombo2, 0, wx.ALL|wx.EXPAND, 2) sizer_panelsizer.AddStretchSpacer(1) sizer_panel.SetSizer(sizer_panelsizer) # # ## # ## # ## # ## # ## # ## # ## # ## # ## # ## # ## # # label_font = wx.Font(8, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_LIGHT) self._bitmap_creation_dc.SetFont(label_font) scheme = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Appearance", CreateBitmap("eye")) self._default_primary, self._default_secondary, self._default_tertiary = self._ribbon.GetArtProvider().GetColourScheme(1, 1, 1) provider_panel = RB.RibbonPanel(scheme, wx.ID_ANY, "Art", wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, agwStyle=RB.RIBBON_PANEL_NO_AUTO_MINIMISE) provider_bar = RB.RibbonButtonBar(provider_panel, wx.ID_ANY) provider_bar.AddSimpleButton(ID_DEFAULT_PROVIDER, "Default Provider", wx.ArtProvider.GetBitmap(wx.ART_QUESTION, wx.ART_OTHER, wx.Size(32, 32)), "") provider_bar.AddSimpleButton(ID_AUI_PROVIDER, "AUI Provider", CreateBitmap("aui_style"), "") provider_bar.AddSimpleButton(ID_MSW_PROVIDER, "MSW Provider", CreateBitmap("msw_style"), "") primary_panel = RB.RibbonPanel(scheme, wx.ID_ANY, "Primary Colour", CreateBitmap("colours")) self._primary_gallery = self.PopulateColoursPanel(primary_panel, self._default_primary, ID_PRIMARY_COLOUR) secondary_panel = RB.RibbonPanel(scheme, wx.ID_ANY, "Secondary Colour", CreateBitmap("colours")) self._secondary_gallery = self.PopulateColoursPanel(secondary_panel, self._default_secondary, ID_SECONDARY_COLOUR) dummy_2 = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Empty Page", CreateBitmap("empty")) dummy_3 = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Another Page", CreateBitmap("empty")) self._ribbon.Realize() self._logwindow = wx.TextCtrl(panel, wx.ID_ANY, "", wx.DefaultPosition, wx.DefaultSize, wx.TE_MULTILINE | wx.TE_READONLY | wx.TE_LEFT | wx.TE_BESTWRAP | wx.BORDER_NONE) self._togglePanels = wx.ToggleButton(panel, ID_TOGGLE_PANELS, "&Toggle panels") self._togglePanels.SetValue(True) s = wx.BoxSizer(wx.VERTICAL) s.Add(self._ribbon, 0, wx.EXPAND) s.Add(self._logwindow, 1, wx.EXPAND) s.Add(self._togglePanels, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL, 10) panel.SetSizer(s) self.panel = panel self.BindEvents([selection, shapes, provider_bar, toolbar_panel]) self.SetIcon(images.Mondrian.Icon) self.CenterOnScreen() self.Show()
def test_lib_agw_ribbonPageCtor(self): rib = RB.RibbonBar(self.frame, wx.ID_ANY, agwStyle=RB.RIBBON_BAR_DEFAULT_STYLE | RB.RIBBON_BAR_SHOW_PANEL_EXT_BUTTONS) RB.RibbonPage(rib)
def __init__(self): wx.Frame.__init__( self, None, -1, 'zoop', size=(600, 530), pos=(200, 200), style=wx.CAPTION | wx.CLOSE_BOX | wx.SYSTEM_MENU ) #wx.DEFAULT_FRAME_STYLE|wx.WANTS_CHARS) #^(wx.MINIMIZE_BOX | wx.MAXIMIZE_BOX)) #, style=wx.STAY_ON_TOP) # tell FrameManager to manage this frame self._mgr = wx.aui.AuiManager() self._mgr.SetManagedWindow(self) self.SetMinSize(wx.Size(500, 400)) # xrc gui layout ------------------ # XML Resources can be loaded from a file like this: res1 = xrc.XmlResource(RESFILE_TB) self.m_tb_main = res1.LoadToolBar(self, "m_tb_main") self.m_tb_main.Realize() #tell the frame to not manage teh toolbar, aui manager will instead self.SetToolBar(None) # XML Resources can be loaded from a file like this: res = xrc.XmlResource(RESFILE_PA) self.m_pa_pages = res.LoadPanel(self, "m_pa_pages") self.pa_ribbon = xrc.XRCCTRL(self, 'm_pa_ribbon') self.lc_playlist = xrc.XRCCTRL(self, 'm_lc_playlist') # ribbon bar self._ribbon = RB.RibbonBar(self.pa_ribbon, wx.ID_ANY) dummy_3 = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Playlist") #, CreateBitmap("empty")) dummy_4 = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Last.fm") #, CreateBitmap("empty")) dummy_5 = RB.RibbonPage(self._ribbon, wx.ID_ANY, "Favorites") #, CreateBitmap("empty")) self._ribbon.Realize() bgcolour = self.pa_ribbon.GetBackgroundColour() self._ribbon.GetArtProvider().SetColourScheme(bgcolour, 0, 1) s = wx.BoxSizer(wx.VERTICAL) s.Add(self._ribbon, 1, wx.EXPAND) self.pa_ribbon.SetSizer(s) self.pa_ribbon.SetMinSize((400, 120)) # add a bunch of panes self._mgr.AddPane(self.m_pa_pages, wx.aui.AuiPaneInfo().Name("MainPanel").CenterPane()) self._mgr.AddPane( self.m_tb_main, wx.aui.AuiPaneInfo().Name("Playback").Caption("Playback Toolbar"). ToolbarPane().Top().LeftDockable(False).RightDockable(False)) #self._mgr.AddPane(self.m_pa_pages, wx.aui.AuiPaneInfo(). # Name("Playlist").Caption("Playlist").Top(). # CloseButton(True).MaximizeButton(True)) #self._mgr.AddPane(self._ribbon, wx.aui.AuiPaneInfo(). # Name("Ribbon").Top(). # CloseButton(True).MaximizeButton(True)) # "commit" all changes made to FrameManager self._mgr.Update() #class MainPanel(wx.Panel): # def __init__(self, parent, resfile=RESFILE): # wx.Panel.__init__(self, parent, -1) # self.parent = parent # xml-rpc client xmlrpc = xmlrpc_client.Client() self.cl = xmlrpc.client xmlrpc.ListMethods() # xrc gui layout ------------------ # XML Resources can be loaded from a file like this: # res = xrc.XmlResource(RESFILE) # self.panel = res.LoadPanel(self, "m_pa_main") # self.lc_playlist = xrc.XRCCTRL(self,'m_lc_playlist') self.Bind(wx.EVT_TOOL, self.OnPlayClick, id=xrc.XRCID("m_tl_play")) self.Bind(wx.EVT_TOOL, self.OnStopClick, id=xrc.XRCID("m_tl_stop")) #self.Bind(wx.EVT_BUTTON, self.OnButtonThree, id=xrc.XRCID("m_button3")) #self.Bind(wx.EVT_BUTTON, self.OnLoadClick, id=xrc.XRCID("m_button4")) # and do the layout # sizer = wx.BoxSizer(wx.VERTICAL) # sizer.Add(self.panel, 1, wx.EXPAND|wx.ALL, 0) # self.SetSizer(sizer) # self.SetAutoLayout(True) # self.Layout() self.cl.AddItem({ 'Artist': 'Beck', 'Title': 'Sad Song', 'Location': 'Y:/1.mp3' }) self.cl.AddItem({ 'Artist': 'U2', 'Title': 'Gloria', 'Location': 'Y:/1.mp3', 'Fun': 'yup' }) print self.cl.PrintPlaylist() self.PopulatePlaylist()
def __init__(self, parent, id=-1, title="", pos=wx.DefaultPosition, size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE): self.frame = wx.Frame.__init__(self, parent, id, title, pos, size, style) # Initiate parent window self.SetIcon(wx.Icon("Icons/Pie.ico", wx.BITMAP_TYPE_ICO)) # Set window icon self.ribbon = RB.RibbonBar(self, -1) # Initiate Ribbon Bar self.CreateStatusBar() # Initiate Status Bar ### ------------------------------------------- Home Tab: id = 100 -------------------------------------------- ### home = RB.RibbonPage(self.ribbon, -1, "Home") # Home tab on bar filePanel = RB.RibbonPanel(home, -1, "File") # File menu fileBar = RB.RibbonButtonBar(filePanel) fileBar.AddSimpleButton(101, "New", wx.Bitmap("Icons/stock_new.png", wx.BITMAP_TYPE_PNG), "") # New document fileBar.AddSimpleButton(102, "Open", wx.Bitmap("Icons/stock_open.png", wx.BITMAP_TYPE_PNG), "") # Open file tool fileBar.AddHybridButton( 103, "Save", wx.Bitmap("Icons/stock_save.png", wx.BITMAP_TYPE_PNG)) # Save file tool fileBar.AddHybridButton(104, "Print", wx.Bitmap("Icons/stock_print.png", wx.BITMAP_TYPE_PNG), "") # Print alignmentPanel = RB.RibbonPanel(home, -1, "Alignment") # Alignment menu alignBar = RB.RibbonButtonBar(alignmentPanel) alignBar.AddSimpleButton(105, "Left", wx.Bitmap("Icons/align_left.png", wx.BITMAP_TYPE_PNG), "") # Left Align alignBar.AddSimpleButton(106, "Center", wx.Bitmap("Icons/align_center.png", wx.BITMAP_TYPE_PNG), "") # Centre Align alignBar.AddSimpleButton(107, "Right", wx.Bitmap("Icons/align_right.png", wx.BITMAP_TYPE_PNG), "") # Right Align toolsPanel = RB.RibbonPanel(home, -1, "Text") # Text menu toolsBar = RB.RibbonButtonBar(toolsPanel) toolsBar.AddSimpleButton(108, "Standard", wx.Bitmap("Icons/bullet_point.png", wx.BITMAP_TYPE_PNG), "") # Standard Bullets toolsBar.AddSimpleButton(109, "Number", wx.Bitmap("Icons/numb_point.png", wx.BITMAP_TYPE_PNG), "") # Numbered Bullets toolsBar.AddSimpleButton(110, "Bold", wx.Bitmap("Icons/stock_text_bold.png", wx.BITMAP_TYPE_PNG), "") # Bold text toolsBar.AddSimpleButton(111, "Italic", wx.Bitmap("Icons/stock_text_italic.png", wx.BITMAP_TYPE_PNG), "") # Italic text toolsBar.AddSimpleButton(112, "Underline", wx.Bitmap("Icons/stock_text_underline.png", wx.BITMAP_TYPE_PNG), "") # Underline Text toolsBar.AddSimpleButton(119, "Highlight", wx.Bitmap("Icons/highlighter_icon.png", wx.BITMAP_TYPE_PNG), "") # Highlight text lineSpace = RB.RibbonPanel(home, -1, "Spacing") # Spacing menu lineBar = RB.RibbonButtonBar(lineSpace) lineBar.AddSimpleButton(113, "Normal", wx.Bitmap("Icons/spacing_normal.png", wx.BITMAP_TYPE_PNG), "") # Single line spacing lineBar.AddSimpleButton(114, "Half", wx.Bitmap("Icons/spacing_half.png", wx.BITMAP_TYPE_PNG), "") # 1 1/2 line spacing lineBar.AddSimpleButton(115, "Double", wx.Bitmap("Icons/spacing_double.png", wx.BITMAP_TYPE_PNG), "") # Double line spacing tabPanel = RB.RibbonPanel(home, -1, "Indent") # Indent menu tabBar = RB.RibbonButtonBar(tabPanel) tabBar.AddSimpleButton(116, "Right", wx.Bitmap("Icons/arrow_right.png", wx.BITMAP_TYPE_PNG), "") # Right indent tabBar.AddSimpleButton(117, "Left", wx.Bitmap("Icons/arrow_left.png", wx.BITMAP_TYPE_PNG), "") # Left indent picPanel = RB.RibbonPanel(home, -1, "Add Pictures") # Pictures menu picBar = RB.RibbonButtonBar(picPanel) picBar.AddSimpleButton(118, "Import", wx.Bitmap("Icons/insert_image.png", wx.BITMAP_TYPE_PNG), "") # Import pics ### ------------------------------------------- Font Tab: id = 200 -------------------------------------------- ### font_tab = RB.RibbonPage(self.ribbon, -1, "Font") # Font tab created fontPanel = RB.RibbonPanel(font_tab, 400, "Font") # Font gallery self.addColours(fontPanel, 200) fontPanel2 = RB.RibbonPanel(font_tab, -1, "Fonts") # Fonts bar fonts = RB.RibbonButtonBar(fontPanel2) fonts.AddSimpleButton( 201, "Font", wx.Bitmap("Icons/edit_pic.jpg", wx.BITMAP_TYPE_JPEG), "") fonts.AddSimpleButton( 202, "Words", wx.Bitmap("Icons/suggestion_icon.png", wx.BITMAP_TYPE_PNG), "") fonts.AddSimpleButton( 203, "Check", wx.Bitmap("Icons/suggestion_icon.png", wx.BITMAP_TYPE_PNG), "") fontPanel.Realize() fontPanel2.Realize() ### ------------------------------------------- End Ribbon ---------------------------------------------------- ### self.rtc = RichTextCtrl(self, style=wx.HSCROLL | wx.NO_BORDER) # Init rich text box wx.CallAfter(self.rtc.SetFocus) # Display text box self.rtc.BeginFont( wx.Font(15, wx.SWISS, wx.NORMAL, wx.NORMAL, False, "Calibri")) box = wx.BoxSizer( wx.VERTICAL) # Resizes widgets within window when resized box.Add(self.ribbon, 0, wx.EXPAND) # Resizes ribbon appropriately box.Add(self.rtc, 1, wx.EXPAND) # Fills in remaining space with text box self.ribbon.Realize() # Displays ribbon self.SetSizer(box) # Initiate self.Show(True) self.bindEvents()
def __init__(self, parent): wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=u"Geochemical QAQC Program", pos=wx.DefaultPosition, size=wx.Size(700, 700), style=wx.DEFAULT_FRAME_STYLE) self.SetSizeHints(wx.DefaultSize, wx.DefaultSize) box = wx.BoxSizer(wx.VERTICAL) open_Proj = wx.Window.NewControlId() save_Proj = wx.Window.NewControlId() exp_Rep = wx.Window.NewControlId() std_db = wx.Window.NewControlId() open_Setting = wx.Window.NewControlId() exit_bot = wx.Window.NewControlId() self.rb = rb.RibbonBar(self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.lib.agw.ribbon.RIBBON_BAR_DEFAULT_STYLE) self.Page1 = rb.RibbonPage(self.rb, wx.ID_ANY, u"MyRibbonPage", wx.NullBitmap, 0) self.file_panel = rb.RibbonPanel( self.Page1, wx.ID_ANY, wx.EmptyString, wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, wx.lib.agw.ribbon.RIBBON_PANEL_DEFAULT_STYLE) self.rbb1 = rb.RibbonButtonBar(self.file_panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) self.rbb1.AddSimpleButton( open_Proj, u"Open Project", wx.Bitmap(u"img/open_47.png", wx.BITMAP_TYPE_ANY), wx.EmptyString) self.rbb1.AddSimpleButton( save_Proj, u"Save Project", wx.Bitmap(u"img/save_47.png", wx.BITMAP_TYPE_ANY), wx.EmptyString) self.rbb1.AddSimpleButton( exp_Rep, u"Print Report", wx.Bitmap(u"img/report_47.png", wx.BITMAP_TYPE_ANY), wx.EmptyString) self.db_panel = rb.RibbonPanel( self.Page1, wx.ID_ANY, wx.EmptyString, wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, wx.lib.agw.ribbon.RIBBON_PANEL_DEFAULT_STYLE) self.rbb2 = rb.RibbonButtonBar(self.db_panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) self.rbb2.AddSimpleButton( std_db, u"Standard Database", wx.Bitmap(u"img/database_47.png", wx.BITMAP_TYPE_ANY), wx.EmptyString) self.exit_panel = rb.RibbonPanel( self.Page1, wx.ID_ANY, wx.EmptyString, wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, wx.lib.agw.ribbon.RIBBON_PANEL_DEFAULT_STYLE) self.rbb3 = rb.RibbonButtonBar(self.exit_panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) self.rbb3.AddSimpleButton( open_Setting, u" Settings", wx.Bitmap(u"img/set_47.png", wx.BITMAP_TYPE_ANY), wx.EmptyString) self.rbb3.AddSimpleButton( exit_bot, u" Exit", wx.Bitmap(u"img/exit_47.png", wx.BITMAP_TYPE_ANY), wx.EmptyString) self.rb.Realize() #Set buttom event in the Ribbon buttons self.rbb1.Bind(rb.EVT_RIBBONBUTTONBAR_CLICKED, self.openProject, id=open_Proj) self.rbb1.Bind(rb.EVT_RIBBONBUTTONBAR_CLICKED, self.SaveProject, id=save_Proj) self.rbb1.Bind(rb.EVT_RIBBONBUTTONBAR_CLICKED, self.ExportReport, id=exp_Rep) self.rbb2.Bind(rb.EVT_RIBBONBUTTONBAR_CLICKED, self.StandardDB, id=std_db) self.rbb3.Bind(rb.EVT_RIBBONBUTTONBAR_CLICKED, self.open_Setting, None, id=open_Setting) self.rbb3.Bind(rb.EVT_RIBBONBUTTONBAR_CLICKED, self.Onclose, None, id=exit_bot) box.Add(self.rb, 0, wx.ALL | wx.EXPAND, 5) self.note = wx.Notebook(self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) self.data_panel = wx.Panel(self.note, wx.ID_ANY, wx.DefaultPosition, wx.Size(-1, -1), 0) box1 = wx.BoxSizer(wx.HORIZONTAL) self.Datagrid = wx.grid.Grid(self.data_panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) # Grid self.Datagrid.CreateGrid(100, 4) self.Datagrid.EnableEditing(True) self.Datagrid.EnableGridLines(True) self.Datagrid.EnableDragGridSize(False) self.Datagrid.SetMargins(50, 0) # Columns self.Datagrid.SetColSize(0, 100) self.Datagrid.SetColSize(1, 100) self.Datagrid.SetColSize(2, 100) self.Datagrid.SetColSize(3, 100) self.Datagrid.EnableDragColMove(False) self.Datagrid.EnableDragColSize(True) self.Datagrid.SetColLabelSize(30) self.Datagrid.SetColLabelValue(0, u"Sample ID") self.Datagrid.SetColLabelValue(1, u"Sample Type") self.Datagrid.SetColLabelValue(2, u"Duplicate") self.Datagrid.SetColLabelValue(3, u"Assay 01") #self.Datagrid.SetColLabelValue( 4, u"Assay 02" ) #self.Datagrid.SetColLabelValue( 5, u"Assay 03" ) self.Datagrid.SetColLabelAlignment(wx.ALIGN_CENTER, wx.ALIGN_CENTER) # Rows self.Datagrid.EnableDragRowSize(True) self.Datagrid.SetRowLabelSize(50) self.Datagrid.SetRowLabelAlignment(wx.ALIGN_CENTER, wx.ALIGN_CENTER) # Label Appearance # Cell Defaults self.Datagrid.SetDefaultCellAlignment(wx.ALIGN_CENTER, wx.ALIGN_TOP) box1.Add(self.Datagrid, 0, wx.ALL, 5) box2 = wx.BoxSizer(wx.VERTICAL) box2.Add((0, 0), 1, wx.EXPAND, 5) self.m_staticText2 = wx.StaticText(self.data_panel, wx.ID_ANY, u"Open Data File ", wx.DefaultPosition, wx.DefaultSize, 0) self.m_staticText2.Wrap(-1) box2.Add(self.m_staticText2, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) self.open_file = wx.BitmapButton(self.data_panel, wx.ID_ANY, wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, wx.BU_AUTODRAW | 0) self.open_file.SetBitmap( wx.Bitmap(u"img/opendata_47.png", wx.BITMAP_TYPE_ANY)) box2.Add(self.open_file, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) #Set open file data function self.open_file.Bind(wx.EVT_BUTTON, self.LoadData) box2.Add((0, 0), 1, 0, 5) self.m_staticText2 = wx.StaticText(self.data_panel, wx.ID_ANY, u"Clear Data ", wx.DefaultPosition, wx.DefaultSize, 0) self.m_staticText2.Wrap(-1) box2.Add(self.m_staticText2, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) self.clear_datagrid = wx.BitmapButton(self.data_panel, wx.ID_ANY, wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, wx.BU_AUTODRAW | 0) self.clear_datagrid.SetBitmap( wx.Bitmap(u"img/trash_47.png", wx.BITMAP_TYPE_ANY)) box2.Add(self.clear_datagrid, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) #Set open file data function self.clear_datagrid.Bind(wx.EVT_BUTTON, self.clear_DataGrid) box2.Add((0, 0), 1, 0, 5) self.m_sline = wx.StaticLine(self.data_panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL) box2.Add(self.m_sline, 0, wx.EXPAND | wx.ALL, 5) #set the Technical Manager self.m_st_technicalman = wx.StaticText(self.data_panel, wx.ID_ANY, u"Technical Manager:", wx.DefaultPosition, wx.DefaultSize, 0) self.m_st_technicalman.Wrap(-1) box2.Add(self.m_st_technicalman, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) self.m_Tech = wx.TextCtrl(self.data_panel, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0) box2.Add(self.m_Tech, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) #set the Batch name self.m_st_batch = wx.StaticText(self.data_panel, wx.ID_ANY, u"Batch Name:", wx.DefaultPosition, wx.DefaultSize, 0) self.m_st_batch.Wrap(-1) box2.Add(self.m_st_batch, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) self.m_Bath = wx.TextCtrl(self.data_panel, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0) box2.Add(self.m_Bath, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) self.m_staticText3 = wx.StaticText(self.data_panel, wx.ID_ANY, u"Run", wx.DefaultPosition, wx.DefaultSize, 0) self.m_staticText3.Wrap(-1) box2.Add(self.m_staticText3, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) self.run_bot = wx.BitmapButton(self.data_panel, wx.ID_ANY, wx.NullBitmap, wx.DefaultPosition, wx.DefaultSize, wx.BU_AUTODRAW | 0) self.run_bot.SetBitmap(wx.Bitmap(u"img/run_47.png", wx.BITMAP_TYPE_ANY)) box2.Add(self.run_bot, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5) #Set open file data function self.run_bot.Bind(wx.EVT_BUTTON, self.runProject) box2.Add((0, 0), 1, wx.EXPAND, 5) box1.Add(box2, 1, wx.EXPAND, 5) self.data_panel.SetSizer(box1) self.data_panel.Layout() box1.Fit(self.data_panel) self.note.AddPage(self.data_panel, u"DATA", True) #Set the report panel self.report_panel = wx.Panel(self.note, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL) gs_report = wx.BoxSizer(wx.VERTICAL) self.buttonpanel = pdfButtonPanel(self.report_panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, 0) self.pdfViewer = pdfViewer(self.report_panel, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.HSCROLL | wx.VSCROLL | wx.SUNKEN_BORDER) self.pdfViewer.UsePrintDirect = "False" # introduce buttonpanel and viewer to each other self.buttonpanel.viewer = self.pdfViewer self.pdfViewer.buttonpanel = self.buttonpanel #add the buutonpanel and pdfviewer to boxsizer gs_report.Add(self.buttonpanel, 1, wx.ALL, 5) gs_report.Add(self.pdfViewer, 100, wx.EXPAND | wx.ALL, 5) self.report_panel.SetSizer(gs_report) self.report_panel.Layout() gs_report.Fit(self.report_panel) self.note.AddPage(self.report_panel, u"Report", False) box.Add(self.note, 1, wx.EXPAND | wx.ALL, 5) self.SetSizer(box) self.Layout() self.Centre(wx.BOTH) #set the types self.type = ["SMP", "BLANK", "DUP"] #Load std for list self.Load_STD() #set the setting parameters self.Get_setting() #clear temporary files self.Clear_tempFiles() #set Datagrid cell Editor for fill with list self.type_editor = wx.grid.GridCellChoiceEditor(self.type, True) #set the editor cell for i in range(0, 100): self.Datagrid.SetCellEditor(i, 1, self.type_editor)