def _loadSettings(self): cparser = PuddleConfig() section = 'autonumbering' self._start.setValue(cparser.get(section, 'start', 1)) self._separator.setCheckState( cparser.get(section, 'separator', Qt.Unchecked)) self._padlength.setValue(cparser.get(section, 'padlength', 1)) self._restart_numbering.setCheckState( cparser.get(section, 'restart', Qt.Unchecked))
def load_source_prefs(name, preferences): cparser = PuddleConfig(TAGSOURCE_CONFIG) ret = [] for option in preferences: if option[1] == COMBO: ret.append(cparser.get(name, option[0], option[2][1])) elif option[1] == SPINBOX: ret.append(cparser.get(name, option[0], option[2][2])) else: ret.append(cparser.get(name, option[0], option[2])) return ret
def loadSettings(self): cparser = PuddleConfig(os.path.join(CONFIGDIR, 'tagsources.conf')) trackpattern = cparser.get('tagsources', 'trackpattern', '%track% - %title%') self._text.setText(trackpattern) sortoptions = cparser.get('tagsources', 'sortoptions', [u'artist, album', u'album, artist']) self._sortoptions.clear() self._sortoptions.addItems(sortoptions) albumformat = cparser.get('tagsources', 'albumpattern', u'%artist% - %album% $if(%__numtracks%, [%__numtracks%], "")') self._albumdisp.setText(albumformat) self._ua.setText(cparser.get('tagsources', 'useragent', 'puddletag/' + puddlestuff.version_string)) self.albumBound.setValue( cparser.get('tagsources', 'album_bound', 70, True)) self.trackBound.setValue( cparser.get('tagsources', 'track_bound', 80, True)) self.jfdi.setChecked( bool(cparser.get('tagsources', 'jfdi', True, True))) fields = cparser.get('tagsources', 'match_fields', ['artist', 'title']) fields = u', '.join(z.strip() for z in fields) self.matchFields.setText(fields)
def loadSettings(self): cparser = PuddleConfig(os.path.join(CONFIGDIR, 'tagsources.conf')) trackpattern = cparser.get('tagsources', 'trackpattern', '%track% - %title%') self._text.setText(trackpattern) sortoptions = cparser.get('tagsources', 'sortoptions', [u'artist, album', u'album, artist']) self._sortoptions.clear() self._sortoptions.addItems(sortoptions) albumformat = cparser.get( 'tagsources', 'albumpattern', u'%artist% - %album% $if(%__numtracks%, [%__numtracks%], "")') self._albumdisp.setText(albumformat) self._ua.setText( cparser.get('tagsources', 'useragent', 'puddletag/' + puddlestuff.version_string)) self.albumBound.setValue( cparser.get('tagsources', 'album_bound', 70, True)) self.trackBound.setValue( cparser.get('tagsources', 'track_bound', 80, True)) self.jfdi.setChecked( bool(cparser.get('tagsources', 'jfdi', True, True))) fields = cparser.get('tagsources', 'match_fields', ['artist', 'title']) fields = u', '.join(z.strip() for z in fields) self.matchFields.setText(fields)
def showMessage(self, message): settings = PuddleConfig() should_show = settings.get("OnceOnlyErrors", self.name, True) self.__label.setText(message) if should_show: self.setModal(True) self.show()
def check_file(path, resource): if not os.path.exists(path): create_file(path, resource) else: cparser = PuddleConfig(path) version = cparser.get('info', 'version', 0) if version < __version__: create_file(path, resource)
def loadSettings(self): settings = PuddleConfig(os.path.join(CONFIGDIR, 'tagsources.conf')) get = lambda s, k, i=False: settings.get('tagsources', s, k, i) source = get('lastsource', 'Musicbrainz') self.__sourceFields = [ settings.get('tagsourcetags', ts.name, []) for ts in self.__sources ] index = self.sourcelist.findText(source) if index == -1: index = 0 self.sourcelist.setCurrentIndex(index) self.__fieldsEdit.setTags(self.__sourceFields[index]) df = get('trackpattern', u'%track% - %title%') self.listbox.trackPattern = df albumformat = get( 'albumpattern', u'%artist% - %album%$if(%__numtracks%, [%__numtracks%], "")') self.listbox.albumPattern = albumformat sort_options = get('sortoptions', [u'artist, album', u'album, artist']) sort_options = split_strip(sort_options) self.listbox.setSortOptions(sort_options) sortindex = get('lastsort', 0) self.listbox.sort(sort_options[sortindex]) filepath = os.path.join(CONFIGDIR, 'mappings') self.setMapping(audioinfo.loadmapping(filepath)) useragent = get('useragent', '') if useragent: set_useragent(useragent) checkstate = get('existing', False) self.__updateEmpty.setChecked(checkstate) checkstate = get('autoretrieve', False) self.__autoRetrieve.setChecked(checkstate) self.listbox.albumBound = get('album_bound', 70, True) / 100.0 self.listbox.trackBound = get('track_bound', 80, True) / 100.0 self.listbox.jfdi = bool(get('jfdi', True, True)) self.listbox.matchFields = get('match_fields', ['artist', 'title'])
def loadSettings(self): settings = PuddleConfig(os.path.join(CONFIGDIR, 'tagsources.conf')) get = lambda s, k, i=False: settings.get('tagsources', s, k, i) source = get('lastsource', 'Musicbrainz') self.__sourceFields = [settings.get('tagsourcetags', ts.name, []) for ts in self.__sources] index = self.sourcelist.findText(source) if index == -1: index = 0 self.sourcelist.setCurrentIndex(index) self.__fieldsEdit.setTags(self.__sourceFields[index]) df = get('trackpattern', u'%track% - %title%') self.listbox.trackPattern = df albumformat = get('albumpattern', u'%artist% - %album%$if(%__numtracks%, [%__numtracks%], "")') self.listbox.albumPattern = albumformat sort_options = get('sortoptions', [u'artist, album', u'album, artist']) sort_options = split_strip(sort_options) self.listbox.setSortOptions(sort_options) sortindex = get('lastsort', 0) self.listbox.sort(sort_options[sortindex]) filepath = os.path.join(CONFIGDIR, 'mappings') self.setMapping(audioinfo.loadmapping(filepath)) useragent = get('useragent', '') if useragent: set_useragent(useragent) checkstate = get('existing', False) self.__updateEmpty.setChecked(checkstate) checkstate = get('autoretrieve', False) self.__autoRetrieve.setChecked(checkstate) self.listbox.albumBound = get('album_bound', 70, True) / 100.0 self.listbox.trackBound = get('track_bound', 80, True) / 100.0 self.listbox.jfdi = bool(get('jfdi', True, True)) self.listbox.matchFields = get('match_fields', ['artist', 'title'])
def _loadSettings(self): cparser = PuddleConfig() section = 'autonumbering' self._start.setValue(cparser.get(section, 'start', 1)) self._separator.setCheckState( cparser.get(section, 'separator', Qt.Unchecked)) self._padlength.setValue(cparser.get(section, 'padlength', 1)) self._restart_numbering.setCheckState( cparser.get(section, 'restart', Qt.Unchecked)) self.count_by_group.setCheckState( cparser.get(section, 'count_by_group', Qt.Unchecked)) self.showDirectorySplittingOptions( self._restart_numbering.checkState()) self.grouping.setText(cparser.get(section, 'grouping', '%__dirpath%')) output_field_text = cparser.get(section, 'output_field', 'track') if not output_field_text: output_field_text = 'track' last_output_field_index = self.output_field.findText(output_field_text) if last_output_field_index > -1: self.output_field.setCurrentIndex(last_output_field_index)
def _loadSettings(self): cparser = PuddleConfig() section = 'autonumbering' self._start.setValue(cparser.get(section, 'start', 1)) self._separator.setCheckState( cparser.get(section, 'separator', Qt.Unchecked)) self._padlength.setValue(cparser.get(section, 'padlength', 1)) self._restart_numbering.setCheckState( cparser.get(section, 'restart', Qt.Unchecked)) self.count_by_group.setCheckState( cparser.get(section, 'count_by_group', Qt.Unchecked)) self.showDirectorySplittingOptions(self._restart_numbering.checkState()) self.grouping.setText(cparser.get(section, 'grouping', '%__dirpath%')) output_field_text = cparser.get(section, 'output_field', 'track') if not output_field_text: output_field_text = 'track' last_output_field_index = self.output_field.findText(output_field_text) if last_output_field_index > -1: self.output_field.setCurrentIndex(last_output_field_index)
def load_macro_info(filename): modules = defaultdict(lambda: defaultdict(lambda: {})) for function in functions.values(): if isinstance(function, PluginFunction): f = function.function modules[f.__module__][f.__name__] = function else: modules[function.__module__][function.__name__] = function cparser = PuddleConfig(filename) funcs = [] name = cparser.get('info', 'name', u'') def get_func_index(funcname): if funcname.startswith('Func'): return int(funcname[4:].strip()) else: return funcname for section in sorted(cparser.sections(), key=get_func_index): if section.startswith(u'Func'): get = partial(cparser.get, section) func_name = get(FUNC_NAME, u'') fields = get(FIELDS, []) func_module = get(FUNC_MODULE, u'') arguments = get(ARGS, []) try: func = Function(modules[func_module][func_name], fields) except IndexError: continue except AttributeError: continue newargs = [] for i, (control, arg) in enumerate(zip(func.controls, arguments)): if control == CHECKBOX: if arg == False or arg == u'False': newargs.append(False) else: newargs.append(True) elif control == SPINBOX: newargs.append(int(arg)) else: newargs.append(arg) if func.controls: func.args = newargs else: func.args = arguments funcs.append(func) return [funcs, name]
def context_menu(section, actions, filepath=None): cparser = PuddleConfig(filepath) if not filepath: filepath = menu_path cparser.filename = filepath order = [translate('Menus', z) for z in cparser.get(section, 'order', [])] if not order: return texts = [unicode(action.text()) for action in actions] menu = QMenu() for action in order: if action in texts: menu.addAction(actions[texts.index(action)]) elif action == SEPARATOR: menu.addSeparator() return menu
def loadSettings(self): cparser = PuddleConfig() self.get_fieldlist = gettaglist() get = lambda k,v : cparser.get('extendedtags', k, v, True) add = QColor.fromRgb(*get('add', [255, 255, 0])) edit = QColor.fromRgb(*get('edit', [0, 255,0])) remove = QColor.fromRgb(*get('remove', [255, 0, 0])) self._colors = {ADD: QBrush(add), EDIT: QBrush(edit), REMOVE: QBrush(remove)} item = self.table.item for row in xrange(self.table.rowCount()): field_item = self.get_item(row, 0) field_item.statusColors = self._colors field_item.status = field_item.status val_item = self.get_item(row, 1) val_item.statusColors = self._colors val_item.status = val_item.status
def loadSettings(self): cparser = PuddleConfig() self.get_fieldlist = gettaglist() get = lambda k, v: cparser.get('extendedtags', k, v, True) add = QColor.fromRgb(*get('add', [255, 255, 0])) edit = QColor.fromRgb(*get('edit', [0, 255, 0])) remove = QColor.fromRgb(*get('remove', [255, 0, 0])) self._colors = { ADD: QBrush(add), EDIT: QBrush(edit), REMOVE: QBrush(remove) } item = self.table.item for row in xrange(self.table.rowCount()): field_item = self.get_item(row, 0) field_item.statusColors = self._colors field_item.status = field_item.status val_item = self.get_item(row, 1) val_item.statusColors = self._colors val_item.status = val_item.status