Exemplo n.º 1
0
    def saveReport(self):
        filename, filter = QFileDialog.getSaveFileName(
            None, self.tr("Save report to:"), ".",
            self.tr("Excel files (*.xlsx)"))
        if filename:
            if filter == self.tr(
                    "Excel files (*.xlsx)") and filename[-5:] != '.xlsx':
                filename = filename + '.xlsx'
        else:
            return

        report = XLSX(filename)
        # sheet = report.add_report_sheet(self.tr("Report"))
        #
        # model = self.table_view.model()
        # headers = {}
        # for col in range(model.columnCount()):
        #     headers[col] = (model.headerData(col, Qt.Horizontal), report.formats.ColumnHeader())
        # report.write_row(sheet, 0, headers)
        #
        # for row in range(model.rowCount()):
        #     data_row = {}
        #     for col in range(model.columnCount()):
        #         data_row[col] = (model.data(model.index(row, col)), report.formats.Text(row))
        #     report.write_row(sheet, row+1, data_row)

        report.save()
Exemplo n.º 2
0
    def save_as(self):
        sig_filter = 'Signature library (*.sig)'
        json_zlib_filter = 'Compressed JSON signature library (*.json.zlib)'
        json_filter = 'JSON signature library (*.json)'
        pkl_filter = 'Pickled signature library (*.pkl)'
        fname, filter = QFileDialog.getSaveFileName(self,
                                                    'Open file',
                                                    filter=';;'.join([
                                                        sig_filter,
                                                        json_zlib_filter,
                                                        json_filter, pkl_filter
                                                    ]))

        if filter == json_zlib_filter:
            with open(fname, 'wb') as f:
                f.write(
                    zlib.compress(
                        sig_serialize_json.serialize(
                            self.sig_trie).encode('utf-8')))
        elif filter == json_filter:
            with open(fname, 'w') as f:
                json.dump(sig_serialize_json.serialize(self.sig_trie),
                          f,
                          indent=4)
        elif filter == sig_filter:
            with open(fname, 'wb') as f:
                f.write(sig_serialize_fb.SignatureLibraryWriter().serialize(
                    self.sig_trie))
        elif filter == pkl_filter:
            with open(fname, 'wb') as f:
                pickle.dump(self.sig_trie, f)
        else:
            return
        print('Saved as ' + fname)
Exemplo n.º 3
0
    def browse_file(self):
        save_file = QFileDialog.getSaveFileName(self,
                                                caption="Save File As",
                                                filter="All Files (*.*)",
                                                dir=".")

        self.ui.txt_dest.setText(save_file[0])
Exemplo n.º 4
0
 def button_target_clicked(self):
     """
     Callback for button_target
     """
     target_path, _ = QFileDialog.getSaveFileName(self, "Save Video", "",
                                                  "Video Files (*.mkv)")
     self.ui.line_target.setText(target_path)
Exemplo n.º 5
0
    def saveAs(self):
        fileName, _ = QFileDialog.getSaveFileName(self, "Save As",
                                                  self.curFile)
        if not fileName:
            return False

        return self.saveFile(fileName)
Exemplo n.º 6
0
    def ExportTeams(self):

        export_dir = self.config["save_route"] if self.config["save_route"] \
                                                    is not None else THISDIR
        exported_file = QFileDialog.getSaveFileName(self, "Save File",
            export_dir, "Save files (*.zip)")

        if exported_file[0] != "":
            export_filename = exported_file[0]
            if export_filename.endswith(".zip") is False:
                export_filename += ".zip"
            files_to_export = []
            files_to_export.append("config\\teams.json")

            for root, directories, files in os.walk(THISDIR+"\\images\\logos"):
                for filename in files:
                    filepath = os.path.join(root, filename)
                    files_to_export.append(filepath)

            with ZipFile(export_filename, "w") as export_zip:
                for exp_file in files_to_export:
                    export_name = exp_file
                    if exp_file.endswith(".json"):
                        split_name = exp_file.split("\\")
                        export_name = split_name[-1]
                    if exp_file.endswith(".png"):
                        split_name = exp_file.split("\\")
                        export_name = "\\logos\\" + split_name[-1]
                    export_zip.write(exp_file, arcname=export_name)
                export_zip.close()

            if os.path.exists(export_filename):
                QMessageBox.information(self, "Export",
                    "The export was successful")
Exemplo n.º 7
0
 def getNewFile(self):
     address, x = QFileDialog.getSaveFileName(self, "Salvar como",
         filter = "Text files (*.csv);; Text files (*.txt);; Planilha do Microsoft Excel (*.xlsx)"
         )
     if len(address) > 0:
         self.folder.setText(address)
         self.folder.setModified(True)
