Example #1
0
    def query_projects(self, run_thread=False, finish_thread=False):

        if finish_thread:
            self.projects_items = tc.treat_result(self.projects_items_thread)

            if self.projects_items.isFailed():
                if self.projects_items.result == QtGui.QMessageBox.ApplyRole:
                    self.projects_items.run()
                    self.query_projects(run_thread=True)
                elif self.projects_items.result == QtGui.QMessageBox.ActionRole:
                    env_mode.set_offline()
                    self.restart_ui_main()
                    self.open_config_dialog()
                else:
                    env_mode.set_offline()
                    self.restart_ui_main()
            else:
                self.save_object('projects_items', self.projects_items.result)
                env_inst.projects = self.projects_items.result
                self.restore_opened_projects()
                self.fill_projects_to_menu()

        if run_thread:
            projects_cache = self.load_object('projects_items')
            if projects_cache:
                self.projects_items = projects_cache
                if not self.projects_items_thread.isRunning():
                    self.projects_items_thread.kwargs = dict(result=self.projects_items)
                    self.projects_items_thread.routine = self.empty_return
                    self.projects_items_thread.start()
            else:
                if not self.projects_items_thread.isRunning():
                    self.projects_items_thread.kwargs = dict()
                    self.projects_items_thread.routine = tc.get_all_projects
                    self.projects_items_thread.start()
    def update_desctiption(self, run_thread=False, update_description=False):
        current_widget = self.search_results_widget.get_current_widget()
        current_tree_widget_item = current_widget.get_current_tree_widget_item()

        if run_thread:
            if current_tree_widget_item and current_tree_widget_item.type in ['snapshot', 'sobject']:
                self.update_desctiption_thread.kwargs = dict(
                    search_key=current_tree_widget_item.get_skey(only=True),
                    description=gf.simplify_html(self.descriptionTextEdit.toHtml())
                )
                self.update_desctiption_thread.routine = tc.update_description
                self.update_desctiption_thread.start()

        if update_description:
            update = tc.treat_result(self.update_desctiption_thread)
            if update.isFailed():
                if update.result == QtGui.QMessageBox.ApplyRole:
                    update.run()
                    self.update_desctiption(update_description=True)
                elif update.result == QtGui.QMessageBox.ActionRole:
                    env_inst.offline = True
                    env_inst.ui_main.open_config_dialog()

            if not update.isFailed():
                current_tree_widget_item.update_description(self.descriptionTextEdit.toPlainText())
    def query_projects(self, run_thread=False, finish_thread=False):

        if finish_thread:
            self.projects_items = tc.treat_result(self.projects_items_thread)

            if self.projects_items.isFailed():
                if self.projects_items.result == QtGui.QMessageBox.ApplyRole:
                    self.projects_items.run()
                    self.query_projects(run_thread=True)
                elif self.projects_items.result == QtGui.QMessageBox.ActionRole:
                    env_mode.set_offline()
                    self.restart_ui_main()
                    self.open_config_dialog()
                else:
                    env_mode.set_offline()
                    self.restart_ui_main()
            else:
                self.save_object('projects_items', self.projects_items.result)
                env_inst.projects = self.projects_items.result
                self.restore_opened_projects()
                self.fill_projects_to_menu()
                # self.readSettings(True)
        if run_thread:
            projects_cache = self.load_object('projects_items')
            if projects_cache:
                self.projects_items = projects_cache
                if not self.projects_items_thread.isRunning():
                    self.projects_items_thread.kwargs = dict(result=self.projects_items)
                    self.projects_items_thread.routine = self.empty_return
                    self.projects_items_thread.start()
            else:
                if not self.projects_items_thread.isRunning():
                    self.projects_items_thread.kwargs = dict()
                    self.projects_items_thread.routine = tc.get_all_projects
                    self.projects_items_thread.start()
    def get_stypes(self, run_thread=False, finish_thread=False):

        if finish_thread:
            self.stypes_items = tc.treat_result(self.stypes_items_thread)

            if self.stypes_items.isFailed():
                if self.stypes_items.result == QtGui.QMessageBox.ApplyRole:
                    self.stypes_items.run()
                    self.get_stypes(run_thread=True)
                elif self.stypes_items.result == QtGui.QMessageBox.ActionRole:
                    env_inst.offline = True
                    self.parent().self.open_config_dialog()
            else:
                self.create_ui_checkout()
                self.create_ui_checkin()
                self.toggle_loading_label()

        if run_thread:
            stypes_cache = None
            # stypes_cache = self.load_object('stypes_items')
            if stypes_cache:
                self.stypes_items = stypes_cache
                if not self.stypes_items_thread.isRunning():
                    self.stypes_items_thread.kwargs = dict(result=self.stypes_items)
                    self.stypes_items_thread.routine = self.empty_return
                    self.stypes_items_thread.start()
            else:
                if not self.stypes_items_thread.isRunning():
                    self.stypes_items_thread.kwargs = dict()
                    self.stypes_items_thread.routine = self.project.get_stypes
                    self.stypes_items_thread.start()
def create_ui(thread):
    thread = tc.treat_result(thread)
    if thread.result == QtGui.QMessageBox.ApplyRole:
        retry_startup(thread)
    else:
        if thread.isFailed():
            env_mode.set_offline()
            window = ui_main_classes.Ui_Main(parent=None)
        else:
            env_mode.set_online()
            window = ui_main_classes.Ui_Main(parent=None)
        window.statusBar()
        window.show()

        if thread.result == QtGui.QMessageBox.ActionRole:
            window.open_config_dialog()
