          if self.out_type == "stderr":
              # Output all stderr in red
              return self.out_type
  
          output = self.recolor.match(string)
          if not output:
              return "default"
          tag = output.groupdict()["lvl"].strip().lower()
          return tag
  
      def write(self, string):
          """ Capture stdout/stderr """
          self.console.insert(tk.END, string, self.get_tag(string))
          self.console.see(tk.END)
 
</s> remove     def get_tag(self, string):
        """ Set the tag based on regex of log output """
        if self.out_type == "stderr":
            # Output all stderr in red
            return self.out_type
 </s> add     @property
    def tk_vars(self):
        """ dict: The global tkinter variables. """
        return self._gui_objects["tk_vars"] </s> remove     def write(self, string):
        """ Capture stdout/stderr """
        self.console.insert(tk.END, string, self.get_tag(string))
        self.console.see(tk.END)
 </s> add     @property
    def tasks(self):
        """ :class:`lib.gui.project.Tasks`: The session tasks handler. """
        return self._gui_objects["tasks"] </s> remove     def __init__(self, console=None, out_type=None):
        logger.debug("Initializing %s: (console: %s, out_type: '%s')",
                     self.__class__.__name__, console, out_type)
        self.console = console
        self.out_type = out_type
        self.recolor = re.compile(r".+?(\s\d+:\d+:\d+\s)(?P<lvl>[A-Z]+)\s")
        logger.debug("Initialized %s", self.__class__.__name__)
 </s> add     # GUI Objects
    @property
    def cli_opts(self):
        """ :class:`lib.gui.options.CliOptions`: The command line options for this GUI Session. """
        return self._gui_objects["cli_opts"] </s> remove     @staticmethod
    def flush():
        """ If flush is forced, send it to normal terminal """
        sys.__stdout__.flush()
 </s> add     @property
    def statusbar(self):
        """ :class:`lib.gui.custom_widgets.StatusBar`: The GUI StatusBar
        :class:`tkinter.ttk.Frame`. """
        return self._gui_objects["status_bar"] </s> remove         if font == "default":
            font = tk.font.nametofont("TkDefaultFont").configure()["family"]
 </s> add         font = self._default_font if font == "default" else font
    @property
    def project(self):
        """ :class:`lib.gui.project.Project`: The project session handler. """
        return self._gui_objects["project"]
          if self.out_type == "stderr":
              # Output all stderr in red
              return self.out_type
  
    @property
    def project(self):
        """ :class:`lib.gui.project.Project`: The project session handler. """
        return self._gui_objects["project"]
    @property
    def project(self):
        """ :class:`lib.gui.project.Project`: The project session handler. """
        return self._gui_objects["project"]
    @property
    def project(self):
        """ :class:`lib.gui.project.Project`: The project session handler. """
        return self._gui_objects["project"]
    @property
    def project(self):
        """ :class:`lib.gui.project.Project`: The project session handler. """
        return self._gui_objects["project"]
    @property
    def project(self):
        """ :class:`lib.gui.project.Project`: The project session handler. """
        return self._gui_objects["project"]
  
      def write(self, string):
          """ Capture stdout/stderr """
          self.console.insert(tk.END, string, self.get_tag(string))
          self.console.see(tk.END)
keep keep keep keep replace replace replace replace replace keep keep keep keep keep
 GUI Updates (#940)

* lib.gui: Update icons
* tools.cli: Add video filetype flag to mask input
* lib.gui.popup_configure: Refresh GUI on config save
* lib.gui._config: Add Icon size and load last session options
* lib.gui.control_helper - Add control modification tracking
* lib.gui - Add Projects and Last Session
- Main root title handled by projects
- Add Hotkeys
- Create projects module
- split fsw and fst filetypes
- Add last_session saving

* lib.project
- Documentation
- Ask confirm on closing unsaved project
-Fixups

* Track model folder changes
- Shuffle some globals
- Activate System Verbosity for GUI

* lib.gui.utils - Documentation and clean up
- lib.gui.custom_widgets - Create and document

* Add GUI config option to disable auto loading model stats 
lib/gui/utils.py