code: def __generic_save(self):
          
          page = self._get_page()
          f = page.editor.f
          if not f:
              return True
          if not page.editor.flag_valid:
              a99.show_error("Cannot save, {0!s} has error(s)!".format(f.description))
              return True
          if f.filename:
              f.save_as()
  
              self.add_log("Saved '{}'".format(f.filename))
              page.flag_changed = False
              self._update_gui_text_tabs()
  
              if hasattr(page.editor, "update_gui_label_fn"):
                  page.editor.update_gui_label_fn()  # duck typing
              return True
          else:
              return self.__generic_save_as()
docs: Returns False if user has cancelled a "save as" operation, otherwise True.