                  try:
                      new_value = str(value.get())
                  except tk.TclError as err:
                      # When manually filling in text fields, blank values will
                      # raise an error on numeric datatypes so return 0
                      logger.debug("Error getting value. Defaulting to 0. Error: %s", str(err))
                      new_value = str(0)
                  old_value = self.config.config[section][item]
                  if new_value != old_value:
                      logger.trace("Updating config: %s, %s from %s to %s",
 
</s> remove                 old_value = self.config.config[section][item]
 </s> add                 old_value = self._config.config[section][item] </s> remove                     self.config.config[section][item] = new_value

    def get_config_dicts(self):
        """ Hold a custom config dict for the config """
 </s> add                     self._config.config[section][item] = new_value

    def _get_config_dicts(self):
        """ Obtain a custom configuration dictionary for convert configuration items in use
        by the preview tool formatted for control helper.

        Returns
        -------
        dict
            Each configuration section as keys, with the values as a dict of option:
            :class:`lib.gui.control_helper.ControlOption` pairs. """
        logger.debug("Formatting Config for GUI") </s> remove         """ Update config with selected values """
 </s> add         """ Update :attr:`config` with the currently selected values from the GUI. """ </s> remove                     image = self.patch_image(item)
 </s> add                     image = self._patch_image(item) </s> remove                 val = options["value"]
 </s> add                 val = options.value
                    # raise an error on numeric data types so return 0
                  try:
                      new_value = str(value.get())
                  except tk.TclError as err:
                      # When manually filling in text fields, blank values will
                    # raise an error on numeric data types so return 0
                      logger.debug("Error getting value. Defaulting to 0. Error: %s", str(err))
                      new_value = str(0)
                  old_value = self.config.config[section][item]
                  if new_value != old_value:
                      logger.trace("Updating config: %s, %s from %s to %s",
keep keep keep keep replace keep keep keep keep keep
 Smart Masks to Convert (#957)

- scripts.convert - Use Smart Masks for Convert
    * Make on-the-fly conversion an explicit option

- Move BlurMask to lib.faces_detect

- tools.preview - Fix for smart masks
    * Subclass from tk.Tk
    * Options to lib.gui.control_helper
    *variable cleanup

- lib.logger - Demote more tensorflow deprecation messages

- Documentation:
    * lib.faces_detect.BlurMask
    * plugins.convert.mask
    * lib.convert
    * scripts.convert
    * scripts.fsmedia
    * tools.preview 
tools/preview.py