commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnue/forms/src GFDisplayHandler.py uidrivers/wx...


From: James Thompson
Subject: gnue/forms/src GFDisplayHandler.py uidrivers/wx...
Date: Mon, 24 Mar 2003 21:42:26 -0500

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     James Thompson <address@hidden> 03/03/24 21:42:26

Modified files:
        forms/src      : GFDisplayHandler.py 
        forms/src/uidrivers/wx/widgets: image.py 

Log message:
        scrollbars on image adjust per image loaded
        simple abort if loading an <image> gfd and PIL not installed

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/GFDisplayHandler.py.diff?tr1=1.50&tr2=1.51&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/forms/src/uidrivers/wx/widgets/image.py.diff?tr1=1.1&tr2=1.2&r1=text&r2=text

Patches:
Index: gnue/forms/src/GFDisplayHandler.py
diff -c gnue/forms/src/GFDisplayHandler.py:1.50 
gnue/forms/src/GFDisplayHandler.py:1.51
*** gnue/forms/src/GFDisplayHandler.py:1.50     Mon Mar 24 21:05:08 2003
--- gnue/forms/src/GFDisplayHandler.py  Mon Mar 24 21:42:26 2003
***************
*** 32,39 ****
  from gnue.common.apps import GDebug
  from gnue.common import events
  
! #import Image
! 
  try:
    from mx.DateTime import DateTime
  except ImportError:
--- 32,42 ----
  from gnue.common.apps import GDebug
  from gnue.common import events
  
! try:
!   import Image
! except ImportError:
!   Image = None
!   
  try:
    from mx.DateTime import DateTime
  except ImportError:
***************
*** 916,921 ****
--- 919,926 ----
  #
  class ImageDisplayHandler(FieldDisplayHandler):
    def __init__(self, entry, eventHandler):
+     if not Image:
+       raise "Form contains a <image> and image support not loaded"
      FieldDisplayHandler.__init__(self, entry, eventHandler, None)
  
    def _buildDisplayHelper(self, value, editing):
Index: gnue/forms/src/uidrivers/wx/widgets/image.py
diff -c gnue/forms/src/uidrivers/wx/widgets/image.py:1.1 
gnue/forms/src/uidrivers/wx/widgets/image.py:1.2
*** gnue/forms/src/uidrivers/wx/widgets/image.py:1.1    Sun Mar 23 22:39:18 2003
--- gnue/forms/src/uidrivers/wx/widgets/image.py        Mon Mar 24 21:42:26 2003
***************
*** 54,59 ****
--- 54,60 ----
      #png = wxImg.ConvertToBitmap()
      
      png=wxEmptyBitmap(1,1)
+     
      self.pane = wxScrolledWindow(event.container, -1,
                                   wxPoint(object.Char__x*event.widgetWidth,
                                           
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight),
***************
*** 61,70 ****
      EVT_SIZE(self.pane,self.OnFrameSize)
      EVT_PAINT(self.pane, self.onPaint)
  
      self.imageWindow = wxStaticBitmap(self.pane, -1, png,
                                 wxPoint(object.Char__x*event.widgetWidth,
                                         
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight),
!                                wxSize(self.itemWidth,self.itemHeight))
      self.fixScrollbars()
      
      return self.imageWindow
--- 62,77 ----
      EVT_SIZE(self.pane,self.OnFrameSize)
      EVT_PAINT(self.pane, self.onPaint)
  
+     imageWidth = png.GetWidth()
+     imageHeight = png.GetHeight()
      self.imageWindow = wxStaticBitmap(self.pane, -1, png,
                                 wxPoint(object.Char__x*event.widgetWidth,
                                         
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight),
!                                wxSize(imageWidth,imageHeight))
!     #self.imageWindow = wxStaticBitmap(self.pane, -1, png,
!     #                           wxPoint(object.Char__x*event.widgetWidth,
!     #                                   
(object.Char__y+spacer+(spacer*object._gap))*event.widgetHeight),
!     #                           wxSize(self.itemWidth,self.itemHeight))
      self.fixScrollbars()
      
      return self.imageWindow
***************
*** 87,96 ****
    def setValue(self, value, index=0, enabled=1):
      widget = self.widgets[index]
      widget.SetEvtHandlerEnabled(FALSE)
      wxImg = wxEmptyImage(value.size[0],value.size[1])
      wxImg.SetData(value.convert("RGB").tostring())
- 
      image = wxImg.ConvertToBitmap()
      widget.SetBitmap(image)
  
      widget.Enable(enabled)
--- 94,113 ----
    def setValue(self, value, index=0, enabled=1):
      widget = self.widgets[index]
      widget.SetEvtHandlerEnabled(FALSE)
+ 
+     # Convert the PIL Image to a wxBitmap
      wxImg = wxEmptyImage(value.size[0],value.size[1])
      wxImg.SetData(value.convert("RGB").tostring())
      image = wxImg.ConvertToBitmap()
+ 
+     # Resize the bitmap holder to match the image size
+     # and fix the scrollbars 
+     imageWidth = image.GetWidth()
+     imageHeight = image.GetHeight()
+     widget.SetSize(wxSize(imageWidth,imageHeight))
+     self.fixScrollbars()
+ 
+     # Load the new image
      widget.SetBitmap(image)
  
      widget.Enable(enabled)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]