changeset dacb6e4fd6be in /home/hg/repos/gajim
details:http://hg.gajim.org/gajim?cmd=changeset;node=dacb6e4fd6be
description: line tool implemented
diffstat:
data/glade/whiteboard_widget.glade | 15 ++++++++++++++-
src/whiteboardwidget.py | 25 +++++++++++++++++++++++++
2 files changed, 39 insertions(+), 1 deletions(-)
diffs (88 lines):
diff -r 94d7e72fe32d -r dacb6e4fd6be data/glade/whiteboard_widget.glade
--- a/data/glade/whiteboard_widget.glade Mon Jul 27 15:57:33 2009 +0200
+++ b/data/glade/whiteboard_widget.glade Wed Jul 29 21:42:06 2009 -0700
@@ -43,6 +43,19 @@
<property name="fill">False</property>
<property name="position">1</property>
</packing>
+ </child><child>
+ <widget class="GtkButton" id="line_button">
+ <property name="label" translatable="yes">Line Tool</property>
+ <property name="visible">True</property>
+ <property name="can_focus">True</property>
+ <property name="receives_default">True</property>
+ <signal name="clicked" handler="on_line_button_clicked"/>
+ </widget>
+ <packing>
+ <property name="expand">False</property>
+ <property name="fill">False</property>
+ <property name="position">2</property>
+ </packing>
</child>
<child>
<widget class="GtkButton" id="export_button">
@@ -55,7 +68,7 @@
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
- <property name="position">2</property>
+ <property name="position">3</property>
</packing>
</child>
</widget>
diff -r 94d7e72fe32d -r dacb6e4fd6be src/whiteboardwidget.py
--- a/src/whiteboardwidget.py Mon Jul 27 15:57:33 2009 +0200
+++ b/src/whiteboardwidget.py Wed Jul 29 21:42:06 2009 -0700
@@ -48,6 +48,9 @@
def on_oval_button_clicked(self, widget):
self.draw_tool = 'oval'
+
+ def on_line_button_clicked(self, widget):
+ self.draw_tool = 'line'
def on_export_button_clicked(self, widget):
self.image.print_xml()
@@ -71,6 +74,9 @@
elif self.draw_tool == 'oval':
self.item_data = True
+
+ if self.draw_tool == 'line':
+ self.item_data = 'M %s,%s L' % (x, y)
def motion_notify_event(self, widget, event):
x = event.x
@@ -92,6 +98,11 @@
radius_y=abs(y -
self.item_temp_coords[1]) / 2,
stroke_color='black',
line_width=self.line_width)
+ elif self.draw_tool == 'line':
+ self.item_data = 'M %s,%s L' %
self.item_temp_coords
+ self.item_data = self.item_data + ' %s,%s' %
(x,y)
+ self.item_temp = self.item_temp =
goocanvas.Path(parent=self.root,
+ data=self.item_data,
line_width=self.line_width)
def button_release_event(self, widget, event):
x = event.x
@@ -118,6 +129,20 @@
ry = abs(y - self.item_temp_coords[1]) / 2
self.image.add_ellipse(cx, cy, rx, ry, self.line_width)
+ if self.draw_tool == 'line':
+ self.item_data = 'M %s,%s L' % self.item_temp_coords
+ self.item_data = self.item_data + ' %s,%s' % (x,y)
+ if x == self.item_temp_coords[0] and y ==
self.item_temp_coords[1]:
+ goocanvas.Ellipse(parent=self.root,
+ center_x=x,
+ center_y=y,
+ radius_x=1,
+ radius_y=1,
+ stroke_color='black',
+ fill_color='black',
+ line_width=self.line_width)
+ self.image.add_path(self.item_data, self.line_width)
+
self.item_data = None
if self.item_temp is not None:
self.item_temp.remove()
_______________________________________________
Commits mailing list
[email protected]
http://lists.gajim.org/cgi-bin/listinfo/commits