def _open_file(self, filter): caption = 'open File' filters = 'File (%s)' % (filter) dlg = QFileDialog(self, caption, self.lastOpenDirPath, filters) dlg.setDefaultSuffix(filter) dlg.setFileMode(QFileDialog.AnyFile) dlg.setOption(QFileDialog.DontUseNativeDialog, False) if dlg.exec_(): return dlg.selectedFiles()[0] return ''
def save_tikz(sel, *args): dialog = QFileDialog() dialog.setDefaultSuffix(".tex") result = dialog.getSaveFileName(self, QCoreApplication.translate( "side_widget", "Save TikZ Output"), filter="LaTex (*.tex)") if result[0]: try: self.__io_controller.generate_tikz(result[0]) except Exception: logger.exception("Exception while saving tikz") box = QMessageBox() box.critical( self, QCoreApplication.translate("side_widget", "Error"), QCoreApplication.translate( "side_widget", "Error while writing " "tikz file. " "See log for details."))
def __save_as(self): dialog = QFileDialog() dialog.setDefaultSuffix(".json") result = dialog.getSaveFileName( self, QCoreApplication.translate("main_window", "Save Signal-flow Graph"), filter="JSON (*.json)") if result[0]: try: self.__io_controller.save_graph(result[0]) self.__file_path = result[0] self.__set_title() except Exception: logger.exception("Exception while saving to path: %s", self.__file_path) self.__show_error( QCoreApplication.translate("main_window", "Error while saving file." " See log for details"))
def _insert_image(self): filedialog = QFileDialog(self) filedialog.setOption(QFileDialog.DontUseNativeDialog) filedialog.setDefaultSuffix("*.jpg") filedialog.setDirectory(self._cfg.get( "TextEditor/LastPath", ".", system=True)) type_files = ( self.tr("JPEG (*.jpg)"), self.tr("GIF (*.gif)"), self.tr("PNG (*.png)"), self.tr("BMP (*.bmp)"), self.tr("All files (*)"), ) filedialog.setNameFilters(type_files) if filedialog.exec_(): path = filedialog.selectedFiles()[0] fmt = path.split(".")[-1] image = QImageReader(path).read() self._doc.ins_image(image, fmt, image.width(), image.height()) self._cfg["SYSTEM", "TextEditor/LastPath"] = ( os.path.dirname(path))
def __open(self): if (not self.__ask_for_continue_if_unsaved_changes()): return dialog = QFileDialog() dialog.setDefaultSuffix(".json") result = dialog.getOpenFileName( self, QCoreApplication.translate("main_window", "Open Signal-flow Graph"), filter="JSON (*.json)") if result[0]: self.__file_path = result[0] try: self.__io_controller.load_graph(result[0]) self.__set_title() except Exception: logger.exception("Exception while loading file") self.__show_error( QCoreApplication.translate("main_window", "Error while opening file." " See log for details"))
def file_dialog(self, load_save_type=QFileDialog.AcceptSave): """Opens an file save dialog and returns the selected filename.""" file_save_dialog = QFileDialog(self) file_save_dialog.setFileMode(QFileDialog.AnyFile) file_save_dialog.setAcceptMode(load_save_type) file_save_dialog.setNameFilters( ["MPDJ files (*.{})".format(FILE_SUFFIX)]) file_save_dialog.selectNameFilter( "MPDJ files (*.{})".format(FILE_SUFFIX)) file_save_dialog.setDefaultSuffix((FILE_SUFFIX)) exec_value = file_save_dialog.exec() if exec_value == 0: return None file_names = file_save_dialog.selectedFiles() if len(file_names) != 1: message_box = QMessageBox() message_box.setText('Please select only one file!') message_box.setWindowTitle('Save error.') message_box.setStandardButtons(QMessageBox.Ok) message_box.setIcon(QMessageBox.Information) message_box.exec_() return None return file_names[0]