Exemplo n.º 8
0
 def _prompt_save_database(self):
     open_result = QFileDialog.getSaveFileName(
         self,
         caption="Select a Randovania database path.",
         filter="*.json")
     if not open_result or open_result == ("", ""):
         return
     self._save_database(Path(open_result[0]))
Exemplo n.º 9
0
 def on_action_export_cybercard(self):
     contents = self.midcom.get_dat()
     filename = QFileDialog.getSaveFileName(
         parent=self.window,
         caption='Export Tax File to Cybercard Format',
         filter='SD Card Tax File (*.dat)')
     print(f'Writing to {filename[0]} in Cybercard format.')
     self.write_file(filename[0], contents)
Exemplo n.º 10
0
 def download_file(self):
     file_path = QFileDialog.getSaveFileName(self, 'Save File', 'C:\\',
                                             'Texts (*.txt)')[0]
     file_content = get_chapter('single', self.b_id, self.chap_id)[1]
     if file_content == []:
         self.display_status_message('Fail to download.', 2000)
     with open(file_path, 'w', encoding='utf-8') as fp:
         fp.write(file_content)
     self.display_status_message('Successfully downloaded.', 2000)
Exemplo n.º 11
0
Arquivo: ui.py Projeto: roadroot/chess
 def saveAs(self, f):
     saveAs = QFileDialog()
     saveAs.setDefaultSuffix('.json')
     self.timer.stop()
     fileName, _ = saveAs.getSaveFileName(parent=self.window,
                                          filter="JSON (*.json)",
                                          caption="Save as json file.")
     self.timer.start(1)
     if fileName:
         self.saveDefaultPath = fileName
         self.save(f)
Exemplo n.º 12
0
 def save_preset(self):
     presets_dir = os.path.join(os.path.dirname(__file__), "presets")
     if not os.path.exists(presets_dir):
         os.makedirs(presets_dir)
     file = QFileDialog.getSaveFileName(self,
                                        SettingsWindow.SAVE_PRESET_TEXT,
                                        presets_dir,
                                        "Configuration files (*.ini)")[0]
     if file:
         settings = QSettings(file, QSettings.IniFormat)
         self.save_settings_from_fields(settings)
Exemplo n.º 13
0
 def saveFileDialog(self):
     options = QFileDialog.Options()
     options |= QFileDialog.DontUseNativeDialog
     fileName, _ = QFileDialog.getSaveFileName(
         self,
         "QFileDialog.getSaveFileName()",
         "",
         "All Files (*);;Text Files (*.txt)",
         options=options)
     if fileName:
         print(fileName)
Exemplo n.º 14
0
 def save_png(self):
     pdf_folder = self.settings.value('pdf_folder')
     file_name, _ = QFileDialog.getSaveFileName(self,
                                                "Save an image file.",
                                                dir=pdf_folder,
                                                filter='Images (*.png)')
     if not file_name:
         return
     writer = QPixmap(1000, 2000)
     self.paint_puzzle(writer)
     writer.save(file_name)
     self.settings.setValue('pdf_folder', os.path.dirname(file_name))
Exemplo n.º 15
0
    def write_image(self):
        if not self.is_loaded:
            self.ui.output_label.setText("Изображение не загружено в программу")
            return

        path, _ = QFileDialog.getSaveFileName(self, "Сохранить изображение", "", "Допустимые форматы (*.png)")

        if self.image.save(path, "PNG"):
            self.ui.output_label.setText(f"Изображение успешно сохранено в {path}")
            return
        else:
            self.ui.output_label.setText('Не удалось сохранить изображение')
Exemplo n.º 16
0
 def get_filename(self, save=True):
     self.backup_name = None
     if save:
         filename, filter = QFileDialog.getSaveFileName(None, self.tr("Save backup to:"),
                                                        ".", self.tr("Archives (*.tgz)"))
         if filename:
             if filter == self.tr("Archives (*.tgz)") and filename[-4:] != '.tgz':
                 filename = filename + '.tgz'
     else:
         filename, _filter = QFileDialog.getOpenFileName(None, self.tr("Select file with backup"),
                                                         ".", self.tr("Archives (*.tgz)"))
     if filename:
         self.backup_name = filename
