      def build_tab(self):
          """ Build the tab """
          logger.debug("Build Tab: '%s'", self.command)
          options = get_config().cli_opts.opts[self.command]
          info = options.get("helptext", None)
          if info is not None:
              del options["helptext"]
          ControlPanel(self, options,
                       label_width=16, option_columns=3, columns=1, header_text=info)
          self.add_frame_separator()
  
          ActionFrame(self)
          logger.debug("Built Tab: '%s'", self.command)
  
 
</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         logger.debug("Build control label: (title: '%s')", self.title)
        title = self.title.replace("_", " ").title()
        lbl = ttk.Label(self.frame, text=title, width=self.label_width, anchor=tk.W)
 </s> add         logger.debug("Build control label: (option: '%s')", self.option.name)
        lbl = ttk.Label(self.frame, text=self.option.title, width=self.label_width, anchor=tk.W) </s> remove         logger.debug("Built control: '%s'", self.title)
 </s> add         logger.debug("Built control: '%s'", self.option.name) </s> remove     @staticmethod
    def get_sysbrowser(option, command):
 </s> add     def get_sysbrowser(self, option, options, command): </s> remove     @staticmethod
    def set_control_width(ctl, control_width):
        """ Set the control width if required """
        if control_width is not None:
            ctl.config(width=control_width)

    def radio_control(self, choices, columns):
 </s> add     def radio_control(self):
        cp_opts = [val["cpanel_option"] for key, val in options.items() if key != "helptext"]
        ControlPanel(self,
                     cp_opts,
                     label_width=16,
                     option_columns=3,
                     columns=1,
                     header_text=options.get("helptext", None))
      def build_tab(self):
          """ Build the tab """
          logger.debug("Build Tab: '%s'", self.command)
          options = get_config().cli_opts.opts[self.command]
        cp_opts = [val["cpanel_option"] for key, val in options.items() if key != "helptext"]
        ControlPanel(self,
                     cp_opts,
                     label_width=16,
                     option_columns=3,
                     columns=1,
                     header_text=options.get("helptext", None))
        cp_opts = [val["cpanel_option"] for key, val in options.items() if key != "helptext"]
        ControlPanel(self,
                     cp_opts,
                     label_width=16,
                     option_columns=3,
                     columns=1,
                     header_text=options.get("helptext", None))
        cp_opts = [val["cpanel_option"] for key, val in options.items() if key != "helptext"]
        ControlPanel(self,
                     cp_opts,
                     label_width=16,
                     option_columns=3,
                     columns=1,
                     header_text=options.get("helptext", None))
        cp_opts = [val["cpanel_option"] for key, val in options.items() if key != "helptext"]
        ControlPanel(self,
                     cp_opts,
                     label_width=16,
                     option_columns=3,
                     columns=1,
                     header_text=options.get("helptext", None))
        cp_opts = [val["cpanel_option"] for key, val in options.items() if key != "helptext"]
        ControlPanel(self,
                     cp_opts,
                     label_width=16,
                     option_columns=3,
                     columns=1,
                     header_text=options.get("helptext", None))
          self.add_frame_separator()
  
          ActionFrame(self)
          logger.debug("Built Tab: '%s'", self.command)
  
keep keep keep keep 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/command.py