Update of /cvsroot/freevo/freevo/src/gui
In directory sc8-pr-cvs1:/tmp/cvs-serv14066
Modified Files:
ListBox.py OptionBox.py
Log Message:
OptionBox now uses skin properties.
Index: ListBox.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/gui/ListBox.py,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** ListBox.py 23 Mar 2003 23:19:39 -0000 1.6
--- ListBox.py 24 Mar 2003 00:37:06 -0000 1.7
***************
*** 10,13 ****
--- 10,16 ----
# -----------------------------------------------------------------------
# $Log$
+ # Revision 1.7 2003/03/24 00:37:06 rshortt
+ # OptionBox now uses skin properties.
+ #
# Revision 1.6 2003/03/23 23:19:39 rshortt
# When selected these objects now use skin properties as well.
***************
*** 240,243 ****
--- 243,253 ----
+ def sort_items(self):
+ (x, y) = (0, 0)
+ for item in self.items:
+ item.set_position(x,y)
+ y = y + item.height
+
+
def add_item(self, item=None, text=None, value=None):
if not item:
***************
*** 294,304 ****
raise TypeError, 'Not all needed variables set.'
!
! (x, y) = (0, 0)
for item in self.items:
- item.set_position(x,y)
- y = y + item.height
item.draw(self.surface)
!
RegionScroller._draw(self)
--- 304,311 ----
raise TypeError, 'Not all needed variables set.'
! self.sort_items()
for item in self.items:
item.draw(self.surface)
!
RegionScroller._draw(self)
Index: OptionBox.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/gui/OptionBox.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** OptionBox.py 9 Mar 2003 21:37:06 -0000 1.2
--- OptionBox.py 24 Mar 2003 00:37:06 -0000 1.3
***************
*** 10,13 ****
--- 10,16 ----
# -----------------------------------------------------------------------
# $Log$
+ # Revision 1.3 2003/03/24 00:37:06 rshortt
+ # OptionBox now uses skin properties.
+ #
# Revision 1.2 2003/03/09 21:37:06 rshortt
# Improved drawing. draw() should now be called instead of _draw(). draw()
***************
*** 75,117 ****
! def __init__(self, text=" ", left=None, top=None, width=None, height=None,
bg_color=None, fg_color=None, selected_bg_color=None,
selected_fg_color=None, border=None, bd_color=None,
bd_width=None):
! GUIObject.__init__(self)
!
! self.text = text
! self.border = border
! self.h_margin = 6
! 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_bg_color = selected_bg_color
self.selected_fg_color = selected_fg_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 = 75
! 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.selected_fg_color: self.selected_fg_color = self.fg_color
! if not self.selected_bg_color: self.selected_bg_color = Color((0,255,0,128))
! 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)
--- 78,147 ----
! def __init__(self, text=" ", left=0, top=0, width=75, height=25,
bg_color=None, fg_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.max_visible = 5
+ 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)
!
! self.h_margin = 6
! self.v_margin = 2
!
! 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 = 2
!
! if not self.border:
! self.border = Border(self, Border.BORDER_FLAT,
! self.bd_color, self.bd_width)
***************
*** 121,129 ****
self.text = None
else:
! raise TypeError, text
- self.max_visible = 5
self.list = ListBox(left=self.left, top=self.top+self.height,
! width=self.width, height=75)
self.add_child(self.list)
self.list.visible = 0
--- 151,181 ----
self.text = None
else:
! 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.BOTTOM)
! self.set_h_align(Align.CENTER)
!
self.list = ListBox(left=self.left, top=self.top+self.height,
! width=self.width, height=self.height*self.max_visible)
self.add_child(self.list)
self.list.visible = 0
***************
*** 131,134 ****
--- 183,187 ----
def change_item(self, direction):
+ self.list.sort_items()
self.list.scroll(direction)
***************
*** 174,181 ****
box.set_alpha(a)
! ar_1 = (self.width-18, 5)
! ar_2 = (self.width-8, 5)
! ar_3 = (self.width-13, 20)
! pygame.draw.polygon(box, (64, 64, 64), [ar_1, ar_2, ar_3])
self.osd.screen.blit(box, self.get_position())
--- 227,240 ----
box.set_alpha(a)
! ar_1 = (self.width-18, 7)
! ar_2 = (self.width-8, 7)
! ar_3 = (self.width-13, 18)
!
! if self.selected:
! arrow_color = self.selected_fg_color.get_color_sdl()
! else:
! arrow_color = self.fg_color.get_color_sdl()
!
! pygame.draw.polygon(box, arrow_color, [ar_1, ar_2, ar_3])
self.osd.screen.blit(box, self.get_position())
***************
*** 183,187 ****
if self.border: self.border.draw()
if self.list: self.list.draw()
! if self.label: self.label.draw()
--- 242,250 ----
if self.border: self.border.draw()
if self.list: self.list.draw()
!
! if self.selected:
! self.selected_label.draw()
! else:
! self.label.draw()
***************
*** 201,217 ****
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_v_align(Align.MIDDLE)
- self.label.set_h_align(Align.LEFT)
else:
self.label.set_text(text)
--- 264,288 ----
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.LEFT)
+ self.selected_label.set_v_align(Align.MIDDLE)
+ self.selected_label.set_h_align(Align.LEFT)
***************
*** 223,227 ****
! def set_font(self, file, size):
"""
Set the font.
--- 294,298 ----
! def set_font(self, label, file, size, color):
"""
Set the font.
***************
*** 229,236 ****
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
--- 300,304 ----
Just hands the info down to the label. Might raise an exception.
"""
! label.set_font(file, size, color)
-------------------------------------------------------
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