def __init__(self, iface, parent=None): super(Photo2ShapeDialog, self).__init__(parent) self.setupUi(self) self.iface = iface self.settings = QSettings('alexbruy', 'photo2shape') self.thread = QThread() self.importer = PhotoImporter() self.btnOk = self.buttonBox.button(QDialogButtonBox.Ok) self.btnClose = self.buttonBox.button(QDialogButtonBox.Close) self.btnSelectInput.clicked.connect(self.selectDirectory) self.btnSelectOutput.clicked.connect(self.selectFile) self.importer.moveToThread(self.thread) self.importer.importError.connect(self.thread.quit) self.importer.importError.connect(self.importCanceled) self.importer.importMessage.connect(self.logMessage) self.importer.importFinished.connect(self.thread.quit) self.importer.importFinished.connect(self.importCompleted) self.importer.photoProcessed.connect(self.updateProgress) self.thread.started.connect(self.importer.importPhotos) self.encoding = self.settings.value('encoding', 'System') self.manageGui()
def __init__(self, iface, parent=None): super(Photo2ShapeDialog, self).__init__(parent) self.setupUi(self) self.iface = iface self.settings = QgsSettings("alexbruy", "photo2shape") self.fwPhotosPath.setStorageMode(QgsFileWidget.GetDirectory) self.fwPhotosPath.setDialogTitle(self.tr("Select directory")) self.fwPhotosPath.setDefaultRoot( self.settings.value("lastPhotosDirectory", os.path.expanduser("~"), str)) self.fwPhotosPath.fileChanged.connect(self.updateLastPhotosPath) self.fwOutputShape.setStorageMode(QgsFileWidget.SaveFile) self.fwOutputShape.setConfirmOverwrite(True) self.fwOutputShape.setDialogTitle(self.tr("Select file")) self.fwOutputShape.setDefaultRoot( self.settings.value("lastShapeDirectory", QgsProject.instance().homePath(), str)) self.fwOutputShape.setFilter(self.tr("ESRI Shapefile (*.shp *.SHP)")) self.fwOutputShape.fileChanged.connect(self.updateLastShapePath) self.thread = QThread() self.importer = PhotoImporter() self.btnOk = self.buttonBox.button(QDialogButtonBox.Ok) self.btnClose = self.buttonBox.button(QDialogButtonBox.Close) self.importer.moveToThread(self.thread) self.importer.importError.connect(self.thread.quit) self.importer.importError.connect(self.importCanceled) self.importer.importMessage.connect(self.logMessage) self.importer.importFinished.connect(self.thread.quit) self.importer.importFinished.connect(self.importCompleted) self.importer.photoProcessed.connect(self.updateProgress) self.thread.started.connect(self.importer.importPhotos) self.encoding = self.settings.value("encoding", "utf-8", str) self.chkRecurse.setChecked(self.settings.value("recurse", True, bool)) self.chkAppend.setChecked(self.settings.value("append", True, bool)) self.chkLoadLayer.setChecked( self.settings.value("loadLayer", True, bool))