Example #6
0
def create_ui(thread, hotkeys=None):
    thread = tc.treat_result(thread)

    if thread.result == QtGui.QMessageBox.ApplyRole:
        retry_startup(thread)
    else:
        if thread.isFailed():
            env_mode.set_offline()
            main_tab = Ui_DockMain()
        else:
            env_mode.set_online()
            main_tab = Ui_DockMain(hotkeys=hotkeys)
        main_tab.show()
        main_tab.raise_()

        if thread.result == QtGui.QMessageBox.ActionRole:
            env_inst.ui_main.open_config_dialog()
Example #7
0
def create_ui(thread):
    thread = tc.treat_result(thread)
    if thread.result == QtGui.QMessageBox.ApplyRole:
        retry_startup(thread)
    else:
        if thread.isFailed():
            env_mode.set_offline()
            window = ui_main_classes.Ui_Main(parent=None)
        else:
            env_mode.set_online()
            window = ui_main_classes.Ui_Main(parent=None)

        window.statusBar()
        window.show()

        if thread.result == QtGui.QMessageBox.ActionRole:
            window.open_config_dialog()
Example #8
0
def create_ui(thread, hotkeys=None):
    thread = tc.treat_result(thread)
    if thread.result == QtGui.QMessageBox.ApplyRole:
        retry_startup(thread)
    else:
        if thread.isFailed():
            env_mode.set_offline()
            main_tab = Ui_DockMain()
        else:
            env_mode.set_online()
            main_tab = Ui_DockMain(hotkeys=hotkeys)

        env_inst.ui_maya_dock = main_tab
        if hotkeys:
            main_tab.handle_hotkeys()
        main_tab.show()
        main_tab.raise_()

        if thread.result == QtGui.QMessageBox.ActionRole:
            env_inst.ui_main.open_config_dialog()
Example #9
0
def download_from_url(url):
    proxy = env_server.get_proxy()
    if proxy['enabled']:
        server = proxy['server'].replace('http://', '')
        proxy_dict = {
            'http': 'http://{login}:{pass}@{0}'.format(server, **proxy)
        }
        proxy_handler = urllib2.ProxyHandler(proxy_dict)
        auth = urllib2.HTTPBasicAuthHandler()
        opener = urllib2.build_opener(proxy_handler, auth, urllib2.HTTPHandler)
        urllib2.install_opener(opener)

    run_thread = tc.ServerThread(env_inst.ui_main)
    run_thread.kwargs = dict(url=url, timeout=1)
    run_thread.routine = urllib2.urlopen
    run_thread.run()
    result_thread = tc.treat_result(run_thread, silent=True)
    if result_thread.isFailed():
        return False
    else:
        return result_thread.result
    def assets_names(self):
        names = tc.treat_result(self.names_query_thread)
        if names.isFailed():
            if names.result == QtGui.QMessageBox.ApplyRole:
                names.run()
                self.assets_names()
            elif names.result == QtGui.QMessageBox.ActionRole:
                env_inst.offline = True
                env_inst.ui_main.open_config_dialog()

        if not names.isFailed():
            # pretty name for new single tab
            if len(names.result) == 1:
                tab_name = names.result[0].get('name')
                if tab_name:
                    self.set_current_tab_text(tab_name)

            if not self.sobjects_query_thread.isRunning():
                self.sobjects_query_thread.kwargs = dict(process_list=self.get_process_list(), sobjects_list=names.result, project_code=self.parent_ui.current_project)
                self.sobjects_query_thread.routine = tc.get_sobjects
                self.sobjects_query_thread.start()
def download_from_url(url):
    proxy = env_server.get_proxy()
    if proxy['enabled']:
        server = proxy['server'].replace('http://', '')
        proxy_dict = {
            'http': 'http://{login}:{pass}@{0}'.format(server, **proxy)
        }
        proxy_handler = urllib2.ProxyHandler(proxy_dict)
        auth = urllib2.HTTPBasicAuthHandler()
        opener = urllib2.build_opener(proxy_handler, auth, urllib2.HTTPHandler)
        urllib2.install_opener(opener)

    run_thread = tc.ServerThread(env_inst.ui_main)
    run_thread.kwargs = dict(url=url, timeout=1)
    run_thread.routine = urllib2.urlopen
    run_thread.run()
    result_thread = tc.treat_result(run_thread, silent=True)
    if result_thread.isFailed():
        return False
    else:
        return result_thread.result
Example #12
0
    def get_stypes(self, run_thread=False, finish_thread=False):

        if finish_thread:
            self.stypes_items = tc.treat_result(self.stypes_items_thread)

            if self.stypes_items.isFailed():
                if self.stypes_items.result == QtGui.QMessageBox.ApplyRole:
                    self.stypes_items.run()
                    self.get_stypes(run_thread=True)
                elif self.stypes_items.result == QtGui.QMessageBox.ActionRole:
                    env_inst.offline = True
                    self.parent().self.open_config_dialog()
            else:
                # self.create_ui_checkout()
                # self.create_ui_checkin()
                self.create_checkin_checkout_ui()
                # self.create_ui_my_tactic()
                # self.create_ui_float_notify()
                # self.create_ui_assets_browser()
                self.toggle_loading_label()
                if env_mode.get_mode() == 'maya':
                    print 'NOW HANDLING HOTKEYS'
                    env_inst.ui_maya_dock.handle_hotkeys()

        if run_thread:
            stypes_cache = None
            # stypes_cache = self.load_object('stypes_items')
            if stypes_cache:
                self.stypes_items = stypes_cache
                if not self.stypes_items_thread.isRunning():
                    self.stypes_items_thread.kwargs = dict(result=self.stypes_items)
                    self.stypes_items_thread.routine = self.empty_return
                    self.stypes_items_thread.start()
            else:
                if not self.stypes_items_thread.isRunning():
                    self.stypes_items_thread.kwargs = dict()
                    self.stypes_items_thread.routine = self.project.get_stypes
                    self.stypes_items_thread.start()