]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/PyPlot.py
non-PCH build fix (according to Tinderbox).
[wxWidgets.git] / wxPython / demo / PyPlot.py
index c22a08e34fa81628ecbb5cbf96b6a003ba5528d7..52387c5044ef0daa860dc740d34c0826a1f05643 100644 (file)
@@ -1,6 +1,12 @@
 
 import  wx
-import  wx.lib.plot
+
+hadImportError = False
+try:
+    import  wx.lib.plot
+except ImportError:
+    hadImportError = True
+    
 
 ################################################################\
 # Where's the code???                                           |
@@ -13,18 +19,46 @@ import  wx.lib.plot
 # the file, as expected.                                        |
 ################################################################/
 
-#----------------------------------------------------------------------
+#---------------------------------------------------------------------------
+
+class TestPanel(wx.Panel):
+    def __init__(self, parent, log):
+        self.log = log
+        wx.Panel.__init__(self, parent, -1)
+
+        b = wx.Button(self, -1, "Show the PyPlot sample", (50,50))
+        self.Bind(wx.EVT_BUTTON, self.OnButton, b)
+
+
+    def OnButton(self, evt):
+        win = wx.lib.plot.TestFrame(self, -1, "PlotCanvas Demo")
+        win.Show()
+
+#---------------------------------------------------------------------------
+
 
 def runTest(frame, nb, log):
-    # Loading the demo class directly from the library's
-    # test code.
-    win = wx.lib.plot.TestFrame(nb, -1, "PlotCanvas Demo")
-    frame.otherWin = win
-    return None
+    if not hadImportError:
+        win = TestPanel(nb, log)
+    else:
+        from Main import MessagePanel
+        win = MessagePanel(nb, """\
+This demo requires the Numeric or numarray module,
+which could not be imported.  It probably is not installed
+(it's not part of the standard Python distribution). See the
+Python site (http://www.python.org) for information on
+downloading source or binaries.""",
+                           'Sorry', wx.ICON_WARNING)
+    
+    return win
+
 
 #----------------------------------------------------------------------
 
-overview = """\
+if hadImportError:
+    overview = ""
+else:
+    overview = """\
 <html><body>
 <center><h2>PyPlot</h2></center>
 
@@ -60,7 +94,7 @@ come with the class itself.
         
     <li>Print
     
-        <p>Suprise! It prints the current plot to your printer! :-)
+        <p>Surprise! It prints the current plot to your printer! :-)
         
     <li>Save Plot