  
      def build_one_control(self, choices, dtype, rounding, min_max,
                            sysbrowser, option_columns, control_width):
          """ Build and place the option controls """
          logger.debug("Build control: (title: '%s', control: %s, choices: %s, dtype: %s, "
                       "rounding: %s, sysbrowser: %s, min_max: %s: option_columns: %s, "
                       "control_width: %s)", self.title, self.control, choices, dtype, rounding,
                       sysbrowser, min_max, option_columns, control_width)
          if self.control == ttk.Scale:
              ctl = self.slider_control(dtype, rounding, min_max)
          elif self.control == ttk.Radiobutton:
              ctl = self.radio_control(choices, option_columns)
          elif self.control == ttk.Checkbutton:
              ctl = self.control_to_checkframe()
          else:
              ctl = self.control_to_optionsframe(choices, sysbrowser)
          self.set_control_width(ctl, control_width)
          if self.control != ttk.Checkbutton:
 
</s> remove     def build_one_control(self, choices, dtype, rounding, min_max,
                          sysbrowser, option_columns, control_width):
 </s> add     def build_one_control(self): </s> remove             ctl = self.control_to_optionsframe(choices, sysbrowser)
        self.set_control_width(ctl, control_width)
        if self.control != ttk.Checkbutton:
 </s> add             ctl = self.control_to_optionsframe()
        if self.option.control != ttk.Checkbutton: </s> remove         logger.debug("Add control to Options Frame: (title: '%s', control: %s, choices: %s)",
                     self.title, self.control, choices)
        if self.control == ttk.Checkbutton:
            ctl = self.control(self.frame, variable=self.tk_var, text=None)
 </s> add         logger.debug("Add control to Options Frame: (widget: '%s', control: %s, choices: %s)",
                     self.option.name, self.option.control, self.option.choices)
        if self.option.control == ttk.Checkbutton:
            ctl = self.option.control(self.frame, variable=self.option.tk_var, text=None) </s> remove         if self.helptext is not None:
            get_tooltip(lbl, text=self.helptext, wraplength=600)
        logger.debug("Built control label: '%s'", self.title)
 </s> add         if self.option.helptext is not None:
            get_tooltip(lbl, text=self.option.helptext, wraplength=600)
        logger.debug("Built control label: (widget: '%s', title: '%s'",
                     self.option.name, self.option.title) </s> remove     def control_to_optionsframe(self, choices, sysbrowser):
 </s> add     def control_to_optionsframe(self):
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
  
      def build_one_control(self, choices, dtype, rounding, min_max,
                            sysbrowser, option_columns, control_width):
          """ Build and place the option controls """
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
        logger.debug("Build control: '%s')", self.option.name)
        if self.option.control == ttk.Scale:
            ctl = self.slider_control()
        elif self.option.control == ttk.Radiobutton:
            ctl = self.radio_control()
        elif self.option.control == ttk.Checkbutton:
              ctl = self.control_to_checkframe()
          else:
              ctl = self.control_to_optionsframe(choices, sysbrowser)
          self.set_control_width(ctl, control_width)
          if self.control != ttk.Checkbutton:
keep keep keep keep replace replace replace replace replace replace replace replace replace keep keep keep keep keep
 GUI Fixups

- GUI Bugfix: Startup options - fix min/max thresholds
- GUI Bugfix: Make console read-only
- GUI Bugfix: Rightclick menu for recreated widgets
- Enhancement: Create ControlPanelOptions Class + migrate options 
lib/gui/control_helper.py