Exemplo n.º 17
0
 def save_pdf(self):
     pdf_folder = self.settings.value('pdf_folder')
     file_name, _ = QFileDialog.getSaveFileName(self,
                                                "Save a PDF file.",
                                                dir=pdf_folder,
                                                filter='Documents (*.pdf)')
     if not file_name:
         return
     self.settings.setValue('pdf_folder', os.path.dirname(file_name))
     writer = QPdfWriter(file_name)
     writer.setPageSize(QPageSize(QPageSize.Letter))
     writer.setTitle('Sliced Art Puzzle')
     writer.setCreator('Don Kirkby')
     self.paint_puzzle(writer)
Exemplo n.º 18
0
    def _handle_file_save(self, overwrite=False):
        if not overwrite or not self._loaded_config.path:
            file_path = QFileDialog.getSaveFileName(
                self,
                caption="Save the current config...",
                dir=os.getcwd(),
                filter="Config Files (*.yml *.yaml)",
            )[0]
        else:
            file_path = self._loaded_config.path

        if file_path:
            self.config.save(file_path)
            self.reset_changes(file_path)
Exemplo n.º 19
0
    def SaveChip(self, saveAs=False) -> bool:
        if saveAs or not AppGlobals.Chip().HasBeenSaved():

            filename, filterType = QFileDialog.getSaveFileName(
                self, "Save Chip", filter="uChip Project File (*.ucc)")
            if filename:
                AppGlobals.Chip().SaveToFile(Path(filename))
                AppGlobals.Instance().onChipSaved.emit()
                return True
            return False
        else:
            AppGlobals.Chip().SaveToFile(AppGlobals.Chip().path)
            AppGlobals.Instance().onChipSaved.emit()
            return True
Exemplo n.º 20
0
def fileSaveDialog(parent: Optional[QWidget],
                   title: str,
                   folder: str = '',
                   filter: str = '',
                   extension: str = '') -> Optional[Path]:
    path = QFileDialog.getSaveFileName(parent, title, folder, filter)[0]

    if not path:
        return None

    if not path.endswith('.' + extension):
        path += '.' + extension

    return Path(path)
Exemplo n.º 21
0
    def export_file(self, f, text, ffilter="*"):
        """Export to file."""
        fname = QFileDialog.getSaveFileName(self, text, filter=ffilter)[0]
        if fname:
            if ffilter != "*":
                exts = [ext.replace("*", "") for ext in ffilter.split()]

                maxsuffixes = max([ext.count(".") for ext in exts])
                suffixes = Path(fname).suffixes
                for i in range(-maxsuffixes, 0):
                    ext = "".join(suffixes[i:])
                    if ext in exts:
                        return f(fname)
                fname = fname + exts[0]
                return f(fname)
Exemplo n.º 22
0
    def on_select_clicked(self):
        if self.main_window.config.path:
            config_dir = os.path.dirname(self.main_window.config.path)
        else:
            config_dir = os.getcwd()

        file_path = QFileDialog.getSaveFileName(
            self.tab,
            caption="Select a file...",
            dir=config_dir,
            options=QFileDialog.DontConfirmOverwrite,
        )[0]

        if file_path:
            self.name_field.setText(os.path.relpath(file_path, config_dir))
Exemplo n.º 23
0
 def save_header_file(self):
     '''
     保存key value
     '''
     path_text = self.lineEdit_headers_path.text().strip()
     if path_text == '':
         # 弹窗保存文件的对话框
         if getattr(sys, 'frozen', False):
             app_path = Path(sys.executable).parent.resolve().as_posix()
         else:
             app_path = Path(__file__).parent.parent.parent.parent.resolve().as_posix()
         path_text, selectedFilter = QFileDialog.getSaveFileName(None, caption="save as *.json", dir=app_path, filter='Json (*.json)')
     if not path_text:
         return
     Path(path_text).write_text(json.dumps(self.config, ensure_ascii=False, indent=4), encoding='utf-8')
Exemplo n.º 24
0
 def save_file(self, term_list):
     filename = QFileDialog.getSaveFileName(
         self,
         'Save file',
         '',
         'All Files (*)'
     )[0]
     i = self.combo.currentIndex()
     if i == 0:
         s.write_csv(term_list, filename + '.csv')
     elif i == 1:
         s.write_txt(term_list, filename + '.txt')
     elif i == 2:
         s.write_xls(term_list, filename + '.xls')
     elif i == 3:
         s.write_anki(term_list, self.add_deck_box.text(), filename + '.apkg')
