def save_current_as(self):
        """
        Save current widget as.
        """
        if not self.current_widget():
            return
        mem = self.current_widget().file.path
        self.current_widget().file._path = None
        self.current_widget().file._old_path = mem
        CodeEditTabWidget.default_directory = os.path.dirname(mem)
        widget = self.current_widget()
        try:
            success = self.main_tab_widget.save_widget(widget)
        except Exception as e:
            QtWidgets.QMessageBox.warning(
                self, _('Failed to save file as'),
                _('Failed to save file as %s\nError=%s') % (
                    widget.file.path, str(e)))
            widget.file._path = mem
        else:
            if not success:
                widget.file._path = mem
            else:
                CodeEditTabWidget.default_directory = os.path.expanduser('~')
                self.document_saved.emit(widget.file.path, '')

                # rename tab
                tw = widget.parent_tab_widget
                tw.setTabText(tw.indexOf(widget),
                              os.path.split(widget.file.path)[1])

        return self.current_widget().file.path
def save_current_as ( self ) : if not self . current_widget ( ) : return mem = self . current_widget ( ) . file . path self . current_widget ( ) . file . _path = None self . current_widget ( ) . file . _old_path = mem CodeEditTabWidget . default_directory = os . path . dirname ( mem ) widget = self . current_widget ( ) try : success = self . main_tab_widget . save_widget ( widget ) except Exception as e : QtWidgets . QMessageBox . warning ( self , _ ( 'Failed to save file as' ) , _ ( 'Failed to save file as %s\nError=%s' ) % ( widget . file . path , str ( e ) ) ) widget . file . _path = mem else : if not success : widget . file . _path = mem else : CodeEditTabWidget . default_directory = os . path . expanduser ( '~' ) self . document_saved . emit ( widget . file . path , '' ) tw = widget . parent_tab_widget tw . setTabText ( tw . indexOf ( widget ) , os . path . split ( widget . file . path ) [ 1 ] ) return self . current_widget ( ) . file . path
Save current widget as.