#!/usr/bin/env python from qt import * if qVersion()[0] == '3': from qwt.PyCute3 import PyCute elif qVersion()[0] == '2': from qwt.PyCute2 import PyCute from Numeric import * from qwt.qplt import * p = [ 'x = arange(-2*pi, 2*pi, 0.01)', 'p = Plot(Curve(x, cos(x), Pen(Magenta,2), "cos(x)"),', ' Curve(x, exp(x), Pen(Red), "exp(x)", Right),', ' Axis(Right, Logarithmic),', ' "PyQwt using Qwt-%s -- http://qwt.sf.net" % QWT_VERSION_STR)', 'x = x[0:-1:10]', 'p.plot(Curve(x, cos(x-pi/4), Symbol(Circle, Yellow), "circle"),', ' Curve(x, cos(x+pi/4), Pen(Blue), Symbol(Square, Cyan), "square"))', ] q = [ 'x = arange(-2*pi, 2*pi, 0.01)', 'q = IPlot(Curve(x, cos(x), Pen(Magenta,2), "cos(x)"),', ' Curve(x, exp(x), Pen(Red), "exp(x)", Right),', ' Axis(Right, Logarithmic),', ' "PyQwt using Qwt-%s -- http://qwt.sf.net" % QWT_VERSION_STR)', 'x = x[0:-1:10]', 'q.plot(Curve(x, cos(x-pi/4), Symbol(Circle, Yellow), "circle"),', ' Curve(x, cos(x+pi/4), Pen(Blue), Symbol(Square, Cyan), "square"))', ] g = [ 'result = QPixmap.grabWidget(___w___).save("PyCute.png", "PNG")', 'sys.exit()', ] def make(): exec('\n'.join(p+q)) return p, q if __name__ == '__main__': ___a___ = QApplication(sys.argv) # locals = .. -- make all names in __main__ visible to the PyCute shell # log = .. -- save session in 'log' ___w___ = PyCute(locals=sys.modules['__main__'].__dict__, log='log') ___a___.setMainWidget(___w___) ___w___.show() if (len(sys.argv)) > 1: if sys.argv[1] == '--demo': ___w___.fakeUser(p+q) if sys.argv[1] == '--grab': ___w___.resize(600, 180) ___w___.fakeUser(p+g) else: # have to check if argument is python file sys.argv = sys.argv[1:] ___w___.fakeUser(["execfile('%s')" % sys.argv[0]]) # User, it is your turn! ___a___.exec_loop()