def restore_default_queries(self): """ Overwrite all queries """ text = self.pushButton_restoreQueries.text() self.pushButton_restoreQueries.setText(tr('QuickOSM', 'Copy ...')) get_user_query_folder(over_write=True) self.signal_new_query_successful.emit() self.my_queries.fill_tree(force=True) self.pushButton_restoreQueries.setText(text)
def restore_default_queries(self): """ Overwrite all queries """ text = self.pushButton_restoreQueries.text() self.pushButton_restoreQueries.setText(tr('QuickOSM', 'Copy ...')) get_user_query_folder(over_write=True) self.signal_new_query_successful.emit() # self.my_queries.fill_tree(force=True) self.pushButton_restoreQueries.setText(text)
def __init__(self, iface): """Constructor. :param iface: An interface instance that will be passed to this class which provides the hook by which you can manipulate the QGIS application at run time. :type iface: QgsInterface """ # Save reference to the QGIS interface self.iface = iface setup_logger('QuickOSM') # initialize plugin directory self.plugin_dir = dirname(__file__) # initialize locale locale = QSettings().value('locale/userLocale')[0:2] locale_path = join( self.plugin_dir, 'i18n', 'QuickOSM_{0}.qm'.format(locale)) if exists(locale_path): self.translator = QTranslator() self.translator.load(locale_path) if qVersion() > '4.3.3': # noinspection PyTypeChecker QCoreApplication.installTranslator(self.translator) # Create the folder if it does not exist. get_user_query_folder(over_write=True) # Add to processing self.provider = QuickOSMAlgorithmProvider() Processing.addProvider(self.provider, True) # Add the toolbar self.toolbar = self.iface.addToolBar('QuickOSM') self.toolbar.setObjectName('QuickOSM') self.quickosm_menu = None self.dock_menu = None self.vector_menu = None self.mainWindowAction = None self.osmFileAction = None self.osmFileDockWidget = None self.myQueriesAction = None self.myQueriesDockWidget = None self.queryAction = None self.queryDockWidget = None self.quickQueryAction = None self.quickQueryDockWidget = None
def accept(self): """ On accept, we call the FileQueryWriter """ category = self.lineEdit_category.text() name = self.lineEdit_name.text() # Get folder .qgis2/QuickOSM/queries on linux for instance folder = get_user_query_folder() ini_file = FileQueryWriter( path=folder, name=name, category=category, query=self.query, white_list_values=self.white_list_values, output_geometry_types=self.output_geometry_types) try: if not category: raise MissingParameterException(suffix='category') if not name: raise MissingParameterException(suffix='name') ini_file.save() self.signal_new_query_successful.emit() self.hide() except QuickOsmException, e: self.message_bar.pushMessage( e.msg, level=e.level, duration=e.duration)
def accept(self): """ On accept, we call the FileQueryWriter """ category = self.lineEdit_category.text() name = self.lineEdit_name.text() # Get folder .qgis2/QuickOSM/queries on linux for instance folder = get_user_query_folder() ini_file = FileQueryWriter( path=folder, name=name, category=category, query=self.query, white_list_values=self.white_list_values, output_geometry_types=self.output_geometry_types) try: if not category: raise MissingParameterException(suffix='category') if not name: raise MissingParameterException(suffix='name') ini_file.save() self.signal_new_query_successful.emit() self.hide() except QuickOsmException, e: self.message_bar.pushMessage(e.msg, level=e.level, duration=e.duration)
def defineCharacteristics(self): self.name = "Queries available" self.group = "Tools" # Get the folder and all files queries folder = get_user_query_folder() cat_files = FileQuery.get_ini_files_from_folder(folder, force=False) for cat in cat_files: for query in cat_files[cat]: self.__queries[cat + " : " + query.getName()] = query self.__names = self.__queries.keys() self.addParameter( ParameterSelection(self.NAME_FILE, 'Queries available', self.__names)) self.addOutput(OutputString(self.OUTPUT_INI, "Ini filepath as string"))
def defineCharacteristics(self): self.name = "Queries available" self.group = "Tools" # Get the folder and all files queries folder = get_user_query_folder() cat_files = FileQuery.get_ini_files_from_folder(folder, force=False) for cat in cat_files: for query in cat_files[cat]: self.__queries[cat + " : " + query.getName()] = query self.__names = self.__queries.keys() self.addParameter( ParameterSelection( self.NAME_FILE, 'Queries available', self.__names)) self.addOutput(OutputString(self.OUTPUT_INI, "Ini filepath as string"))
def accept(self): """ On accept, we call the FileQueryWriter """ category = self.lineEdit_category.text() name = self.lineEdit_name.text() # Get folder .qgis2/QuickOSM/queries on linux for instance folder = get_user_query_folder() ini_file = FileQueryWriter( path=folder, name=name, category=category, query=self.query, whiteListValues=self.whiteListValues, outputGeomTypes=self.outputGeomTypes) try: ini_file.save() self.signal_new_query_successful.emit() self.hide() except QuickOsmException, e: self.bar.pushMessage(e.msg, level=e.level, duration=e.duration)
def fill_tree(self, force=False): """ Fill the tree with queries @param force:To force the tree to refresh. @type force: bool """ self.treeQueries.clear() # Get the folder and all file queries folder = get_user_query_folder() categories_files = FileQuery.get_ini_files_from_folder(folder, force=force) # Fill all categories for cat, files in categories_files.items(): category_item = QTreeWidgetItem([cat], 0) self.treeQueries.addTopLevelItem(category_item) for one_file in files: query_item = TreeQueryItem(category_item, one_file) self.treeQueries.addTopLevelItem(query_item) self.treeQueries.resizeColumnToContents(0)
def fill_tree(self, force=False): """ Fill the tree with queries @param force:To force the tree to refresh. @type force: bool """ self.treeQueries.clear() # Get the folder and all file queries folder = get_user_query_folder() categories_files = FileQuery.get_ini_files_from_folder( folder, force=force) # Fill all categories for cat, files in categories_files.iteritems(): category_item = QTreeWidgetItem([cat], 0) self.treeQueries.addTopLevelItem(category_item) for one_file in files: query_item = TreeQueryItem(category_item, one_file) self.treeQueries.addTopLevelItem(query_item) self.treeQueries.resizeColumnToContents(0)