peng3d/gui/menus.py
def add_progressbar(self,label_progressbar):
        """
        Adds a progressbar and label displaying the progress within a certain task.
        
        This widget can be triggered by setting the label ``label_progressbar`` to
        a string.
        
        The progressbar will be displayed centered and below the main label.
        The progress label will be displayed within the progressbar.
        
        The label of the progressbar may be a string containing formatting codes
        which will be resolved via the ``format()`` method.
        
        Currently, there are six keys available:
        
        ``n`` and ``value`` are the current progress rounded to 4 decimal places.
        
        ``nmin`` is the minimum progress value rounded to 4 decimal places.
        
        ``nmax`` is the maximum progress value rounded to 4 decimal places.
        
        ``p`` and ``percent`` are the percentage value that the progressbar is completed
        rounded to 4 decimal places.
        
        By default, the progressbar label will be ``{percent}%`` displaying the percentage
        the progressbar is complete.
        """
        # Progressbar
        self.wprogressbar = slider.AdvancedProgressbar("progressbar",self,self.window,self.peng,
                        pos=lambda sw,sh, bw,bh: (sw/2-bw/2,self.wlabel_main.pos[1]-bh*1.5),
                        size=[0,0],
                        #label=label_progressbar # TODO: add label
                        borderstyle=self.borderstyle
                        )
        self.addWidget(self.wprogressbar)
        
        # Progress Label
        self.wprogresslabel = text.Label("progresslabel",self,self.window,self.peng,
                        pos=lambda sw,sh, bw,bh: (sw/2-bw/2,self.wprogressbar.pos[1]+8),
                        size=[0,0],
                        label="", # set by update_progressbar()
                        )
        self.wprogresslabel.size = lambda sw,sh: (sw,self.wprogresslabel._label.font_size)
        self.addWidget(self.wprogresslabel)
        
        self.wprogressbar.size = lambda sw,sh: (sw*0.8,self.wprogresslabel._label.font_size+10)
        
        self._label_progressbar = label_progressbar
        
        if getattr(label_progressbar,"_dynamic",False):
            def f():
                self.label_progressbar = str(label_progressbar)
            self.peng.i18n.addAction("setlang",f)
        
        self.wprogressbar.addAction("progresschange",self.update_progressbar)
        
        self.update_progressbar()
def add_progressbar(self,label_progressbar):
        """
        Adds a progressbar and label displaying the progress within a certain task.
        
        This widget can be triggered by setting the label ``label_progressbar`` to
        a string.
        
        The progressbar will be displayed centered and below the main label.
        The progress label will be displayed within the progressbar.
        
        The label of the progressbar may be a string containing formatting codes
        which will be resolved via the ``format()`` method.
        
        Currently, there are six keys available:
        
        ``n`` and ``value`` are the current progress rounded to 4 decimal places.
        
        ``nmin`` is the minimum progress value rounded to 4 decimal places.
        
        ``nmax`` is the maximum progress value rounded to 4 decimal places.
        
        ``p`` and ``percent`` are the percentage value that the progressbar is completed
        rounded to 4 decimal places.
        
        By default, the progressbar label will be ``{percent}%`` displaying the percentage
        the progressbar is complete.
        """
        # Progressbar
        self.wprogressbar = slider.AdvancedProgressbar("progressbar",self,self.window,self.peng,
                        pos=lambda sw,sh, bw,bh: (sw/2-bw/2,self.wlabel_main.pos[1]-bh*1.5),
                        size=[0,0],
                        #label=label_progressbar # TODO: add label
                        borderstyle=self.borderstyle
                        )
        self.addWidget(self.wprogressbar)
        
        # Progress Label
        self.wprogresslabel = text.Label("progresslabel",self,self.window,self.peng,
                        pos=lambda sw,sh, bw,bh: (sw/2-bw/2,self.wprogressbar.pos[1]+8),
                        size=[0,0],
                        label="", # set by update_progressbar()
                        )
        self.wprogresslabel.size = lambda sw,sh: (sw,self.wprogresslabel._label.font_size)
        self.addWidget(self.wprogresslabel)
        
        self.wprogressbar.size = lambda sw,sh: (sw*0.8,self.wprogresslabel._label.font_size+10)
        
        self._label_progressbar = label_progressbar
        
        if getattr(label_progressbar,"_dynamic",False):
            def f():
                self.label_progressbar = str(label_progressbar)
            self.peng.i18n.addAction("setlang",f)
        
        self.wprogressbar.addAction("progresschange",self.update_progressbar)
        
        self.update_progressbar()
Adds a progressbar and label displaying the progress within a certain task.
        
        This widget can be triggered by setting the label ``label_progressbar`` to
        a string.
        
        The progressbar will be displayed centered and below the main label.
        The progress label will be displayed within the progressbar.
        
        The label of the progressbar may be a string containing formatting codes
        which will be resolved via the ``format()`` method.
        
        Currently, there are six keys available:
        
        ``n`` and ``value`` are the current progress rounded to 4 decimal places.
        
        ``nmin`` is the minimum progress value rounded to 4 decimal places.
        
        ``nmax`` is the maximum progress value rounded to 4 decimal places.
        
        ``p`` and ``percent`` are the percentage value that the progressbar is completed
        rounded to 4 decimal places.
        
        By default, the progressbar label will be ``{percent}%`` displaying the percentage
        the progressbar is complete.