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()
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()
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()
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 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()