Ravi Gadhia (OpenERP) has proposed merging 
lp:~openerp-dev/openobject-client/trunk-bug-735534-rga into 
lp:openobject-client.

Requested reviews:
  Naresh(OpenERP) (nch-openerp)
Related bugs:
  Bug #735534 in OpenERP GTK Client: "Windows GTK Client crash when changing 
lead status"
  https://bugs.launchpad.net/openobject-client/+bug/735534

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-client/trunk-bug-735534-rga/+merge/68370

Hello,
     Here I create gtk-client windows build with python2.6 with following 
package
           -- pygtk-all-in-one-2.22.5.win32-py2.6.msi
           -- create python2.6 compatible hippo.dll from latest hippo 
canvas(0.3.1) 
           -- change setup.py to support python2.6
     
     for more detail see: 
lp:~openerp-dev/openobject-client/trunk-win_installer_py2.6-rga which contain 
all required package for windows build and documentation 
   
-- 
https://code.launchpad.net/~openerp-dev/openobject-client/trunk-bug-735534-rga/+merge/68370
Your team OpenERP R&D Team is subscribed to branch 
lp:~openerp-dev/openobject-client/trunk-bug-735534-rga.
=== modified file 'bin/SpiffGtkWidgets/Calendar/Calendar.py'
--- bin/SpiffGtkWidgets/Calendar/Calendar.py	2010-12-13 09:52:05 +0000
+++ bin/SpiffGtkWidgets/Calendar/Calendar.py	2011-07-19 12:23:26 +0000
@@ -124,7 +124,7 @@
         self.colors = dict(bg            = c2i(style.bg[gtk.STATE_PRELIGHT]),
                            text          = c2i(style.fg[gtk.STATE_NORMAL]),
                            text_inactive = c2i(style.fg[gtk.STATE_INSENSITIVE]),
-                           body          = c2i(style.light[gtk.STATE_ACTIVE]),
+                           body          = c2i('white'),
                            body_today    = c2i('peach puff'),
                            border        = c2i(style.mid[gtk.STATE_NORMAL]),
                            selected      = c2i(style.mid[gtk.STATE_SELECTED]),

=== modified file 'bin/SpiffGtkWidgets/Calendar/CanvasDay.py'
--- bin/SpiffGtkWidgets/Calendar/CanvasDay.py	2010-12-13 09:52:05 +0000
+++ bin/SpiffGtkWidgets/Calendar/CanvasDay.py	2011-07-19 12:23:26 +0000
@@ -119,7 +119,9 @@
         if not self.show_rulers:
             return
         ctx.set_source_rgba(*color.to_rgba(self.cal.colors['inactive']))
-        ctx.rectangle(rect.x, rect.y, rect.width, rect.height)
+        (width, height) = self.get_allocation()
+        x,y,width,height = self.align(width, height)
+        ctx.rectangle(x, y, width, height)
         ctx.set_line_width(1)
         ctx.set_dash((1, 1))
         ctx.clip()

=== modified file 'bin/SpiffGtkWidgets/Calendar/CanvasRectangle.py'
--- bin/SpiffGtkWidgets/Calendar/CanvasRectangle.py	2010-12-13 09:52:05 +0000
+++ bin/SpiffGtkWidgets/Calendar/CanvasRectangle.py	2011-07-19 12:23:26 +0000
@@ -86,21 +86,21 @@
 
 
     def do_paint_below_children(self, ctx, rect):
+        (width, height) = self.get_allocation()
+
         ctx.set_source_rgba(*color.to_rgba(self.props.color))
-        ctx.rectangle(rect.x, rect.y, rect.width, rect.height)
+        x,y,w,h = self.align(width, height)
+        ctx.rectangle(x,y,w,h)
         ctx.clip()
         rtl  = self.props.radius_top_left
         rtr  = self.props.radius_top_right
         rbl  = self.props.radius_bottom_left
         rbr  = self.props.radius_bottom_right
-        x, y = 0, 0
-        w, h = self.get_allocation()
-
-        #  A****BQ
-        # H      C
-        # *      *
-        # G      D
-        #  F****E
+#        #  A****BQ
+#        # H      C
+#        # *      *
+#        # G      D
+#        #  F****E
         ctx.move_to(x+rtl,y)                      # A
         ctx.line_to(x+w-rtr,y)                    # B
         ctx.curve_to(x+w,y,x+w,y,x+w,y+rtr)       # C, both control points at Q
@@ -109,7 +109,8 @@
         ctx.line_to(x+rbl,y+h)                    # F
         ctx.curve_to(x,y+h,x,y+h,x,y+h-rbl)       # G
         ctx.line_to(x,y+rtl)                      # H
-        ctx.curve_to(x,y,x,y,x+rtl,y)             # A
-        ctx.fill()
+        ctx.curve_to(x,y,x,y,x+rtl,y)     
+        ctx.close_path()       
+        ctx.fill_preserve()
 
 gobject.type_register(CanvasRectangle)

=== modified file 'setup.py'
--- setup.py	2011-04-06 09:27:40 +0000
+++ setup.py	2011-07-19 12:23:26 +0000
@@ -28,6 +28,7 @@
 import sys
 import os
 import glob
+import shutil
 
 from setuptools import setup
 from setuptools.command.install import install as suc_install
@@ -39,12 +40,12 @@
     import py2exe
     has_py2exe = True
 
-    origIsSystemDLL = py2exe.build_exe.isSystemDLL
-    def isSystemDLL(pathname):
-        if os.path.basename(pathname).lower() in ("msvcp71.dll", "mfc71.dll"):
-                return 0
-        return origIsSystemDLL(pathname)
-    py2exe.build_exe.isSystemDLL = isSystemDLL
+#    origIsSystemDLL = py2exe.build_exe.isSystemDLL
+#    def isSystemDLL(pathname):
+#        if os.path.basename(pathname).lower() in ("msvcp71.dll", "mfc71.dll"):
+#                return 0
+#        return origIsSystemDLL(pathname)
+#    py2exe.build_exe.isSystemDLL = isSystemDLL
 
 sys.path.append(os.path.join(os.path.abspath(os.path.dirname(__file__)), "bin"))
 
@@ -77,6 +78,7 @@
         files.append(("po", glob.glob("bin\\po\\*.*")))
         files.append(("icons", glob.glob("bin\\icons\\*.png")))
         files.append(("share\\locale", glob.glob("bin\\share\\locale\\*.*")))
+
     else:
         files.append((opj('share','man','man1',''),['man/openerp-client.1']))
         files.append((opj('share','doc', 'openerp-client-%s' % version), [f for
@@ -119,22 +121,15 @@
         "compressed": 1,
         "optimize": 1,
         "dist_dir": 'dist',
+        "bundle_files": 3,
         "packages": [
-            "encodings","gtk", "matplotlib", "pytz", "OpenSSL",
+           "encodings","gtk","gtk.glade","gio", "glib", "matplotlib", "pytz", "OpenSSL",
             "lxml", "lxml.builder", "lxml._elementpath", "lxml.etree",
             "lxml.objectify", "decimal"
         ],
-        "includes": "pango,atk,gobject,cairo,atk,pangocairo,matplotlib._path",
         "excludes": ["Tkinter", "tcl", "TKconstants"],
-        "dll_excludes": [
-            "iconv.dll","intl.dll","libatk-1.0-0.dll",
-            "libgdk_pixbuf-2.0-0.dll","libgdk-win32-2.0-0.dll",
-            "libglib-2.0-0.dll","libgmodule-2.0-0.dll",
-            "libgobject-2.0-0.dll","libgthread-2.0-0.dll",
-            "libgtk-win32-2.0-0.dll","libpango-1.0-0.dll",
-            "libpangowin32-1.0-0.dll",
-            "wxmsw26uh_vc.dll",
-        ],
+        "dll_excludes": ["MSVCP90.dll","tcl85.dll","tk85.dll"],
+
     }
 }
 
@@ -203,6 +198,20 @@
 )
 
 if has_py2exe:
+    if os.getenv('gtk_runtime'):
+        def copy_dir(src,dst):
+            if not os.path.isdir(dst):
+                shutil.copytree(src, dst)
+
+        gtk_runtime=os.getenv('gtk_runtime')
+        # To enable gtk theme we need to add below dir of gtkruntime to dist dir
+        add_dir = ["share\\themes", "lib\\gtk-2.0", "etc"]
+        dist = opj(os.getcwd() , options['py2exe']['dist_dir'])
+        for dir in add_dir:
+            copy_dir(opj(gtk_runtime, dir), opj(dist, dir))
+    else:
+        print >> sys.stderr, 'Error: Environment variable GTK_RUNTIME is not set'
+#
     # Sometime between pytz-2008a and pytz-2008i common_timezones started to
     # include only names of zones with a corresponding data file in zoneinfo.
     # pytz installs the zoneinfo directory tree in the same directory
@@ -212,6 +221,7 @@
     # read in the py2exe executable.
     # This manually copies zoneinfo into the zip. See also
     # http://code.google.com/p/googletransitdatafeed/issues/detail?id=121
+
     import pytz
     import zipfile
     # Make sure the layout of pytz hasn't changed

_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-gtk
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-gtk
More help   : https://help.launchpad.net/ListHelp

Reply via email to