'Set window settings
Symetric to the \'get_window_settings\' accessor'

def set_window_settings(self, hexstate, window_size, prefs_dialog_size, pos, is_maximized, is_fullscreen):

    self.setUpdatesEnabled(False)
    self.window_size = QSize(window_size[0], window_size[1])
    self.prefs_dialog_size = QSize(prefs_dialog_size[0], prefs_dialog_size[1])
    self.window_position = QPoint(pos[0], pos[1])
    self.setWindowState(Qt.WindowNoState)
    self.resize(self.window_size)
    self.move(self.window_position)
    if hexstate:
        self.restoreState(QByteArray().fromHex(str(hexstate).encode('utf-8')))
        for widget in self.children():
            if (isinstance(widget, QDockWidget) and widget.isFloating()):
                self.floating_dockwidgets.append(widget)
                widget.setFloating(False)
    if is_fullscreen:
        self.setWindowState(Qt.WindowFullScreen)
    self.__update_fullscreen_action()
    if is_fullscreen:
        self.maximized_flag = is_maximized
    elif is_maximized:
        self.setWindowState(Qt.WindowMaximized)
    self.setUpdatesEnabled(True)
