              for key in options.keys():
                  if key == "helptext":
                      self.plugin_info[section] = options[key]
                      continue
                  options[key]["value"] = self.config.config_dict.get(key, options[key]["default"])
          logger.debug("Formatted Config for GUI: %s", conf)
          return conf
  
      def build(self):
          """ Build the config popup """
 
</s> remove                     self.plugin_info[section] = options[key]
 </s> add                     self.plugin_info[section] = val </s> remove             conf.setdefault(category, dict())[section] = options
            for key in options.keys():
 </s> add             section = section.split(".")[-1]
            conf.setdefault(category, dict())[section] = OrderedDict()
            for key, val in options.items(): </s> remove         plugins = sorted(list(key for key in self.config_dict_gui[category].keys()))
 </s> add         plugins = sorted(list(key for key in self.config_cpanel_dict[category].keys())) </s> remove             val["selected"] = ctl.tk_var
            self.options[key]["_gui_option"] = ctl
        for key, val in self.options.items():
            if key == "helptext":
                continue
            filebrowser = val["_gui_option"].filebrowser
 </s> add             self.controls.append(ctl)
        for control in self.controls:
            filebrowser = control.filebrowser </s> remove         for key, val in self.options.items():
            if key == "helptext":
                continue
            group = "_master" if val["group"] is None else val["group"]
            group_frame = self.get_group_frame(group)
 </s> add         for option in self.options:
            group_frame = self.get_group_frame(option.group)
                conf[category][section][key] = ControlPanelOption(
                    title=key,
                    dtype=val["type"],
                    group=val["group"],
                    default=val["default"],
                    initial_value=self.config.config_dict.get(key, val["default"]),
                    choices=val["choices"],
                    is_radio=val["gui_radio"],
                    rounding=val["rounding"],
                    min_max=val["min_max"],
                    helptext=val["helptext"])
              for key in options.keys():
                  if key == "helptext":
                      self.plugin_info[section] = options[key]
                      continue
                conf[category][section][key] = ControlPanelOption(
                    title=key,
                    dtype=val["type"],
                    group=val["group"],
                    default=val["default"],
                    initial_value=self.config.config_dict.get(key, val["default"]),
                    choices=val["choices"],
                    is_radio=val["gui_radio"],
                    rounding=val["rounding"],
                    min_max=val["min_max"],
                    helptext=val["helptext"])
          logger.debug("Formatted Config for GUI: %s", conf)
          return conf
  
      def build(self):
          """ Build the config popup """
keep keep keep keep 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/popup_configure.py