Changeset 118

Show
Ignore:
Timestamp:
04/22/02 13:27:02 (7 years ago)
Author:
lking
Message:

New rescale tag, by Shane.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/RBSkinning/RBSkinning/wxPythonSkin/image.py

    r116 r118  
    5252        'call':         None, 
    5353        'autosize':     '1', 
     54        'rescale':      'None' 
    5455        }) 
    5556 
     
    7273        kwSettings['name'] = os.path.join(self.context.__root__, kwSettings['name']) 
    7374        self.object = apply(wx.wxImage, tuple(), kwSettings) 
     75        rescale = self.wxEval('rescale') 
     76        if rescale: 
     77            if rescale[0] < 0: 
     78                rescale = self.object.GetWidth(), rescale[1] 
     79            if rescale[1] < 0: 
     80                rescale = rescale[0], self.object.GetHeight() 
     81            apply(self.object.Rescale, rescale) 
    7482  
    7583    def SkinFinalize(self): 
    7684        if self.settings['call']: 
    7785            parentobject = self.parent().object 
     86            if self.wxEval('autosize'): 
     87                newsize = (self.object.GetWidth(), self.object.GetHeight()) 
     88            elif hasattr(parentobject, 'GetSize'): 
     89                newsize = parentobject.GetSize() 
     90                 
    7891            method = getattr(parentobject, 'SetBitmap' + self.settings['call'], None) 
    7992            if not method: method = getattr(parentobject, self.settings['call']) 
    8093            method(self.object.ConvertToBitmap()) 
    81             if self.wxEval('autosize') and hasattr(parentobject, 'SetSize'): 
    82                 parentobject.SetSize((self.object.GetWidth(), self.object.GetHeight())) 
     94 
     95            if hasattr(parentobject, 'SetSize'): 
     96                parentobject.SetSize(newsize) 
    8397 
    8498wx.wxInitAllImageHandlers()