[Sugar-devel] [PATCH] Fixes to the record UI

Aleksey Lim alsroot at member.fsf.org
Tue Jun 8 16:21:52 EDT 2010


On Tue, Jun 08, 2010 at 07:45:06PM +0000, Aleksey Lim wrote:
> On Wed, Jun 09, 2010 at 12:22:19AM +0530, anishmangal2002 at gmail.com wrote:
> > From: anishmangal2002 <anishmangal2002 at gmail.com>
> > 
> > How the existing UI works:
> > The record UI consists of many windows/widgets. In a particular
> > mode or view, it displays and resizes the widgets appropriate for that
> > view and tries to hide the other windows by moving them off-screen.
> > Now, on sugar-0.88 (and probably on versions 0.86>), while trying to
> > move the widgets off-screen, they actually get dumped at the
> > bottom-right corner. Hence, if a user runs the existing Record
> > activity on 0.88, he will observe that the bottom right quadrant of the
> > screen is 'corrupted'.
> > 
> > Fix description:
> > The patch works by hiding or resizing (to size 1px by 1px) the
> > widgets not required in a particular view/mode. The updateVideoComponents
> > method has been modified to hide the widgets not required in a
> > particular view. Widgets that can't be hidden are resized to
> > 1 x 1 pixel.
> > 
> > Additionally, this patch also fixes the naming of some variables
> > (s/butt/button/g).
> > 
> > Tested successfully on sugar-emulator-0.88, soas-mirabelle and
> > xo1-f11-0.88.
> 
> Patch looks good for me, if it doesn't beat Daniel's release plans,
> I guess we can commit (you are in commiters list) it and bump new Record
> release (you can also release new version).

I've tried it on XO-1.5 with 201 build, the UI itself works fine on
XO-1.5, there is issue with recording video (empty playback video) but
my build is not recent, will try with last one.

