Update of /cvsroot/freevo/freevo/src/gui
In directory sc8-pr-cvs1:/tmp/cvs-serv17636

Modified Files:
        LetterBox.py LetterBoxGroup.py 
Log Message:
These objects are now using skin properties.


Index: LetterBox.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/gui/LetterBox.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** LetterBox.py        9 Mar 2003 21:37:06 -0000       1.4
--- LetterBox.py        24 Mar 2003 02:40:50 -0000      1.5
***************
*** 10,13 ****
--- 10,16 ----
  # -----------------------------------------------------------------------
  # $Log$
+ # Revision 1.5  2003/03/24 02:40:50  rshortt
+ # These objects are now using skin properties.
+ #
  # Revision 1.4  2003/03/09 21:37:06  rshortt
  # Improved drawing.  draw() should now be called instead of _draw(). draw()
***************
*** 105,147 ****
          
  
!     def __init__(self, text=" ", left=None, top=None, width=None, height=None, 
                   bg_color=None, fg_color=None, selected_color=None,
                   border=None, bd_color=None, bd_width=None):
  
!         GUIObject.__init__(self)
  
!         self.text           = text
!         self.border         = border
!         self.h_margin       = 2
!         self.v_margin       = 2
!         self.bd_color       = bd_color
!         self.bd_width       = bd_width
!         self.width          = width
!         self.height         = height
!         self.left           = left
!         self.top            = top
!         self.bg_color       = bg_color
!         self.fg_color       = fg_color
!         self.label          = None
!         self.selected_color = selected_color
  
!         # XXX: Place a call to the skin object here then set the defaults
!         #      acodringly. self.skin is set in the superclass.
  
!         if not self.width:    self.width  = 25
!         if not self.height:   self.height = 25
!         if not self.left:     self.left   = -100
!         if not self.top:      self.top    = -100
!         if not self.bg_color: self.bg_color = Color(self.osd.default_bg_color)
!         if not self.fg_color: self.fg_color = Color(self.osd.default_fg_color)
!         if not self.bd_color: self.bd_color = Color(self.osd.default_fg_color) 
!         if not self.bd_width: self.bd_width = 2
!         if not self.border:   self.border = Border(self, Border.BORDER_FLAT, 
!                                                    self.bd_color, self.bd_width)
  
!         if not self.selected_color: self.selected_color = Color((0,255,0,128))
  
-         self.set_v_align(Align.NONE)
-         self.set_h_align(Align.NONE)
  
          if type(text) is StringType:
--- 108,175 ----
          
  
!     def __init__(self, text=" ", left=None, top=None, width=25, height=25, 
                   bg_color=None, fg_color=None, selected_color=None,
+                  selected_bg_color=None, selected_fg_color=None,
                   border=None, bd_color=None, bd_width=None):
  
!         self.border            = border
!         self.bd_color          = bd_color
!         self.bd_width          = bd_width
!         self.bg_color          = bg_color
!         self.fg_color          = fg_color
!         self.selected_fg_color = selected_fg_color
!         self.selected_bg_color = selected_bg_color
  
!         self.skin = skin.get_singleton()
  
!         (BLAH, BLAH, BLAH, BLAH,
!          button_default, button_selected) = \
!          self.skin.GetPopupBoxStyle()
  
!         if not self.bg_color:
!             if button_default.rectangle.bgcolor:
!                 self.bg_color = Color(button_default.rectangle.bgcolor)
!             else:
!                 self.bg_color = Color(self.osd.default_bg_color)
  
!         if not self.fg_color:
!             if button_default.font.color:
!                 self.fg_color = Color(button_default.font.color)
!             else:
!                 self.fg_color = Color(self.osd.default_fg_color)
! 
!         if not self.selected_bg_color:
!             if button_selected.rectangle.bgcolor:
!                 self.selected_bg_color = Color(button_selected.rectangle.bgcolor)
!             else:
!                 self.selected_bg_color = Color((0,255,0,128))
! 
!         if not self.selected_fg_color:
!             if button_selected.font.color:
!                 self.selected_fg_color = Color(button_selected.font.color)
!             else:
!                 self.selected_fg_color = Color(self.osd.default_fg_color)
! 
! 
!         GUIObject.__init__(self, left, top, width, height, 
!                            self.bg_color, self.fg_color)
! 
! 
!         if not self.bd_color: 
!             if button_default.rectangle.color:
!                 self.bd_color = Color(button_default.rectangle.color)
!             else:
!                 self.bd_color = Color(self.osd.default_fg_color)
! 
!         if not self.bd_width: 
!             if button_default.rectangle.size:
!                 self.bd_width = button_default.rectangle.size
!             else:
!                 self.bd_width = 1
! 
!         if not self.border:   
!             self.border = Border(self, Border.BORDER_FLAT,
!                                  self.bd_color, self.bd_width)
  
  
          if type(text) is StringType:
