          return ctl
  
      def control_to_optionsframe(self, choices, sysbrowser):
          """ Standard non-check buttons sit in the main options frame """
          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)
          else:
              if sysbrowser is not None:
                  self.filebrowser = FileBrowser(self.tk_var, self.frame, sysbrowser)
              ctl = self.control(self.frame,
                                 textvariable=self.tk_var,
 
</s> remove     def control_to_optionsframe(self, choices, sysbrowser):
 </s> add     def control_to_optionsframe(self): </s> remove             if sysbrowser is not None:
                self.filebrowser = FileBrowser(self.tk_var, self.frame, sysbrowser)
            ctl = self.control(self.frame,
                               textvariable=self.tk_var,
                               font=get_config().default_font)
            rc_menu = ContextMenu(ctl)
 </s> add             if self.option.sysbrowser is not None:
                self.filebrowser = FileBrowser(self.option.tk_var,
                                               self.frame,
                                               self.option.sysbrowser)
            ctl = self.option.control(self.frame,
                                      textvariable=self.option.tk_var,
                                      font=get_config().default_font)
            rc_menu = get_contextmenu(ctl) </s> remove         ctl["from_"] = min_max[0]
        ctl["to"] = min_max[1]
        logger.debug("Added slider control to Options Frame: %s", self.title)
 </s> add         ctl["from_"] = self.option.min_max[0]
        ctl["to"] = self.option.min_max[1]
        logger.debug("Added slider control to Options Frame: %s", self.option.name) </s> remove         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:
 </s> add         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: </s> remove         if choices:
            logger.debug("Adding combo choices: %s", choices)
            ctl["values"] = [choice for choice in choices]
        logger.debug("Added control to Options Frame: %s", self.title)
 </s> add         if self.option.choices:
            logger.debug("Adding combo choices: %s", self.option.choices)
            ctl["values"] = [choice for choice in self.option.choices]
        logger.debug("Added control to Options Frame: %s", self.option.name)
        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)
          return ctl
  
      def control_to_optionsframe(self, choices, sysbrowser):
          """ Standard non-check buttons sit in the main options frame """
        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)
        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)
        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)
        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)
          else:
              if sysbrowser is not None:
                  self.filebrowser = FileBrowser(self.tk_var, self.frame, sysbrowser)
              ctl = self.control(self.frame,
                                 textvariable=self.tk_var,
keep keep keep keep 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