code: def restore_layout(self, name, *args):
          
  
          layout = self.__layouts.get(name)
          if not layout:
              raise umbra.exceptions.LayoutExistError("{0} | '{1}' layout isn't registered!".format(
                  self.__class__.__name__, name))
  
          LOGGER.debug("> Restoring layout '{0}'.".format(name))
  
          for component, profile in self.__container.components_manager:
              if profile.category == "QWidget" and component not in self.__container.visible_components:
                  interface = self.__container.components_manager.get_interface(component)
                  interface and interface.hide()
  
          self.__current_layout = name
          self.__container.centralWidget().setVisible(
              self.__settings.get_key("Layouts", "{0}_central_widget".format(name)).toBool())
          self.__container.restoreState(
              self.__settings.get_key("Layouts", "{0}_window_state".format(name)).toByteArray())
          self.__restore_geometry_on_layout_change and \
          self.__container.restoreGeometry(
              self.__settings.get_key("Layouts", "{0}_geometry".format(name)).toByteArray())
          self.layout_restored.emit(self.__current_layout)
          return True
docs: Restores given layout.
  
          :param name: Layout name.
          :type name: unicode
          :param \*args: Arguments.
          :type \*args: \*
          :return: Method success.
          :rtype: bool