def Settings(self, evt): if self.parent_frame.cameraPanel.IsShown(): self.parent_frame.cameraPanel.state = self.parent_frame.cameraPanel.STATE_CLOSING self.parent_frame.cameraPanel.objWebCamFeed.release() SettingsData.noOfCam = self.parent_frame.getConnectedCams() dlg = SettingsDialog(self) dlg.ShowModal() if self.parent_frame.cameraPanel.IsShown(): self.parent_frame.cameraPanel.state = self.parent_frame.cameraPanel.STATE_RUNNING self.parent_frame.cameraPanel.StartLiveWebcamFeed() if self.IsShown(): self.UpdateHTMLPage(self.activeButton)
def slotSetting(self): self.settingsDialog = SettingsDialog(self) self.settingsDialog.show()
class MainWindow(QMainWindow, Ui_MainWindow, PersistentGeometry): settingsDialog = None aboutDialog = None def __init__(self, parent): super().__init__(parent) # UI self.setupUi(self) self.connectUI() self.preserveGeometry("main") def connectUI(self): # connect UI related signal/slot self.action_exit.triggered.connect(self.slotExit) self.action_setting.triggered.connect(self.slotSetting) self.action_showAbout.triggered.connect(self.slotShowAbout) # shorthand @property def page(self): return self.webView.page() @property def frame(self): return self.webView.page().mainFrame() # shorthand ends @pyqtSlot() def slotExit(self): app.quit() @pyqtSlot() def slotSetting(self): self.settingsDialog = SettingsDialog(self) self.settingsDialog.show() @pyqtSlot() def slotShowAbout(self): self.aboutDialog = AboutDialog(self) self.aboutDialog.show() def changeEvent(self, qEvent): if qEvent.type() == QEvent.WindowStateChange: if self.isMinimized(): if app.settings.getbool("frontend", "minimizetosystray"): self.setHidden(True) super().changeEvent(qEvent) def minimize(self): self.showMinimized() def restore(self): self.setWindowState(self.windowState() & ~Qt.WindowMinimized | Qt.WindowActive) if self.isHidden(): self.setHidden(False) self.raise_() def closeEvent(self, qCloseEvent): if app.settings.getbool("frontend", "closetominimize"): qCloseEvent.ignore() self.minimize() else: qCloseEvent.accept()
class GuiManager(object): """ Main class, loads the gui and handles all events. """ def __init__(self): """ Creates the main window. """ # Attributes self.avaliable_modes = [] self.current_show = None self.current_season = None is_first_time = not os.path.exists(CONFIG_FILE) self.config = Config.get() # API try: self.api = getattr(Hosts, self.config.get_key("site")).api except Exception, error: self.api = Hosts.AVALIABLE_APIS[0] self.marks = SList(MARKS_FILE) self.favorites = SList(FAVORITES_FILE) self.accounts = ACCOUNTS self.settings_dialog = SettingsDialog(self) # Gtk builder self.builder = gtk.Builder() self.builder.add_from_file(MAIN_GUI_FILE) self.builder.connect_signals(self) # Getting the used widgets glade_objects = [ "main_window", "statusbar_label", "progress_box", "progress", "progress_label", "name_filter", "name_filter_clear", "name_list", "name_list_model", "file_viewer", "file_viewer_model", "mode_combo", "mode_liststore", "site_combo", "search_button", "search_clear", "search_entry", "search_hbox", "sidebar", "sidebar_vbox", "path_label", "info_window", "info_title", "info_label", "info_image", "file_viewer_menu", "error_label", "error_dialog", "header_hbox", "main_hpaned", "about_dialog", "site_liststore", ] for glade_object in glade_objects: setattr(self, glade_object, self.builder.get_object(glade_object)) # Set up the filter for the show list self.name_list_model_filter = self.name_list_model.filter_new() self.name_list_model_filter.set_visible_func( generic_visible_func, (self.name_filter, NAME_LIST_COLUMN_TEXT)) self.name_list.set_model(self.name_list_model_filter) # Get last mode, needs to be before the filling combo functions last_mode = self.config.get_key("last_mode") # Fill combobox self.fill_sites_combobox() self.fill_mode_combobox() # Set last window position and size last_x, last_y = self.config.get_key("last_window_pos") last_width, last_height = self.config.get_key("last_window_size") self.main_window.move(last_x, last_y) self.main_window.resize(last_width, last_height) # Now we show the window self.main_window.show_all() # Start on last mode try: self.mode_combo.set_active(self.avaliable_modes.index(last_mode)) except: self.set_mode_shows() # Login self.background_task(self.login_accounts, freeze=False) if is_first_time: wizard = Wizard(self.main_window) wizard.show()
class MainWindow(QMainWindow, Ui_MainWindow, PersistentGeometry): settingsDialog = None aboutDialog = None def __init__(self, parent): super().__init__(parent) # UI self.setupUi(self) self.connectUI() self.preserveGeometry() def connectUI(self): # connect UI related signal/slot self.action_exit.triggered.connect(self.slotExit) self.action_setting.triggered.connect(self.slotSetting) self.action_showAbout.triggered.connect(self.slotShowAbout) # shorthand @property def page(self): return self.webView.page() @property def frame(self): return self.webView.page().mainFrame() # shorthand ends @pyqtSlot() def slotExit(self): app.quit() @pyqtSlot() def slotSetting(self): self.settingsDialog = SettingsDialog(self) self.settingsDialog.show() @pyqtSlot() def slotShowAbout(self): self.aboutDialog = AboutDialog(self) self.aboutDialog.show() def changeEvent(self, qEvent): if qEvent.type() == QEvent.WindowStateChange: if self.isMinimized(): if app.settings.getbool("frontend", "minimizetosystray"): self.setHidden(True) super().changeEvent(qEvent) def minimize(self): self.showMinimized() def restore(self): self.setWindowState(self.windowState() & ~Qt.WindowMinimized | Qt.WindowActive) if self.isHidden(): self.setHidden(False) self.raise_() def closeEvent(self, qCloseEvent): if app.settings.getbool("frontend", "closetominimize"): qCloseEvent.ignore() self.minimize() else: qCloseEvent.accept()