--- nfo/projects/netfraggle/bin/fraggleViewport.py 2004/08/25 22:53:41 1.7 +++ nfo/projects/netfraggle/bin/fraggleViewport.py 2004/08/26 18:19:27 1.10 @@ -1,27 +1,47 @@ -4#Boa:MDIParent:fraggleViewport +#Boa:MDIParent:fraggleViewport + +# $Id: fraggleViewport.py,v 1.10 2004/08/26 18:19:27 joko Exp $ +# $Log: fraggleViewport.py,v $ +# Revision 1.10 2004/08/26 18:19:27 joko +# now using FraggleTopicFrame +# +# Revision 1.9 2004/08/26 15:21:13 joko +# renamed namespaces +# added key shortcuts to menu-items +# correct "showAbout" code +# import os from wxPython.wx import * import fraggleDialogPrefs import fraggleCtlPreferences -from fraggleDialogs import * +import FraggleAboutDialog +import FraggleTopicFrame def create(parent): - return fraggleMainWin(parent) + return fraggleViewport(parent) [wxID_FRAGGLEVIEWPORT] = map(lambda _init_ctrls: wxNewId(), range(1)) [wxID_FRAGGLEVIEWPORTMENU1FPREFS, wxID_FRAGGLEVIEWPORTMENU1ITEMS1, ] = map(lambda _init_coll_menu1_Items: wxNewId(), range(2)) -[wxID_FRAGGLEVIEWPORTMENU2CONT, wxID_FRAGGLEVIEWPORTMENU2ABOUT, +[wxID_FRAGGLEVIEWPORTMENU2ABOUT, wxID_FRAGGLEVIEWPORTMENU2CONT, ] = map(lambda _init_coll_menu2_Items: wxNewId(), range(2)) class fraggleViewport(wxMDIParentFrame): + def _init_coll_menu2_Items(self, parent): + # generated method, don't edit + + parent.Append(helpString='Contents', id=wxID_FRAGGLEVIEWPORTMENU2CONT, + item='Contents', kind=wxITEM_NORMAL) + parent.Append(helpString='About', id=wxID_FRAGGLEVIEWPORTMENU2ABOUT, + item='About', kind=wxITEM_NORMAL) + def _init_coll_menu1_Items(self, parent): # generated method, don't edit - + parent.Append(helpString='Configure Netfraggle', id=wxID_FRAGGLEVIEWPORTMENU1FPREFS, item='Preferences', kind=wxITEM_NORMAL) @@ -29,27 +49,11 @@ id=wxID_FRAGGLEVIEWPORTMENU1ITEMS1, item='Exit', kind=wxITEM_NORMAL) - EVT_MENU(self, wxID_FRAGGLEVIEWPORTMENU1FPREFS, self.OnMenu1items0Menu) - EVT_MENU(self, wxID_FRAGGLEVIEWPORTMENU1ITEMS1, self.OnMenu1items1Menu) - - def _init_coll_menu2_Items(self, parent): - # generated method, don't edit - - parent.Append(helpString='Documentation', - id=wxID_FRAGGLEVIEWPORTMENU2CONT, item='Contents', - kind=wxITEM_NORMAL) - parent.Append(helpString='About Netfraggle', - id=wxID_FRAGGLEVIEWPORTMENU2ABOUT, item='About', - kind=wxITEM_NORMAL) - - EVT_MENU(self, wxID_FRAGGLEVIEWPORTMENU2CONT, self.OnMenu2items0Menu) - EVT_MENU(self, wxID_FRAGGLEVIEWPORTMENU2ABOUT, self.OnMenu2items1Menu) - def _init_coll_menuBar1_Menus(self, parent): # generated method, don't edit - parent.Append(menu=self.menu1, title='File') - parent.Append(menu=self.menu2, title='Help') + parent.Append(menu=self.menu1, title='&File') + parent.Append(menu=self.menu2, title='&Help') def _init_utils(self): # generated method, don't edit @@ -57,22 +61,22 @@ self.menuBar1.SetAutoLayout(1) self.menu1 = wxMenu(title='') - self._init_coll_menu1_Items(self.menu1) self.menu2 = wxMenu(title='') - self._init_coll_menu2_Items(self.menu2) self._init_coll_menuBar1_Menus(self.menuBar1) + self._init_coll_menu1_Items(self.menu1) + self._init_coll_menu2_Items(self.menu2) def _init_ctrls(self, prnt): # generated method, don't edit wxMDIParentFrame.__init__(self, id=wxID_FRAGGLEVIEWPORT, - name='fraggleViewport', parent=prnt, pos=wxPoint(277, 313), - size=wxSize(683, 307), + name='fraggleViewport', parent=prnt, pos=wxPoint(237, 287), + size=wxSize(485, 310), style=wxDEFAULT_FRAME_STYLE | wxVSCROLL | wxHSCROLL, - title='wxMDIParentFrame1') + title='NetFraggle') self._init_utils() - self.SetClientSize(wxSize(683, 284)) + self.SetClientSize(wxSize(477, 283)) self.SetMenuBar(self.menuBar1) def __init_preferences__(self): @@ -80,84 +84,41 @@ self.dialogPrefs = fraggleDialogPrefs.create(self) self.dialogPrefs.loadConfig() self.dialogPrefs.updateConfig() + + # new as of 2004-08-26: TopicFrame + self.topicFrame = FraggleTopicFrame.create(self) + self.topicFrame.Move(wxPoint(10, 10)) + + #frame.Show() + #frame.Destroy() def __init__(self, parent): self._init_ctrls(parent) self.__init_preferences__() + - def showPrefs(self, event): - """Show preferences screen""" + def OnMenu1items0Menu(self, event): try: self.dialogPrefs.ShowModal() finally: - self.dialogPrefs.Destroy() - #event.Skip() - - def showHelp(self): - """Show help""" - try: - import webbrowser - webbrowser.open("file://"+os.path.join(PEARSLOCATION, "docs/index.html"), 1) - except: - dlg = wxScrolledMessageDialog(parent=self, - caption="Help", - msg="""PEARS - alternative help (see the docs directory in your Pears folder for more elaborate information) - - Pears is a relatively simple three-pane news feed aggregator (RSS/RDF reader). - - The left pane contains the list of feeds. You can add feeds using the Feeds menu. Right-click on a feed to update, single-click to view cached contents. - - The right pane contains a list of the topics available in the feed. Single-click to open the contents of a topic in the viewer window at the bottom. Right-click to toggle read/unread status. - - Everything is cached in Python structures stored as plain text in your Home directory (in a subdirectory called '.pears'). Use the About screen to see exactly where that is on your system. - """) - dlg.ShowModal() - dlg.Destroy() - - def showAbout(self): - """Show about screen""" - dlg = AboutDialog(parent=self, id=-1, title="About Pears") - dlg.ShowModal() - dlg.Destroy() - - def doExit(self): - """Shut down the program""" - self.Close(True) - self.Destroy() - - def OnMenu1items0Menu(self, event): - self.showPrefs(event) - #event.Skip() + pass + event.Skip() def OnMenu1items1Menu(self, event): - self.doExit() + self.Destroy() + event.Skip() + def OnMenu2items0Menu(self, event): - self.showHelp() + try: + self.dialogPrefs.ShowModal() + finally: + pass + event.Skip() def OnMenu2items1Menu(self, event): - self.showAbout() - -class fraggleMainWin(fraggleViewport): - def _init_coll_menu1_Items(self, parent): - - if os.name == 'posix': - super(fraggleMainWin, self)._init_coll_menu1_Items(parent) - elif os.name == 'nt': - parent.Append(wxID_FRAGGLEVIEWPORTMENU1FPREFS, 'Configure Netfraggle', "", wxITEM_NORMAL) - parent.Append(wxID_FRAGGLEVIEWPORTMENU1ITEMS1, 'Exit Netfraggle', "", wxITEM_NORMAL) - - EVT_MENU(self, wxID_FRAGGLEVIEWPORTMENU1FPREFS, self.OnMenu1items0Menu) - EVT_MENU(self, wxID_FRAGGLEVIEWPORTMENU1ITEMS1, self.OnMenu1items1Menu) - - def _init_coll_menu2_Items(self, parent): - - if os.name == 'posix': - super(fraggleMainWin, self)._init_coll_menu2_Items(parent) - elif os.name == 'nt': - parent.Append(wxID_FRAGGLEVIEWPORTMENU2CONT, 'Contents', "", wxITEM_NORMAL) - parent.Append(wxID_FRAGGLEVIEWPORTMENU2ABOUT, 'About', "", wxITEM_NORMAL) - - EVT_MENU(self, wxID_FRAGGLEVIEWPORTMENU2CONT, self.OnMenu2items0Menu) - EVT_MENU(self, wxID_FRAGGLEVIEWPORTMENU2ABOUT, self.OnMenu2items1Menu) + """Show about screen""" + dlg = FraggleAboutDialog.create(self) + dlg.ShowModal() + dlg.Destroy()