def save(self, file_name=None): if file_name is None: file_name, _ = QFileDialog.getSaveFileName( None, "Save Flow Scene", QDir.homePath(), "Flow Scene Files (*.flow)") if file_name: file_name = str(file_name) if not file_name.endswith(".flow"): file_name += ".flow" with open(file_name, 'wt') as f: json.dump(self.__getstate__(), f)
def load(self, file_name=None): if file_name is None: file_name, _ = QFileDialog.getOpenFileName( None, "Open Flow Scene", QDir.homePath(), "Flow Scene Files (*.flow)") if not os.path.exists(file_name): return with open(file_name, 'rt') as f: doc = json.load(f) self.__setstate__(doc)
def showSelectProjectDialog(parent: QWidget = None) -> Optional[Path]: dialog = QFileDialog(parent, Qt.Dialog) dialog.setWindowFlags(Qt.WindowStaysOnTopHint | Qt.Dialog) dialog.setAcceptMode(QFileDialog.AcceptSave) dialog.setLabelText(QFileDialog.LookIn, "Select project folder") dialog.setFileMode(QFileDialog.Directory) dialog.setOption(QFileDialog.ShowDirsOnly, True) dialog.setViewMode(QFileDialog.Detail) dialog.setDirectory(QDir.homePath()) if dialog.exec_(): paths = dialog.selectedFiles() assert len(paths) == 1 path = Path(paths[0]) return path
def openFile(self): #called when user clicks on Open or presses ctrl+o #opens filedialog and finds file #if filename is not None try and openwith tifffile library and store in videoviewer property 'frames' #currently only .ome.tif image stacks are supported. fileName, _ = QFileDialog.getOpenFileName( self, "Choose Video or Image Stack", QDir.homePath()) if self.model is None: self.model = QTiffStackModel() self.model.addFrames(fileName) if self.model.frames is not None: self.videoviewer.updateRanges(self.model.videolength - 1)
def openFile(self): #called when user clicks on Open or presses ctrl+o #opens filedialog and finds file #if filename is not None try and openwith tifffile library and store in videoviewer property 'frames' #currently only .ome.tif image stacks are supported. fileName, _ = QFileDialog.getOpenFileName(self,"Choose Video or Image Stack",QDir.homePath()) if fileName != '' and fileName[-4:] == '.tif': with tf.TiffFile(fileName) as tif: frames = tif.asarray() if self.model is None: self.model = QTiffStackModel(frames) else: self.model.addFrames(frames)