def expand(cls, language): """ Class method to expand a language enum to a readable languages list. @param language language number (QLocale.Language) @return list of expanded language names (list of strings) """ allLanguages = [] countries = [l.country() for l in QLocale.matchingLocales( language, QLocale.AnyScript, QLocale.AnyCountry)] languageString = "{0} [{1}]"\ .format(QLocale.languageToString(language), QLocale(language).name().split('_')[0]) allLanguages.append(languageString) for country in countries: languageString = "{0}/{1} [{2}]"\ .format(QLocale.languageToString(language), QLocale.countryToString(country), '-'.join(QLocale(language, country).name() .split('_')).lower()) if languageString not in allLanguages: allLanguages.append(languageString) return allLanguages
def __init__(self, parent=None): super(QComboBox, self).__init__(parent) for i in range(1, 357): locale = QLocale(i) if locale and QLocale.languageToString(locale.language()) != "C": codeName = locale.name().split("_")[0] if codeName not in self.codesList: self.codesList.append(codeName) self.codesList.sort() for lang in self.codesList: locale = QLocale(lang) if locale: languageName = QLocale.languageToString(locale.language()) self.languageList.append(languageName.title()) self.setIconSize(QSize(32, 22)) codeIcon = QImage(self.iconSize(), QImage.Format_ARGB32) painter = QPainter(codeIcon) painter.setBrush(Qt.transparent) codeIcon.fill(Qt.transparent) font = QFontDatabase().systemFont(QFontDatabase.FixedFont) painter.setFont(font) painter.setPen(self.palette().color(QPalette.Text)) painter.drawText(codeIcon.rect(), Qt.AlignCenter,lang) painter.end() self.addItem(QIcon(QPixmap.fromImage(codeIcon)), languageName.title())
def expand(cls, language): """ Class method to expand a language enum to a readable languages list. @param language language number (QLocale.Language) @return list of expanded language names (list of strings) """ allLanguages = [] countries = [ l.country() for l in QLocale.matchingLocales( language, QLocale.AnyScript, QLocale.AnyCountry) ] languageString = ("{0} [{1}]").format( QLocale.languageToString(language), QLocale(language).name().split('_')[0]) allLanguages.append(languageString) for country in countries: languageString = ("{0}/{1} [{2}]").format( QLocale.languageToString(language), QLocale.countryToString(country), '-'.join(QLocale(language, country).name().split('_')).lower()) if languageString not in allLanguages: allLanguages.append(languageString) return allLanguages
def get_available_translations(): # Returns a list of tuples: (lanugage_name, language_code) for each available translation translations_list = [str(p.stem) for p in Path(TRANSLATIONS_DIR).glob('*.qm')] translations_list.append("en_US") result = {} for lang_code in translations_list: loc = QLocale(lang_code) lang_name = loc.languageToString(loc.language()) result[lang_name] = lang_code return result
def setup_translation(self): self.tr("Test translator") sys_locale = QLocale.system() lang_code = QLocale.languageToString(sys_locale.language()) logger.info('System language: {0}, {1}'.format(lang_code, sys_locale.bcp47Name())) translator = QTranslator(self) # bool load(locale, filename, prefix = '', directory = '', suffix = '') res = translator.load(sys_locale, 'xnovacmd', '_', './translations') # Loads filename + prefix + ui language name + suffix (".qm" if the suffix is not specified), # which may be an absolute file name or relative to directory. # Returns true if the translation is successfully loaded; otherwise returns false. if res: logger.info('Loaded translation OK') self.installTranslator(translator) else: logger.warn('Failed to load translator!')
def __createLanguageString(self, language): """ Private method to create a language string given a language identifier. @param language language identifier @type str @return language string @rtype str """ loc = QLocale(language) if loc.language() == QLocale.C: return language country = QLocale.countryToString(loc.country()) lang = QLocale.languageToString(loc.language()) languageString = "{0}/{1} [{2}]".format(lang, country, language) return languageString
def get_language() -> str: """ Returns the language to be used. Reads from the settings, if it's None, try to use the locale one and defaults to English :return: 2 chars long string representing the language to be used """ # get lang from settings lang = Settings().value('lang') if not lang: # if None, try to use the locale one from ..swiss_locator_filter import AVAILABLE_LANGUAGES locale_lang = QLocale.languageToString( QLocale(QSettings().value('locale/userLocale')).language()) if locale_lang in AVAILABLE_LANGUAGES: lang = AVAILABLE_LANGUAGES[locale_lang] else: # defaults to English lang = 'en' return lang
def __init__(self, parent=None): """ Constructor @param parent reference to the parent widget @type QWidget """ super(MainWindow, self).__init__(parent) self.setupUi(self) # 快捷键 # 查找文件 QShortcut(QKeySequence("Ctrl+F"), self, self.on_pushButtonFindFile_clicked) # 自动翻译 QShortcut(QKeySequence("Ctrl+T"), self, self.on_pushButtonTranslate_clicked) # 保存翻译后的字幕文件 QShortcut(QKeySequence("Ctrl+S"), self, self.on_pushButtonSaveFile_clicked) # 保存双语字幕 QShortcut(QKeySequence("Ctrl+Shift+S"), self, self.on_pushButtonSaveFile2_clicked) # 打开帮助页面 QShortcut(QKeySequence("F1"), self, self.showHelp) QShortcut(QKeySequence("Ctrl+H"), self, self.showHelp) self.sf = ServiceFile() # 目标语种初始化 if QLocale.languageToString(QLocale.system().language()) == "Chinese": self.targetLanguage = "zh-CN" else: self.targetLanguage = "zh-CN" self.canBeSave = False self.helpURL = "http://coolwp.com/subtitle-translator.html"
def __init__(self, parent = None): super().__init__(parent) self.mUi = Ui_PreferencesDialog() self.mLanguages = LanguageManager.instance().availableLanguages() self.mUi.setupUi(self) self.setWindowFlags(self.windowFlags() & ~Qt.WindowContextHelpButtonHint) self.mUi.openGL.setEnabled(QGLFormat.hasOpenGL()) for name in self.mLanguages: locale = QLocale(name) string = "%s (%s)"%(QLocale.languageToString(locale.language()), QLocale.countryToString(locale.country())) self.mUi.languageCombo.addItem(string, name) self.mUi.languageCombo.model().sort(0) self.mUi.languageCombo.insertItem(0, self.tr("System default")) self.mObjectTypesModel = ObjectTypesModel(self) self.mUi.objectTypesTable.setModel(self.mObjectTypesModel) self.mUi.objectTypesTable.setItemDelegateForColumn(1, ColorDelegate(self)) horizontalHeader = self.mUi.objectTypesTable.horizontalHeader() horizontalHeader.setSectionResizeMode(QHeaderView.Stretch) Utils.setThemeIcon(self.mUi.addObjectTypeButton, "add") Utils.setThemeIcon(self.mUi.removeObjectTypeButton, "remove") self.fromPreferences() self.mUi.languageCombo.currentIndexChanged.connect(self.languageSelected) self.mUi.openGL.toggled.connect(self.useOpenGLToggled) self.mUi.gridColor.colorChanged.connect(preferences.Preferences.instance().setGridColor) self.mUi.gridFine.valueChanged.connect(preferences.Preferences.instance().setGridFine) self.mUi.objectLineWidth.valueChanged.connect(self.objectLineWidthChanged) self.mUi.objectTypesTable.selectionModel().selectionChanged.connect(self.selectedObjectTypesChanged) self.mUi.objectTypesTable.doubleClicked.connect(self.objectTypeIndexClicked) self.mUi.addObjectTypeButton.clicked.connect(self.addObjectType) self.mUi.removeObjectTypeButton.clicked.connect(self.removeSelectedObjectTypes) self.mUi.importObjectTypesButton.clicked.connect(self.importObjectTypes) self.mUi.exportObjectTypesButton.clicked.connect(self.exportObjectTypes) self.mObjectTypesModel.dataChanged.connect(self.applyObjectTypes) self.mObjectTypesModel.rowsRemoved.connect(self.applyObjectTypes) self.mUi.autoMapWhileDrawing.toggled.connect(self.useAutomappingDrawingToggled) self.mUi.openLastFiles.toggled.connect(self.openLastFilesToggled)
def __init__(self, configDialog): """ Constructor @param configDialog reference to the configuration dialog (ConfigurationDialog) """ super(HelpWebBrowserPage, self).__init__() self.setupUi(self) self.setObjectName("HelpWebBrowserPage") self.__configDlg = configDialog mw = configDialog.parent().parent() if hasattr(mw, "helpWindow") and mw.helpWindow is not None: self.__helpWindow = mw.helpWindow elif hasattr(mw, "currentBrowser"): self.__helpWindow = mw else: self.__helpWindow = None self.setCurrentPageButton.setEnabled(self.__helpWindow is not None) defaultSchemes = ["file://", "http://", "https://"] self.defaultSchemeCombo.addItems(defaultSchemes) self.clickToFlashCheckBox.setIcon( UI.PixmapCache.getIcon("flashBlock.png")) # set initial values self.singleHelpWindowCheckBox.setChecked( Preferences.getHelp("SingleHelpWindow")) self.saveGeometryCheckBox.setChecked( Preferences.getHelp("SaveGeometry")) self.webSuggestionsCheckBox.setChecked( Preferences.getHelp("WebSearchSuggestions")) self.showTabPreviews.setChecked(Preferences.getHelp("ShowPreview")) self.accessKeysCheckBox.setChecked( Preferences.getHelp("AccessKeysEnabled")) self.javaCheckBox.setChecked(Preferences.getHelp("JavaEnabled")) self.javaScriptCheckBox.setChecked( Preferences.getHelp("JavaScriptEnabled")) self.jsOpenWindowsCheckBox.setChecked( Preferences.getHelp("JavaScriptCanOpenWindows")) self.jsClipboardCheckBox.setChecked( Preferences.getHelp("JavaScriptCanAccessClipboard")) self.pluginsCheckBox.setChecked(Preferences.getHelp("PluginsEnabled")) self.clickToFlashCheckBox.setChecked( Preferences.getHelp("ClickToFlashEnabled")) self.doNotTrackCheckBox.setChecked(Preferences.getHelp("DoNotTrack")) self.sendRefererCheckBox.setChecked(Preferences.getHelp("SendReferer")) self.diskCacheCheckBox.setChecked( Preferences.getHelp("DiskCacheEnabled")) self.cacheSizeSpinBox.setValue(Preferences.getHelp("DiskCacheSize")) cachePolicy = Preferences.getHelp("CachePolicy") if cachePolicy == QNetworkRequest.PreferNetwork: self.cacheKeepButton.setChecked(True) elif cachePolicy == QNetworkRequest.PreferCache: self.cachePreferButton.setChecked(True) elif cachePolicy == QNetworkRequest.AlwaysCache: self.cacheOfflineButton.setChecked(True) self.printBackgroundsCheckBox.setChecked( Preferences.getHelp("PrintBackgrounds")) self.startupCombo.setCurrentIndex( Preferences.getHelp("StartupBehavior")) self.homePageEdit.setText(Preferences.getHelp("HomePage")) self.defaultSchemeCombo.setCurrentIndex( self.defaultSchemeCombo.findText( Preferences.getHelp("DefaultScheme"))) historyLimit = Preferences.getHelp("HistoryLimit") idx = 0 if historyLimit == 1: idx = 0 elif historyLimit == 7: idx = 1 elif historyLimit == 14: idx = 2 elif historyLimit == 30: idx = 3 elif historyLimit == 365: idx = 4 elif historyLimit == -1: idx = 5 elif historyLimit == -2: idx = 6 else: idx = 5 self.expireHistory.setCurrentIndex(idx) for language in range(2, QLocale.LastLanguage + 1): countries = [ l.country() for l in QLocale.matchingLocales( language, QLocale.AnyScript, QLocale.AnyCountry) ] if len(countries) > 0: self.languageCombo.addItem(QLocale.languageToString(language), language) self.languageCombo.model().sort(0) self.languageCombo.insertSeparator(0) self.languageCombo.insertItem(0, QLocale.languageToString(0), 0) index = self.languageCombo.findData( Preferences.getHelp("SearchLanguage")) if index > -1: self.languageCombo.setCurrentIndex(index) if hasattr(QWebSettings, "SpatialNavigationEnabled"): self.spatialCheckBox.setChecked( Preferences.getHelp("SpatialNavigationEnabled")) else: self.spatialCheckBox.setEnabled(False) if hasattr(QWebSettings, "LinksIncludedInFocusChain"): self.linksInFocusChainCheckBox.setChecked( Preferences.getHelp("LinksIncludedInFocusChain")) else: self.linksInFocusChainCheckBox.setEnabled(False) if hasattr(QWebSettings, "XSSAuditingEnabled"): self.xssAuditingCheckBox.setChecked( Preferences.getHelp("XSSAuditingEnabled")) else: self.xssAuditingCheckBox.setEnabled(False) if hasattr(QWebSettings, "SiteSpecificQuirksEnabled"): self.quirksCheckBox.setChecked( Preferences.getHelp("SiteSpecificQuirksEnabled")) else: self.quirksCheckBox.setEnabled(False)
def writeJson(configDictionary={}): basedata = {} metadata = {} authorList = [] taglist = [] listOfRoles = [ "Writer", "Inker", "Creator", "Editor", "Cartoonist", "Colorist", "Letterer", "Penciller", "Painter", "Cover", "Artist" ] if "authorList" in configDictionary.keys(): for authorE in range(len(configDictionary["authorList"])): author = {} authorDict = configDictionary["authorList"][authorE] stringName = [] if "last-name" in authorDict.keys(): stringName.append(authorDict["last-name"]) if "first-name" in authorDict.keys(): stringName.append(authorDict["first-name"]) if "nickname" in authorDict.keys(): stringName.append("(" + authorDict["nickname"] + ")") author["person"] = ",".join(stringName) if "role" in authorDict.keys(): role = str(authorDict["role"]).title() if "editor" in role.lower(): role = "Editor" if "cover" in role.lower(): role = "Cover" if role in listOfRoles: author["role"] = role authorList.append(author) if "characters" in configDictionary.keys(): for character in configDictionary["characters"]: taglist.append(character) if "format" in configDictionary.keys(): for item in configDictionary["format"]: taglist.append(item) if "otherKeywords" in configDictionary.keys(): for item in configDictionary["otherKeywords"]: taglist.append(item) if "seriesName" in configDictionary.keys(): metadata["series"] = configDictionary["seriesName"] if "title" in configDictionary.keys(): metadata["title"] = configDictionary["title"] else: metadata["title"] = "Unnamed comic" if "publisherName" in configDictionary.keys(): metadata["publisher"] = configDictionary["publisherName"] if "publishingDate" in configDictionary.keys(): date = QDate.fromString(configDictionary["publishingDate"], Qt.ISODate) metadata["publicationMonth"] = date.month() metadata["publicationYear"] = date.year() if "seriesNumber" in configDictionary.keys(): metadata["issue"] = configDictionary["seriesNumber"] if "seriesVolume" in configDictionary.keys(): metadata["volume"] = configDictionary["seriesVolume"] if "genre" in configDictionary.keys(): if isinstance(configDictionary["genre"], dict): listKeys = [] for key in configDictionary["genre"].keys(): listKeys.append(key) metadata["genre"] = listKeys else: metadata["genre"] = configDictionary["genre"] if "language" in configDictionary.keys(): metadata["language"] = QLocale.languageToString( QLocale(configDictionary["language"]).language()) metadata["credits"] = authorList metadata["tags"] = taglist if "summary" in configDictionary.keys(): metadata["comments"] = configDictionary["summary"] else: metadata["comments"] = "File generated without summary" # basedata["appID"] = "Krita" basedata["lastModified"] = QDateTime.currentDateTimeUtc().toString( Qt.ISODate) basedata["ComicBookInfo/1.0"] = metadata return json.dumps(basedata)
def __init__(self, configDialog): """ Constructor @param configDialog reference to the configuration dialog (ConfigurationDialog) """ super(WebBrowserPage, self).__init__() self.setupUi(self) self.setObjectName("WebBrowserPage") self.__configDlg = configDialog mw = configDialog.parent().parent() if hasattr(mw, "helpWindow") and mw.helpWindow is not None: # IDE self.__browserWindow = mw.helpWindow elif hasattr(mw, "currentBrowser"): # Web Browser self.__browserWindow = mw else: self.__browserWindow = None self.setCurrentPageButton.setEnabled(self.__browserWindow is not None) self.imageSearchGroup.setEnabled(self.__browserWindow is not None) defaultSchemes = ["file://", "http://", "https://"] self.defaultSchemeCombo.addItems(defaultSchemes) # set initial values self.singleHelpWindowCheckBox.setChecked( Preferences.getWebBrowser("SingleWebBrowserWindow")) self.saveGeometryCheckBox.setChecked( Preferences.getWebBrowser("SaveGeometry")) self.webSuggestionsCheckBox.setChecked( Preferences.getWebBrowser("WebSearchSuggestions")) self.showTabPreviews.setChecked( Preferences.getWebBrowser("ShowPreview")) self.errorPageCheckBox.setChecked( Preferences.getWebBrowser("ErrorPageEnabled")) self.scrollingCheckBox.setChecked( Preferences.getWebBrowser("ScrollAnimatorEnabled")) self.fullscreenCheckBox.setChecked( Preferences.getWebBrowser("FullScreenSupportEnabled")) try: # Qt 5.7+ self.screenCaptureCheckBox.setChecked( Preferences.getWebBrowser("ScreenCaptureEnabled")) self.webGLCheckBox.setChecked( Preferences.getWebBrowser("WebGLEnabled")) except KeyError: self.screenCaptureCheckBox.setEnabled(False) self.webGLCheckBox.setEnabled(False) try: # Qt 5.11 self.autoplayMediaCheckBox.setChecked( Preferences.getWebBrowser("PlaybackRequiresUserGesture")) self.webRtcPublicOnlyCheckBox.setChecked( Preferences.getWebBrowser("WebRTCPublicInterfacesOnly")) except KeyError: self.autoplayMediaCheckBox.setEnabled(False) self.webRtcPublicOnlyCheckBox.setEnabled(False) try: # Qt 5.12 self.dnsPrefetchCheckBox.setChecked( Preferences.getWebBrowser("DnsPrefetchEnabled")) except KeyError: self.dnsPrefetchCheckBox.setEnabled(False) self.javaScriptGroup.setChecked( Preferences.getWebBrowser("JavaScriptEnabled")) self.jsOpenWindowsCheckBox.setChecked( Preferences.getWebBrowser("JavaScriptCanOpenWindows")) try: # Qt 5.10 self.jsActivateWindowsCheckBox.setChecked( Preferences.getWebBrowser( "AllowWindowActivationFromJavaScript")) except KeyError: self.jsActivateWindowsCheckBox.setEnabled(False) self.jsClipboardCheckBox.setChecked( Preferences.getWebBrowser("JavaScriptCanAccessClipboard")) try: # Qt 5.11 self.jsPasteCheckBox.setChecked( Preferences.getWebBrowser("JavaScriptCanPaste")) except KeyError: self.jsPasteCheckBox.setEnabled(False) self.doNotTrackCheckBox.setChecked( Preferences.getWebBrowser("DoNotTrack")) self.refererSendComboBox.setCurrentIndex( Preferences.getWebBrowser("RefererSendReferer")) self.refererDefaultPolicyCcomboBox.setCurrentIndex( Preferences.getWebBrowser("RefererDefaultPolicy")) self.refererTrimmingPolicyComboBox.setCurrentIndex( Preferences.getWebBrowser("RefererTrimmingPolicy")) self.pluginsGroup.setChecked( Preferences.getWebBrowser("PluginsEnabled")) try: # Qt 5.13 self.pdfViewerCheckBox.setChecked( Preferences.getWebBrowser("PdfViewerEnabled")) except KeyError: self.pdfViewerCheckBox.setEnabled(False) self.diskCacheCheckBox.setChecked( Preferences.getWebBrowser("DiskCacheEnabled")) self.cacheSizeSpinBox.setValue( Preferences.getWebBrowser("DiskCacheSize")) self.startupCombo.setCurrentIndex( Preferences.getWebBrowser("StartupBehavior")) self.newTabCombo.setCurrentIndex( Preferences.getWebBrowser("NewTabBehavior")) self.homePageEdit.setText( Preferences.getWebBrowser("HomePage")) self.loadTabOnActivationCheckBox.setChecked( Preferences.getWebBrowser("LoadTabOnActivation")) self.saveSessionCheckBox.setChecked( Preferences.getWebBrowser("SessionAutoSave")) self.sessionTimerSpinBox.setValue( Preferences.getWebBrowser("SessionAutoSaveInterval")) self.defaultSchemeCombo.setCurrentIndex( self.defaultSchemeCombo.findText( Preferences.getWebBrowser("DefaultScheme"))) historyLimit = Preferences.getWebBrowser("HistoryLimit") idx = 0 if historyLimit == 1: idx = 0 elif historyLimit == 7: idx = 1 elif historyLimit == 14: idx = 2 elif historyLimit == 30: idx = 3 elif historyLimit == 365: idx = 4 elif historyLimit == -1: idx = 5 elif historyLimit == -2: idx = 6 else: idx = 5 self.expireHistory.setCurrentIndex(idx) for language in range(2, QLocale.LastLanguage + 1): countries = [l.country() for l in QLocale.matchingLocales( language, QLocale.AnyScript, QLocale.AnyCountry)] if len(countries) > 0: self.languageCombo.addItem( QLocale.languageToString(language), language) self.languageCombo.model().sort(0) self.languageCombo.insertSeparator(0) self.languageCombo.insertItem(0, QLocale.languageToString(0), 0) index = self.languageCombo.findData( Preferences.getWebBrowser("SearchLanguage")) if index > -1: self.languageCombo.setCurrentIndex(index) if self.__browserWindow: for engineName in ( self.__browserWindow.imageSearchEngine().searchEngineNames() ): self.imageSearchComboBox.addItem( UI.PixmapCache.getIcon( "{0}.png".format(engineName.lower())), engineName) index = self.imageSearchComboBox.findText( Preferences.getWebBrowser("ImageSearchEngine")) if index > -1: self.imageSearchComboBox.setCurrentIndex(index) self.spatialCheckBox.setChecked( Preferences.getWebBrowser("SpatialNavigationEnabled")) self.linksInFocusChainCheckBox.setChecked( Preferences.getWebBrowser("LinksIncludedInFocusChain")) try: # Qt 5.8 self.focusOnNavigationCheckBox.setChecked( Preferences.getWebBrowser("FocusOnNavigationEnabled")) except KeyError: self.focusOnNavigationCheckBox.setEnabled(False) self.xssAuditingCheckBox.setChecked( Preferences.getWebBrowser("XSSAuditingEnabled")) try: # Qt 5.8 self.insecureContentsCheckBox.setChecked( Preferences.getWebBrowser("AllowRunningInsecureContent")) except KeyError: self.insecureContentsCheckBox.setEnabled(False) try: # Qt 5.9 self.insecureGeolocationCheckBox.setChecked( Preferences.getWebBrowser("AllowGeolocationOnInsecureOrigins")) except KeyError: self.insecureGeolocationCheckBox.setEnabled(False) try: # Qt 5.8 self.printBackgroundCheckBox.setChecked( Preferences.getWebBrowser("PrintElementBackgrounds")) except KeyError: self.printBackgroundCheckBox.setEnabled(False) self.autoScrollGroupBox.setChecked( Preferences.getWebBrowser("AutoScrollEnabled")) self.autoScrollDividerSpinBox.setValue( Preferences.getWebBrowser("AutoScrollDivider")) if qVersionTuple() < (5, 11, 0): self.webInspectorGroup.setChecked( Preferences.getWebBrowser("WebInspectorEnabled")) self.webInspectorPortSpinBox.setValue( Preferences.getWebBrowser("WebInspectorPort")) else: self.webInspectorGroup.hide() if qVersionTuple() >= (5, 11, 0): self.protocolHandlerComboBox.setCurrentIndex( Preferences.getWebBrowser("AcceptProtocolHandlerRequest")) self.requestQuotaComboBox.setCurrentIndex( Preferences.getWebBrowser("AcceptQuotaRequest")) else: self.protocolHandlerComboBox.setEnabled(False) self.requestQuotaComboBox.setEnabled(False)
def __init__(self, configDialog): """ Constructor @param configDialog reference to the configuration dialog (ConfigurationDialog) """ super(HelpWebBrowserPage, self).__init__() self.setupUi(self) self.setObjectName("HelpWebBrowserPage") self.__configDlg = configDialog mw = configDialog.parent().parent() if hasattr(mw, "helpWindow") and mw.helpWindow is not None: self.__helpWindow = mw.helpWindow elif hasattr(mw, "currentBrowser"): self.__helpWindow = mw else: self.__helpWindow = None self.setCurrentPageButton.setEnabled(self.__helpWindow is not None) defaultSchemes = ["file://", "http://", "https://"] self.defaultSchemeCombo.addItems(defaultSchemes) self.clickToFlashCheckBox.setIcon( UI.PixmapCache.getIcon("flashBlock.png")) # set initial values self.singleHelpWindowCheckBox.setChecked( Preferences.getHelp("SingleHelpWindow")) self.saveGeometryCheckBox.setChecked( Preferences.getHelp("SaveGeometry")) self.webSuggestionsCheckBox.setChecked( Preferences.getHelp("WebSearchSuggestions")) self.showTabPreviews.setChecked( Preferences.getHelp("ShowPreview")) self.accessKeysCheckBox.setChecked( Preferences.getHelp("AccessKeysEnabled")) self.javaCheckBox.setChecked( Preferences.getHelp("JavaEnabled")) self.javaScriptCheckBox.setChecked( Preferences.getHelp("JavaScriptEnabled")) self.jsOpenWindowsCheckBox.setChecked( Preferences.getHelp("JavaScriptCanOpenWindows")) self.jsClipboardCheckBox.setChecked( Preferences.getHelp("JavaScriptCanAccessClipboard")) self.pluginsCheckBox.setChecked( Preferences.getHelp("PluginsEnabled")) self.clickToFlashCheckBox.setChecked( Preferences.getHelp("ClickToFlashEnabled")) self.doNotTrackCheckBox.setChecked( Preferences.getHelp("DoNotTrack")) self.sendRefererCheckBox.setChecked( Preferences.getHelp("SendReferer")) self.diskCacheCheckBox.setChecked( Preferences.getHelp("DiskCacheEnabled")) self.cacheSizeSpinBox.setValue( Preferences.getHelp("DiskCacheSize")) cachePolicy = Preferences.getHelp("CachePolicy") if cachePolicy == QNetworkRequest.PreferNetwork: self.cacheKeepButton.setChecked(True) elif cachePolicy == QNetworkRequest.PreferCache: self.cachePreferButton.setChecked(True) elif cachePolicy == QNetworkRequest.AlwaysCache: self.cacheOfflineButton.setChecked(True) self.printBackgroundsCheckBox.setChecked( Preferences.getHelp("PrintBackgrounds")) self.startupCombo.setCurrentIndex( Preferences.getHelp("StartupBehavior")) self.homePageEdit.setText( Preferences.getHelp("HomePage")) self.defaultSchemeCombo.setCurrentIndex( self.defaultSchemeCombo.findText( Preferences.getHelp("DefaultScheme"))) historyLimit = Preferences.getHelp("HistoryLimit") idx = 0 if historyLimit == 1: idx = 0 elif historyLimit == 7: idx = 1 elif historyLimit == 14: idx = 2 elif historyLimit == 30: idx = 3 elif historyLimit == 365: idx = 4 elif historyLimit == -1: idx = 5 elif historyLimit == -2: idx = 6 else: idx = 5 self.expireHistory.setCurrentIndex(idx) for language in range(2, QLocale.LastLanguage + 1): countries = [l.country() for l in QLocale.matchingLocales( language, QLocale.AnyScript, QLocale.AnyCountry)] if len(countries) > 0: self.languageCombo.addItem( QLocale.languageToString(language), language) self.languageCombo.model().sort(0) self.languageCombo.insertSeparator(0) self.languageCombo.insertItem(0, QLocale.languageToString(0), 0) index = self.languageCombo.findData( Preferences.getHelp("SearchLanguage")) if index > -1: self.languageCombo.setCurrentIndex(index) if hasattr(QWebSettings, "SpatialNavigationEnabled"): self.spatialCheckBox.setChecked( Preferences.getHelp("SpatialNavigationEnabled")) else: self.spatialCheckBox.setEnabled(False) if hasattr(QWebSettings, "LinksIncludedInFocusChain"): self.linksInFocusChainCheckBox.setChecked( Preferences.getHelp("LinksIncludedInFocusChain")) else: self.linksInFocusChainCheckBox.setEnabled(False) if hasattr(QWebSettings, "XSSAuditingEnabled"): self.xssAuditingCheckBox.setChecked( Preferences.getHelp("XSSAuditingEnabled")) else: self.xssAuditingCheckBox.setEnabled(False) if hasattr(QWebSettings, "SiteSpecificQuirksEnabled"): self.quirksCheckBox.setChecked( Preferences.getHelp("SiteSpecificQuirksEnabled")) else: self.quirksCheckBox.setEnabled(False)
def createGeneralOptionsGroupBox(self): self.generalOptionsGroupBox = QGroupBox("General Options") self.localeCombo = QComboBox() curLocaleIndex = -1 index = 0 for lid in range(QLocale.C, QLocale.LastLanguage + 1): lang = QLocale.Language(lid) countries = QLocale.countriesForLanguage(lang) for country in countries: label = "%s/%s" % (QLocale.languageToString(lang), QLocale.countryToString(country)) locale = QLocale(lang, country) if self.locale().language() == lang and self.locale().country() == country: curLocaleIndex = index self.localeCombo.addItem(label, locale) index += 1 if curLocaleIndex != -1: self.localeCombo.setCurrentIndex(curLocaleIndex) self.localeLabel = QLabel("&Locale") self.localeLabel.setBuddy(self.localeCombo) self.firstDayCombo = QComboBox() self.firstDayCombo.addItem("Sunday", Qt.Sunday) self.firstDayCombo.addItem("Monday", Qt.Monday) self.firstDayCombo.addItem("Tuesday", Qt.Tuesday) self.firstDayCombo.addItem("Wednesday", Qt.Wednesday) self.firstDayCombo.addItem("Thursday", Qt.Thursday) self.firstDayCombo.addItem("Friday", Qt.Friday) self.firstDayCombo.addItem("Saturday", Qt.Saturday) self.firstDayLabel = QLabel("Wee&k starts on:") self.firstDayLabel.setBuddy(self.firstDayCombo) self.selectionModeCombo = QComboBox() self.selectionModeCombo.addItem("Single selection", QCalendarWidget.SingleSelection) self.selectionModeCombo.addItem("None", QCalendarWidget.NoSelection) self.selectionModeLabel = QLabel("&Selection mode:") self.selectionModeLabel.setBuddy(self.selectionModeCombo) self.gridCheckBox = QCheckBox("&Grid") self.gridCheckBox.setChecked(self.calendar.isGridVisible()) self.navigationCheckBox = QCheckBox("&Navigation bar") self.navigationCheckBox.setChecked(True) self.horizontalHeaderCombo = QComboBox() self.horizontalHeaderCombo.addItem("Single letter day names", QCalendarWidget.SingleLetterDayNames) self.horizontalHeaderCombo.addItem("Short day names", QCalendarWidget.ShortDayNames) self.horizontalHeaderCombo.addItem("Long day names", QCalendarWidget.LongDayNames) self.horizontalHeaderCombo.addItem("None", QCalendarWidget.NoHorizontalHeader) self.horizontalHeaderCombo.setCurrentIndex(1) self.horizontalHeaderLabel = QLabel("&Horizontal header:") self.horizontalHeaderLabel.setBuddy(self.horizontalHeaderCombo) self.verticalHeaderCombo = QComboBox() self.verticalHeaderCombo.addItem("ISO week numbers", QCalendarWidget.ISOWeekNumbers) self.verticalHeaderCombo.addItem("None", QCalendarWidget.NoVerticalHeader) self.verticalHeaderLabel = QLabel("&Vertical header:") self.verticalHeaderLabel.setBuddy(self.verticalHeaderCombo) self.localeCombo.currentIndexChanged.connect(self.localeChanged) self.firstDayCombo.currentIndexChanged.connect(self.firstDayChanged) self.selectionModeCombo.currentIndexChanged.connect( self.selectionModeChanged) self.gridCheckBox.toggled.connect(self.calendar.setGridVisible) self.navigationCheckBox.toggled.connect( self.calendar.setNavigationBarVisible) self.horizontalHeaderCombo.currentIndexChanged.connect( self.horizontalHeaderChanged) self.verticalHeaderCombo.currentIndexChanged.connect( self.verticalHeaderChanged) checkBoxLayout = QHBoxLayout() checkBoxLayout.addWidget(self.gridCheckBox) checkBoxLayout.addStretch() checkBoxLayout.addWidget(self.navigationCheckBox) outerLayout = QGridLayout() outerLayout.addWidget(self.localeLabel, 0, 0) outerLayout.addWidget(self.localeCombo, 0, 1) outerLayout.addWidget(self.firstDayLabel, 1, 0) outerLayout.addWidget(self.firstDayCombo, 1, 1) outerLayout.addWidget(self.selectionModeLabel, 2, 0) outerLayout.addWidget(self.selectionModeCombo, 2, 1) outerLayout.addLayout(checkBoxLayout, 3, 0, 1, 2) outerLayout.addWidget(self.horizontalHeaderLabel, 4, 0) outerLayout.addWidget(self.horizontalHeaderCombo, 4, 1) outerLayout.addWidget(self.verticalHeaderLabel, 5, 0) outerLayout.addWidget(self.verticalHeaderCombo, 5, 1) self.generalOptionsGroupBox.setLayout(outerLayout) self.firstDayChanged(self.firstDayCombo.currentIndex()) self.selectionModeChanged(self.selectionModeCombo.currentIndex()) self.horizontalHeaderChanged(self.horizontalHeaderCombo.currentIndex()) self.verticalHeaderChanged(self.verticalHeaderCombo.currentIndex())
def createGeneralOptionsGroupBox(self): self.generalOptionsGroupBox = QGroupBox("General Options") self.localeCombo = QComboBox() curLocaleIndex = -1 index = 0 for lid in range(QLocale.C, QLocale.LastLanguage + 1): lang = QLocale.Language(lid) countries = QLocale.countriesForLanguage(lang) for country in countries: label = "%s/%s" % (QLocale.languageToString(lang), QLocale.countryToString(country)) locale = QLocale(lang, country) if self.locale().language() == lang and self.locale().country( ) == country: curLocaleIndex = index self.localeCombo.addItem(label, locale) index += 1 if curLocaleIndex != -1: self.localeCombo.setCurrentIndex(curLocaleIndex) self.localeLabel = QLabel("&Locale") self.localeLabel.setBuddy(self.localeCombo) self.firstDayCombo = QComboBox() self.firstDayCombo.addItem("Sunday", Qt.Sunday) self.firstDayCombo.addItem("Monday", Qt.Monday) self.firstDayCombo.addItem("Tuesday", Qt.Tuesday) self.firstDayCombo.addItem("Wednesday", Qt.Wednesday) self.firstDayCombo.addItem("Thursday", Qt.Thursday) self.firstDayCombo.addItem("Friday", Qt.Friday) self.firstDayCombo.addItem("Saturday", Qt.Saturday) self.firstDayLabel = QLabel("Wee&k starts on:") self.firstDayLabel.setBuddy(self.firstDayCombo) self.selectionModeCombo = QComboBox() self.selectionModeCombo.addItem("Single selection", QCalendarWidget.SingleSelection) self.selectionModeCombo.addItem("None", QCalendarWidget.NoSelection) self.selectionModeLabel = QLabel("&Selection mode:") self.selectionModeLabel.setBuddy(self.selectionModeCombo) self.gridCheckBox = QCheckBox("&Grid") self.gridCheckBox.setChecked(self.calendar.isGridVisible()) self.navigationCheckBox = QCheckBox("&Navigation bar") self.navigationCheckBox.setChecked(True) self.horizontalHeaderCombo = QComboBox() self.horizontalHeaderCombo.addItem( "Single letter day names", QCalendarWidget.SingleLetterDayNames) self.horizontalHeaderCombo.addItem("Short day names", QCalendarWidget.ShortDayNames) self.horizontalHeaderCombo.addItem("Long day names", QCalendarWidget.LongDayNames) self.horizontalHeaderCombo.addItem("None", QCalendarWidget.NoHorizontalHeader) self.horizontalHeaderCombo.setCurrentIndex(1) self.horizontalHeaderLabel = QLabel("&Horizontal header:") self.horizontalHeaderLabel.setBuddy(self.horizontalHeaderCombo) self.verticalHeaderCombo = QComboBox() self.verticalHeaderCombo.addItem("ISO week numbers", QCalendarWidget.ISOWeekNumbers) self.verticalHeaderCombo.addItem("None", QCalendarWidget.NoVerticalHeader) self.verticalHeaderLabel = QLabel("&Vertical header:") self.verticalHeaderLabel.setBuddy(self.verticalHeaderCombo) self.localeCombo.currentIndexChanged.connect(self.localeChanged) self.firstDayCombo.currentIndexChanged.connect(self.firstDayChanged) self.selectionModeCombo.currentIndexChanged.connect( self.selectionModeChanged) self.gridCheckBox.toggled.connect(self.calendar.setGridVisible) self.navigationCheckBox.toggled.connect( self.calendar.setNavigationBarVisible) self.horizontalHeaderCombo.currentIndexChanged.connect( self.horizontalHeaderChanged) self.verticalHeaderCombo.currentIndexChanged.connect( self.verticalHeaderChanged) checkBoxLayout = QHBoxLayout() checkBoxLayout.addWidget(self.gridCheckBox) checkBoxLayout.addStretch() checkBoxLayout.addWidget(self.navigationCheckBox) outerLayout = QGridLayout() outerLayout.addWidget(self.localeLabel, 0, 0) outerLayout.addWidget(self.localeCombo, 0, 1) outerLayout.addWidget(self.firstDayLabel, 1, 0) outerLayout.addWidget(self.firstDayCombo, 1, 1) outerLayout.addWidget(self.selectionModeLabel, 2, 0) outerLayout.addWidget(self.selectionModeCombo, 2, 1) outerLayout.addLayout(checkBoxLayout, 3, 0, 1, 2) outerLayout.addWidget(self.horizontalHeaderLabel, 4, 0) outerLayout.addWidget(self.horizontalHeaderCombo, 4, 1) outerLayout.addWidget(self.verticalHeaderLabel, 5, 0) outerLayout.addWidget(self.verticalHeaderCombo, 5, 1) self.generalOptionsGroupBox.setLayout(outerLayout) self.firstDayChanged(self.firstDayCombo.currentIndex()) self.selectionModeChanged(self.selectionModeCombo.currentIndex()) self.horizontalHeaderChanged(self.horizontalHeaderCombo.currentIndex()) self.verticalHeaderChanged(self.verticalHeaderCombo.currentIndex())