diff --git a/cui.win.bat b/cui.win.bat new file mode 100644 index 0000000..e9a5937 --- /dev/null +++ b/cui.win.bat @@ -0,0 +1,4 @@ + +pyside2-uic mainwindow.ui -o mainwindow.py +pyside2-rcc kmanapp.qrc -o kmanapp_rc.py +cp -fr *py *md *ico *qrc *ui ~/penv/kman/ diff --git a/kmanapp.win.spec b/kmanapp.win.spec new file mode 100644 index 0000000..1bebb8e --- /dev/null +++ b/kmanapp.win.spec @@ -0,0 +1,68 @@ +# -*- mode: python ; coding: utf-8 -*- + +''' +import sys +import os + +frozen = 'not' +basedir = '' +if getattr(sys, 'frozen', False): + # we are running in a bundle + frozen = 'ever so' + basedir = sys._MEIPASS + os.chdir(basedir) +else: + # we are running in a normal Python environment + #basedir = os.path.dirname(os.path.abspath(__file__)) + pass +print('basedir - {}'.format(basedir)) +''' + +block_cipher = None + +a = Analysis(['kman.py', + 'kmanapp.py', + 'kmanapp_rc.py', + 'mainwindow.py', + 'parseweb.py',], + pathex=[ + 'D:\\penvprj\\kman', + 'c:\\users\\admin\\envs\\kman\\lib\\site-packages', + 'c:\\Users\\admin\\Envs\\kman\\Lib\\site-packages\\shiboken2', + 'c:\\users\\admin\\envs\\kman\\lib\\site-packages\\PySide2', + ], + #pathex=[basedir], + binaries=[], + datas=[('backup','backup'), + ('My Clippings.txt','.'), + ('vocab.db','.'), + ('downimg','downimg'), + ('*.md','.')], + hiddenimports=[], + hookspath=[], + runtime_hooks=[], + excludes=[], + win_no_prefer_redirects=False, + win_private_assemblies=False, + cipher=block_cipher, + noarchive=False) +pyz = PYZ(a.pure, a.zipped_data, + cipher=block_cipher) +exe = EXE(pyz, + a.scripts, + [], + exclude_binaries=True, + name='kmanapp', + debug=False, + bootloader_ignore_signals=False, + strip=False, + upx=True, + console=False, icon='kmanapp.ico') +coll = COLLECT(exe, + a.binaries, + a.zipfiles, + a.datas, + strip=False, + upx=True, + upx_exclude=[], + name='kmanapp') diff --git a/mainwindow.py b/mainwindow.py index 9885276..c6be182 100644 --- a/mainwindow.py +++ b/mainwindow.py @@ -1,218 +1,171 @@ -# -*- coding: utf-8 -*- - -################################################################################ -## Form generated from reading UI file 'mainwindow.ui' -## -## Created by: Qt User Interface Compiler version 5.15.0 -## -## WARNING! All changes made in this file will be lost when recompiling UI file! -################################################################################ - -from PySide2.QtCore import (QCoreApplication, QDate, QDateTime, QMetaObject, - QObject, QPoint, QRect, QSize, QTime, QUrl, Qt) -from PySide2.QtGui import (QBrush, QColor, QConicalGradient, QCursor, QFont, - QFontDatabase, QIcon, QKeySequence, QLinearGradient, QPalette, QPainter, - QPixmap, QRadialGradient) -from PySide2.QtWidgets import * - -import kmanapp_rc - -class Ui_MainWindow(object): - def setupUi(self, MainWindow): - if not MainWindow.objectName(): - MainWindow.setObjectName(u"MainWindow") - MainWindow.resize(774, 410) - MainWindow.setIconSize(QSize(40, 40)) - self.actionimportlocal = QAction(MainWindow) - self.actionimportlocal.setObjectName(u"actionimportlocal") - icon = QIcon() - icon.addFile(u":/icons/downr.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionimportlocal.setIcon(icon) - self.actionimportkindle = QAction(MainWindow) - self.actionimportkindle.setObjectName(u"actionimportkindle") - icon1 = QIcon() - icon1.addFile(u":/icons/kindle.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionimportkindle.setIcon(icon1) - self.actionconfig = QAction(MainWindow) - self.actionconfig.setObjectName(u"actionconfig") - icon2 = QIcon() - icon2.addFile(u":/icons/config.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionconfig.setIcon(icon2) - self.actionflush = QAction(MainWindow) - self.actionflush.setObjectName(u"actionflush") - icon3 = QIcon() - icon3.addFile(u":/icons/refresh.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionflush.setIcon(icon3) - self.actionwords = QAction(MainWindow) - self.actionwords.setObjectName(u"actionwords") - icon4 = QIcon() - icon4.addFile(u":/icons/books.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionwords.setIcon(icon4) - self.actionstatistic = QAction(MainWindow) - self.actionstatistic.setObjectName(u"actionstatistic") - icon5 = QIcon() - icon5.addFile(u":/icons/statistics.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionstatistic.setIcon(icon5) - self.actionhomepage = QAction(MainWindow) - self.actionhomepage.setObjectName(u"actionhomepage") - icon6 = QIcon() - icon6.addFile(u":/icons/web.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionhomepage.setIcon(icon6) - self.actionabout = QAction(MainWindow) - self.actionabout.setObjectName(u"actionabout") - icon7 = QIcon() - icon7.addFile(u":/icons/question.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionabout.setIcon(icon7) - self.actionsearch = QAction(MainWindow) - self.actionsearch.setObjectName(u"actionsearch") - icon8 = QIcon() - icon8.addFile(u":/icons/Pixadex.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionsearch.setIcon(icon8) - self.actionexport = QAction(MainWindow) - self.actionexport.setObjectName(u"actionexport") - icon9 = QIcon() - icon9.addFile(u":/icons/md2.png", QSize(), QIcon.Normal, QIcon.Off) - self.actionexport.setIcon(icon9) - self.centralwidget = QWidget(MainWindow) - self.centralwidget.setObjectName(u"centralwidget") - self.gridLayout = QGridLayout(self.centralwidget) - self.gridLayout.setObjectName(u"gridLayout") - self.horizontalLayout = QHBoxLayout() - self.horizontalLayout.setObjectName(u"horizontalLayout") - self.searchLabel = QLabel(self.centralwidget) - self.searchLabel.setObjectName(u"searchLabel") - - self.horizontalLayout.addWidget(self.searchLabel) - - self.searchLineEdit = QLineEdit(self.centralwidget) - self.searchLineEdit.setObjectName(u"searchLineEdit") - - self.horizontalLayout.addWidget(self.searchLineEdit) - - self.searchComboBox = QComboBox(self.centralwidget) - self.searchComboBox.setObjectName(u"searchComboBox") - - self.horizontalLayout.addWidget(self.searchComboBox) - - self.searchToolButton = QToolButton(self.centralwidget) - self.searchToolButton.setObjectName(u"searchToolButton") - icon10 = QIcon() - icon10.addFile(u":/icons/search.jpeg", QSize(), QIcon.Normal, QIcon.Off) - self.searchToolButton.setIcon(icon10) - - self.horizontalLayout.addWidget(self.searchToolButton) - - - self.gridLayout.addLayout(self.horizontalLayout, 0, 0, 1, 1) - - self.splitter_2 = QSplitter(self.centralwidget) - self.splitter_2.setObjectName(u"splitter_2") - self.splitter_2.setOrientation(Qt.Horizontal) - self.treeView = QTreeView(self.splitter_2) - self.treeView.setObjectName(u"treeView") - sizePolicy = QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding) - sizePolicy.setHorizontalStretch(0) - sizePolicy.setVerticalStretch(0) - sizePolicy.setHeightForWidth(self.treeView.sizePolicy().hasHeightForWidth()) - self.treeView.setSizePolicy(sizePolicy) - self.treeView.setMaximumSize(QSize(401, 16777215)) - self.splitter_2.addWidget(self.treeView) - self.treeView.header().setVisible(False) - self.splitter = QSplitter(self.splitter_2) - self.splitter.setObjectName(u"splitter") - self.splitter.setOrientation(Qt.Vertical) - self.tableView = QTableView(self.splitter) - self.tableView.setObjectName(u"tableView") - sizePolicy1 = QSizePolicy(QSizePolicy.Maximum, QSizePolicy.Expanding) - sizePolicy1.setHorizontalStretch(0) - sizePolicy1.setVerticalStretch(0) - sizePolicy1.setHeightForWidth(self.tableView.sizePolicy().hasHeightForWidth()) - self.tableView.setSizePolicy(sizePolicy1) - self.splitter.addWidget(self.tableView) - self.textEdit = QTextBrowser(self.splitter) - self.textEdit.setObjectName(u"textEdit") - self.splitter.addWidget(self.textEdit) - self.splitter_2.addWidget(self.splitter) - - self.gridLayout.addWidget(self.splitter_2, 1, 0, 1, 1) - - MainWindow.setCentralWidget(self.centralwidget) - self.statusbar = QStatusBar(MainWindow) - self.statusbar.setObjectName(u"statusbar") - MainWindow.setStatusBar(self.statusbar) - self.menuBar = QMenuBar(MainWindow) - self.menuBar.setObjectName(u"menuBar") - self.menuBar.setGeometry(QRect(0, 0, 774, 22)) - MainWindow.setMenuBar(self.menuBar) - self.toolBar = QToolBar(MainWindow) - self.toolBar.setObjectName(u"toolBar") - MainWindow.addToolBar(Qt.TopToolBarArea, self.toolBar) - - self.toolBar.addAction(self.actionimportkindle) - self.toolBar.addAction(self.actionimportlocal) - self.toolBar.addSeparator() - self.toolBar.addAction(self.actionexport) - self.toolBar.addAction(self.actionwords) - self.toolBar.addAction(self.actionstatistic) - self.toolBar.addSeparator() - self.toolBar.addAction(self.actionconfig) - self.toolBar.addSeparator() - self.toolBar.addAction(self.actionhomepage) - self.toolBar.addAction(self.actionabout) - self.toolBar.addSeparator() - self.toolBar.addAction(self.actionflush) - - self.retranslateUi(MainWindow) - - QMetaObject.connectSlotsByName(MainWindow) - # setupUi - - def retranslateUi(self, MainWindow): - MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"Kindle Management", None)) - self.actionimportlocal.setText(QCoreApplication.translate("MainWindow", u"importlocal", None)) -#if QT_CONFIG(tooltip) - self.actionimportlocal.setToolTip(QCoreApplication.translate("MainWindow", u"import clipping file from local clipping file", None)) -#endif // QT_CONFIG(tooltip) - self.actionimportkindle.setText(QCoreApplication.translate("MainWindow", u"importkindle", None)) -#if QT_CONFIG(tooltip) - self.actionimportkindle.setToolTip(QCoreApplication.translate("MainWindow", u"import clipping file from kindle", None)) -#endif // QT_CONFIG(tooltip) - self.actionconfig.setText(QCoreApplication.translate("MainWindow", u"config", None)) -#if QT_CONFIG(tooltip) - self.actionconfig.setToolTip(QCoreApplication.translate("MainWindow", u"configuration", None)) -#endif // QT_CONFIG(tooltip) - self.actionflush.setText(QCoreApplication.translate("MainWindow", u"refresh", None)) -#if QT_CONFIG(tooltip) - self.actionflush.setToolTip(QCoreApplication.translate("MainWindow", u"refresh import file/quick import from kindle", None)) -#endif // QT_CONFIG(tooltip) - self.actionwords.setText(QCoreApplication.translate("MainWindow", u"words", None)) -#if QT_CONFIG(tooltip) - self.actionwords.setToolTip(QCoreApplication.translate("MainWindow", u"words", None)) -#endif // QT_CONFIG(tooltip) - self.actionstatistic.setText(QCoreApplication.translate("MainWindow", u"statistic", None)) -#if QT_CONFIG(tooltip) - self.actionstatistic.setToolTip(QCoreApplication.translate("MainWindow", u"statistics reading habbit", None)) -#endif // QT_CONFIG(tooltip) - self.actionhomepage.setText(QCoreApplication.translate("MainWindow", u"homepage", None)) -#if QT_CONFIG(tooltip) - self.actionhomepage.setToolTip(QCoreApplication.translate("MainWindow", u"redirect to my homepage", None)) -#endif // QT_CONFIG(tooltip) - self.actionabout.setText(QCoreApplication.translate("MainWindow", u"about", None)) -#if QT_CONFIG(tooltip) - self.actionabout.setToolTip(QCoreApplication.translate("MainWindow", u"open about dialog", None)) -#endif // QT_CONFIG(tooltip) - self.actionsearch.setText(QCoreApplication.translate("MainWindow", u"search", None)) -#if QT_CONFIG(tooltip) - self.actionsearch.setToolTip(QCoreApplication.translate("MainWindow", u"search note", None)) -#endif // QT_CONFIG(tooltip) - self.actionexport.setText(QCoreApplication.translate("MainWindow", u"export", None)) -#if QT_CONFIG(tooltip) - self.actionexport.setToolTip(QCoreApplication.translate("MainWindow", u"export to file", None)) -#endif // QT_CONFIG(tooltip) - self.searchLabel.setText(QCoreApplication.translate("MainWindow", u"Search", None)) - self.searchLineEdit.setPlaceholderText(QCoreApplication.translate("MainWindow", u"\u53ef\u6309\u4e66\u540d\u3001\u4f5c\u8005\u3001\u5185\u5bb9\u641c\u7d22\u7b14\u8bb0", None)) - self.searchComboBox.setCurrentText("") - self.searchToolButton.setText(QCoreApplication.translate("MainWindow", u"...", None)) - self.toolBar.setWindowTitle(QCoreApplication.translate("MainWindow", u"toolBar", None)) - # retranslateUi - +# -*- coding: utf-8 -*- + +# Form implementation generated from reading ui file 'mainwindow.ui', +# licensing of 'mainwindow.ui' applies. +# +# Created: Mon Jul 6 12:48:48 2020 +# by: pyside2-uic running on PySide2 5.12.6 +# +# WARNING! All changes made in this file will be lost! + +from PySide2 import QtCore, QtGui, QtWidgets + +class Ui_MainWindow(object): + def setupUi(self, MainWindow): + MainWindow.setObjectName("MainWindow") + MainWindow.resize(774, 410) + MainWindow.setIconSize(QtCore.QSize(40, 40)) + self.centralwidget = QtWidgets.QWidget(MainWindow) + self.centralwidget.setObjectName("centralwidget") + self.gridLayout = QtWidgets.QGridLayout(self.centralwidget) + self.gridLayout.setObjectName("gridLayout") + self.horizontalLayout = QtWidgets.QHBoxLayout() + self.horizontalLayout.setObjectName("horizontalLayout") + self.searchLabel = QtWidgets.QLabel(self.centralwidget) + self.searchLabel.setObjectName("searchLabel") + self.horizontalLayout.addWidget(self.searchLabel) + self.searchLineEdit = QtWidgets.QLineEdit(self.centralwidget) + self.searchLineEdit.setObjectName("searchLineEdit") + self.horizontalLayout.addWidget(self.searchLineEdit) + self.searchComboBox = QtWidgets.QComboBox(self.centralwidget) + self.searchComboBox.setCurrentText("") + self.searchComboBox.setObjectName("searchComboBox") + self.horizontalLayout.addWidget(self.searchComboBox) + self.searchToolButton = QtWidgets.QToolButton(self.centralwidget) + icon = QtGui.QIcon() + icon.addPixmap(QtGui.QPixmap(":/icons/search.jpeg"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.searchToolButton.setIcon(icon) + self.searchToolButton.setObjectName("searchToolButton") + self.horizontalLayout.addWidget(self.searchToolButton) + self.gridLayout.addLayout(self.horizontalLayout, 0, 0, 1, 1) + self.splitter_2 = QtWidgets.QSplitter(self.centralwidget) + self.splitter_2.setOrientation(QtCore.Qt.Horizontal) + self.splitter_2.setObjectName("splitter_2") + self.treeView = QtWidgets.QTreeView(self.splitter_2) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.treeView.sizePolicy().hasHeightForWidth()) + self.treeView.setSizePolicy(sizePolicy) + self.treeView.setMaximumSize(QtCore.QSize(401, 16777215)) + self.treeView.setObjectName("treeView") + self.treeView.header().setVisible(False) + self.splitter = QtWidgets.QSplitter(self.splitter_2) + self.splitter.setOrientation(QtCore.Qt.Vertical) + self.splitter.setObjectName("splitter") + self.tableView = QtWidgets.QTableView(self.splitter) + sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Maximum, QtWidgets.QSizePolicy.Expanding) + sizePolicy.setHorizontalStretch(0) + sizePolicy.setVerticalStretch(0) + sizePolicy.setHeightForWidth(self.tableView.sizePolicy().hasHeightForWidth()) + self.tableView.setSizePolicy(sizePolicy) + self.tableView.setObjectName("tableView") + self.textEdit = QtWidgets.QTextBrowser(self.splitter) + self.textEdit.setObjectName("textEdit") + self.gridLayout.addWidget(self.splitter_2, 1, 0, 1, 1) + MainWindow.setCentralWidget(self.centralwidget) + self.statusbar = QtWidgets.QStatusBar(MainWindow) + self.statusbar.setObjectName("statusbar") + MainWindow.setStatusBar(self.statusbar) + self.menuBar = QtWidgets.QMenuBar(MainWindow) + self.menuBar.setGeometry(QtCore.QRect(0, 0, 774, 22)) + self.menuBar.setObjectName("menuBar") + MainWindow.setMenuBar(self.menuBar) + self.toolBar = QtWidgets.QToolBar(MainWindow) + self.toolBar.setObjectName("toolBar") + MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar) + self.actionimportlocal = QtWidgets.QAction(MainWindow) + icon1 = QtGui.QIcon() + icon1.addPixmap(QtGui.QPixmap(":/icons/downr.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionimportlocal.setIcon(icon1) + self.actionimportlocal.setObjectName("actionimportlocal") + self.actionimportkindle = QtWidgets.QAction(MainWindow) + icon2 = QtGui.QIcon() + icon2.addPixmap(QtGui.QPixmap(":/icons/kindle.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionimportkindle.setIcon(icon2) + self.actionimportkindle.setObjectName("actionimportkindle") + self.actionconfig = QtWidgets.QAction(MainWindow) + icon3 = QtGui.QIcon() + icon3.addPixmap(QtGui.QPixmap(":/icons/config.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionconfig.setIcon(icon3) + self.actionconfig.setObjectName("actionconfig") + self.actionflush = QtWidgets.QAction(MainWindow) + icon4 = QtGui.QIcon() + icon4.addPixmap(QtGui.QPixmap(":/icons/refresh.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionflush.setIcon(icon4) + self.actionflush.setObjectName("actionflush") + self.actionwords = QtWidgets.QAction(MainWindow) + icon5 = QtGui.QIcon() + icon5.addPixmap(QtGui.QPixmap(":/icons/books.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionwords.setIcon(icon5) + self.actionwords.setObjectName("actionwords") + self.actionstatistic = QtWidgets.QAction(MainWindow) + icon6 = QtGui.QIcon() + icon6.addPixmap(QtGui.QPixmap(":/icons/statistics.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionstatistic.setIcon(icon6) + self.actionstatistic.setObjectName("actionstatistic") + self.actionhomepage = QtWidgets.QAction(MainWindow) + icon7 = QtGui.QIcon() + icon7.addPixmap(QtGui.QPixmap(":/icons/web.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionhomepage.setIcon(icon7) + self.actionhomepage.setObjectName("actionhomepage") + self.actionabout = QtWidgets.QAction(MainWindow) + icon8 = QtGui.QIcon() + icon8.addPixmap(QtGui.QPixmap(":/icons/question.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionabout.setIcon(icon8) + self.actionabout.setObjectName("actionabout") + self.actionsearch = QtWidgets.QAction(MainWindow) + icon9 = QtGui.QIcon() + icon9.addPixmap(QtGui.QPixmap(":/icons/Pixadex.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionsearch.setIcon(icon9) + self.actionsearch.setObjectName("actionsearch") + self.actionexport = QtWidgets.QAction(MainWindow) + icon10 = QtGui.QIcon() + icon10.addPixmap(QtGui.QPixmap(":/icons/md2.png"), QtGui.QIcon.Normal, QtGui.QIcon.Off) + self.actionexport.setIcon(icon10) + self.actionexport.setObjectName("actionexport") + self.toolBar.addAction(self.actionimportkindle) + self.toolBar.addAction(self.actionimportlocal) + self.toolBar.addSeparator() + self.toolBar.addAction(self.actionexport) + self.toolBar.addAction(self.actionwords) + self.toolBar.addAction(self.actionstatistic) + self.toolBar.addSeparator() + self.toolBar.addAction(self.actionconfig) + self.toolBar.addSeparator() + self.toolBar.addAction(self.actionhomepage) + self.toolBar.addAction(self.actionabout) + self.toolBar.addSeparator() + self.toolBar.addAction(self.actionflush) + + self.retranslateUi(MainWindow) + QtCore.QMetaObject.connectSlotsByName(MainWindow) + + def retranslateUi(self, MainWindow): + MainWindow.setWindowTitle(QtWidgets.QApplication.translate("MainWindow", "Kindle Management", None, -1)) + self.searchLabel.setText(QtWidgets.QApplication.translate("MainWindow", "Search", None, -1)) + self.searchLineEdit.setPlaceholderText(QtWidgets.QApplication.translate("MainWindow", "可按书名、作者、内容搜索笔记", None, -1)) + self.searchToolButton.setText(QtWidgets.QApplication.translate("MainWindow", "...", None, -1)) + self.toolBar.setWindowTitle(QtWidgets.QApplication.translate("MainWindow", "toolBar", None, -1)) + self.actionimportlocal.setText(QtWidgets.QApplication.translate("MainWindow", "importlocal", None, -1)) + self.actionimportlocal.setToolTip(QtWidgets.QApplication.translate("MainWindow", "import clipping file from local clipping file", None, -1)) + self.actionimportkindle.setText(QtWidgets.QApplication.translate("MainWindow", "importkindle", None, -1)) + self.actionimportkindle.setToolTip(QtWidgets.QApplication.translate("MainWindow", "import clipping file from kindle", None, -1)) + self.actionconfig.setText(QtWidgets.QApplication.translate("MainWindow", "config", None, -1)) + self.actionconfig.setToolTip(QtWidgets.QApplication.translate("MainWindow", "configuration", None, -1)) + self.actionflush.setText(QtWidgets.QApplication.translate("MainWindow", "refresh", None, -1)) + self.actionflush.setToolTip(QtWidgets.QApplication.translate("MainWindow", "refresh import file/quick import from kindle", None, -1)) + self.actionwords.setText(QtWidgets.QApplication.translate("MainWindow", "words", None, -1)) + self.actionwords.setToolTip(QtWidgets.QApplication.translate("MainWindow", "words", None, -1)) + self.actionstatistic.setText(QtWidgets.QApplication.translate("MainWindow", "statistic", None, -1)) + self.actionstatistic.setToolTip(QtWidgets.QApplication.translate("MainWindow", "statistics reading habbit", None, -1)) + self.actionhomepage.setText(QtWidgets.QApplication.translate("MainWindow", "homepage", None, -1)) + self.actionhomepage.setToolTip(QtWidgets.QApplication.translate("MainWindow", "redirect to my homepage", None, -1)) + self.actionabout.setText(QtWidgets.QApplication.translate("MainWindow", "about", None, -1)) + self.actionabout.setToolTip(QtWidgets.QApplication.translate("MainWindow", "open about dialog", None, -1)) + self.actionsearch.setText(QtWidgets.QApplication.translate("MainWindow", "search", None, -1)) + self.actionsearch.setToolTip(QtWidgets.QApplication.translate("MainWindow", "search note", None, -1)) + self.actionexport.setText(QtWidgets.QApplication.translate("MainWindow", "export", None, -1)) + self.actionexport.setToolTip(QtWidgets.QApplication.translate("MainWindow", "export to file", None, -1)) + +import kmanapp_rc diff --git a/rel.win.bat b/rel.win.bat new file mode 100644 index 0000000..7b81c17 --- /dev/null +++ b/rel.win.bat @@ -0,0 +1,2 @@ +rm -fr build dist release +pyinstaller --distpath Release -D kmanapp.win.spec diff --git a/requirements.txt b/requirements.txt index 4547c9c..88f6d5c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,2 @@ -PySide2==5.15.0 +PySide2==5.12.6 requests==2.23.0