***************
*** 152,155 ****
--- 180,205 ----
              raise TypeError, text
  
+         if button_default.font:       
+             self.set_font(self.label,
+                           button_default.font.name, 
+                           button_default.font.size, 
+                           Color(button_default.font.color))
+         else:
+             self.set_font(config.OSD_DEFAULT_FONTNAME,
+                           config.OSD_DEFAULT_FONTSIZE)
+ 
+         if button_selected.font:       
+             self.set_font(self.selected_label,
+                           button_selected.font.name, 
+                           button_selected.font.size, 
+                           Color(button_selected.font.color))
+         else:
+             self.set_font(self.selected_label,
+                           config.OSD_DEFAULT_FONTNAME,
+                           config.OSD_DEFAULT_FONTSIZE)
+ 
+         self.set_v_align(Align.NONE)
+         self.set_h_align(Align.NONE)
+ 
  
      def charUp(self):
***************
*** 200,221 ****
              raise TypeError, 'Not all needed variables set.'
  
          box = pygame.Surface(self.get_size(), 0, 32)
-         c = self.bg_color.get_color_sdl()
-         a = self.bg_color.get_alpha()
          box.fill(c)
          box.set_alpha(a)
  
-         if self.selected:
-             sel_box = pygame.Surface(self.get_size(), 0, 32)
-             c = self.selected_color.get_color_sdl()
-             a = self.selected_color.get_alpha()
-             sel_box.fill(c)
-             sel_box.set_alpha(a)
-             box.blit(sel_box, (0,0))
- 
- 
          self.osd.screen.blit(box, self.get_position())
  
!         if self.label:  self.label.draw()
          if self.border: self.border.draw()
  
--- 250,271 ----
              raise TypeError, 'Not all needed variables set.'
  
+         if self.selected:
+             c = self.selected_bg_color.get_color_sdl()
+             a = self.selected_bg_color.get_alpha()
+         else:
+             c = self.bg_color.get_color_sdl()
+             a = self.bg_color.get_alpha()
+ 
          box = pygame.Surface(self.get_size(), 0, 32)
          box.fill(c)
          box.set_alpha(a)
  
          self.osd.screen.blit(box, self.get_position())
  
!         if self.selected:
!             self.selected_label.draw()
!         else:
!             self.label.draw()
! 
          if self.border: self.border.draw()
  
***************
*** 236,253 ****
              self.label = Label(text)
              self.label.set_parent(self)
-             # These values can also be maipulated by the user through
-             # get_font and set_font functions.
-             self.label.set_font( config.OSD_DEFAULT_FONTNAME,
-                                  config.OSD_DEFAULT_FONTSIZE )
              # XXX Set the background color to none so it is transparent.
              self.label.set_background_color(None)
              self.label.set_h_margin(self.h_margin)
              self.label.set_v_margin(self.v_margin)
-             self.label.set_h_align(Align.CENTER)
          else:
              self.label.set_text(text)
  
          self.label.set_v_align(Align.MIDDLE)
          self.label.set_h_align(Align.CENTER)
  
  
--- 286,310 ----
              self.label = Label(text)
              self.label.set_parent(self)
              # XXX Set the background color to none so it is transparent.
              self.label.set_background_color(None)
              self.label.set_h_margin(self.h_margin)
              self.label.set_v_margin(self.v_margin)
          else:
              self.label.set_text(text)
  
+         if not self.selected_label:
+             self.selected_label = Label(text)
+             self.selected_label.set_parent(self)
+             # XXX Set the background color to none so it is transparent.
+             self.selected_label.set_background_color(None)
+             self.selected_label.set_h_margin(self.h_margin)
+             self.selected_label.set_v_margin(self.v_margin)
+         else:
+             self.selected_label.set_text(text)
+ 
          self.label.set_v_align(Align.MIDDLE)
          self.label.set_h_align(Align.CENTER)
+         self.selected_label.set_v_align(Align.MIDDLE)
+         self.selected_label.set_h_align(Align.CENTER)
  
  
***************
*** 259,263 ****
  
  
!     def set_font(self, file, size):
          """
          Set the font.
--- 316,320 ----
  
  
!     def set_font(self, label, file, size, color):
          """
          Set the font.
