On Tue, Mar 9, 2010 at 3:21 AM, David Arnold <[email protected]> wrote:
> All,
> OK. Think I've found the problem. I can redirect the output to a filename.
> app = wx.App(redirect=True,filename='output')
> However, I don't know how to redirect the output to the PyDev console.
> D.
If you don't pass the filename, and only set redirect=True, doesn't it
redirect things properly to stderr/stdout?
Cheers,
Fabio
>
> On Mar 8, 2010, at 4:54 PM, David Arnold wrote:
>
> All,
>
> And yet another situation. In this case, compiling using Aptana and Pydev, I
> can see a small window open in the upper left corner of my screen, but then
> quickly close. How can I access the information that I think is in that
> small window, but doesn't stick around long enough to view?
>
> import numpy as np
> import wx
>
> import matplotlib
> matplotlib.interactive(False)
> matplotlib.use('WXAgg')
> from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg
> from matplotlib.figure import Figure
> from matplotlib.pyplot import gcf, setp
>
> class Knob:
> pass
>
> class Param:
>
> def __init__(self, initialValue=None, minimum=0., maximum=1.):
> self.minimum = minimum
> self.maximum = maximum
> if initialValue != self.constrain(initialValue):
> raise ValueError('illegal initial value')
> self.value = initialValue
> self.knobs = []
>
> def attach(self, knob):
> self.knobs += [knob]
>
> def set(self, value, knob=None):
> self.value = value
> self.value = self.constrain(value)
> for feedbackKnob in self.knobs:
> if feedbackKnob != knob:
> feedbackKnob.setKnob(self.value)
> return self.value
>
> def constrain(self, value):
> if value <= self.minimum:
> value = self.minimum
> if value >= self.maximum:
> value = self.maximum
> return value
>
> class SliderGroup(Knob):
> def __init__(self, parent, label, param):
> self.sliderLabel = wx.StaticText(parent, label=label)
> self.sliderText = wx.TextCtrl(parent, -1, style=wx.TE_PROCESS_ENTER)
> self.slider = wx.Slider(parent, -1)
> self.slider.SetMax(param.maximum * 1000)
> self.setKnob(param.value)
>
> sizer = wx.BoxSizer(wx.HORIZONTAL)
> sizer.Add(self.sliderLabel, 0, wx.EXPAND | wx.ALIGN_CENTER | wx.ALL,
> border=2)
> sizer.Add(self.sliderText, 0, wx.EXPAND | wx.ALIGN_CENTER | wx.ALL,
> border=2)
> sizer.Add(self.slider, 1, wx.EXPAND)
> self.sizer = sizer
>
> class FourierDemoFrame(wx.Frame):
> def __init__(self, *args, **kwargs):
> wx.Frame.__init__(self, *args, **kwargs)
>
> self.frequencySliderGroup=SliderGroup(self,label='Frequency f0:')
> self.amplitudeSliderGroup=SliderGroup(self,label='Amplitude a:')
>
> sizer=wx.BoxSizer(wx.VERTICAL)
> sizer.Add(self.frequencySliderGroup.sizer,0,wx.EXPAND|wx.ALIGN_CENTER|wx.ALL,border=5)
> sizer.Add(self.amplitudeSliderGroup.sizer,0,wx.EXPAND|wx.ALIGN_CENTER|wx.ALL,border=5)
> self.SetSizer(sizer)
>
> class App(wx.App):
> def OnInit(self):
> self.frame1=FourierDemoFrame(parent=None,title="Fourier
> Demo",size=(640,480))
> self.frame1.Centre()
> self.frame1.Show()
> return True
>
> app=App()
> app.MainLoop()
>
> David.
>
>
> On Mar 7, 2010, at 1:40 PM, David Arnold wrote:
>
> All,
>
> Here is a similar situation:
>
> import wx
>
> ID_STAT = 1
>
> ID_TOOL = 2
>
> class CheckMenuItem(wx.Frame):
>
> def __init__(self, parent, id, title):
>
> wx.Frame.__init__(self, parent, id, title, size=(350, 250))
>
> # create a menubar
>
> menubar = wx.MenuBar()
>
> # create file menu
>
> file = wx.Menu()
>
> # create view menu
>
> view = wx.Menu()
>
> # add items to view menu
>
> self.shst = view.Append(ID_STAT, 'Show statusbar', 'Show statusbar',
> kind=wx.ITEM_CHECK)
>
> self.shtl = view.Append(ID_TOOL, 'Show toolbar', 'Show toolbar',
> kind=wx.ITEM_CHECK)
>
> view.Check(ID_STAT,True)
>
> view.Check(ID_TOOL,True)
>
> # bindings
>
> self.Bind(wx.EVT_MENU,self.toggleStatusBar,id=ID_STAT)
>
> # add menus to menubar
>
> menubar.Append(file, '&File')
>
> menubar.Append(view, '&View')
>
> # add menubar to Frame
>
> self.SetMenuBar(menubar)
>
> # add toolbar
>
> self.toolbar = self.CreateToolBar()
>
> self.toolbar.AddLabelTool(3,'',wx.Bitmap('icons/calendar.png'))
>
> self.toolbar.Realize()
>
> # add status bar
>
> self.statusbar = self.CreateStatusBar()
>
> self.statusbar.Show()
>
> # center and show frame
>
> self.Centre()
>
> self.Show()
>
> def ToggleStatusBar(self,event):
>
> if self.shst.IsChecked():
>
> self.statusbar.Show()
>
> else:
>
> self.statusbar.Hide()
>
>
> app = wx.App()
>
> CheckMenuItem(None, -1, 'Check Menu Item')
>
> app.MainLoop()
>
> Because I wrote toggleStatusBar instead of ToggleStatusBar in my binding,
> the GUI won't run, but no errors are reported anywhere in PyDev.
>
> What can I do in this situation other than struggle manually to find this
> little typo?
>
> D.
>
>
> On Mar 7, 2010, at 12:13 PM, David Arnold wrote:
>
> All,
>
> Here is a situation I find myself in frequently. The code throws no errors,
> but the GUI won't open.
>
> import wx
>
> class MenuExample(wx.Frame):
>
> def __init__(self, parent, id, title):
>
> wx.Frame.__init__(self, parent, id, title, size=(250, 200))
>
> # this creates the menubar
>
> menubar = wx.MenuBar()
>
> # this creates main 'file' menu
>
> file = wx.Menu()
>
> # add an 'Open' submenu to 'file' menu
>
> open = wx.MenuItem(file, 1, '&Open\tCtrl+O')
>
> file.AppendItem(open)
>
> # add a 'Quit' submenu to 'file' menu
>
> quit = wx.MenuItem(file, 2, '&Quit\tCtrl+Q')
>
> file.AppendItem(quit)
>
> self.Bind(wx.EVT_MENU, self.onQuit, 2)
>
> # this adds the 'file' menu to the menubar
>
> menubar.Append(file, '&File')
>
> # this adds the menubar to the frame
>
> self.SetMenuBar(menubar)
>
> # center and show the frame
>
> self.Centre()
>
> self.Show()
>
> def onQuit(self,event):
>
> self.Close()
>
> app = wx.App()
>
> MenuExample(None, -1, 'Menu Example')
>
> app.MainLoop()
>
>
> I found the error. I should have: self.Bind(wx.EVT_MENU,
> self.onQuit, id=2)
>
> However, I am wondering if there is anything I can do with the PyDev
> debugger (or other strategy) to help locate this type of error when it
> happens. It is very frustrating when no errors are returned but the GUI
> won't run.
>
> David.
>
>
>
>
>
> ------------------------------------------------------------------------------
>
> Download Intel® Parallel Studio Eval
>
> Try the new software tools for yourself. Speed compiling, find bugs
>
> proactively, and fine-tune applications for parallel performance.
>
> See why Intel Parallel Studio got high marks during beta.
>
> http://p.sf.net/sfu/intel-sw-dev
>
> _______________________________________________
>
> Pydev-users mailing list
>
> [email protected]
>
> https://lists.sourceforge.net/lists/listinfo/pydev-users
>
>
> ------------------------------------------------------------------------------
>
> Download Intel® Parallel Studio Eval
>
> Try the new software tools for yourself. Speed compiling, find bugs
>
> proactively, and fine-tune applications for parallel performance.
>
> See why Intel Parallel Studio got high marks during beta.
>
> http://p.sf.net/sfu/intel-sw-dev
>
> _______________________________________________
>
> Pydev-users mailing list
>
> [email protected]
>
> https://lists.sourceforge.net/lists/listinfo/pydev-users
>
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Pydev-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/pydev-users
>
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> Pydev-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/pydev-users
>
>
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Pydev-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pydev-users