def mouseDoubleClickEvent(self, event):
        if self.relates_to == 'checkin':
            do_dbl_click = gf.get_value_from_config(cfg_controls.get_checkin(), 'doubleClickSaveCheckBox')
        else:
            do_dbl_click = gf.get_value_from_config(cfg_controls.get_checkout(), 'doubleClickOpenCheckBox')

        if not do_dbl_click:
            super(Ui_snapshotItemWidget, self).mouseDoubleClickEvent(event)
        else:
            if self.relates_to == 'checkin':
                self.parent_ui.save_file()
            else:
                self.parent_ui.open_file()
    def create_separate_versions_tree(self):
        if self.parent_ui.relates_to == 'checkout' and self.checkout_config:
            self.sep_versions = bool(int(
                gf.get_value_from_config(self.checkout_config, 'versionsSeparateCheckoutCheckBox', 'QCheckBox')
            ))
        elif self.parent_ui.relates_to == 'checkin' and self.checkin_config:
            self.sep_versions = bool(int(
                gf.get_value_from_config(self.checkin_config, 'versionsSeparateCheckinCheckBox', 'QCheckBox')
            ))
        else:
            self.sep_versions = False

        if not self.sep_versions:
            self.verticalLayoutWidget_3.close()
示例#3
0
 def customize_controls_tabs(self):
     if self.checkin_out_config_projects:
         project_tabs_list = self.checkin_out_config_projects.get(self.current_project)
         if gf.get_value_from_config(self.checkin_out_config, 'applyToAllProjectsRadioButton'):
             tabs_list = self.checkin_out_config_projects.get('!tabs_list!')
         elif project_tabs_list:
             tabs_list = project_tabs_list['tabs_list']
         else:
             tabs_list = None
         if tabs_list:
             for i, tab in enumerate(tabs_list):
                 if tab[0] == 'Checkin / Checkout':
                     if not tab[2]:
                         self.main_tabWidget.removeTab(self.get_tab_index(self.checkInOutTab))
                     else:
                         self.main_tabWidget.insertTab(i, self.checkInOutTab, tab[1])
                 # if tab[0] == 'Checkin':
                 #     if not tab[2]:
                 #         self.main_tabWidget.removeTab(self.get_tab_index(self.checkInTab))
                 #     else:
                 #         self.main_tabWidget.insertTab(i, self.checkInTab, tab[1])
                 if tab[0] == 'My Tactic':
                     if not tab[2]:
                         self.main_tabWidget.removeTab(self.get_tab_index(self.myTacticTab))
                     else:
                         self.main_tabWidget.insertTab(i, self.myTacticTab, tab[1])
                 if tab[0] == 'Assets Browser':
                     if not tab[2]:
                         self.main_tabWidget.removeTab(self.get_tab_index(self.assetsBrowserTab))
                     else:
                         self.main_tabWidget.insertTab(i, self.assetsBrowserTab, tab[1])
