          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)
          return ctl
  
      def control_to_checkframe(self):
 
</s> remove         radio_holder = AutoFillContainer(ctl, self.option_columns)
 </s> add         radio_holder = AutoFillContainer(ctl, self.option_columns, self.option_columns) </s> remove         holder = AutoFillContainer(chk_frame, self.option_columns)
 </s> add         holder = AutoFillContainer(chk_frame, self.option_columns, self.option_columns) </s> remove         self.optscanvas = self.canvas.create_window((0, 0), window=self.mainframe, anchor=tk.NW)

        self.build_panel(blank_nones)
 </s> add         self._optscanvas = self._canvas.create_window((0, 0), window=self.mainframe, anchor=tk.NW)
        self.build_panel(blank_nones, scrollbar) </s> remove         self.parent = parent
        self.columns = min(columns, self.max_columns)
 </s> add 
            ctl["state"] = "readonly"
          if self.option.choices:
              logger.debug("Adding combo choices: %s", self.option.choices)
              ctl["values"] = [choice for choice in self.option.choices]
            ctl["state"] = "readonly"
          logger.debug("Added control to Options Frame: %s", self.option.name)
          return ctl
  
      def control_to_checkframe(self):
keep keep add keep keep keep keep
 Core updates (#982)

* plugins.extract.align
  - Expose normalization method

* lib.gui core updates
  - Minor updates to support future development. 
lib/gui/control_helper.py