def __init__(self, parent=None): super(License_dialog, self).__init__(parent) self.setStyleSheet(cfg.stylesheet) self.layout = QtWidgets.QVBoxLayout(self) self.pipelineUI = self.parent() self.version = pipeline.__version__ self.input_widget = QtWidgets.QWidget(self) self.input_layout = QtWidgets.QVBoxLayout(self.input_widget) self.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) self.input_layout.setContentsMargins(5, 5, 5, 5) self.layout.setContentsMargins(10, 10, 10, 10) self.title = gui.Title( self, label="Please enter your Pipeline {} license key:".format( self.version[0]), seperator=False) self.title.layout.setContentsMargins(5, 0, 5, 0) self.input_layout.addWidget(self.title) self.note = gui.Title(self, label="Activation requires internet connection.") font = QtGui.QFont() font.setItalic(True) self.note.label.setFont(font) self.input_layout.addWidget(self.note) self.key_widget = inputs.GroupInput( self, label="Key", inputWidget=QtWidgets.QLineEdit(self), ic=cfg.lock_icon) self.key_input = self.key_widget.input self.key_widget.label.setMinimumSize(QtCore.QSize(10, 30)) self.key_widget.label.setText("") self.key_input.setMinimumSize(QtCore.QSize(300, 30)) self.input_layout.addWidget(self.key_widget) self.layout.addWidget(self.input_widget) ok = QtWidgets.QPushButton("Activate") ok.setDefault(True) canc = QtWidgets.QPushButton("Cancel") buttons = QtWidgets.QDialogButtonBox(QtCore.Qt.Horizontal) buttons.addButton(ok, QtWidgets.QDialogButtonBox.AcceptRole) buttons.addButton(canc, QtWidgets.QDialogButtonBox.RejectRole) buttons.accepted.connect(self.accept) buttons.rejected.connect(self.reject) self.layout.addWidget(buttons)
def __init__(self, parent=None, parent_name=None, name_input=None, multi_inputs=None, ancestors=None, project=None): super(NameFormatWidget, self).__init__(parent) self.project = project self.name_input = name_input self.multi_inputs = multi_inputs self.ancestors = ancestors self.parent_name = parent_name self.ancestors_names = ancestors if not multi_inputs: self.ancestors_names.reverse() self.ancestors_names.pop(0) self.max_depth = len(self.ancestors_names) self.layout = QtWidgets.QVBoxLayout(self) self.layout.setContentsMargins(5, 2, 5, 2) self.layout.setAlignment(QtCore.Qt.AlignLeft) self.file_name_title = gui.Title(self, label="File name format:") self.layout.addWidget(self.file_name_title) self.input_format_widget = inputs.GroupInput( self, label="Format Depth", inputWidget=QtWidgets.QSpinBox(self), ic=cfg.counter_icon) self.depth_slider = self.input_format_widget.input self.depth_slider.setMinimum(0) self.depth_slider.setMaximum(self.max_depth) self.depth_slider.setValue(self.max_depth) self.format_preview_widget = inputs.GroupInput( self, inputWidget=QtWidgets.QLineEdit(self)) self.format_preview = self.format_preview_widget.input self.format_preview.setEnabled(False) self.preview_format() self.layout.addWidget(self.input_format_widget) self.layout.addWidget(self.format_preview_widget) self.depth_slider.valueChanged.connect(self.preview_format)
def __init__(self, parent=None): super(Update_window, self).__init__(parent) # self.pipelineUI = self.parent() self.setWindowFlags(QtCore.Qt.Tool) self.setAttribute(QtCore.Qt.WA_DeleteOnClose) self.main_widget = QtWidgets.QWidget(self) self.setCentralWidget(self.main_widget) self.setStyleSheet(cfg.stylesheet) self.layout = QtWidgets.QVBoxLayout(self.main_widget) self.layout.setContentsMargins(10, 5, 10, 10) self.setMinimumHeight(120) self.setMaximumHeight(120) self.setMinimumWidth(600) self.setMaximumWidth(600) self.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) # self.center_to_maya_window() # self.current_version = current_version self.caption = gui.Title(self, label="", seperator=False) self.link_label = Click_label() self.link_label.setHidden(True) self.layout.addWidget(self.link_label) self.layout.addWidget(self.caption) self.startup_switch = inputs.GroupInput( self, label="Check for updates on startup", inputWidget=QtWidgets.QCheckBox()) self.startup_switch_input = self.startup_switch.input if settings.settings_node().check_for_updates: self.startup_switch_input.setCheckState(QtCore.Qt.Checked) self.startup_switch_input.stateChanged.connect( self.start_updates_toggle) self.layout.addWidget(self.startup_switch) self.ok = QtWidgets.QPushButton("Abort") self.ok.setIconSize(QtCore.QSize(20, 20)) self.ok.setIcon(QtGui.QIcon(cfg.no_icon)) self.ok.clicked.connect(self.close) self.layout.addWidget(self.ok)
def __init__(self, parent=None, name_input=None, ancestors=[]): super(FormatWidget, self).__init__(parent) # self.project = project self.name_input = name_input self.ancestors = ancestors # self.ancestors_names = [] # [self.ancestors_names.append("<{}>".format(a)) for a in ancestors] self.max_depth = len(self.ancestors) self.layout = QtWidgets.QVBoxLayout(self) self.layout.setContentsMargins(5, 2, 5, 2) self.layout.setAlignment(QtCore.Qt.AlignLeft) self.file_name_title = gui.Title(self, label="File name format: (Advanced) ") self.layout.addWidget(self.file_name_title) self.input_format_widget = inputs.GroupInput( self, label="Include categories", inputWidget=QtWidgets.QSpinBox(self), ic=cfg.counter_icon) self.depth_slider = self.input_format_widget.input self.depth_slider.setMinimum(0) self.depth_slider.setMaximum(self.max_depth) if self.max_depth >= 1: self.depth_slider.setValue(1) else: self.depth_slider.setValue(self.max_depth) self.format_preview_widget = inputs.GroupInput( self, inputWidget=QtWidgets.QLineEdit(self)) self.format_preview = self.format_preview_widget.input self.format_preview.setEnabled(False) self.preview_format() self.layout.addWidget(self.input_format_widget) self.layout.addWidget(self.format_preview_widget) self.depth_slider.valueChanged.connect(self.preview_format)
def __init__(self, parent=None, string="", name_label_string="", title=""): super(newNodeDialog, self).__init__(parent) # self.setStyleSheet(cfg.stylesheet) self.setMaximumWidth(400) self.setMinimumWidth(400) self.setMaximumHeight(50) css = loadCSS.loadCSS( os.path.join(os.path.dirname(pipeline.CSS.__file__), 'mainWindow.css')) self.setStyleSheet(css) self.layout = QtWidgets.QVBoxLayout(self) self.input_widget = QtWidgets.QWidget(self) self.input_layout = QtWidgets.QVBoxLayout(self.input_widget) self.name_widget = inputs.GroupInput( self, label=name_label_string, inputWidget=QtWidgets.QLineEdit(self), ic=cfg.text_icon) self.name_input = self.name_widget.input self.name_input.setText(string) self.create_title = gui.Title(self, label=title) self.input_layout.addWidget(self.create_title) self.input_layout.addWidget(self.name_widget) self.layout.addWidget(self.input_widget) self.input_layout.setContentsMargins(0, 0, 0, 0) self.layout.setContentsMargins(5, 5, 5, 10) buttons = QtWidgets.QDialogButtonBox( QtWidgets.QDialogButtonBox.Ok | QtWidgets.QDialogButtonBox.Cancel, QtCore.Qt.Horizontal, self) buttons.accepted.connect(self.accept) buttons.rejected.connect(self.reject) self.layout.addWidget(buttons)
def __init__(self, parent=None, string="", name_label_sting="Name", title="Create new asset", stages=[], ancestors=None, project=None): super(newAssetDialog, self).__init__(parent, string, name_label_sting, title) self.create_stages_title = gui.Title(self, label="Add stages:") self.input_layout.addWidget(self.create_stages_title) self.project = project self.stages_options = {} for stage in stages: widget = QtWidgets.QWidget(self) layout = QtWidgets.QVBoxLayout(widget) layout.setContentsMargins(5, 2, 5, 2) layout.setAlignment(QtCore.Qt.AlignLeft) checkbox = QtWidgets.QCheckBox(stage) self.stages_options[stage] = checkbox layout.addWidget(checkbox) self.input_layout.addWidget(widget) ancestors_names = [] [ ancestors_names.append("<{}>".format(node.name)) for node in ancestors ] self.name_format_widget = NameFormatWidget(self, name_input=self.name_input, ancestors=ancestors_names, project=self.project) self.input_layout.addWidget(self.name_format_widget) self.name_input.textChanged.connect( self.name_format_widget.preview_format)
def __init__(self, parent=None, **kwargs): super(ProjectDialog, self).__init__(parent) # self.setStyleSheet(cfg.stylesheet) css = loadCSS.loadCSS( os.path.join(os.path.dirname(pipeline.CSS.__file__), 'mainWindow.css')) self.setStyleSheet(css) self.layout = QtWidgets.QVBoxLayout(self) self.layout.setContentsMargins(5, 5, 5, 10) # self.setMaximumHeight(150) self.setWindowTitle('Create new project') self.input_widget = QtWidgets.QWidget(self) self.input_layout = QtWidgets.QVBoxLayout(self.input_widget) self.title = gui.Title(self, label="New project") self.input_layout.addWidget(self.title) self.name_widget = inputs.GroupInput( self, label="Project name", inputWidget=QtWidgets.QLineEdit(self), ic=cfg.text_icon) self.name_input = self.name_widget.input self.input_layout.addWidget(self.name_widget) self.nice_name_widget = inputs.GroupInput( self, label="Nice name", inputWidget=QtWidgets.QLineEdit(self), ic=cfg.text_icon) self.nice_name_input = self.nice_name_widget.input self.input_layout.addWidget(self.nice_name_widget) self.path_widget = inputs.GroupInput( self, label="Project path", inputWidget=QtWidgets.QLineEdit(self), ic=cfg.text_icon) self.path_input = self.path_widget.input self.path_input.setEnabled(False) self.path_set_btn = QtWidgets.QPushButton() self.path_widget.layout.addWidget(self.path_set_btn) self.path_set_btn.setIcon(QtGui.QIcon(cfg.search_icon)) self.path_set_btn.setIconSize(QtCore.QSize(20, 20)) self.path_set_btn.clicked.connect(self.set_project_path) self.input_layout.addWidget(self.path_widget) self.input_padding_widget = inputs.GroupInput( self, label="Padding", inputWidget=QtWidgets.QSpinBox(self), ic=cfg.counter_icon) self.padding_slider = self.input_padding_widget.input self.padding_slider.setMinimum(0) self.padding_slider.setMaximum(6) self.padding_slider.setValue(3) self.input_layout.addWidget(self.input_padding_widget) self.input_fps_widget = inputs.GroupInput( self, label="Default fps", inputWidget=QtWidgets.QComboBox(self), ic=cfg.time_icon) self.fps_input = self.input_fps_widget.input self.fps_input.setEditable(False) rates = ["PAL (25fps)", "Film (24fps)", "NTSC (30fps)"] self.fps_input.addItems(rates) self.input_layout.addWidget(self.input_fps_widget) i = self.fps_input.findText(rates[0], QtCore.Qt.MatchFixedString) if i >= 0: self.fps_input.setCurrentIndex(i) self.input_playblasts_switch_widget = inputs.GroupInput( self, label="Save playblast at", inputWidget=QtWidgets.QComboBox(self), ic=cfg.icons.HDD) self.playblasts_switch_input = self.input_playblasts_switch_widget.input self.playblasts_switch_input.setEditable(False) rates = [ cfg.playblast_save_options.PROJECT_ROOT, cfg.playblast_save_options.PROJECT_SISTER, cfg.playblast_save_options.COMPONENT ] # "Projects root (Recommended)", "Project sister folder", "Component root"] self.playblasts_switch_input.addItems(rates) self.input_layout.addWidget(self.input_playblasts_switch_widget) i = self.playblasts_switch_input.findText(rates[0], QtCore.Qt.MatchFixedString) if i >= 0: self.playblasts_switch_input.setCurrentIndex(i) # self.prefix_widget = inputs.GroupInput(self, label="Project prefix", inputWidget=QtWidgets.QLineEdit(self), # ic=cfg.text_icon) # self.prefix_input = self.prefix_widget.input # self.input_layout.addWidget(self.prefix_widget) # self.playblasts_switch = inputs.GroupInput(self,label="Save playblasts to root folder",inputWidget= QtWidgets.QCheckBox(),ic = cfg.camrea_icon) # self.playblasts_switch_input = self.playblasts_switch.input # self.input_layout.addWidget(self.playblasts_switch) # self.playblasts_switch_input.stateChanged.connect(self.playblasts_switch_toggle) self.var_title = gui.Title(self, label="Project variables") self.input_layout.addWidget(self.var_title) self.layout.addWidget(self.input_widget) self.input_layout.setContentsMargins(0, 0, 0, 0) self.input_widget.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) self.tab_widgets = QtWidgets.QWidget(self) self.tab_widgets_layout = QtWidgets.QVBoxLayout(self.tab_widgets) self.tab_widgets_layout.setContentsMargins(0, 0, 0, 0) self.tab_widgets.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) self.layout.addWidget(self.tab_widgets) self.variable_tabs = gui.Tabs(self) self.tab_widgets_layout.addWidget(self.variable_tabs) self.branches_widget = QtWidgets.QWidget() self.branches_layout = QtWidgets.QVBoxLayout(self.branches_widget) # self.branches_widget.setMinimumHeight(600) self.branches_widget.setMinimumWidth(450) self.variable_tabs.tab_widget.addTab(self.branches_widget, "Branches") self.branches_view = branch_view.Branch_list_view(self) self.branches_layout.addWidget(self.branches_view) # self.branches_view.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) self.users_widget = QtWidgets.QWidget() self.users_layout = QtWidgets.QVBoxLayout(self.users_widget) self.users_widget.setMinimumHeight(400) self.users_widget.setMinimumWidth(450) self.variable_tabs.tab_widget.addTab(self.users_widget, "Users") self.users_switch = inputs.GroupInput( self, label="Enable users", inputWidget=QtWidgets.QCheckBox(), ic=cfg.users_icon) self.users_swith_input = self.users_switch.input self.users_layout.addWidget(self.users_switch) self.users_swith_input.stateChanged.connect(self.users_table_toggle) self.users_tree = views.Project_Users_View(self.users_widget) self.users_layout.addWidget(self.users_tree) # self.users_tree.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) # self.list_view.setModel_(self.list_model) # self.setSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed) self.actions_widget = QtWidgets.QWidget(self) self.actions_widget_layout = QtWidgets.QVBoxLayout(self.actions_widget) self.actions_widget_layout.setContentsMargins(0, 0, 0, 0) self.actions_widget.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) self.layout.addWidget(self.actions_widget) buttons = QtWidgets.QDialogButtonBox( QtWidgets.QDialogButtonBox.Ok | QtWidgets.QDialogButtonBox.Cancel, QtCore.Qt.Horizontal, self) buttons.accepted.connect(self.accept) buttons.rejected.connect(self.reject) self.actions_widget_layout.addWidget(buttons) self.populate_brnaches() self.populated_users() # self.name_input.setText(cfg.preset["project_name"]) self.padding_slider.setValue(3) # self.prefix_input.setText(cfg.preset["prefix"]) self.name_input.textChanged.connect(self.name_changed) self.path_input.textChanged.connect(self.path_changed) self.users_swith_input.setCheckState(QtCore.Qt.Checked) self.users_table_toggle(QtCore.Qt.Checked) # self.playblasts_switch_input.setCheckState(QtCore.Qt.Checked) # self.playblasts_switch_toggle(QtCore.Qt.Checked) self.users_mode = True self.playblast_on_root = True
def __init__(self, parent, **kwargs): super(Preset_dialog, self).__init__(parent) self.setWindowFlags(QtCore.Qt.Tool) self.setAttribute(QtCore.Qt.WA_DeleteOnClose) self.pipeline_window = None if 'pipeline_window' in kwargs: self.pipeline_window = kwargs['pipeline_window'] self.setMinimumHeight(650) self.setMinimumWidth(800) self.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Fixed) self.center_to_maya_window() self.main_widget = QtWidgets.QWidget(self) self.setCentralWidget(self.main_widget) # self.setStyleSheet(cfg.stylesheet) css = loadCSS.loadCSS( os.path.join(os.path.dirname(pipeline.CSS.__file__), 'mainWindow.css')) self.setStyleSheet(css) self.layout = QtWidgets.QVBoxLayout(self.main_widget) self.layout.setContentsMargins(5, 5, 5, 5) # self.setLayout(self.layout) self.setWindowTitle("Preset editor") self.header = gui.Title(self, label="Tree construction preset") self.header.setMaximumHeight(40) self.layout.addWidget(self.header) self.editor_tables_widget = QtWidgets.QWidget(self) self.editor_tables_widget_layout = QtWidgets.QVBoxLayout( self.editor_tables_widget) self.editor_tables_widget_layout.setContentsMargins(5, 5, 5, 5) self.editor_tables_widget_layout.setSpacing(10) self.layout.addWidget(self.editor_tables_widget) self.hierarchy_table_view = views.Hierarcy_catagories_view( parent=self, parentWidget=self.editor_tables_widget) self.hierarchy_table_view.setSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) branches = [ os.path.split(p)[1] for p in self.pipeline_window.project.branches ] if self.pipeline_window else list() self.components_table_view = views.Hierarcy_components_view( parent=self, parentWidget=self.editor_tables_widget, branches=branches) self.components_table_view.setSizePolicy( QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) self.hierarchy_label = gui.Title(self, label="Tree hierarchy", seperator=False) # self.hierarchy_label.setMaximumHeight(30) self.components_label = gui.Title(self, label="Child omponents", seperator=False) # self.components_label.setMaximumHeight(30) self.hierarchy_help_label = QtWidgets.QLabel() self.hierarchy_help_label.setText( "Use right click for options.\n" "Each category will be generated under it's parent category.\n\n" "{} = during creation the user will be prompt to enter a value.". format(cfg.Hierarcy_options.ASK_USER)) italic = QtGui.QFont() italic.setItalic(True) self.hierarchy_help_label.setFont(italic) self.components_help_label = QtWidgets.QLabel() self.components_help_label.setText( "Components and categories will be generated for the defined branch,\n" "under the lower category.\n\n" "Branches will be created if they are not exists in the project.") italic = QtGui.QFont() italic.setItalic(True) self.components_help_label.setFont(italic) self.editor_tables_widget_layout.addWidget(self.hierarchy_label) self.editor_tables_widget_layout.addWidget(self.hierarchy_help_label) self.editor_tables_widget_layout.addWidget(self.hierarchy_table_view) self.editor_tables_widget_layout.addWidget(self.components_label) self.editor_tables_widget_layout.addWidget(self.components_help_label) self.editor_tables_widget_layout.addWidget(self.components_table_view) self.actions_widget = QtWidgets.QWidget(self) self.actions_widget_layout = QtWidgets.QHBoxLayout(self.actions_widget) self.actions_widget_layout.setContentsMargins(5, 5, 5, 5) self.layout.addWidget(self.actions_widget) self.save_preset_btn = QtWidgets.QPushButton("Save preset") self.save_preset_btn.setIcon(QtGui.QIcon(cfg.save_icon)) self.save_preset_btn.setIconSize(QtCore.QSize(20, 20)) self.load_preset_btn = QtWidgets.QPushButton("Load preset") self.load_preset_btn.setIcon(QtGui.QIcon(cfg.folder_open_icon)) self.load_preset_btn.setIconSize(QtCore.QSize(20, 20)) self.load_preset_btn.setStyleSheet(''' QPushButton::menu-indicator{ image: url(none.jpg); } ''') self.set_preset_menu() # self.menu = QtWidgets.QMenu(self.load_preset_btn) # self.menu.addAction(QtWidgets.QAction("Load from file...", self.menu, triggered=self.load_preset)) # self.menu.addSeparator() # # for p in self.list_saved_presets(): # self.menu.addAction(QtWidgets.QAction(p[1], self.menu, triggered=functools.partial(self.set_preset, p[0]))) # # self.menu.addSeparator() # self.menu.addAction(QtWidgets.QAction("Clear", self.menu, triggered=self.clear_preset)) # self.load_preset_btn.setMenu(self.menu) # self.actions_widget_layout.addWidget(self.save_preset_btn) self.actions_widget_layout.addWidget(self.load_preset_btn) self.save_preset_btn.clicked.connect(self.save_preset)
def __init__(self, parent=None, string="", name_label_sting="Name", title="Create new tree", stages=[], project=None, section=None): super(newTreeDialog, self).__init__(parent, string, name_label_sting, title) self.project = project self.levels_names = self.project.levels[section] self.levels = [] self.name_widget.label.setText("{} name".format(self.levels_names[0])) self.name_input.setText(self.levels_names[0]) self.levels.append([ self.levels_names[0], self.name_input, self.range_start_slider, self.range_end_slider, self.padding_slider ]) names = [] for i in range(1, len(self.levels_names) - 1): names.append(self.levels_names[i]) for level in names: name_widget = inputs.GroupInput( self, label=level, inputWidget=QtWidgets.QLineEdit(self), ic=cfg.text_icon) name_widget.label.setText("{} name".format(level)) create_title = gui.Title(self, label=level) name_input = name_widget.input name_input.setText(level) self.input_layout.addWidget(create_title) self.input_layout.addWidget(name_widget) input_quantity_widget = inputs.GroupInput( self, label="Quantity", inputWidget=QtWidgets.QSpinBox(self), ic=cfg.buffer_icon) quantity_slider = input_quantity_widget.input quantity_slider.setMinimum(1) quantity_slider.setMaximum(1000) quantity_slider.setValue(1) self.input_layout.addWidget(input_quantity_widget) # input_from_widget = inputs.groupInput(self, label="From", inputWidget=QtWidgets.QSpinBox(self), # ic=cfg.tab_icon) # # from_slider = input_from_widget.input # from_slider.setMinimum(1) # from_slider.setMaximum(1000) # from_slider.setValue(1) # self.input_layout.addWidget(input_from_widget) input_padding_widget = inputs.GroupInput( self, label="Padding", inputWidget=QtWidgets.QSpinBox(self), ic=cfg.counter_icon) padding_slider = input_padding_widget.input padding_slider.setMinimum(0) padding_slider.setMaximum(6) padding_slider.setValue(3) self.input_layout.addWidget(input_padding_widget) self.levels.append( [level, name_input, quantity_slider, padding_slider]) self.create_stages_title = gui.Title(self, label="Add stages:") self.input_layout.addWidget(self.create_stages_title) self.project = project stages = self.project.stages[section] self.stages_options = {} for stage in stages: widget = QtWidgets.QWidget(self) layout = QtWidgets.QVBoxLayout(widget) layout.setContentsMargins(5, 2, 5, 2) layout.setAlignment(QtCore.Qt.AlignLeft) checkbox = QtWidgets.QCheckBox(stage) self.stages_options[stage] = checkbox layout.addWidget(checkbox) self.input_layout.addWidget(widget) ancestors = list(self.project.levels[section]) ancestors = ancestors[:-1] self.name_format_widget = NameFormatWidget(self, multi_inputs=self.levels, ancestors=ancestors, project=self.project) self.input_layout.addWidget(self.name_format_widget) for l in self.levels: l[1].textChanged.connect(self.name_format_widget.preview_format) l[3].valueChanged.connect(self.name_format_widget.preview_format)
def __init__(self, parent=None): super(ProjectsDialog, self).__init__(parent) css = loadCSS.loadCSS( os.path.join(os.path.dirname(pipeline.CSS.__file__), 'mainWindow.css')) self.setStyleSheet(css) self.setWindowFlags(QtCore.Qt.Tool) self.setAttribute(QtCore.Qt.WA_DeleteOnClose) self.pipeline_window = self.parent() self.setMinimumHeight(600) self.setMinimumWidth(600) self.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) self.center_to_maya_window() self.main_widget = QtWidgets.QWidget(self) self.setCentralWidget(self.main_widget) # self.setStyleSheet(cfg.stylesheet) self.layout = QtWidgets.QVBoxLayout(self.main_widget) self.layout.setContentsMargins(5, 5, 5, 5) # self.setLayout(self.layout) self.setWindowTitle("Projects") self.header = gui.Title(self, label="Current Projects") self.header.setMaximumHeight(40) self.layout.addWidget(self.header) self.project_table_widget = QtWidgets.QWidget(self) self.projects_table_widget_layout = QtWidgets.QVBoxLayout( self.project_table_widget) self.projects_table_widget_layout.setContentsMargins(5, 5, 5, 5) self.layout.addWidget(self.project_table_widget) self.projects_table_view = views.Projects_View( parent=self, parentWidget=self.project_table_widget) self.project_table_widget.layout().addWidget(self.projects_table_view) self.projects_table_view.setSizePolicy(QtWidgets.QSizePolicy.Expanding, QtWidgets.QSizePolicy.Expanding) self.projects_table_view.setModel_(self.pipeline_window.projects) self.actions_widget = QtWidgets.QWidget(self) self.actions_widget_layout = QtWidgets.QHBoxLayout(self.actions_widget) self.actions_widget_layout.setContentsMargins(5, 5, 5, 5) self.layout.addWidget(self.actions_widget) self.create_project_btn = QtWidgets.QPushButton( "Create Project") #inputs.NiceQLabelButton("Create new Project")# self.create_project_btn.setIcon(QtGui.QIcon(cfg.new_icon)) self.create_project_btn.setIconSize(QtCore.QSize(20, 20)) self.load_project_btn = QtWidgets.QPushButton("Load Project") self.load_project_btn.setIcon(QtGui.QIcon(cfg.load_icon)) self.load_project_btn.setIconSize(QtCore.QSize(20, 20)) self.unload_project_btn = QtWidgets.QPushButton("Unload Project") self.unload_project_btn.setIcon(QtGui.QIcon(cfg.unload_icon)) self.unload_project_btn.setIconSize(QtCore.QSize(20, 20)) self.actions_widget_layout.addWidget(self.create_project_btn) self.actions_widget_layout.addWidget(self.load_project_btn) self.actions_widget_layout.addWidget(self.unload_project_btn) self.create_project_btn.clicked.connect(self.create_project) self.load_project_btn.clicked.connect(self.load_project) self.unload_project_btn.clicked.connect(self.unload_project)