***************
*** 265,272 ****
          Just hands the info down to the label. Might raise an exception.
          """
!         if self.label:
!             self.label.set_font(file, size)
!         else:
!             raise TypeError, file
  
  
--- 322,326 ----
          Just hands the info down to the label. Might raise an exception.
          """
!         label.set_font(file, size, color)
  
  

Index: LetterBoxGroup.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/gui/LetterBoxGroup.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** LetterBoxGroup.py   9 Mar 2003 21:37:06 -0000       1.3
--- LetterBoxGroup.py   24 Mar 2003 02:40:50 -0000      1.4
***************
*** 11,14 ****
--- 11,17 ----
  # -----------------------------------------------------------------------
  # $Log$
+ # Revision 1.4  2003/03/24 02:40:50  rshortt
+ # These objects are now using skin properties.
+ #
  # Revision 1.3  2003/03/09 21:37:06  rshortt
  # Improved drawing.  draw() should now be called instead of _draw(). draw()
***************
*** 86,123 ****
                   border=None, bd_color=None, bd_width=None):
  
!         GUIObject.__init__(self)
! 
          self.text     = text
          self.handler  = handler
          self.border   = border
-         self.label    = None
          self.bd_color = bd_color
          self.bd_width = bd_width
-         self.width    = width
-         self.height   = height
-         self.left     = left
-         self.top      = top
-         self.bg_color = bg_color
-         self.fg_color = fg_color
-         self.h_margin = 2
-         self.v_margin = 2
          self.numboxes = numboxes
          self.boxes    = []
  
!         # XXX: Place a call to the skin object here then set the defaults
!         #      acodringly. self.skin is set in the superclass.
  
!         if not self.width:    self.width  = 1
!         if not self.height:   self.height = 1
!         if not self.left:     self.left   = -100
!         if not self.top:      self.top    = -100
!         if not self.bg_color: self.bg_color = Color(self.osd.default_bg_color)
!         if not self.fg_color: self.fg_color = Color(self.osd.default_fg_color)
!         if not self.bd_color: self.bd_color = Color(self.osd.default_fg_color) 
!         if not self.bd_width: self.bd_width = 2
!         if not self.border:   self.border = Border(self, Border.BORDER_FLAT, 
!                                                    self.bd_color, self.bd_width)
  
!         self.set_h_align(Align.CENTER)
  
          l = 0
--- 89,136 ----
                   border=None, bd_color=None, bd_width=None):
  
!         # XXX: text not supported yet
          self.text     = text
          self.handler  = handler
+         self.bg_color = bg_color
+         self.fg_color = fg_color
          self.border   = border
          self.bd_color = bd_color
          self.bd_width = bd_width
          self.numboxes = numboxes
          self.boxes    = []
  
!         self.skin = skin.get_singleton()
  
!         (BLAH, BLAH, BLAH, BLAH,
!          button_default, BLAH) = \
!          self.skin.GetPopupBoxStyle()
  
!         if not self.bg_color:
!             if button_default.rectangle.bgcolor:
!                 self.bg_color = Color(button_default.rectangle.bgcolor)
!             else:
!                 self.bg_color = Color(self.osd.default_bg_color)
! 
!         if not self.fg_color:
!             if button_default.font.color:
!                 self.fg_color = Color(button_default.font.color)
!             else:
!                 self.fg_color = Color(self.osd.default_fg_color)
! 
!         GUIObject.__init__(self, left, top, width, height, 
!                            self.bg_color, self.fg_color)
! 
! 
!         if not self.bd_color: 
!             if button_default.rectangle.color:
!                 self.bd_color = Color(button_default.rectangle.color)
!             else:
!                 self.bd_color = Color(self.osd.default_fg_color)
! 
!         if not self.bd_width: 
!             if button_default.rectangle.size:
!                 self.bd_width = button_default.rectangle.size
!             else:
!                 self.bd_width = 1
  
          l = 0
***************
*** 125,130 ****
          for i in range(self.numboxes):
              lb = LetterBox()
-             top = self.top
-             left = self.left + l
              l = l + lb.width
              if lb.height > h:  h = lb.height
--- 138,141 ----
***************
*** 136,139 ****
--- 147,156 ----
          self.width = l
          self.height = h
+ 
+         if not self.border:   
+             self.border = Border(self, Border.BORDER_FLAT,
+                                  self.bd_color, self.bd_width)
+ 
+         self.set_h_align(Align.CENTER)
  
  




-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! 
Get cracking and register here for some mind boggling fun and 
the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
Freevo-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog

Reply via email to