示例#4
0
    def __init__(self, project_code, parent=None):
        super(self.__class__, self).__init__(parent=parent)

        env_inst.ui_main_tabs[project_code] = self

        self.settings = QtCore.QSettings('{0}/settings/{1}/{2}/{3}/main_ui_config.ini'.format(
            env_mode.get_current_path(),
            env_mode.get_node(),
            env_server.get_cur_srv_preset(),
            env_mode.get_mode()),
            QtCore.QSettings.IniFormat)

        self.setupUi(self)
        self.checkin_out_config_projects = cfg_controls.get_checkin_out_projects()
        self.checkin_out_config = cfg_controls.get_checkin_out()
        self.isCreated = False

        self.project = env_inst.projects.get(project_code)
        self.current_project = self.project.info['code']
        self.current_namespace = self.project.info['type']

        if self.checkin_out_config_projects and self.checkin_out_config:
            if gf.get_value_from_config(self.checkin_out_config, 'controlsTabsFilterGroupBox'):
                self.customize_controls_tabs()

        self.create_ui_main_tabs()
 def customize_controls_tabs(self):
     if self.checkin_out_config_projects:
         project_tabs_list = self.checkin_out_config_projects.get(self.current_project)
         if gf.get_value_from_config(self.checkin_out_config, 'applyToAllProjectsRadioButton', 'QRadioButton'):
             tabs_list = self.checkin_out_config_projects.get('!tabs_list!')
         elif project_tabs_list:
             tabs_list = project_tabs_list['tabs_list']
         else:
             tabs_list = None
         if tabs_list:
             for i, tab in enumerate(tabs_list):
                 if tab[0] == 'Checkout':
                     if not tab[2]:
                         self.main_tabWidget.removeTab(self.main_tabWidget.indexOf(self.checkOutTab))
                     else:
                         self.main_tabWidget.insertTab(i, self.checkOutTab, tab[1])
                 if tab[0] == 'Checkin':
                     if not tab[2]:
                         self.main_tabWidget.removeTab(self.main_tabWidget.indexOf(self.checkInTab))
                     else:
                         self.main_tabWidget.insertTab(i, self.checkInTab, tab[1])
                 if tab[0] == 'My Tactic':
                     if not tab[2]:
                         self.main_tabWidget.removeTab(self.main_tabWidget.indexOf(self.myTacticTab))
                     else:
                         self.main_tabWidget.insertTab(i, self.myTacticTab, tab[1])
                 if tab[0] == 'Assets Browser':
                     if not tab[2]:
                         self.main_tabWidget.removeTab(self.main_tabWidget.indexOf(self.assetsBrowserTab))
                     else:
                         self.main_tabWidget.insertTab(i, self.assetsBrowserTab, tab[1])
    def __init__(self, project_code, parent=None):
        super(self.__class__, self).__init__(parent=parent)

        env_inst.ui_main_tabs[project_code] = self

        self.settings = QtCore.QSettings('{0}/settings/{1}/{2}/{3}/main_ui_config.ini'.format(
            env_mode.get_current_path(),
            env_mode.get_node(),
            env_server.get_cur_srv_preset(),
            env_mode.get_mode()),
            QtCore.QSettings.IniFormat)

        self.setupUi(self)
        self.checkin_out_config_projects = cfg_controls.get_checkin_out_projects()
        self.checkin_out_config = cfg_controls.get_checkin_out()
        self.isCreated = False

        self.project = env_inst.projects.get(project_code)
        self.current_project = self.project.info['code']
        self.current_namespace = self.project.info['type']

        if self.checkin_out_config_projects and self.checkin_out_config:
            if gf.get_value_from_config(self.checkin_out_config, 'controlsTabsFilterGroupBox', 'QGroupBox'):
                self.customize_controls_tabs()

        self.create_ui_main_tabs()
    def get_ignore_stypes_list(self):
        ignore_tabs_list = []
        if self.checkin_out_config and self.checkin_out_config_projects and self.checkin_out_config_projects.get(self.current_project):
            if not gf.get_value_from_config(self.checkin_out_config, 'processTabsFilterGroupBox', 'QGroupBox'):
                ignore_tabs_list = []
            else:
                ignore_tabs_list = self.checkin_out_config_projects[self.current_project]['stypes_list']

        return ignore_tabs_list
    def mouseDoubleClickEvent(self, event):
        do_dbl_click = None
        if self.relates_to == 'checkin':
            do_dbl_click = gf.get_value_from_config(cfg_controls.get_checkin(), 'doubleClickSaveCheckBox')

        if not do_dbl_click:
            super(Ui_processItemWidget, self).mouseDoubleClickEvent(event)
        else:
            if self.relates_to == 'checkin':
                self.parent_ui.save_file()
 def double_click_snapshot(self):
     if self.checkut_config:
         double_click = bool(int(
             gf.get_value_from_config(self.checkut_config, 'doubleClickOpenCheckBox', 'QCheckBox')
         ))
     else:
         double_click = False
     if double_click:
         current_widget = self.search_results_widget.get_current_widget()
         current_tree_widget_item = current_widget.get_current_tree_widget_item()
         if current_tree_widget_item.type == 'snapshot' and current_tree_widget_item.files:
             self.open_file()
    def add_items_to_tabs(self):
        """
        Adding process tabs marked for Maya
        """

        # self.sObjTabWidget.setTabBar(ColoredTabBar(self))

        self.all_tabs_label = []

        ignore_tabs_list = []
        if self.checkin_out_config and self.checkin_out_config_projects and self.checkin_out_config_projects.get(self.current_project):
            if not gf.get_value_from_config(self.checkin_out_config, 'processTabsFilterGroupBox', 'QGroupBox'):
                ignore_tabs_list = []
            else:
                ignore_tabs_list = self.checkin_out_config_projects[self.current_project]['stypes_list']

        for i, stype in enumerate(self.stypes_items.itervalues()):
            self.ui_tree.append(checkout_tree_widget.Ui_checkOutTreeWidget(stype, i, self.project, self))
            if stype.info['title']:
                tab_name = stype.info['title'].capitalize()
            else:
                if stype.info['code']:
                    tab_name = stype.info['code']
                else:
                    tab_name = 'Unnamed'
            self.sObjTabWidget.addTab(self.ui_tree[i], '')

            tab_label = gf.create_tab_label(tab_name, stype)
            self.all_tabs_label.append(tab_label)

            # effect = QtGui.QGraphicsColorizeEffect(self.sObjTabWidget.tabBar())
            # self.animation = QtCore.QPropertyAnimation(effect, "color", self)
            # self.animation.setDuration(500)
            # self.animation.setStartValue(QtGui.QColor(0, 0, 0, 0))
            # self.animation.setEndValue(QtGui.QColor(49, 140, 72, 128))
            # self.animation.start()
            # print effect.boundingRectFor(self.sObjTabWidget.tabBar().tabRect(0))

            # effect.updateBoundingRect()
            # print effect.sourceBoundingRect()
            # print effect.set
            # effect.update()
            # self.sObjTabWidget.tabBar().setGraphicsEffect(effect)
            # print self.sObjTabWidget.tabBar().drawBase()
            # QtGui.QTabBar.drawBase()

            self.sObjTabWidget.tabBar().setTabButton(i, QtGui.QTabBar.LeftSide, tab_label)

        # Remove hidden tabs
        if ignore_tabs_list:
            for tab in self.ui_tree:
                if tab.tab_name in ignore_tabs_list:
                    self.sObjTabWidget.removeTab(self.sObjTabWidget.indexOf(tab))
    def create_control_buttons(self):
        self.addNewButton = QtGui.QPushButton('Create')
        self.addNewButton.setMaximumWidth(80)
        self.saveButton = QtGui.QPushButton('Save')
        self.saveButton.setMaximumWidth(80)
        self.cancelButton = QtGui.QPushButton('Cancel')
        self.cancelButton.setMaximumWidth(80)
        self.buildDirectoryButton = QtGui.QPushButton(
            'Build Full Directory Structure')
        self.buildDirectoryButton.setIcon(gf.get_icon('database'))
        self.build_directory_checkbox = QtGui.QCheckBox(
            'Build Full Directory Structure')
        self.build_directory_checkbox.setChecked(False)
        self.build_directory_checkbox.setIcon(gf.get_icon('database'))

        self.repositoryComboBox = QtGui.QComboBox()
        base_dirs = env_tactic.get_all_base_dirs()
        # Default repo states
        from lib.configuration import cfg_controls
        current_repo = gf.get_value_from_config(cfg_controls.get_checkin(),
                                                'repositoryComboBox')
        for key, val in base_dirs:
            if val['value'][4]:
                self.repositoryComboBox.addItem(val['value'][1])
                self.repositoryComboBox.setItemData(
                    self.repositoryComboBox.count() - 1, val)
        if current_repo:
            self.repositoryComboBox.setCurrentIndex(current_repo)

        if self.tactic_widget.view == 'insert':
            self.main_layout.addWidget(self.build_directory_checkbox, 1, 0, 1,
                                       1)
            self.main_layout.addWidget(self.repositoryComboBox, 1, 1, 1, 1)
            spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                           QtGui.QSizePolicy.Minimum)
            self.main_layout.addItem(spacerItem, 1, 2, 1, 1)
            self.main_layout.addWidget(self.addNewButton, 1, 3, 1, 1)
            self.main_layout.addWidget(self.cancelButton, 1, 4, 1, 1)
            self.main_layout.setColumnStretch(1, 0)
        else:
            self.main_layout.addWidget(self.buildDirectoryButton, 1, 0, 1, 1)
            self.main_layout.addWidget(self.repositoryComboBox, 1, 1, 1, 1)
            spacerItem = QtGui.QSpacerItem(40, 20, QtGui.QSizePolicy.Expanding,
                                           QtGui.QSizePolicy.Minimum)
            self.main_layout.addItem(spacerItem, 1, 2, 1, 1)
            self.main_layout.addWidget(self.saveButton, 1, 3, 1, 1)
            self.main_layout.addWidget(self.cancelButton, 1, 4, 1, 1)
            self.main_layout.setColumnStretch(1, 0)

        if self.item:
            if self.item.type != 'sobject':
                self.buildDirectoryButton.setHidden(True)
                self.repositoryComboBox.setHidden(True)
    def get_ignore_stypes_list(self):
        ignore_tabs_list = []
        if self.checkin_out_config and self.checkin_out_config_projects and self.checkin_out_config_projects.get(
                self.current_project):
            if not gf.get_value_from_config(self.checkin_out_config,
                                            'processTabsFilterGroupBox'):
                ignore_tabs_list = []
            else:
                ignore_tabs_list = self.checkin_out_config_projects[
                    self.current_project]['stypes_list']
                if not ignore_tabs_list:
                    ignore_tabs_list = []

        return ignore_tabs_list
