]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/demo/wxNotebook.py
Optimized drawing code in OnMouse() for freehand drawing.
[wxWidgets.git] / utils / wxPython / demo / wxNotebook.py
index 51c68d5825434459ae307816e7759cff937de1f1..fb18f41b9aa77d334eb95906299375e97a7c1c75 100644 (file)
@@ -1,84 +1,87 @@
 
 from   wxPython.wx import *
+
 import ColorPanel
+import wxGrid
+import wxListCtrl
+import wxScrolledWindow
 
 #----------------------------------------------------------------------------
 
-def runTest(frame, nb, log):
-
-    testWin = wxNotebook(nb, -1)
-
-    win = ColorPanel.ColoredPanel(testWin, wxBLUE)
-    testWin.AddPage(win, "Blue")
-    st = wxStaticText(win, -1,
-                      "You can put nearly any type of window here!",
-                      wxPoint(10, 10))
-    st.SetForegroundColour(wxWHITE)
-    st.SetBackgroundColour(wxBLUE)
-
-    win = ColorPanel.ColoredPanel(testWin, wxRED)
-    testWin.AddPage(win, "Red")
+class TestNB(wxNotebook):
+    def __init__(self, parent, id, log):
+        wxNotebook.__init__(self, parent, id, style=wxNB_BOTTOM)
+        self.log = log
 
-    win = ColorPanel.ColoredPanel(testWin, wxGREEN)
-    testWin.AddPage(win, "Green")
+        win = ColorPanel.ColoredPanel(self, wxBLUE)
+        self.AddPage(win, "Blue")
+        st = wxStaticText(win, -1,
+                          "You can put nearly any type of window here,\n"
+                          "and the tabs can be on any side... (look below.)",
+                          wxPoint(10, 10))
+        st.SetForegroundColour(wxWHITE)
+        st.SetBackgroundColour(wxBLUE)
 
-    win = ColorPanel.ColoredPanel(testWin, wxCYAN)
-    testWin.AddPage(win, "Cyan")
+        win = ColorPanel.ColoredPanel(self, wxRED)
+        self.AddPage(win, "Red")
 
-    win = ColorPanel.ColoredPanel(testWin, wxWHITE)
-    testWin.AddPage(win, "White")
+        win = wxScrolledWindow.MyCanvas(self)
+        self.AddPage(win, 'ScrolledWindow')
 
-    win = ColorPanel.ColoredPanel(testWin, wxBLACK)
-    testWin.AddPage(win, "Black")
+        win = ColorPanel.ColoredPanel(self, wxGREEN)
+        self.AddPage(win, "Green")
 
-    win = ColorPanel.ColoredPanel(testWin, wxNamedColour('MIDNIGHT BLUE'))
-    testWin.AddPage(win, "MIDNIGHT BLUE")
+        win = wxGrid.TestGrid(self, log)
+        self.AddPage(win, "Grid")
 
-    win = ColorPanel.ColoredPanel(testWin, wxNamedColour('INDIAN RED'))
-    testWin.AddPage(win, "INDIAN RED")
-
-    return testWin
-
-#----------------------------------------------------------------------------
+        win = wxListCtrl.TestListCtrlPanel(self, log)
+        self.AddPage(win, 'List')
 
+        win = ColorPanel.ColoredPanel(self, wxCYAN)
+        self.AddPage(win, "Cyan")
 
+        win = ColorPanel.ColoredPanel(self, wxWHITE)
+        self.AddPage(win, "White")
 
+        win = ColorPanel.ColoredPanel(self, wxBLACK)
+        self.AddPage(win, "Black")
 
+        win = ColorPanel.ColoredPanel(self, wxNamedColour('MIDNIGHT BLUE'))
+        self.AddPage(win, "MIDNIGHT BLUE")
 
+        win = ColorPanel.ColoredPanel(self, wxNamedColour('INDIAN RED'))
+        self.AddPage(win, "INDIAN RED")
 
+        EVT_NOTEBOOK_PAGE_CHANGED(self, self.GetId(), self.OnPageChanged)
 
 
+    def OnPageChanged(self, event):
+        self.log.write('OnPageChanged\n')
+        event.Skip()
 
 
+#----------------------------------------------------------------------------
 
+def runTest(frame, nb, log):
+    testWin = TestNB(nb, -1, log)
+    return testWin
 
+#----------------------------------------------------------------------------
 
 
 
-overview = """\
-This class represents a notebook control, which manages multiple windows with associated tabs.
 
-To use the class, create a wxNotebook object and call AddPage or InsertPage, passing a window to be used as the page. Do not explicitly delete the window for a page that is currently managed by wxNotebook.
 
-wxNotebook()
--------------------------
 
-Default constructor.
 
-wxNotebook(wxWindow* parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, const wxSize& size, long style = 0, const wxString& name = "notebook")
 
-Constructs a notebook control.
 
-Parameters
--------------------
 
-parent = The parent window. Must be non-NULL.
 
-id = The window identifier.
 
-pos = The window position.
+overview = """\
+This class represents a notebook control, which manages multiple windows with associated tabs.
 
-size = The window size.
+To use the class, create a wxNotebook object and call AddPage or InsertPage, passing a window to be used as the page. Do not explicitly delete the window for a page that is currently managed by wxNotebook.
 
-style = The window style. Its value is a bit list of zero or more of wxTC_MULTILINE, wxTC_RIGHTJUSTIFY, wxTC_FIXEDWIDTH and wxTC_OWNERDRAW.
 """