from wxPython.wx import *
from wxPython.html import wxHtmlWindow
+##from wxPython.stc import *
+
import images
#---------------------------------------------------------------------------
-## _treeList = [
-## ('New since last release', ['wxGenericDirCtrl',
-## 'wxImageFromStream',
-## 'RowColSizer',
-## 'Unicode',
-## 'wxFileHistory',
-## ]),
-
-## ('Windows', ['wxFrame', 'wxDialog', 'wxMiniFrame',
-## 'wxGrid', 'wxSashWindow',
-## 'wxScrolledWindow', 'wxSplitterWindow',
-## 'wxStatusBar', 'wxNotebook',
-## 'wxHtmlWindow',
-## 'wxStyledTextCtrl_1', 'wxStyledTextCtrl_2',
-## 'wxPopupWindow',
-## 'wxDynamicSashWindow',
-## ]),
-
-## ('Common Dialogs', ['wxColourDialog', 'wxDirDialog', 'wxFileDialog',
-## 'wxSingleChoiceDialog', 'wxTextEntryDialog',
-## 'wxFontDialog', 'wxPageSetupDialog', 'wxPrintDialog',
-## 'wxMessageDialog', 'wxProgressDialog', 'wxFindReplaceDialog',
-## ]),
-
-## ('Controls', ['wxButton', 'wxCheckBox', 'wxCheckListBox', 'wxChoice',
-## 'wxComboBox', 'wxGauge', 'wxListBox', 'wxListCtrl', 'VirtualListCtrl',
-## 'wxTextCtrl',
-## 'wxTreeCtrl', 'wxSpinButton', 'wxSpinCtrl', 'wxStaticText',
-## 'wxStaticBitmap', 'wxRadioBox', 'wxSlider', 'wxToolBar',
-## 'wxCalendarCtrl', 'wxToggleButton',
-## 'wxEditableListBox', 'wxLEDNumberCtrl',
-## ]),
-
-## ('Window Layout', ['wxLayoutConstraints', 'LayoutAnchors', 'Sizers', 'XML_Resource',
-## 'RowColSizer',
-## ]),
-
-## ('Miscellaneous', [ 'DragAndDrop', 'CustomDragAndDrop', 'URLDragAndDrop',
-## 'FontEnumerator',
-## 'wxTimer', 'wxValidator', 'wxGLCanvas', 'DialogUnits',
-## 'wxImage', 'wxMask', 'PrintFramework', 'wxOGL',
-## 'PythonEvents', 'Threads',
-## 'ActiveXWrapper_Acrobat', 'ActiveXWrapper_IE',
-## 'wxDragImage', "wxProcess", "FancyText", "OOR", "wxWave",
-## 'wxJoystick', 'DrawXXXList', 'ErrorDialogs', 'wxMimeTypesManager',
-## 'ContextHelp', 'SplitTree', 'Unicode', 'wxFileHistory',
-## ]),
-
-## ('wxPython Library', ['Layoutf', 'wxScrolledMessageDialog',
-## 'wxMultipleChoiceDialog', 'wxPlotCanvas', 'wxFloatBar',
-## 'wxCalendar', 'wxMVCTree', 'wxVTKRenderWindow',
-## 'FileBrowseButton', 'GenericButtons', 'wxEditor',
-## 'ColourSelect', 'ImageBrowser',
-## 'infoframe', 'ColourDB', 'PyCrust', 'PyCrustWithFilling',
-## 'TablePrint',
-## 'wxRightTextCtrl',
-## ]),
-
-## ('Cool Contribs', ['pyTree', 'hangman',
-## #'SlashDot',
-## 'XMLtreeview'
-## ]),
-
-## ]
-
-
_treeList = [
# new stuff
('New since last release', [
'wxStaticBitmap',
'wxStatusBar',
'wxTextCtrl',
- 'wxTimer',
'wxToggleButton',
'wxToolBar',
'wxTreeCtrl',
'ActiveXWrapper_IE',
'wxGLCanvas',
'wxPlotCanvas',
- 'wxVTKRenderWindow',
]),
# pyTree, hangman, ... in the samples dir
self.nb = wxNotebook(splitter2, -1, style=wxCLIP_CHILDREN)
# Set up a wxHtmlWindow on the Overview Notebook page
- self.ovr = wxHtmlWindow(self.nb, -1, size=(400, 400))
- self.nb.AddPage(self.ovr, self.overviewText)
+ # we put it in a panel first because there seems to be a
+ # refresh bug of some sort (wxGTK) when it is directly in
+ # the notebook...
+ if 0: # the old way
+ self.ovr = wxHtmlWindow(self.nb, -1, size=(400, 400))
+ self.nb.AddPage(self.ovr, self.overviewText)
+
+ else: # hopefully I can remove this hacky code soon, see bug #216861
+ panel = wxPanel(self.nb, -1, style=wxCLIP_CHILDREN)
+ self.ovr = wxHtmlWindow(panel, -1, size=(400, 400))
+ self.nb.AddPage(panel, self.overviewText)
+
+ def OnOvrSize(evt, ovr=self.ovr):
+ ovr.SetSize(evt.GetSize())
+
+ EVT_SIZE(panel, OnOvrSize)
+ EVT_ERASE_BACKGROUND(panel, EmptyHandler)
+
self.SetOverview(self.overviewText, overview)
self.SetOverview(itemText + " Overview", module.overview)
finally:
wxEndBusyCursor()
+ self.tree.Refresh()
# in case runTest is modal, make sure things look right...
self.nb.Refresh();
- wxYield()
+ wxSafeYield()
self.window = module.runTest(self, self.nb, self) ###
if self.window:
self.nb.AddPage(self.window, 'Demo')
- wxYield()
self.nb.SetSelection(2)
+ self.nb.Refresh() # without this wxMac has troubles showing the just added page
else:
self.ovr.SetPage("")
os.chdir(demoPath)
except:
pass
- app = MyApp(0)
+ app = MyApp(wxPlatform == "__WXMAC__")
app.MainLoop()