Update of /cvsroot/freevo/freevo/src/gui In directory sc8-pr-cvs1:/tmp/cvs-serv20019
Modified Files: Button.py GUIObject.py ListBox.py ListItem.py Log Message: When selected these objects now use skin properties as well. Index: Button.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/gui/Button.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Button.py 9 Mar 2003 21:37:06 -0000 1.4 --- Button.py 23 Mar 2003 23:19:39 -0000 1.5 *************** *** 10,13 **** --- 10,16 ---- # ----------------------------------------------------------------------- # $Log$ + # Revision 1.5 2003/03/23 23:19:39 rshortt + # When selected these objects now use skin properties as well. + # # Revision 1.4 2003/03/09 21:37:06 rshortt # Improved drawing. draw() should now be called instead of _draw(). draw() *************** *** 160,166 **** raise TypeError, text - # going to support sel_font soon! if button_default.font: ! self.set_font(button_default.font.name, button_default.font.size, Color(button_default.font.color)) --- 163,169 ---- 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)) *************** *** 169,172 **** --- 172,185 ---- 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) *************** *** 190,194 **** self.osd.screen.blit(box, self.get_position()) ! if self.label: self.label.draw() if self.border: self.border.draw() --- 203,211 ---- 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() *************** *** 216,221 **** --- 233,250 ---- 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) *************** *** 227,231 **** ! def set_font(self, file, size, color): """ Set the font. --- 256,260 ---- ! def set_font(self, label, file, size, color): """ Set the font. *************** *** 233,240 **** Just hands the info down to the label. Might raise an exception. """ ! if self.label: ! self.label.set_font(file, size, color) ! else: ! raise TypeError, file --- 262,266 ---- Just hands the info down to the label. Might raise an exception. """ ! label.set_font(file, size, color) Index: GUIObject.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/gui/GUIObject.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** GUIObject.py 9 Mar 2003 21:37:06 -0000 1.10 --- GUIObject.py 23 Mar 2003 23:19:39 -0000 1.11 *************** *** 8,11 **** --- 8,14 ---- #----------------------------------------------------------------------- # $Log$ + # Revision 1.11 2003/03/23 23:19:39 rshortt + # When selected these objects now use skin properties as well. + # # Revision 1.10 2003/03/09 21:37:06 rshortt # Improved drawing. draw() should now be called instead of _draw(). draw() *************** *** 149,161 **** self.zir = ZIndexRenderer.get_singleton() ! self.label = None ! self.icon = None ! self.bg_surface = None ! self.bg_image = None ! self.parent = None ! self.children = [] ! self.enabled = 1 ! self.selected = 0 ! self.visible = 1 self.left = left --- 152,165 ---- self.zir = ZIndexRenderer.get_singleton() ! self.label = None ! self.selected_label = None ! self.icon = None ! self.bg_surface = None ! self.bg_image = None ! self.parent = None ! self.children = [] ! self.enabled = 1 ! self.selected = 0 ! self.visible = 1 self.left = left Index: ListBox.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/gui/ListBox.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** ListBox.py 9 Mar 2003 21:37:06 -0000 1.5 --- ListBox.py 23 Mar 2003 23:19:39 -0000 1.6 *************** *** 10,13 **** --- 10,16 ---- # ----------------------------------------------------------------------- # $Log$ + # Revision 1.6 2003/03/23 23:19:39 rshortt + # When selected these objects now use skin properties as well. + # # Revision 1.5 2003/03/09 21:37:06 rshortt # Improved drawing. draw() should now be called instead of _draw(). draw() *************** *** 124,153 **** # transparencies working correctly. if not self.bg_color: ! self.bg_color = Color(self.osd.default_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: ! self.fg_color = Color(self.osd.default_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: ! self.selected_bg_color = Color((0,255,0,128)) ! # 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: ! self.fg_color = Color(self.osd.default_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) --- 127,156 ---- # transparencies working correctly. if not self.bg_color: ! # self.bg_color = Color(self.osd.default_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: ! # self.fg_color = Color(self.osd.default_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: ! # self.selected_bg_color = Color((0,255,0,128)) ! 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: ! # self.fg_color = Color(self.osd.default_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) *************** *** 165,170 **** self.h_margin = 2 self.v_margin = 2 self.x_scroll_interval = 25 ! self.y_scroll_interval = 25 if not self.items: self.items = [] --- 168,174 ---- self.h_margin = 2 self.v_margin = 2 + self.items_height = 25 self.x_scroll_interval = 25 ! self.y_scroll_interval = self.items_height if not self.items: self.items = [] *************** *** 243,247 **** value = text ! item = ListItem(text, value, self.width, None, self.bg_color, self.fg_color, self.selected_bg_color, self.selected_fg_color) --- 247,251 ---- value = text ! item = ListItem(text, value, self.width, self.items_height, self.bg_color, self.fg_color, self.selected_bg_color, self.selected_fg_color) *************** *** 319,323 **** def destroy(self): for item in self.items: - print 'LB.destroy: destroying %s' % item item.destroy() item = None --- 323,326 ---- Index: ListItem.py =================================================================== RCS file: /cvsroot/freevo/freevo/src/gui/ListItem.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** ListItem.py 9 Mar 2003 21:37:06 -0000 1.3 --- ListItem.py 23 Mar 2003 23:19:39 -0000 1.4 *************** *** 10,13 **** --- 10,16 ---- # ----------------------------------------------------------------------- # $Log$ + # Revision 1.4 2003/03/23 23:19:39 rshortt + # When selected these objects now use skin properties as well. + # # Revision 1.3 2003/03/09 21:37:06 rshortt # Improved drawing. draw() should now be called instead of _draw(). draw() *************** *** 61,66 **** class ListItem(GUIObject): """ - left x coordinate. Integer - top y coordinate. Integer width Integer height Integer --- 64,67 ---- *************** *** 74,112 **** ! def __init__(self, text=" ", value=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.value = value ! self.h_margin = 20 ! self.v_margin = 2 self.border = border self.bd_color = bd_color self.bd_width = bd_width ! self.width = width ! self.height = height ! self.left = None ! self.top = None ! self.bg_color = bg_color ! self.fg_color = fg_color ! self.label = None ! self.selected_label = None self.selected_fg_color = selected_fg_color self.selected_bg_color = selected_bg_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) - # No border by default. # if not self.bd_color: self.bd_color = Color(self.osd.default_fg_color) --- 75,135 ---- ! def __init__(self, text=" ", value=None, 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.text = text self.value = value ! 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, None, None, width, height, + self.bg_color, self.fg_color) + + + self.h_margin = 20 + self.v_margin = 2 + # XXX: Place a call to the skin object here then set the defaults # acodringly. self.skin is set in the superclass. # No border by default. # if not self.bd_color: self.bd_color = Color(self.osd.default_fg_color) *************** *** 115,120 **** # self.bd_color, self.bd_width) - 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 type(text) is StringType: --- 138,141 ---- *************** *** 125,128 **** --- 146,170 ---- 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(self.label, + 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) + + def _draw(self, surface=None): *************** *** 159,163 **** # else: self.label.draw(surface) ! self.label.draw(surface) if self.border: self.border.draw(surface) --- 201,208 ---- # else: self.label.draw(surface) ! if self.selected: ! self.selected_label.draw(surface) ! else: ! self.label.draw(surface) if self.border: self.border.draw(surface) *************** *** 179,197 **** self.label = Label(text) self.label.set_parent(self) - # self.add_child(self.label) - # 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.LEFT) else: self.label.set_text(text) self.label.set_v_align(Align.MIDDLE) self.label.set_h_align(Align.LEFT) --- 224,248 ---- 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) *************** *** 203,207 **** ! def set_font(self, file, size): """ Set the font. --- 254,258 ---- ! def set_font(self, label, file, size, color): """ Set the font. *************** *** 209,216 **** 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 --- 260,264 ---- 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