Update of /cvsroot/freevo/freevo/src/gui/widgets
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv3105
Modified Files:
progressbar.py
Log Message:
make Progessbar not depend on popup box settings
Index: progressbar.py
===================================================================
RCS file: /cvsroot/freevo/freevo/src/gui/widgets/progressbar.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** progressbar.py 5 Oct 2004 19:50:55 -0000 1.4
--- progressbar.py 9 Oct 2004 16:21:29 -0000 1.5
***************
*** 13,16 ****
--- 13,19 ----
# -----------------------------------------------------------------------
# $Log$
+ # Revision 1.5 2004/10/09 16:21:29 dischi
+ # make Progessbar not depend on popup box settings
+ #
# Revision 1.4 2004/10/05 19:50:55 dischi
# Cleanup gui/widgets:
***************
*** 51,91 ****
! from mevas.image import CanvasImage
from rectangle import Rectangle
! class Progressbar(CanvasImage):
"""
"""
! def __init__(self, pos, size, full, style):
! CanvasImage.__init__(self, size)
self.set_pos(pos)
self.bar_position = 0
! self.full = full
! self.style = style
self.__draw()
def __draw(self):
- self.draw_rectangle((0,0), self.get_size(), (0,0,0,0), 1)
- r = self.style.rectangle
- self.draw_image(Rectangle((0,0), self.get_size(), None,
- r.size, r.color, r.radius))
-
# catch division by zero error.
! if not self.full:
return
-
- position = min((self.bar_position * 100) / self.full, 100)
width = ((self.get_size()[0]) * position ) / 100
! if width > r.size * 2:
! self.draw_image(Rectangle((0,0), (width, self.get_size()[1]),
! r.bgcolor, r.size, r.color, r.radius))
def tick(self):
! if self.bar_position < self.full:
self.bar_position += 1
self.__draw()
--- 54,117 ----
! from mevas.container import CanvasContainer
from rectangle import Rectangle
! class Progressbar(CanvasContainer):
"""
"""
! def __init__(self, pos, size, border_size, border_color, bgcolor, bar_size,
! bar_color, bar_bgcolor, radius, max_value):
! CanvasContainer.__init__(self)
self.set_pos(pos)
self.bar_position = 0
! self.max_value = max_value
! self.border_size = border_size
! self.bar_size = bar_size
! self.bar_color = bar_color
! self.bar_bgcolor = bar_bgcolor
! self.radius = radius
!
! self.bar = None
!
! rect = Rectangle((0,0), size, bgcolor, border_size, border_color,
! self.radius)
! self.add_child(rect)
self.__draw()
def __draw(self):
# catch division by zero error.
! if not self.max_value:
return
+ if self.bar:
+ self.remove_child(self.bar)
+
+ position = min((self.bar_position * 100) / self.max_value, 100)
width = ((self.get_size()[0]) * position ) / 100
! if width > self.border_size * 2:
! rect = Rectangle((self.border_size,self.border_size),
! (width-self.border_size,
! self.get_size()[1]-self.border_size),
! self.bar_bgcolor, self.bar_size, self.bar_color,
! self.radius)
! self.add_child(rect)
! self.bar = rect
def tick(self):
! if self.bar_position < self.max_value:
self.bar_position += 1
self.__draw()
+
+ def set_max_value(self, max_value):
+ self.max_value = max_value
+ self.__draw()
+
+
+ def set_bar_position(self, position):
+ self.bar_position = bar_position
+ self.__draw()
+
-------------------------------------------------------
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal
Use IT products in your business? Tell us what you think of them. Give us
Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl
_______________________________________________
Freevo-cvslog mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog