mirror of https://github.com/chriskiehl/Gooey.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
1.4 KiB
67 lines
1.4 KiB
'''
|
|
Created on Dec 28, 2013
|
|
|
|
@author: Chris
|
|
'''
|
|
|
|
import wx
|
|
from wx.lib.scrolledpanel import ScrolledPanel
|
|
|
|
|
|
class AdvancedConfigPanel(ScrolledPanel):
|
|
'''
|
|
Abstract class for the Footer panels.
|
|
'''
|
|
def __init__(self, parent, **kwargs):
|
|
ScrolledPanel.__init__(self, parent, **kwargs)
|
|
self.SetupScrolling()
|
|
|
|
self.components = []
|
|
|
|
self.container = wx.BoxSizer(wx.VERTICAL)
|
|
self.container.AddSpacer(10)
|
|
self.AddRequiredArgsHeaderMsg()
|
|
self.Add
|
|
|
|
|
|
|
|
def AddRequiredArgsHeaderMsg(self):
|
|
required_msg = wx.StaticText(self, label="Required Arguments")
|
|
self.container.Add(required_msg, 0, wx.LEFT | wx.RIGHT, 20)
|
|
|
|
def AddWidgets(self, actions, widget_type):
|
|
if len(actions) == 0:
|
|
return
|
|
action = actions.pop(0)
|
|
self.CreateHelpMsgWidget(action)
|
|
if self.hasNargs(action):
|
|
self.AddNargsMsg(action)
|
|
self.AddWidget(widget_type)
|
|
self.AddWidgets(actions, widget_type)
|
|
|
|
def CreateHelpMsgWidget(self, action):
|
|
help_msg = action.help
|
|
return wx.StaticText(self, label=help_msg)
|
|
|
|
def HasNargs(self, action):
|
|
return action.nargs > 0
|
|
|
|
def AddNargsMsg(self, action):
|
|
msg = action.nargs
|
|
return wx.StaticText(self, label=msg)
|
|
|
|
def AddWidget(self, _type):
|
|
widget = getattr(wx, _type)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
a = getattr(wx, 'StaticText')
|
|
print a
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|