Thread: [Python-gtkextra-commits] CVS: python-gtkextra2/examples test.sh,1.5,1.6 testgtkplot.py,1.10,1.11 te
Status: Beta
Brought to you by:
treeves
From: <pyt...@li...> - 2005-05-26 15:12:33
|
Update of /cvsroot/python-gtkextra/python-gtkextra2/examples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8776/examples Modified Files: test.sh testgtkplot.py testrealtime.py Removed Files: common.py Log Message: First cut at building with Python-2.4.1, gtk+-2.6.7, pygtk-2.6.2. Test programs testgtkplot.py and testrealtime.py run but not exactly as the C version yet. Index: test.sh =================================================================== RCS file: /cvsroot/python-gtkextra/python-gtkextra2/examples/test.sh,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** test.sh 2 Jul 2003 16:03:45 -0000 1.5 --- test.sh 26 May 2005 15:12:24 -0000 1.6 *************** *** 1,3 **** --- 1,5 ---- #!/bin/sh + PYTHON=${PYTHON:-python} + [ $1 = "-gdb" ] && DEBUG=1 && shift *************** *** 13,20 **** if test -z $DEBUG; then ! python -c "import common;execfile('$1')" else ! python -c "\ ! import common import os raw_input('Attach gdb on %d. Press return to begin \"$1\".' % os.getpid()) --- 15,33 ---- if test -z $DEBUG; then ! $PYTHON -c "\ ! try: ! import common; ! print 'Using:', common.__file__ ! except ImportError: ! pass ! execfile('$1') ! " else ! $PYTHON -c "\ ! try: ! import common; ! print 'Using:', common.__file__ ! except ImportError: ! pass import os raw_input('Attach gdb on %d. Press return to begin \"$1\".' % os.getpid()) Index: testgtkplot.py =================================================================== RCS file: /cvsroot/python-gtkextra/python-gtkextra2/examples/testgtkplot.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** testgtkplot.py 17 Apr 2003 16:39:51 -0000 1.10 --- testgtkplot.py 26 May 2005 15:12:24 -0000 1.11 *************** *** 5,13 **** class Application(gtk.Window): - scale = 1.0 ! def __del__(self): ! print 'Application.__del__' ! def __init__(self): self.nlayers = 0 --- 5,11 ---- class Application(gtk.Window): scale = 1.0 ! custom_labels = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"] ! def __init__(self): self.nlayers = 0 *************** *** 15,25 **** self.plots = [] ! page_width = gtkextra.PLOT_LETTER_W * self.scale ! page_height = gtkextra.PLOT_LETTER_H * self.scale gtk.Window.__init__(self) self.set_title("GtkPlot Demo") self.set_size_request(550, 650) ! #self.set_size_request(page_width, page_height) scrollwin = gtk.ScrolledWindow() --- 13,23 ---- self.plots = [] ! page_width = int(gtkextra.PLOT_LETTER_W * self.scale) ! page_height = int(gtkextra.PLOT_LETTER_H * self.scale) gtk.Window.__init__(self) self.set_title("GtkPlot Demo") self.set_size_request(550, 650) ! self.set_border_width(0) scrollwin = gtk.ScrolledWindow() *************** *** 32,36 **** self.canvas = canvas = gtkextra.PlotCanvas(page_width, page_height) ! canvas.plot_canvas_set_flags(gtkextra.PLOT_CANVAS_DND_FLAGS) scrollwin.add_with_viewport(canvas) canvas.set_size(page_width, page_height) --- 30,36 ---- self.canvas = canvas = gtkextra.PlotCanvas(page_width, page_height) ! #canvas.plot_canvas_set_flags(gtkextra.PLOT_CANVAS_DND_FLAGS) ! canvas.set_property("flags", canvas.get_property("flags") | gtkextra.PLOT_CANVAS_DND_FLAGS) ! scrollwin.add_with_viewport(canvas) canvas.set_size(page_width, page_height) *************** *** 38,52 **** plot = self.new_layer(canvas) plot.set_range(-1.0, 1.0, -1.0, 1.4) ! plot.legends_move(0.51, 0.05) plot.set_legends_border(gtkextra.PLOT_BORDER_NONE, gtkextra.PLOT_BORDER_NONE) ! plot.axis_hide_title(gtkextra.PLOT_AXIS_TOP) ! plot.axis_set_ticks(gtkextra.PLOT_AXIS_X, 1.0, 1) ! plot.axis_set_ticks(gtkextra.PLOT_AXIS_Y, 1.0, 1) ! plot.axis_set_visible(gtkextra.PLOT_AXIS_TOP, gtk.TRUE) ! plot.axis_set_visible(gtkextra.PLOT_AXIS_RIGHT, gtk.TRUE) ! plot.x0_set_visible(gtk.TRUE) ! plot.y0_set_visible(gtk.TRUE) ! plot.axis_set_labels_suffix(gtkextra.PLOT_AXIS_LEFT, "%"); ! canvas.add_plot(plot, 0.15, 0.06) self.build_example1(plot) --- 38,70 ---- plot = self.new_layer(canvas) plot.set_range(-1.0, 1.0, -1.0, 1.4) ! plot.legends_move(0.500, 0.05) plot.set_legends_border(gtkextra.PLOT_BORDER_NONE, gtkextra.PLOT_BORDER_NONE) ! ! axis_left = plot.get_axis(gtkextra.PLOT_AXIS_LEFT) ! axis_right = plot.get_axis(gtkextra.PLOT_AXIS_RIGHT) ! axis_top = plot.get_axis(gtkextra.PLOT_AXIS_TOP) ! axis_bottom = plot.get_axis(gtkextra.PLOT_AXIS_BOTTOM) ! axis_x = plot.get_axis(gtkextra.PLOT_AXIS_X) ! axis_y = plot.get_axis(gtkextra.PLOT_AXIS_Y) ! ! axis_top.hide_title() ! axis_bottom.show_ticks(15, 3) ! axis_x.set_ticks(1.0, 1) ! axis_y.set_ticks(1.0, 1) ! axis_top.set_visible(True) ! axis_right.set_visible(True) ! axis_x.set_visible(True) ! axis_y.set_visible(True) ! plot.x0_set_visible(True) ! plot.y0_set_visible(True) ! axis_left.set_labels_suffix("%") ! ! child = gtkextra.PlotCanvasPlot(plot) ! canvas.put_child(child, .15, .06, .65, .31); ! plot.show() ! #child.set_property("flags", ! # child.get_property("flags") | ! # gtkextra.PLOT_CANVAS_PLOT_SELECT_POINT | ! # gtkextra.PLOT_CANVAS_PLOT_DND_POINT) self.build_example1(plot) *************** *** 55,90 **** plot.legends_set_attributes(None, 0, None, light_blue) plot.set_range(0.0, 1.0, 0.0, 0.85) ! plot.axis_set_visible(gtkextra.PLOT_AXIS_TOP, gtk.TRUE) ! plot.axis_set_visible(gtkextra.PLOT_AXIS_RIGHT, gtk.TRUE) ! plot.axis_hide_title(gtkextra.PLOT_AXIS_TOP) ! plot.axis_hide_title(gtkextra.PLOT_AXIS_RIGHT) ! plot.grids_set_visible(gtk.TRUE, gtk.TRUE, gtk.TRUE, gtk.TRUE) plot.set_legends_border(gtkextra.PLOT_BORDER_SHADOW, 3) plot.legends_move(0.58, 0.05) ! canvas.add_plot(plot, 0.15, 0.4) self.build_example2(plot) ! canvas.connect("move_item", self.move_item) canvas.connect("select_item", self.select_item) - canvas.put_text(0.40, 0.02, "Helvetica", 16, 0, None, None, - gtk.TRUE, gtk.JUSTIFY_CENTER, "DnD titles, legends and plots") - canvas.put_text(0.40, 0.72, "Helvetica", 16, 0, None, None, - gtk.TRUE, gtk.JUSTIFY_CENTER, - "You can use \\ssubscripts\\b\\b\\b\\b\\b\\b\\b"\ - "\\b\\b\\b\\N\\Ssuperscripts") - child = canvas.put_text(0.40, 0.755, "Helvetica", 16, 0, None, None, - gtk.TRUE, gtk.JUSTIFY_CENTER, - "Format text mixing \\Bbold \\N\\i, italics, "\ - "\\ggreek \\4\\N and \\+different fonts") ! child.data.set_border(gtkextra.PLOT_BORDER_SHADOW, 2, 0, 2) self.show_all() ! ! canvas.export_ps_with_size("plotdemo.ps", epsflag=gtk.TRUE) print "Wrote plotdemo.ps" - def move_item(self, canvas, item, new_x, new_y, *args): print "move_item" --- 73,112 ---- plot.legends_set_attributes(None, 0, None, light_blue) plot.set_range(0.0, 1.0, 0.0, 0.85) ! ! axis_right = plot.get_axis(gtkextra.PLOT_AXIS_RIGHT) ! axis_top = plot.get_axis(gtkextra.PLOT_AXIS_TOP) ! axis_top.set_visible(True) ! axis_right.set_visible(True) ! axis_top.hide_title() ! axis_right.hide_title() ! plot.grids_set_visible(True, True, True, True) plot.set_legends_border(gtkextra.PLOT_BORDER_SHADOW, 3) plot.legends_move(0.58, 0.05) ! plot.show() ! ! child = gtkextra.PlotCanvasPlot(plot) ! canvas.put_child(child, .15, .4, .65, .65) ! plot.show() self.build_example2(plot) ! #canvas.connect("move_item", self.move_item) canvas.connect("select_item", self.select_item) ! child = gtkextra.PlotCanvasText("Times-BoldItalic", 16, 0, None, None, True, gtk.JUSTIFY_CENTER, ! "DnD titles, legends and plots") ! canvas.put_child(child, .40, .020, .0, .0) ! child = gtkextra.PlotCanvasText("Times-Roman", 16, 0, None, None, True, gtk.JUSTIFY_CENTER, ! "You can use \\ssubscripts\\b\\b\\b\\b\\b\\b\\b\\b\\b\\b\\N\\Ssuperscripts"); ! canvas.put_child(child, .40, .720, .0, .0) ! child = gtkextra.PlotCanvasText("Times-Roman", 12, 0, None, None, True, gtk.JUSTIFY_CENTER, ! "Format text mixing \\Bbold \\N\\i, italics, \\ggreek \\4\\N and \\+different fonts"); ! canvas.put_child(child, .40, .765, .0, .0) ! child.text.set_border(gtkextra.PLOT_BORDER_SHADOW, 2, 0, 2) #FIXME: does not work self.show_all() ! canvas.export_ps_with_size("plotdemo.ps", epsflag=True) print "Wrote plotdemo.ps" def move_item(self, canvas, item, new_x, new_y, *args): print "move_item" *************** *** 98,134 **** y[i] = new_y data.set_points(x=x, y=y, dx=dx, dy=dy) ! return gtk.TRUE ! def select_item(self, canvas, event, item, *args): ! if item.type == gtkextra.PLOT_CANVAS_TEXT: print "Item selected: TEXT" ! elif item.type == gtkextra.PLOT_CANVAS_TITLE: ! print "Item selected: TITLE" ! elif item.type == gtkextra.PLOT_CANVAS_LEGENDS: ! print "Item selected: LEGENDS" ! elif item.type == gtkextra.PLOT_CANVAS_PLOT: ! print "Item selected: PLOT" ! elif item.type == gtkextra.PLOT_CANVAS_AXIS: ! print "Item selected: AXIS" ! elif item.type == gtkextra.PLOT_CANVAS_PIXMAP: print "Item selected: PIXMAP" ! elif item.type == gtkextra.PLOT_CANVAS_DATA: ! print "Item selected: DATA" ! (i, x, y) = canvas.get_active_point() ! print "Active point: %d -> %f %f" % (i, x, y) ! canvas.get_active_data().add_marker(i) ! canvas.get_active_plot().queue_draw() ! elif item.type == gtkextra.PLOT_CANVAS_MARKER: ! print "Item selected: MARKER" ! elif item.type == gtkextra.PLOT_CANVAS_NONE: ! print "Item selected: NONE" ! plot = canvas.get_active_plot() ! for n in xrange(self.nlayers): ! if plot == self.plots[n]: ! canvas.set_active_plot(plot) ! self.buttons[n].set_active(gtk.TRUE) ! else: ! self.buttons[n].set_active(gtk.FALSE) ! return gtk.TRUE def activate_plot(self, button, canvas, *args): --- 120,160 ---- y[i] = new_y data.set_points(x=x, y=y, dx=dx, dy=dy) ! return True ! def select_item(self, canvas, event, item): ! if isinstance(item, gtkextra.PlotCanvasText): print "Item selected: TEXT" ! elif isinstance(item, gtkextra.PlotCanvasPixmap): print "Item selected: PIXMAP" ! elif isinstance(item, gtkextra.PlotCanvasRectangle): ! print "Item selected: RECTANGLE" ! elif isinstance(item, gtkextra.PlotCanvasEllipse): ! print "Item selected: ELLIPSE" ! elif isinstance(item, gtkextra.PlotCanvasLine): ! print "Item selected: LINE" ! elif isinstance(item, gtkextra.PlotCanvasPlot): ! #print "Item selected: PLOT", item.pos ! if item.pos == gtkextra.PLOT_CANVAS_PLOT_IN_TITLE: ! print "Item selected: TITLE" ! elif item.pos == gtkextra.PLOT_CANVAS_PLOT_IN_LEGENDS: ! print "Item selected: LEGENDS" ! elif item.pos == gtkextra.PLOT_CANVAS_PLOT_IN_PLOT: ! print "Item selected: PLOT" ! elif item.pos == gtkextra.PLOT_CANVAS_PLOT_IN_AXIS: ! print "Item selected: AXIS" ! elif item.pos == gtkextra.PLOT_CANVAS_PLOT_IN_MARKER: ! print "Item selected: MARKER" ! elif item.pos == gtkextra.PLOT_CANVAS_PLOT_IN_GRADIENT: ! print "Item selected: GRADIENT" ! elif item.pos == gtkextra.PLOT_CANVAS_PLOT_IN_DATA: ! print "Item selected: DATA" ! #FIXME ! #x = gtk_plot_data_get_x(GTK_PLOT_CANVAS_PLOT(child)->data, &n); ! #y = gtk_plot_data_get_y(GTK_PLOT_CANVAS_PLOT(child)->data, &n); ! #n = GTK_PLOT_CANVAS_PLOT(child)->datapoint; ! #printf("Item selected: DATA\n"); ! #printf("Active point: %d -> %f %f\n", ! #GTK_PLOT_CANVAS_PLOT(child)->datapoint, x[n], y[n]); ! return True def activate_plot(self, button, canvas, *args): *************** *** 138,143 **** canvas.set_active_plot(self.plots[n]) else: ! self.buttons[n].set_active(gtk.FALSE) ! return gtk.TRUE def activate_button(self, canvas, *args): --- 164,169 ---- canvas.set_active_plot(self.plots[n]) else: ! self.buttons[n].set_active(False) ! return True def activate_button(self, canvas, *args): *************** *** 145,152 **** for n in xrange(self.nlayers): if plot == self.plots[n]: ! self.buttons[n].set_active(gtk.TRUE) else: ! self.buttons[n].set_active(gtk.FALSE) ! return gtk.TRUE def new_layer(self, canvas): --- 171,178 ---- for n in xrange(self.nlayers): if plot == self.plots[n]: ! self.buttons[n].set_active(True) else: ! self.buttons[n].set_active(False) ! return True def new_layer(self, canvas): *************** *** 155,164 **** button.set_size_request(20, 20) canvas.put(button, (self.nlayers - 1) * 20, 0) ! button.connect("toggled", self.activate_plot, canvas) plot = gtkextra.Plot() plot.resize(0.5, 0.25) self.buttons.append(button) self.plots.append(plot) ! button.set_active(gtk.TRUE) return plot --- 181,190 ---- button.set_size_request(20, 20) canvas.put(button, (self.nlayers - 1) * 20, 0) ! #button.connect("toggled", self.activate_plot, canvas) #FIXME plot = gtkextra.Plot() plot.resize(0.5, 0.25) self.buttons.append(button) self.plots.append(plot) ! button.set_active(True) return plot *************** *** 180,183 **** --- 206,210 ---- data = gtkextra.PlotData() + data.show() plot.add_data(data) data.set_points(x=px1, y=py1, dx=dx1, dy=dy1) *************** *** 187,195 **** data.show_yerrbars() data.set_legend("Spline + EY") ! data.show_labels(gtk.TRUE) data.set_labels(['0', '1', '2', '3', '4', '5']) ! data.set_labels(['0', '1', '2', '3', '4', '99']) ! data = gtkextra.PlotData() plot.add_data(data) data.set_points(x=px2, y=py2, dx=dx2, dy=dy2) --- 214,222 ---- data.show_yerrbars() data.set_legend("Spline + EY") ! data.show_labels(True) data.set_labels(['0', '1', '2', '3', '4', '5']) ! data = gtkextra.PlotData() + data.show() plot.add_data(data) data.set_points(x=px2, y=py2, dx=dx2, dy=dy2) *************** *** 202,205 **** --- 229,233 ---- data = plot.add_function(self.function) + data.show() data.set_line_attributes(gtkextra.PLOT_LINE_SOLID, 0, 0, 0, blue) data.set_legend("Function Plot") *************** *** 215,222 **** --- 243,252 ---- data = plot.add_function(self.gaussian) + data.show() data.set_line_attributes(gtkextra.PLOT_LINE_DASHED, 0, 0, 2, dark_green) data.set_legend("Gaussian") data = gtkextra.PlotBar(gtk.ORIENTATION_VERTICAL) + data.show() plot.add_data(data) data.set_points(x=px2, y=py2, dx=dx2) Index: testrealtime.py =================================================================== RCS file: /cvsroot/python-gtkextra/python-gtkextra2/examples/testrealtime.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** testrealtime.py 17 Apr 2003 16:39:51 -0000 1.4 --- testrealtime.py 26 May 2005 15:12:24 -0000 1.5 *************** *** 1,4 **** --- 1,5 ---- #!/usr/bin/env python + import gobject import gtk, gtkextra from random import randint *************** *** 7,11 **** def __init__(self): ! gtk.Window.__init__(self) self.set_title("GtkPlot Real Time Demo") self.set_size_request(550, 600) --- 8,13 ---- def __init__(self): ! #gtk.Window.__init__(self) ! self.__gobject_init__() self.set_title("GtkPlot Real Time Demo") self.set_size_request(550, 600) *************** *** 31,66 **** plot.set_background(light_yellow) plot.legends_set_attributes(None, 0, None, white) - plot.set_range(0.0, 20.0, 0.0, 1.0) - plot.axis_set_ticks(gtkextra.PLOT_AXIS_X, 2.0, 1) - plot.axis_set_ticks(gtkextra.PLOT_AXIS_Y, 0.1, 1) - plot.axis_set_labels_style(gtkextra.PLOT_AXIS_TOP, gtkextra.PLOT_LABEL_FLOAT, 0) - plot.axis_set_labels_style(gtkextra.PLOT_AXIS_BOTTOM, gtkextra.PLOT_LABEL_FLOAT, 0) - plot.axis_set_visible(gtkextra.PLOT_AXIS_TOP, gtk.TRUE) - plot.axis_set_visible(gtkextra.PLOT_AXIS_RIGHT, gtk.TRUE) - plot.grids_set_visible(gtk.TRUE, gtk.TRUE, gtk.TRUE, gtk.TRUE) - plot.axis_hide_title(gtkextra.PLOT_AXIS_TOP) - plot.axis_hide_title(gtkextra.PLOT_AXIS_RIGHT) - plot.axis_set_title(gtkextra.PLOT_AXIS_LEFT, "Intensity") - plot.axis_set_title(gtkextra.PLOT_AXIS_BOTTOM, "Time (s)") plot.set_legends_border(gtkextra.PLOT_BORDER_SHADOW, 3) plot.legends_move(0.60, 0.10) - canvas.add_plot(plot, 0.15, 0.15) ! #canvas.put_text(0.45, 0.05, "Times-BoldItalic", 20, 0, None, None, ! #canvas.put_text(0.45, 0.05, "Courier-Bold", 20, 0, None, None, #OK ! canvas.put_text(0.45, 0.05, "Helvetica", 20, 0, None, None, #OK ! gtk.TRUE, gtk.JUSTIFY_CENTER, "Real Time Demo") data = gtkextra.PlotData() plot.add_data(data) data.set_legend("Random pulse") data.set_symbol(gtkextra.PLOT_SYMBOL_DIAMOND, gtkextra.PLOT_SYMBOL_OPAQUE, 10, 2, red, red) data.set_line_attributes(gtkextra.PLOT_LINE_SOLID, 0, 0, 1, red) ! plot.clip_data(gtk.TRUE) self.show_all() ! gtk.timeout_add(1000, self.update, canvas, plot, data) def update(self, canvas, plot, data, *args): --- 33,84 ---- plot.set_background(light_yellow) plot.legends_set_attributes(None, 0, None, white) plot.set_legends_border(gtkextra.PLOT_BORDER_SHADOW, 3) plot.legends_move(0.60, 0.10) ! plot.set_range(0.0, 20.0, 0.0, 1.0) ! plot.set_ticks(gtkextra.PLOT_AXIS_X, 2, 1) ! plot.set_ticks(gtkextra.PLOT_AXIS_Y, .1, 1) ! ! axis_left = plot.get_axis(gtkextra.PLOT_AXIS_LEFT) ! axis_right = plot.get_axis(gtkextra.PLOT_AXIS_RIGHT) ! axis_top = plot.get_axis(gtkextra.PLOT_AXIS_TOP) ! axis_bottom = plot.get_axis(gtkextra.PLOT_AXIS_BOTTOM) ! axis_x = plot.get_axis(gtkextra.PLOT_AXIS_X) ! axis_y = plot.get_axis(gtkextra.PLOT_AXIS_Y) ! ! axis_top.set_labels_style(gtkextra.PLOT_LABEL_FLOAT, 0) ! axis_bottom.set_labels_style(gtkextra.PLOT_LABEL_FLOAT, 0) ! ! axis_top.set_visible(True) ! axis_right.set_visible(True) ! plot.grids_set_visible(True, True, True, True) ! ! axis_top.hide_title() ! axis_right.hide_title() ! axis_left.set_title("Intensity") ! axis_bottom.set_title("Time (s)") ! ! child = gtkextra.PlotCanvasPlot(plot) ! canvas.put_child(child, .15, .15, .80, .65); ! plot.show() ! ! child = gtkextra.PlotCanvasText("Times-BoldItalic", 20, 0, None, None, True, gtk.JUSTIFY_CENTER, "Real Time Demo") ! canvas.put_child(child, .45, .05, 0., 0.) data = gtkextra.PlotData() plot.add_data(data) + data.show() data.set_legend("Random pulse") data.set_symbol(gtkextra.PLOT_SYMBOL_DIAMOND, gtkextra.PLOT_SYMBOL_OPAQUE, 10, 2, red, red) data.set_line_attributes(gtkextra.PLOT_LINE_SOLID, 0, 0, 1, red) ! plot.clip_data(True) ! ! canvas.paint() ! canvas.refresh() self.show_all() ! gobject.timeout_add(100, self.update, canvas, plot, data) def update(self, canvas, plot, data, *args): *************** *** 90,94 **** canvas.refresh() ! return gtk.TRUE def button_press_handler(self, canvas, event, *extra): --- 108,112 ---- canvas.refresh() ! return True def button_press_handler(self, canvas, event, *extra): --- common.py DELETED --- |