> 
> I've added you to Record developers on ASLO (you should see Record in
> your Dev Hub on http://activities.sugarlabs.org/developers). Also all
> 7x versions rely on recent gst so these versions on ASLO are
> experimental.
> 
> > Signed-off-by: anishmangal2002 <anishmangal2002 at gmail.com>
> > ---
> >  button.py    |   10 ++--
> >  model.py     |    2 +
> >  p5_button.py |   30 +++++-----
> >  ui.py        |  199 +++++++++++++++++++++++++++++++---------------------------
> >  4 files changed, 129 insertions(+), 112 deletions(-)
> > 
> > diff --git a/button.py b/button.py
> > index 14b9700..2b0e85c 100644
> > --- a/button.py
> > +++ b/button.py
> > @@ -62,12 +62,12 @@ class RecdButton(TrayButton, gobject.GObject):
> >          return img
> >  
> >  
> > -    def setButtClickedId( self, id ):
> > -        self.BUTT_CLICKED_ID = id
> > +    def setButtonClickedId( self, id ):
> > +        self.BUTTON_CLICKED_ID = id
> >  
> >  
> > -    def getButtClickedId( self ):
> > -        return self.BUTT_CLICKED_ID
> > +    def getButtonClickedId( self ):
> > +        return self.BUTTON_CLICKED_ID
> >  
> >  
> >      def setup_rollover_options( self, info ):
> > @@ -105,4 +105,4 @@ class RecdButton(TrayButton, gobject.GObject):
> >  
> >  
> >      def _itemCopyToClipboardCb(self, widget):
> > -        self.ui.copyToClipboard( self.recd )
> > \ No newline at end of file
> > +        self.ui.copyToClipboard( self.recd )
> > diff --git a/model.py b/model.py
> > index b7f592b..e24752e 100644
> > --- a/model.py
> > +++ b/model.py
> > @@ -323,6 +323,8 @@ class Model:
> >      def startTakingPhoto( self ):
> >          self.setUpdating( True )
> >          self.ca.glive.takePhoto()
> > +        self.ca.ui.FULLSCREEN = False
> > +        self.ca.ui.updateVideoComponents()
> >  
> >  
> >      def savePhoto( self, pixbuf ):
> > diff --git a/p5_button.py b/p5_button.py
> > index cf76a34..a8e10c5 100644
> > --- a/p5_button.py
> > +++ b/p5_button.py
> > @@ -25,7 +25,7 @@ class P5Button(P5):
> >      def __init__(self):
> >          P5.__init__(self)
> >          self.noloop()
> > -        self._butts = []
> > +        self._buttons = []
> >          self._buttonPressed = False
> >  
> >  
> > @@ -34,10 +34,10 @@ class P5Button(P5):
> >  
> >          #iterate through the buttons to see if you've pressed any down
> >          bp = False
> > -        for i in range ( 0, len(self._butts) ):
> > -            if (self._butts[i]._enabled):
> > -                contains = self._butts[i].contains(event.x, event.y)
> > -                self._butts[i]._pressed = contains
> > +        for i in range ( 0, len(self._buttons) ):
> > +            if (self._buttons[i]._enabled):
> > +                contains = self._buttons[i].contains(event.x, event.y)
> > +                self._buttons[i]._pressed = contains
> >                  if (contains):
> >                      bp = True
> >  
> > @@ -51,16 +51,16 @@ class P5Button(P5):
> >  
> >          pressed = []
> >          #iterate through the buttons to see if you've released on any
> > -        for i in range ( 0, len(self._butts) ):
> > -            if (self._butts[i]._enabled):
> > -                if (self._butts[i]._pressed):
> > -                    if (self._butts[i].contains(event.x, event.y)):
> > -                        pressed.append( self._butts[i] )
> > -
> > -                    if (self._butts[i]._toggle):
> > -                        self._butts[i]._pressed = not self._butts[i]._pressed
> > +        for i in range ( 0, len(self._buttons) ):
> > +            if (self._buttons[i]._enabled):
> > +                if (self._buttons[i]._pressed):
> > +                    if (self._buttons[i].contains(event.x, event.y)):
> > +                        pressed.append( self._buttons[i] )
> > +
> > +                    if (self._buttons[i]._toggle):
> > +                        self._buttons[i]._pressed = not self._buttons[i]._pressed
> >                      else:
> > -                        self._butts[i]._pressed = False
> > +                        self._buttons[i]._pressed = False
> >  
> >          for i in range( 0, len(pressed) ):
> >              pressed[i].doPressed()
> > @@ -170,4 +170,4 @@ class Button:
> >  
> >  
> >      def isImg( self ):
> > -        return self._img != None
> > \ No newline at end of file
> > +        return self._img != None
> > diff --git a/ui.py b/ui.py
> > index d89b819..e723f66 100644
> > --- a/ui.py
> > +++ b/ui.py
> > @@ -92,7 +92,7 @@ class UI:
> >          self.maxw = 49
> >          self.maxh = 49
> >          self.controlBarHt = 60
> > -        self.recordButtWd = 55
> > +        self.recordButtonWd = 55
> >          self.pipw = self.__class__.dim_PIPW
> >          self.piph = self.__class__.dim_PIPH
> >  
> > @@ -335,7 +335,7 @@ class UI:
> >          self.tagsBuffer = gtk.TextBuffer()
> >          self.tagsBuffer.connect('changed', self._tagsBufferEditedCb)
> >          self.tagsField = gtk.TextView(self.tagsBuffer)
> > -        self.tagsField.set_size_request( 100, 100 )
> > +        self.tagsField.set_size_request( 50, 50 )
> >          self.tagsPanel.pack_start(self.tagsField, expand=True)
> >          self.infoBoxTopLeft.pack_start(self.tagsPanel, expand=True)
> >  
> > @@ -369,7 +369,6 @@ class UI:
> >          self.centered = True
> >          self.setUp()
> >  
> > -
> >      def _mapEventCb( self, widget, event ):
> >          #when your parent window is ready, turn on the feed of live video
> >          self.liveVideoWindow.disconnect(self.MAP_EVENT_ID)
> > @@ -461,9 +460,11 @@ class UI:
> >          self.slowLiveVideoWindow.connect("visibility-notify-event", self._visibleNotifyCb)
> >  
> >          self.recordWindow = RecordWindow(self)
> > +        self.recordWindow.set_geometry_hints(min_width=1, min_height=1)
> >          self.addToWindowStack( self.recordWindow, self.windowStack[len(self.windowStack)-1] )
> >  
> >          self.progressWindow = ProgressWindow(self)
> > +        self.progressWindow.set_geometry_hints(min_width=1, min_height=1)
> >          self.addToWindowStack( self.progressWindow, self.windowStack[len(self.windowStack)-1] )
> >  
> >          self.maxWindow = gtk.Window()
> > @@ -471,9 +472,11 @@ class UI:
> >          self.maxWindow.modify_bg( gtk.STATE_INSENSITIVE, Constants.colorBlack.gColor )
> >          maxButton = MaxButton(self)
> >          self.maxWindow.add( maxButton )
> > +        self.maxWindow.set_geometry_hints(min_width=1, min_height=1)
> >          self.addToWindowStack( self.maxWindow, self.windowStack[len(self.windowStack)-1] )
> >  
> >          self.scrubWindow = ScrubberWindow(self)
> > +        self.scrubWindow.set_geometry_hints(min_width=1, min_height=1)
> >          self.addToWindowStack( self.scrubWindow, self.windowStack[len(self.windowStack)-1] )
> >  
> >          self.infWindow = gtk.Window()
> > @@ -492,6 +495,7 @@ class UI:
> >  
> >  
> >      def _visibleNotifyCb( self, widget, event ):
> > +        logging.debug("_visibleNotifyCb")
> >  
> >          if (self.LAUNCHING):
> >              return
> > @@ -525,6 +529,31 @@ class UI:
> >              else:
> >                  self.ca.stopPipes()
> >  
> > +    def resizeWindows( self ):
> > +        if self.ca.m.MODE == Constants.MODE_AUDIO:
> > +            self.maxWindow.resize( 1, 1 )
> > +        else:
> > +            maxDim = self.getMaxDim( self.FULLSCREEN )
> > +            self.maxWindow.resize( maxDim[0], maxDim[1] )
> > +
> > +        if self.LIVEMODE:
> > +            self.pipBgdWindow.resize( 1, 1 )
> > +            self.playOggWindow.resize( 1, 1 )
> > +            self.livePhotoWindow.resize( 1, 1 )
> > +            self.slowLiveVideoWindow.resize( 1, 1 )
> > +            self.infWindow.resize( 1, 1 )
> > +            if self.ca.m.MODE == Constants.MODE_PHOTO:
> > +                self.progressWindow.resize( 1, 1 )
> > +        else:
> > +            pgdDim = self.getPgdDim( self.FULLSCREEN )
> > +            self.pipBgdWindow.resize( pgdDim[0], pgdDim[1] )
> > +            self.progressWindow.resize( 1, 1 )
> > +            self.recordWindow.resize( 1, 1 )
> > +            if self.ca.m.MODE == Constants.MODE_PHOTO:
> > +                self.playOggWindow.resize( 1, 1 )
> > +                self.scrubWindow.resize( 1, 1 )
> > +            elif self.ca.m.MODE == Constants.MODE_VIDEO:
> > +                self.liveVideoWindow.resize( 1, 1 )
> >  
> >      def setUpWindowsSizes( self ):
> >          pipDim = self.getPipDim(False)
> > @@ -597,30 +626,6 @@ class UI:
> >                  if (self.HIDE_WIDGET_TIMEOUT_ID != 0):
> >                      gobject.source_remove( self.HIDE_WIDGET_TIMEOUT_ID )
> >  
> > -
> > -    def hideWidgets( self ):
> > -        self.moveWinOffscreen( self.maxWindow )
> > -        self.moveWinOffscreen( self.pipBgdWindow )
> > -        self.moveWinOffscreen( self.infWindow )
> > -        self.moveWinOffscreen( self.slowLiveVideoWindow )
> > -
> > -        if (self.FULLSCREEN):
> > -            self.moveWinOffscreen( self.recordWindow )
> > -            self.moveWinOffscreen( self.progressWindow )
> > -            self.moveWinOffscreen( self.scrubWindow )
> > -
> > -        if (self.ca.m.MODE == Constants.MODE_PHOTO):
> > -            if (not self.LIVEMODE):
> > -                self.moveWinOffscreen( self.liveVideoWindow )
> > -        elif (self.ca.m.MODE == Constants.MODE_VIDEO):
> > -            if (not self.LIVEMODE):
> > -                self.moveWinOffscreen( self.liveVideoWindow )
> > -        elif (self.ca.m.MODE == Constants.MODE_AUDIO):
> > -            if (not self.LIVEMODE):
> > -                self.moveWinOffscreen( self.liveVideoWindow )
> > -        self.LAST_MODE = -1
> > -
> > -
> >      def _mouseMightaMovedCb( self ):
> >          x, y = self.ca.get_pointer()
> >          passedTime = 0
> > @@ -637,18 +642,6 @@ class UI:
> >              self.hideWidgetsTimer = time.time()
> >              passedTime = 0
> >  
> > -        if (passedTime >= 3):
> > -            if (not self.hiddenWidgets):
> > -                if (self.mouseInWidget(x,y)):
> > -                    self.hideWidgetsTimer = time.time()
> > -                elif (self.RECD_INFO_ON):
> > -                    self.hideWidgetsTimer = time.time()
> > -                elif (self.UPDATE_TIMER_ID != 0):
> > -                    self.hideWidgetsTimer = time.time()
> > -                else:
> > -                    self.hideWidgets()
> > -                    self.hiddenWidgets = True
> > -
> >          self.mx = x
> >          self.my = y
> >          return True
> > @@ -680,6 +673,7 @@ class UI:
> >  
> >  
> >      def _mediaClickedForPlayback(self, widget, event):
> > +        logging.debug("_mediaClickedForPlayback")
> >          if (not self.LIVEMODE):
> >              if (self.shownRecd != None):
> >                  if (self.ca.m.MODE != Constants.MODE_PHOTO):
> > @@ -875,18 +869,18 @@ class UI:
> >          kids = self.thumbTray.get_children()
> >          for i in range (0, len(kids)):
> >              if (self.ca.m.UPDATING or self.ca.m.RECORDING):
> > -                if (kids[i].getButtClickedId() != 0):
> > -                    kids[i].disconnect( kids[i].getButtClickedId() )
> > -                    kids[i].setButtClickedId(0)
> > +                if (kids[i].getButtonClickedId() != 0):
> > +                    kids[i].disconnect( kids[i].getButtonClickedId() )
> > +                    kids[i].setButtonClickedId(0)
> >              else:
> > -                if (kids[i].getButtClickedId() == 0):
> > -                    BUTT_CLICKED_ID = kids[i].connect( "clicked", self._thumbClicked, kids[i].recd )
> > -                    kids[i].setButtClickedId(BUTT_CLICKED_ID)
> > +                if (kids[i].getButtonClickedId() == 0):
> > +                    BUTTON_CLICKED_ID = kids[i].connect( "clicked", self._thumbClicked, kids[i].recd )
> > +                    kids[i].setButtonClickedId(BUTTON_CLICKED_ID)
> >  
> >  
> >      def hideAllWindows( self ):
> >          for i in range (0, len(self.windowStack)):
> > -            self.moveWinOffscreen( self.windowStack[i] )
> > +            self.windowStack[i].hide_all()
> >  
> >  
> >      def _liveButtonReleaseCb(self, widget, event):
> > @@ -1003,6 +997,7 @@ class UI:
> >          self.doMouseListener( True )
> >          self.showLiveVideoTags()
> >          self.LAST_MODE = -1 #force an update
> > +
> >          self.updateVideoComponents()
> >          self.resetWidgetFadeTimer()
> >  
> > @@ -1010,7 +1005,8 @@ class UI:
> >      def startLiveVideo(self, force):
> >          #We need to know which window and which pipe here
> >  
> > -        #if returning from another activity, active won't be false and needs to be to get started
> > +        #if returning from another activity, active won't be false
> > +        #and needs to be to get started
> >          if (self.ca.glive.window == self.liveVideoWindow
> >              and self.ca.props.active
> >              and not force):
> > @@ -1025,14 +1021,6 @@ class UI:
> >          self.FULLSCREEN = not self.FULLSCREEN
> >          self.updateVideoComponents()
> >  
> > -
> > -    def moveWinOffscreen( self, win ):
> > -        #we move offscreen to resize or else we get flashes on screen, and setting hide() doesn't allow resize & moves
> > -        offW = (gtk.gdk.screen_width() + 100)
> > -        offH = (gtk.gdk.screen_height() + 100)
> > -        self.smartMove(win, offW, offH)
> > -
> > -
> >      def setImgLocDim( self, win ):
> >          imgDim = self.getImgDim( self.FULLSCREEN )
> >          self.smartResize( win, imgDim[0], imgDim[1] )
> > @@ -1175,12 +1163,12 @@ class UI:
> >              if (self.ca.m.MODE == Constants.MODE_PHOTO):
> >                  return [self.vw, self.controlBarHt]
> >              else:
> > -                return [self.recordButtWd, self.controlBarHt]
> > +                return [self.recordButtonWd, self.controlBarHt]
> >          else:
> >              if (self.ca.m.MODE == Constants.MODE_PHOTO):
> >                  return [gtk.gdk.screen_width()-(self.inset*2), self.controlBarHt]
> >              else:
> > -                return [self.recordButtWd, self.controlBarHt]
> > +                return [self.recordButtonWd, self.controlBarHt]
> >  
> >  
> >      def getInbLoc( self, full ):
> > @@ -1253,16 +1241,16 @@ class UI:
> >  
> >      def getPrgDim( self, full ):
> >          if (not full):
> > -            return [self.vw-self.recordButtWd, self.controlBarHt]
> > +            return [self.vw-self.recordButtonWd, self.controlBarHt]
> >          else:
> > -            return [gtk.gdk.screen_width()-(self.inset+self.inset+self.recordButtWd), self.controlBarHt]
> > +            return [gtk.gdk.screen_width()-(self.inset+self.inset+self.recordButtonWd), self.controlBarHt]
> >  
> >  
> >      def getPrgLoc( self, full ):
> >          if (not full):
> > -            return [self.centerBoxPos[0]+self.recordButtWd, self.centerBoxPos[1]+self.vh]
> > +            return [self.centerBoxPos[0]+self.recordButtonWd, self.centerBoxPos[1]+self.vh]
> >          else:
> > -            return [self.inset+self.recordButtWd, gtk.gdk.screen_height()-(self.inset+self.controlBarHt)]
> > +            return [self.inset+self.recordButtonWd, gtk.gdk.screen_height()-(self.inset+self.controlBarHt)]
> >  
> >  
> >      def getLoc( self, pos, full ):
> > @@ -1316,6 +1304,7 @@ class UI:
> >              else:
> >                  #or, if there is no countdown, it might be because we are recording
> >                  self.clickShutter()
> > +                self.progressWindow.updateProgress( 1, Constants.istrFinishedRecording )
> >  
> >          else:
> >              #we're timing down something, but interrupted by user click or the timer completing
> > @@ -1455,15 +1444,42 @@ class UI:
> >          elif (self.TRANSCODING):
> >              pos.append({"position":"tmr", "window":self.progressWindow} )
> >  
> > -        for i in range (0, len(self.windowStack)):
> > -            self.windowStack[i].hide_all()
> > -
> >          self.hideAllWindows()
> >          self.updatePos( pos )
> > +        self.resizeWindows()
> >  
> >          for i in range (0, len(self.windowStack)):
> >              self.windowStack[i].show_all()
> >  
> > +        if self.ca.m.MODE == Constants.MODE_PHOTO:
> > +            if not self.LIVEMODE:
> > +                if self.RECD_INFO_ON == True:
> > +                    self.maxWindow.hide_all()
> > +                if self.FULLSCREEN:
> > +                    self.infWindow.hide_all()
> > +            else :
> > +                self.infWindow.hide_all()
> > +                self.scrubWindow.hide_all()
> > +        elif self.ca.m.MODE == Constants.MODE_VIDEO:
> > +            if not self.LIVEMODE:
> > +                if self.RECD_INFO_ON == True:
> > +                    self.scrubWindow.hide_all()
> > +                    self.maxWindow.hide_all()
> > +                if self.FULLSCREEN:
> > +                    self.infWindow.hide_all()
> > +            else :
> > +                self.infWindow.hide_all()
> > +                self.scrubWindow.hide_all()
> > +        elif self.ca.m.MODE == Constants.MODE_AUDIO:
> > +            if not self.LIVEMODE:
> > +                if self.RECD_INFO_ON == True:
> > +                    self.scrubWindow.hide_all()
> > +                if self.FULLSCREEN:
> > +                    self.infWindow.hide_all()
> > +            else:
> > +                self.infWindow.hide_all()
> > +                self.scrubWindow.hide_all()
> > +
> >          self.LAST_MODE = self.ca.m.MODE
> >          self.LAST_FULLSCREEN = self.FULLSCREEN
> >          self.LAST_LIVE = self.LIVEMODE
> > @@ -1548,16 +1564,16 @@ class UI:
> >              if (kids[i].recd == recd):
> >                  self.thumbTray.remove_item(kids[i])
> >                  kids[i].cleanUp()
> > -                kids[i].disconnect( kids[i].getButtClickedId() )
> > -                kids[i].setButtClickedId(0)
> > +                kids[i].disconnect( kids[i].getButtonClickedId() )
> > +                kids[i].setButtonClickedId(0)
> >  
> >  
> >      def addThumb( self, recd, forceScroll ):
> > -        butt = RecdButton( self, recd )
> > -        BUTT_CLICKED_ID = butt.connect( "clicked", self._thumbClicked, recd )
> > -        butt.setButtClickedId(BUTT_CLICKED_ID)
> > -        self.thumbTray.add_item( butt, len(self.thumbTray.get_children()) )
> > -        butt.show()
> > +        button = RecdButton( self, recd )
> > +        BUTTON_CLICKED_ID = button.connect( "clicked", self._thumbClicked, recd )
> > +        button.setButtonClickedId(BUTTON_CLICKED_ID)
> > +        self.thumbTray.add_item( button, len(self.thumbTray.get_children()) )
> > +        button.show()
> >          if (forceScroll):
> >              self.thumbTray.scroll_to_end()
> >  
> > @@ -1567,8 +1583,8 @@ class UI:
> >          for i in range (0, len(kids)):
> >              self.thumbTray.remove_item(kids[i])
> >              kids[i].cleanUp()
> > -            if (kids[i].getButtClickedId() != 0):
> > -                kids[i].disconnect( kids[i].getButtClickedId() )
> > +            if (kids[i].getButtonClickedId() != 0):
> > +                kids[i].disconnect( kids[i].getButtonClickedId() )
> >  
> >  
> >      def _thumbClicked( self, button, recd ):
> > @@ -1659,7 +1675,6 @@ class UI:
> >              if (self.RECD_INFO_ON):
> >                  self.bottomCenter.add( self.namePanel )
> >          self.bottomCenter.show_all()
> > -
> >          self.resetWidgetFadeTimer()
> >  
> >  
> > @@ -1913,22 +1928,22 @@ class ScrubberWindow(gtk.Window):
> >          self.add( self.hbox )
> >  
> >          self.button = gtk.Button()
> > -        buttBox = gtk.EventBox()
> > -        buttBox.add(self.button)
> > -        buttBox.modify_bg( gtk.STATE_NORMAL, Constants.colorBlack.gColor )
> > +        buttonBox = gtk.EventBox()
> > +        buttonBox.add(self.button)
> > +        buttonBox.modify_bg( gtk.STATE_NORMAL, Constants.colorBlack.gColor )
> >          self.button.set_image( Constants.recPlayImg )
> >          self.button.set_property('can-default', True)
> >          self.button.set_relief(gtk.RELIEF_NONE)
> > -        self.button.set_size_request( self.ui.recordButtWd, self.ui.recordButtWd )
> > -        buttBox.set_size_request( self.ui.recordButtWd, self.ui.recordButtWd )
> > +        self.button.set_size_request( self.ui.recordButtonWd, self.ui.recordButtonWd )
> > +        buttonBox.set_size_request( self.ui.recordButtonWd, self.ui.recordButtonWd )
> >          #self.button.set_border_width( UI.dim_INSET/2 )
> >          self.button.show()
> >  
> > -        buttBox.modify_bg( gtk.STATE_NORMAL, Constants.colorBlack.gColor )
> > +        buttonBox.modify_bg( gtk.STATE_NORMAL, Constants.colorBlack.gColor )
> >          self.button.modify_bg( gtk.STATE_ACTIVE, Constants.colorBlack.gColor )
> >  
> >          self.button.connect('clicked', self._buttonClickedCb)
> > -        self.hbox.pack_start(buttBox, expand=False)
> > +        self.hbox.pack_start(buttonBox, expand=False)
> >  
> >          self.adjustment = gtk.Adjustment(0.0, 0.00, 100.0, 0.1, 1.0, 1.0)
> >          self.hscale = gtk.HScale(self.adjustment)
> > @@ -2067,11 +2082,11 @@ class MaxButton(P5Button):
> >          xs.append(0)
> >          ys.append(self.ui.maxh)
> >          poly = Polygon( xs, ys )
> > -        butt = Button( poly, 0, 0)
> > -        butt.addActionListener( self )
> > +        button = Button( poly, 0, 0)
> > +        button.addActionListener( self )
> >          self.maxS = "max"
> > -        butt.setActionCommand( self.maxS )
> > -        self._butts.append( butt )
> > +        button.setActionCommand( self.maxS )
> > +        self._buttons.append( button )
> >  
> >  
> >      def draw(self, ctx, w, h):
> > @@ -2108,11 +2123,11 @@ class InfButton(P5Button):
> >          xs.append(0)
> >          ys.append(75)
> >          poly = Polygon( xs, ys )
> > -        butt = Button( poly, 0, 0)
> > -        butt.addActionListener( self )
> > +        button = Button( poly, 0, 0)
> > +        button.addActionListener( self )
> >          self.infS = "inf"
> > -        butt.setActionCommand( self.infS )
> > -        self._butts.append( butt )
> > +        button.setActionCommand( self.infS )
> > +        self._buttons.append( button )
> >  
> >  
> >      def draw(self, ctx, w, h):
> > @@ -2170,7 +2185,7 @@ class RecordWindow(gtk.Window):
> >          self.modify_bg( gtk.STATE_NORMAL, Constants.colorBlack.gColor )
> >  
> >          self.shutterButton = RecordButton()
> > -        self.shutterButton.set_size_request(self.ui.recordButtWd, self.ui.recordButtWd)
> > +        self.shutterButton.set_size_request(self.ui.recordButtonWd, self.ui.recordButtonWd)
> >          self.shutterButton.set_relief(gtk.RELIEF_NONE)
> >          self.shutterButton.set_image( Constants.recImg )
> >          self.shutterButton.connect("clicked", self.ui._shutterClickCb)
> > @@ -2264,10 +2279,10 @@ class ProgressWindow(gtk.Window):
> >          self.progBar.modify_bg( gtk.STATE_PRELIGHT, Constants.colorBlack.gColor )
> >          self.progBar.modify_bg( gtk.STATE_SELECTED, Constants.colorBlack.gColor )
> >          self.progBar.modify_bg( gtk.STATE_INSENSITIVE, Constants.colorBlack.gColor )
> > -        vb.add( self.progBar )
> > +        vb.pack_start( self.progBar, True, True, 0 )
> >  
> >          hbox = gtk.HBox()
> > -        vb.add( hbox )
> > +        vb.pack_start( hbox, True, True, 0 )
> >          self.infoLabel = gtk.Label()
> >          self.infoLabel.set_alignment( 1, .5 )
> >          self.infoLabel.set_text( "<b><span foreground='black'>SPACE</span></b>")
> > -- 
> > 1.7.0.4
> > 
> 
> -- 
> Aleksey

-- 
Aleksey


More information about the Sugar-devel mailing list