X-Git-Url: https://git.ucc.asn.au/?p=matches%2Fhonours.git;a=blobdiff_plain;f=research%2Ftransmission_spectroscopy%2Fsimulator%2Fpgu-0.18%2Fbuild%2Flib%2Fpgu%2Fgui%2Fmisc.py;fp=research%2Ftransmission_spectroscopy%2Fsimulator%2Fpgu-0.18%2Fbuild%2Flib%2Fpgu%2Fgui%2Fmisc.py;h=763f7b9c7dc7636b8dd3aaa662553302512ba664;hp=0000000000000000000000000000000000000000;hb=70a96cca12cb006506461d26cd112bab179fe74c;hpb=8caf60af39689a3546074f0c68d14c3a2e28191e diff --git a/research/transmission_spectroscopy/simulator/pgu-0.18/build/lib/pgu/gui/misc.py b/research/transmission_spectroscopy/simulator/pgu-0.18/build/lib/pgu/gui/misc.py new file mode 100644 index 00000000..763f7b9c --- /dev/null +++ b/research/transmission_spectroscopy/simulator/pgu-0.18/build/lib/pgu/gui/misc.py @@ -0,0 +1,43 @@ +from .const import * +from . import widget +from . import pguglobals + +class ProgressBar(widget.Widget): + """A progress bar widget. + + Example: + w = gui.ProgressBar(0,0,100) + w.value = 25 + + """ + + _value = None + + def __init__(self,value,min,max,**params): + params.setdefault('cls','progressbar') + widget.Widget.__init__(self,**params) + self.min,self.max,self.value = min,max,value + + def paint(self,s): + if (self.value != None): + r = pygame.rect.Rect(0,0,self.rect.w,self.rect.h) + r.w = r.w*(self.value-self.min)/(self.max-self.min) + self.bar = r + pguglobals.app.theme.render(s,self.style.bar,r) + + @property + def value(self): + return self._value + + @value.setter + def value(self, val): + val = int(val) + val = max(val, self.min) + val = min(val, self.max) + oldval = self._value + self._value = val + if (oldval != val): + self.send(CHANGE) + self.repaint() + +