示例#13
0
    def get_repo_color(self):
        config = cfg_controls.get_checkin()
        if config:
            if self.snapshot['repo'] == 'base':
                repo = gf.get_value_from_config(config, 'assetBaseDirColorToolButton', 'QToolButton')
            if self.snapshot['repo'] == 'local':
                repo = gf.get_value_from_config(config, 'localRepoDirColorToolButton', 'QToolButton')
            # if self.snapshot['repo'] == 'win32_sandbox_dir':
            #     repo = gf.get_value_from_config(config, 'sandboxDirColorToolButton', 'QToolButton')
            # if self.snapshot['repo'] == 'win32_client_repo_dir':
            #     repo = gf.get_value_from_config(config, 'clientRepoDirColorToolButton', 'QToolButton')
            # if self.snapshot['repo'] == 'custom_asset_dir':
            #     repo = gf.get_value_from_config(config, 'customRepoDirColorToolButton', 'QToolButton')

            color = repo[repo.find('rgb'):repo.find('rgb') + 16]
            repo_colors = color.replace('rgb(', '').replace(')', '').split(',')
        else:
            repo_colors = [96, 96, 96]

        stylesheet = 'QLabel{background: qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 rgba(255, 255, 255, 0), stop:1 rgba(%s, %s, %s, 96));' \
                     'border - bottom: 2px solid qlineargradient(spread:pad, x1:0, y1:0, x2:1, y2:0, stop:0 rgba(255, 255, 255, 0), stop:1 rgba(128, 128, 128, 175));' \
                     'padding: 0px;}' % tuple(repo_colors)

        return stylesheet