[119269] trunk/dports/python/py-graph-tool
mmoll at macports.org
mmoll at macports.org
Mon Apr 21 14:48:30 PDT 2014
Revision: 119269
https://trac.macports.org/changeset/119269
Author: mmoll at macports.org
Date: 2014-04-21 14:48:30 -0700 (Mon, 21 Apr 2014)
Log Message:
-----------
py-graph-tool: add gtk3 variant to enable interactive drawing. Closes #43423
Modified Paths:
--------------
trunk/dports/python/py-graph-tool/Portfile
Added Paths:
-----------
trunk/dports/python/py-graph-tool/files/
trunk/dports/python/py-graph-tool/files/patch-src-graph_tool-gtk_draw.py.diff
Modified: trunk/dports/python/py-graph-tool/Portfile
===================================================================
--- trunk/dports/python/py-graph-tool/Portfile 2014-04-21 21:46:20 UTC (rev 119268)
+++ trunk/dports/python/py-graph-tool/Portfile 2014-04-21 21:48:30 UTC (rev 119269)
@@ -25,6 +25,8 @@
checksums md5 5c2f66d90f77824b924b2b81f5043822 \
sha1 5e0b1c215ecd76191a82c745df0fac17e33bfb09 \
rmd160 23f52640ab4dfaea1d5b6432a1b5c8293deedbc5
+# patch can be removed in next release
+patchfiles patch-src-graph_tool-gtk_draw.py.diff
distname ${realname}-${version}
if {[string match *clang* ${configure.cxx}] &&
@@ -89,6 +91,11 @@
destroot.cmd make
destroot.destdir DESTDIR=${destroot}
+ variant gtk3 description "Enable interactive drawing with gtk3" {
+ depends_lib-append port:gtk3 \
+ port:librsvg
+ }
+
post-destroot {
file rename ${destroot}${prefix}/share/doc/graph-tool \
${destroot}${prefix}/share/doc/py${python.version}-graph-tool
Added: trunk/dports/python/py-graph-tool/files/patch-src-graph_tool-gtk_draw.py.diff
===================================================================
--- trunk/dports/python/py-graph-tool/files/patch-src-graph_tool-gtk_draw.py.diff (rev 0)
+++ trunk/dports/python/py-graph-tool/files/patch-src-graph_tool-gtk_draw.py.diff 2014-04-21 21:48:30 UTC (rev 119269)
@@ -0,0 +1,42 @@
+--- src/graph_tool/draw/gtk_draw.py
++++ src/graph_tool/draw/gtk_draw.py
+@@ -240,6 +240,7 @@ class GraphWidget(Gtk.DrawingArea):
+
+ self.geometry = None
+ self.base = None
++ self.base_geometry = None
+ self.background = None
+ self.bg_color = bg_color if bg_color is not None else [1, 1, 1, 1]
+ self.surface_callback = None
+@@ -384,8 +385,8 @@ class GraphWidget(Gtk.DrawingArea):
+ self.get_allocated_height())
+ self.smatrix = self.smatrix * m
+ self.tmatrix = self.tmatrix * self.smatrix
+- if (self.base is None or self.base.get_width() != geometry[0] or
+- self.base.get_height() != geometry[1]):
++ if (self.base is None or self.base_geometry[0] != geometry[0] or
++ self.base_geometry[1] != geometry[1]):
+ # self.base = cairo.ImageSurface(cairo.FORMAT_ARGB32,
+ # *geometry)
+ w = self.get_window()
+@@ -393,6 +394,8 @@ class GraphWidget(Gtk.DrawingArea):
+ return False
+ self.base = w.create_similar_surface(cairo.CONTENT_COLOR_ALPHA,
+ *geometry)
++ self.base_geometry = geometry
++
+ cr = cairo.Context(self.base)
+ cr.set_source_rgba(*self.bg_color)
+ cr.paint()
+@@ -421,9 +424,8 @@ class GraphWidget(Gtk.DrawingArea):
+ self.geometry = geometry
+
+ ul = self.pos_to_device((0, 0), surface=True)
+- lr = self.pos_to_device((self.base.get_width(),
+- self.base.get_height()),
+- surface=True)
++ lr = self.pos_to_device(self.base_geometry, surface=True)
++
+ if (ul[0] > 0 or lr[0] < geometry[0] or
+ ul[1] > 0 or lr[1] < geometry[1]):
+ self.regenerate_surface()
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20140421/21b0f2c9/attachment-0001.html>
More information about the macports-changes
mailing list