def __init__(self, **kw): guicfg = AvnParser.getGuiCfg() if not guicfg: raise SystemExit Globals.Colors = guicfg['colors'] AppShell.AppShell.__init__(self, **kw) ErrorRedirect.fixlogging(_Logger, self.interior())
def __init__(self, **kw): self.root = Tk() self.root.withdraw() self.get_option_db() Pmw.initialise(self.root, useTkOptionDb=1) self.root.title(self.AppName) Pmw.MegaWidget.__init__(self, parent=self.root) self.root.resizable(0, 0) ErrorRedirect.fixlogging(_Logger, self.interior()) interior = self.interior() Busy.instantiate(interior) self._img1 = PhotoImage(file=Image1) self.slist = Pmw.ScrolledListBox(interior, labelpos='n', label_image=self._img1, listbox_exportselection=0, ) self.slist.pack(side='top', expand='yes', fill='x') f = Frame(interior) self._img2 = PhotoImage(file=Image2) cfg = AvnParser.getGuiCfg() self.servers = Pmw.ScrolledListBox(f, labelpos='n', label_image=self._img2, items=cfg['ns'], listbox_height=max(4, len(cfg['ns'])), listbox_exportselection=0, ) self.servers.pack(side='left', expand='yes', fill='x') self.servers.selection_set(0) self.bbox = Pmw.ButtonBox(f, orient='vertical', labelpos='w', frame_borderwidth=2, frame_relief='groove', ) self.bbox.pack(side='left', expand='yes', fill='x') self.bbox.add('TAFs', command=Avn.curry(self.ok, 'TAFs')) self.bbox.add('Climate', command=Avn.curry(self.ok, 'Climate')) self.bbox.add('Cancel', command=self.cancel) self.bbox.setdefault('TAFs') self.bbox.alignbuttons() f.pack(side='top') self.loadForecasters() self.prods = 0 self.pid = 0 signal.signal(signal.SIGUSR1, self.handler) signal.signal(signal.SIGCHLD, self.handler)
def __init__(self, parent, **kw): AvnDialog.Dialog.__init__(self, parent, **kw) self.title(Avn.Name + ' Monitoring Criteria') self._editor = dict.fromkeys(_Monitors) # for each page self.slist = {} self.methods = {} self.active_rules = {} self.current_rule = None self.label = {} self.severity = {} self.type = {} self.tkUnique = {} self.msg = {} self.arg = {} self.doc = {} try: self.color = AvnParser.getGuiCfg()['colors'] except Exception: # use default values self.color = ['green3', 'grey', 'pale green', \ 'yellow', 'orange', 'red', 'purple'] _Logger.error('Cannot access etc/gui.cfg') # from AvnDialog self.createMessageBar(self.interior(), True) interior = self.interior() frame = Frame(interior, relief='ridge', bd=2) self.siteentry = Pmw.EntryField(frame, labelpos='w', label_text='Site Id', entry_width=4, validate={'validator': 'alphabetic', 'min': 0, 'max': 4}, command=self.load, ) self.siteentry.pack(side='left', expand='no', padx=5) bbox = Pmw.ButtonBox(frame) btn = bbox.add('Load', command=self.load) Balloon().bind(btn, 'Retrieves rule set for selected site') btn = bbox.add('Save', command=self.__save) Balloon().bind(btn, 'Saves rule set to a file') btn = bbox.add('Close', command=self.close) Balloon().bind(btn, 'Closes this dialog') btn = bbox.add('Delete', command=self.__delete) Balloon().bind(btn, 'Deletes site-specific rules') btn = bbox.add('Help', command=Avn.curry(self.showHelp, _Help)) Balloon().bind(btn, 'Shows help') bbox.alignbuttons() bbox.pack(side='right', expand='no') frame.pack(side='top', expand='yes', fill='both') self.editpager = Pmw.NoteBook(interior, raisecommand=self.load, ) self.editpager.pack(side='top', fill='both', expand='yes') for name in _Monitors: self.__createPage(name) self.editpager.setnaturalsize() self.initialiseoptions(Editor) self.setGeometry() self._ready = True