Exemplo n.º 25
0
 def saveFile(self):
     fileName, _ = QFileDialog.getSaveFileName(self, "选择输出文件名", "",
                                               "CVS文件 (*.csv)")
     if fileName:
         self.ofile = fileName
         if self.ui.checkBox.isChecked():
             (pname, ext) = os.path.splitext(fileName)
             self.ofileadd = pname + "-新增名单" + ext
             self.ofilerem = pname + "-删减名单" + ext
             self.logger(u"新增学生名单将保存为:" + self.ofileadd)
             self.logger(u"删减学生名单将保存为:" + self.ofilerem)
         else:
             self.logger(u"注册名单将保存为:" + fileName)
     else:
         self.ofile = ""
         self.logger("用户取消操作")
Exemplo n.º 26
0
 def SavePicture(self):
     data = self.waifu2xData if self.waifu2xData else self.data
     if not data:
         return
     try:
         today = time.strftime("%Y%m%d%H%M%S", time.localtime(time.time()))
         picFormat = self.format if self.format else "jpg"
         filepath = QFileDialog.getSaveFileName(self, "Save", "{}.{}".format(today, picFormat))
         if filepath and len(filepath) >= 1 and filepath[0]:
             name = filepath[0]
             f = open(name, "wb")
             f.write(data)
             f.close()
     except Exception as es:
         Log.Error(es)
     return
Exemplo n.º 27
0
    def exportToAndOTP(self):
        accounts = []

        for account in self.base.getAccounts():
            type = account['type']

            if type == Globals.OTPAuth:
                accounts.append({
                    'secret': account['key'],
                    'digits': 6,
                    'period': 30,
                    'label': account['name'],
                    'type': 'TOTP',
                    'algorithm': 'SHA1',
                    'thumbnail': 'Default',
                    'last_used': 0,
                    'tags': []
                })
            elif type == Globals.SteamAuth:
                accounts.append({
                    'secret':
                    base64.b32encode(base64.b64decode(
                        account['sharedSecret'])).decode('utf-8'),
                    'digits':
                    5,
                    'period':
                    30,
                    'label':
                    account['name'],
                    'type':
                    'STEAM',
                    'algorithm':
                    'SHA1',
                    'thumbnail':
                    'Default',
                    'last_used':
                    0,
                    'tags': []
                })

        accounts = json.dumps(accounts)
        filename, _ = QFileDialog.getSaveFileName(
            self, 'Export to andOTP JSON file', '', 'All Files (*)')

        if filename:
            with open(filename, 'w') as file:
                file.write(accounts)
Exemplo n.º 28
0
    def save(self):
        filename, _ = QFileDialog.getSaveFileName(self, "Choose a file name",
                                                  '.', "HTML (*.html *.htm)")
        if not filename:
            return

        file = QFile(filename)
        if not file.open(QFile.WriteOnly | QFile.Text):
            QMessageBox.warning(
                self, "Dock Widgets",
                "Cannot write file %s:\n%s." % (filename, file.errorString()))
            return

        out = QTextStream(file)
        QApplication.setOverrideCursor(Qt.WaitCursor)
        out << self.textEdit.toHtml()
        QApplication.restoreOverrideCursor()

        self.statusBar().showMessage("Saved '%s'" % filename, 2000)
Exemplo n.º 29
0
 def OnFileBtn(self, type):
     if type == 'XLS':
         selector = (self.tr("Save tax reports to:"),
                     self.tr("Excel files (*.xlsx)"), '.xlsx',
                     self.XlsFileName)
     elif type == 'DLSG':
         last_digit = self.year % 10
         selector = (self.tr("Save tax form to:"),
                     self.tr(f"Tax form (*.dc{last_digit})"),
                     f".dc{last_digit}", self.DlsgFileName)
     else:
         raise ValueError
     filename = QFileDialog.getSaveFileName(self, selector[0], ".",
                                            selector[1])
     if filename[0]:
         if filename[1] == selector[
                 1] and filename[0][-len(selector[2]):] != selector[2]:
             selector[3].setText(filename[0] + selector[2])
         else:
             selector[3].setText(filename[0])
Exemplo n.º 30
0
 def on_new_db(self):
     settings = get_settings()
     db_path = settings.value('db_path')
     file_name, _ = QFileDialog.getSaveFileName(
         self,
         "Create a new database",
         dir=db_path,
         filter='Player databases (*.zpl)',
         options=QFileDialog.DontUseNativeDialog)
     if not file_name:
         return
     script_path = str(Path(__file__).parent / 'db')
     database_path = Path(file_name).absolute()
     settings.setValue('db_path', str(database_path))
     database_url = get_database_url(database_path)
     alembic_config = Config(
         config_args=immutabledict({
             'script_location': script_path,
             'sqlalchemy.url': database_url
         }))
     command.upgrade(alembic_config, 'head')