kindle manager
This commit is contained in:
21
changelog.md
21
changelog.md
@@ -59,15 +59,22 @@ b['1']['2'] = {'3':1} # OK
|
|||||||
- design GUI with qdesigner 
|
- design GUI with qdesigner 
|
||||||
- define toolbar action's slots
|
- define toolbar action's slots
|
||||||
|
|
||||||
|
## 1.0.4 (20200604)
|
||||||
|
### feature
|
||||||
|
- refactoring kman.py
|
||||||
|
- creat constant class for all constant
|
||||||
|
- creat config dialog to do some constant configuration
|
||||||
|
- creat xman class for all clipping manipulation
|
||||||
|
- design config dialog & statusbar information
|
||||||
|
|
||||||
|
## learn lesson
|
||||||
|
- generate ui source(.py) use pyqtuic will 'import kmanapp\_rc',
|
||||||
|
so I need to use resouce file(.qrc) to manage resouce(icons),
|
||||||
|
and generator rcc binnay file, must kmanapp\_rc.py
|
||||||
|
command: pyside2-rcc -binary kmanapp.qrc -o kmanapp\_rc.py
|
||||||
|
|
||||||
# feature plan
|
# feature plan
|
||||||
## 20200528
|
## 20200528
|
||||||
- first abstract from kindle hard / local directory for different OS
|
- first abstract from kindle hard / local directory for different OS
|
||||||
- add GUI use QT **done**
|
- add GUI use QT **done**
|
||||||
|
|
||||||
## 20200604
|
|
||||||
- refactoring kman.py
|
|
||||||
- creat constant class for all constant
|
|
||||||
- creat config dialog to do some constant configuration
|
|
||||||
- creat xman class for all clipping manipulation
|
|
||||||
- design config dialog & statusbar information
|
|
||||||
|
|
||||||
|
|||||||
2
cui
2
cui
@@ -1,2 +1,2 @@
|
|||||||
pyuic mainwindow.ui -o mainwindow.py
|
pyuic mainwindow.ui -o mainwindow.py
|
||||||
pyside2-rcc -binary kman.qrc -o kman.rcc
|
pyside2-rcc -binary kmanapp.qrc -o kmanapp_rc.py
|
||||||
|
|||||||
BIN
icons/book.png
BIN
icons/book.png
Binary file not shown.
|
Before Width: | Height: | Size: 4.4 KiB |
BIN
icons/book3.png
Normal file
BIN
icons/book3.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.0 KiB |
BIN
icons/book_open.png
Normal file
BIN
icons/book_open.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
BIN
icons/book_open_bookmark.png
Normal file
BIN
icons/book_open_bookmark.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 631 B |
BIN
icons/emblem_library.png
Normal file
BIN
icons/emblem_library.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.2 KiB |
BIN
icons/register.png
Normal file
BIN
icons/register.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 660 B |
48
kmanapp.py
48
kmanapp.py
@@ -2,12 +2,20 @@
|
|||||||
import sys
|
import sys
|
||||||
from PySide2.QtWidgets import QApplication
|
from PySide2.QtWidgets import QApplication
|
||||||
from PySide2.QtWidgets import QMainWindow
|
from PySide2.QtWidgets import QMainWindow
|
||||||
from PySide2.QtGui import QStandardItemModel
|
|
||||||
from PySide2.QtGui import QStandardItem
|
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, QStandardItem, QStandardItemModel)
|
||||||
|
from PySide2.QtWidgets import *
|
||||||
|
|
||||||
from mainwindow import Ui_MainWindow
|
from mainwindow import Ui_MainWindow
|
||||||
from kman import *
|
from kman import *
|
||||||
|
|
||||||
|
# import binary resource file(kmanapp_rc.py)
|
||||||
|
import kmanapp_rc
|
||||||
|
|
||||||
class kmanWindow(QMainWindow):
|
class kmanWindow(QMainWindow):
|
||||||
"""
|
"""
|
||||||
def __init__(self, *args, **kwargs):
|
def __init__(self, *args, **kwargs):
|
||||||
@@ -38,7 +46,7 @@ class kmanWindow(QMainWindow):
|
|||||||
|
|
||||||
ui.searchComboBox.currentIndexChanged.connect(self.search_scope_change)
|
ui.searchComboBox.currentIndexChanged.connect(self.search_scope_change)
|
||||||
ui.searchToolButton.clicked.connect(self.search_button_clicked)
|
ui.searchToolButton.clicked.connect(self.search_button_clicked)
|
||||||
ui.treeView.activated.connect(self.activated_items)
|
ui.treeView.clicked.connect(self.clicked_items)
|
||||||
|
|
||||||
self.add_ui_component()
|
self.add_ui_component()
|
||||||
#add_ui_component() ###! can not found this function
|
#add_ui_component() ###! can not found this function
|
||||||
@@ -49,25 +57,48 @@ class kmanWindow(QMainWindow):
|
|||||||
#inert test data xxxxxxxx
|
#inert test data xxxxxxxx
|
||||||
model = QStandardItemModel()
|
model = QStandardItemModel()
|
||||||
rootItem = model.invisibleRootItem()
|
rootItem = model.invisibleRootItem()
|
||||||
|
idx = 0
|
||||||
for i in range(4):
|
for i in range(4):
|
||||||
item = QStandardItem('item {}'.format(i))
|
idx += 1
|
||||||
|
item = QStandardItem('item {}'.format(idx))
|
||||||
rootItem.appendRow(item)
|
rootItem.appendRow(item)
|
||||||
|
icon = QIcon()
|
||||||
|
icon.addFile(u":/icons/book_open_bookmark.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
|
item.setIcon(icon)
|
||||||
if i==0:
|
if i==0:
|
||||||
parentItem = item
|
parentItem = item
|
||||||
parentItem.appendRows([QStandardItem('append rows {}'.format(i+10)) for i in range(5)])
|
icon = QIcon()
|
||||||
|
icon.addFile(u":/icons/emblem_library.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
|
item.setIcon(icon)
|
||||||
|
parentItem.appendRows([QStandardItem('append rows {}'.format(i+idx)) for i in range(5)])
|
||||||
|
if i==1:
|
||||||
|
parentItem = item
|
||||||
|
for i in range(5):
|
||||||
|
idx += 1
|
||||||
|
item = QStandardItem('type item {}'.format(i+idx))
|
||||||
|
#item.setEnabled(False)
|
||||||
|
item.setEditable(False)
|
||||||
|
icon = QIcon()
|
||||||
|
icon.addFile(u":/icons/register.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
|
item.setIcon(icon)
|
||||||
|
parentItem.appendRow(item)
|
||||||
if i==3:
|
if i==3:
|
||||||
parentItem = item
|
parentItem = item
|
||||||
for i in range(5):
|
for i in range(5):
|
||||||
item = QStandardItem('another item {}'.format(i+4))
|
idx += 1
|
||||||
|
item = QStandardItem('another item {}'.format(i+idx))
|
||||||
#item.setEnabled(False)
|
#item.setEnabled(False)
|
||||||
item.setEditable(False)
|
item.setEditable(False)
|
||||||
|
icon = QIcon()
|
||||||
|
icon.addFile(u":/icons/book_open.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
|
item.setIcon(icon)
|
||||||
parentItem.appendRow(item)
|
parentItem.appendRow(item)
|
||||||
|
|
||||||
self.ui.treeView.setModel(model)
|
self.ui.treeView.setModel(model)
|
||||||
|
|
||||||
|
|
||||||
def activated_items(self):
|
def clicked_items(self):
|
||||||
print( 'call activated_items()' )
|
print( 'call clicked_items()' )
|
||||||
|
|
||||||
def search_button_clicked(self):
|
def search_button_clicked(self):
|
||||||
print( 'call search_button_clicked()' )
|
print( 'call search_button_clicked()' )
|
||||||
@@ -116,7 +147,6 @@ class kmanWindow(QMainWindow):
|
|||||||
def messageBox(self, showInfo):
|
def messageBox(self, showInfo):
|
||||||
box = QMessageBox.about(self, 'Kindle Management', showInfo)
|
box = QMessageBox.about(self, 'Kindle Management', showInfo)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
import sys
|
import sys
|
||||||
from PySide2.QtWidgets import QApplication, QLabel
|
from PySide2.QtWidgets import QApplication, QLabel
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
{
|
{
|
||||||
"files": ["kmanapp.py","kman.qrc","mainwindow.ui"]
|
"files": ["kmanapp.py","mainwindow.ui","kmanapp.qrc"]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -40,5 +40,11 @@
|
|||||||
<file>icons/refresh.png</file>
|
<file>icons/refresh.png</file>
|
||||||
<file>icons/statistics.png</file>
|
<file>icons/statistics.png</file>
|
||||||
<file>mainwindow.ui</file>
|
<file>mainwindow.ui</file>
|
||||||
|
<file>icons/booksicon.png</file>
|
||||||
|
<file>icons/book_open.png</file>
|
||||||
|
<file>icons/book_open_bookmark.png</file>
|
||||||
|
<file>icons/emblem_library.png</file>
|
||||||
|
<file>icons/book3.png</file>
|
||||||
|
<file>icons/register.png</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -15,6 +15,7 @@ from PySide2.QtGui import (QBrush, QColor, QConicalGradient, QCursor, QFont,
|
|||||||
QPixmap, QRadialGradient)
|
QPixmap, QRadialGradient)
|
||||||
from PySide2.QtWidgets import *
|
from PySide2.QtWidgets import *
|
||||||
|
|
||||||
|
import kmanapp_rc
|
||||||
|
|
||||||
class Ui_MainWindow(object):
|
class Ui_MainWindow(object):
|
||||||
def setupUi(self, MainWindow):
|
def setupUi(self, MainWindow):
|
||||||
@@ -24,47 +25,47 @@ class Ui_MainWindow(object):
|
|||||||
self.actionimportlocal = QAction(MainWindow)
|
self.actionimportlocal = QAction(MainWindow)
|
||||||
self.actionimportlocal.setObjectName(u"actionimportlocal")
|
self.actionimportlocal.setObjectName(u"actionimportlocal")
|
||||||
icon = QIcon()
|
icon = QIcon()
|
||||||
icon.addFile(u"icons/downr.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon.addFile(u":/icons/downr.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionimportlocal.setIcon(icon)
|
self.actionimportlocal.setIcon(icon)
|
||||||
self.actionimportkindle = QAction(MainWindow)
|
self.actionimportkindle = QAction(MainWindow)
|
||||||
self.actionimportkindle.setObjectName(u"actionimportkindle")
|
self.actionimportkindle.setObjectName(u"actionimportkindle")
|
||||||
icon1 = QIcon()
|
icon1 = QIcon()
|
||||||
icon1.addFile(u"icons/down.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon1.addFile(u":/icons/down.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionimportkindle.setIcon(icon1)
|
self.actionimportkindle.setIcon(icon1)
|
||||||
self.actionconfig = QAction(MainWindow)
|
self.actionconfig = QAction(MainWindow)
|
||||||
self.actionconfig.setObjectName(u"actionconfig")
|
self.actionconfig.setObjectName(u"actionconfig")
|
||||||
icon2 = QIcon()
|
icon2 = QIcon()
|
||||||
icon2.addFile(u"icons/config.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon2.addFile(u":/icons/config.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionconfig.setIcon(icon2)
|
self.actionconfig.setIcon(icon2)
|
||||||
self.actionflush = QAction(MainWindow)
|
self.actionflush = QAction(MainWindow)
|
||||||
self.actionflush.setObjectName(u"actionflush")
|
self.actionflush.setObjectName(u"actionflush")
|
||||||
icon3 = QIcon()
|
icon3 = QIcon()
|
||||||
icon3.addFile(u"icons/refresh.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon3.addFile(u":/icons/refresh.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionflush.setIcon(icon3)
|
self.actionflush.setIcon(icon3)
|
||||||
self.actionwords = QAction(MainWindow)
|
self.actionwords = QAction(MainWindow)
|
||||||
self.actionwords.setObjectName(u"actionwords")
|
self.actionwords.setObjectName(u"actionwords")
|
||||||
icon4 = QIcon()
|
icon4 = QIcon()
|
||||||
icon4.addFile(u"icons/books.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon4.addFile(u":/icons/books.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionwords.setIcon(icon4)
|
self.actionwords.setIcon(icon4)
|
||||||
self.actionstatistic = QAction(MainWindow)
|
self.actionstatistic = QAction(MainWindow)
|
||||||
self.actionstatistic.setObjectName(u"actionstatistic")
|
self.actionstatistic.setObjectName(u"actionstatistic")
|
||||||
icon5 = QIcon()
|
icon5 = QIcon()
|
||||||
icon5.addFile(u"icons/statistics.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon5.addFile(u":/icons/statistics.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionstatistic.setIcon(icon5)
|
self.actionstatistic.setIcon(icon5)
|
||||||
self.actionhomepage = QAction(MainWindow)
|
self.actionhomepage = QAction(MainWindow)
|
||||||
self.actionhomepage.setObjectName(u"actionhomepage")
|
self.actionhomepage.setObjectName(u"actionhomepage")
|
||||||
icon6 = QIcon()
|
icon6 = QIcon()
|
||||||
icon6.addFile(u"icons/home.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon6.addFile(u":/icons/home.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionhomepage.setIcon(icon6)
|
self.actionhomepage.setIcon(icon6)
|
||||||
self.actionabout = QAction(MainWindow)
|
self.actionabout = QAction(MainWindow)
|
||||||
self.actionabout.setObjectName(u"actionabout")
|
self.actionabout.setObjectName(u"actionabout")
|
||||||
icon7 = QIcon()
|
icon7 = QIcon()
|
||||||
icon7.addFile(u"icons/question.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon7.addFile(u":/icons/question.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionabout.setIcon(icon7)
|
self.actionabout.setIcon(icon7)
|
||||||
self.actionsearch = QAction(MainWindow)
|
self.actionsearch = QAction(MainWindow)
|
||||||
self.actionsearch.setObjectName(u"actionsearch")
|
self.actionsearch.setObjectName(u"actionsearch")
|
||||||
icon8 = QIcon()
|
icon8 = QIcon()
|
||||||
icon8.addFile(u"icons/Pixadex.png", QSize(), QIcon.Normal, QIcon.Off)
|
icon8.addFile(u":/icons/Pixadex.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.actionsearch.setIcon(icon8)
|
self.actionsearch.setIcon(icon8)
|
||||||
self.centralwidget = QWidget(MainWindow)
|
self.centralwidget = QWidget(MainWindow)
|
||||||
self.centralwidget.setObjectName(u"centralwidget")
|
self.centralwidget.setObjectName(u"centralwidget")
|
||||||
@@ -90,7 +91,7 @@ class Ui_MainWindow(object):
|
|||||||
self.searchToolButton = QToolButton(self.centralwidget)
|
self.searchToolButton = QToolButton(self.centralwidget)
|
||||||
self.searchToolButton.setObjectName(u"searchToolButton")
|
self.searchToolButton.setObjectName(u"searchToolButton")
|
||||||
icon9 = QIcon()
|
icon9 = QIcon()
|
||||||
icon9.addFile(u"icons/search.jpeg", QSize(), QIcon.Normal, QIcon.Off)
|
icon9.addFile(u":/icons/search.jpeg", QSize(), QIcon.Normal, QIcon.Off)
|
||||||
self.searchToolButton.setIcon(icon9)
|
self.searchToolButton.setIcon(icon9)
|
||||||
|
|
||||||
self.horizontalLayout.addWidget(self.searchToolButton)
|
self.horizontalLayout.addWidget(self.searchToolButton)
|
||||||
|
|||||||
@@ -44,8 +44,8 @@
|
|||||||
<string>...</string>
|
<string>...</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/search.jpeg</normaloff>icons/search.jpeg</iconset>
|
<normaloff>:/icons/search.jpeg</normaloff>:/icons/search.jpeg</iconset>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
@@ -137,8 +137,8 @@
|
|||||||
</widget>
|
</widget>
|
||||||
<action name="actionimportlocal">
|
<action name="actionimportlocal">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/downr.png</normaloff>icons/downr.png</iconset>
|
<normaloff>:/icons/downr.png</normaloff>:/icons/downr.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>importlocal</string>
|
<string>importlocal</string>
|
||||||
@@ -149,8 +149,8 @@
|
|||||||
</action>
|
</action>
|
||||||
<action name="actionimportkindle">
|
<action name="actionimportkindle">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/down.png</normaloff>icons/down.png</iconset>
|
<normaloff>:/icons/down.png</normaloff>:/icons/down.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>importkindle</string>
|
<string>importkindle</string>
|
||||||
@@ -161,8 +161,8 @@
|
|||||||
</action>
|
</action>
|
||||||
<action name="actionconfig">
|
<action name="actionconfig">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/config.png</normaloff>icons/config.png</iconset>
|
<normaloff>:/icons/config.png</normaloff>:/icons/config.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>config</string>
|
<string>config</string>
|
||||||
@@ -173,8 +173,8 @@
|
|||||||
</action>
|
</action>
|
||||||
<action name="actionflush">
|
<action name="actionflush">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/refresh.png</normaloff>icons/refresh.png</iconset>
|
<normaloff>:/icons/refresh.png</normaloff>:/icons/refresh.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>refresh</string>
|
<string>refresh</string>
|
||||||
@@ -185,8 +185,8 @@
|
|||||||
</action>
|
</action>
|
||||||
<action name="actionwords">
|
<action name="actionwords">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/books.png</normaloff>icons/books.png</iconset>
|
<normaloff>:/icons/books.png</normaloff>:/icons/books.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>words</string>
|
<string>words</string>
|
||||||
@@ -197,8 +197,8 @@
|
|||||||
</action>
|
</action>
|
||||||
<action name="actionstatistic">
|
<action name="actionstatistic">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/statistics.png</normaloff>icons/statistics.png</iconset>
|
<normaloff>:/icons/statistics.png</normaloff>:/icons/statistics.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>statistic</string>
|
<string>statistic</string>
|
||||||
@@ -209,8 +209,8 @@
|
|||||||
</action>
|
</action>
|
||||||
<action name="actionhomepage">
|
<action name="actionhomepage">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/home.png</normaloff>icons/home.png</iconset>
|
<normaloff>:/icons/home.png</normaloff>:/icons/home.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>homepage</string>
|
<string>homepage</string>
|
||||||
@@ -221,8 +221,8 @@
|
|||||||
</action>
|
</action>
|
||||||
<action name="actionabout">
|
<action name="actionabout">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/question.png</normaloff>icons/question.png</iconset>
|
<normaloff>:/icons/question.png</normaloff>:/icons/question.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>about</string>
|
<string>about</string>
|
||||||
@@ -233,8 +233,8 @@
|
|||||||
</action>
|
</action>
|
||||||
<action name="actionsearch">
|
<action name="actionsearch">
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset>
|
<iconset resource="kmanapp.qrc">
|
||||||
<normaloff>icons/Pixadex.png</normaloff>icons/Pixadex.png</iconset>
|
<normaloff>:/icons/Pixadex.png</normaloff>:/icons/Pixadex.png</iconset>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>search</string>
|
<string>search</string>
|
||||||
@@ -244,6 +244,8 @@
|
|||||||
</property>
|
</property>
|
||||||
</action>
|
</action>
|
||||||
</widget>
|
</widget>
|
||||||
<resources/>
|
<resources>
|
||||||
|
<include location="kmanapp.qrc"/>
|
||||||
|
</resources>
|
||||||
<connections/>
|
<connections/>
|
||||||
</ui>
|
</ui>
|
||||||
|
|||||||
@@ -1,249 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<ui version="4.0">
|
|
||||||
<class>MainWindow</class>
|
|
||||||
<widget class="QMainWindow" name="MainWindow">
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>0</x>
|
|
||||||
<y>0</y>
|
|
||||||
<width>774</width>
|
|
||||||
<height>410</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="windowTitle">
|
|
||||||
<string>Kindle Management</string>
|
|
||||||
</property>
|
|
||||||
<widget class="QWidget" name="centralwidget">
|
|
||||||
<layout class="QGridLayout" name="gridLayout">
|
|
||||||
<item row="0" column="0">
|
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout">
|
|
||||||
<item>
|
|
||||||
<widget class="QLabel" name="searchLabel">
|
|
||||||
<property name="text">
|
|
||||||
<string>Search</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QLineEdit" name="searchLineEdit">
|
|
||||||
<property name="placeholderText">
|
|
||||||
<string>可按书名、作者、内容搜索笔记</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QComboBox" name="searchComboBox">
|
|
||||||
<property name="currentText">
|
|
||||||
<string/>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QToolButton" name="searchToolButton">
|
|
||||||
<property name="text">
|
|
||||||
<string>...</string>
|
|
||||||
</property>
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/search.jpeg</normaloff>icons/search.jpeg</iconset>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</item>
|
|
||||||
<item row="1" column="0">
|
|
||||||
<widget class="QSplitter" name="splitter_2">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Horizontal</enum>
|
|
||||||
</property>
|
|
||||||
<widget class="QTreeView" name="treeView">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Preferred" vsizetype="Expanding">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize">
|
|
||||||
<size>
|
|
||||||
<width>400</width>
|
|
||||||
<height>16777215</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
<widget class="QSplitter" name="splitter">
|
|
||||||
<property name="orientation">
|
|
||||||
<enum>Qt::Vertical</enum>
|
|
||||||
</property>
|
|
||||||
<widget class="QTableView" name="tableView">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Expanding">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
<widget class="QTextEdit" name="textEdit">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>1</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize">
|
|
||||||
<size>
|
|
||||||
<width>16777215</width>
|
|
||||||
<height>400</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</widget>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
<widget class="QStatusBar" name="statusbar"/>
|
|
||||||
<widget class="QMenuBar" name="menuBar">
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>0</x>
|
|
||||||
<y>0</y>
|
|
||||||
<width>774</width>
|
|
||||||
<height>22</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
<widget class="QToolBar" name="toolBar">
|
|
||||||
<property name="windowTitle">
|
|
||||||
<string>toolBar</string>
|
|
||||||
</property>
|
|
||||||
<attribute name="toolBarArea">
|
|
||||||
<enum>TopToolBarArea</enum>
|
|
||||||
</attribute>
|
|
||||||
<attribute name="toolBarBreak">
|
|
||||||
<bool>false</bool>
|
|
||||||
</attribute>
|
|
||||||
<addaction name="actionimportkindle"/>
|
|
||||||
<addaction name="actionimportlocal"/>
|
|
||||||
<addaction name="separator"/>
|
|
||||||
<addaction name="actionwords"/>
|
|
||||||
<addaction name="actionstatistic"/>
|
|
||||||
<addaction name="separator"/>
|
|
||||||
<addaction name="actionconfig"/>
|
|
||||||
<addaction name="separator"/>
|
|
||||||
<addaction name="actionhomepage"/>
|
|
||||||
<addaction name="actionabout"/>
|
|
||||||
<addaction name="separator"/>
|
|
||||||
<addaction name="actionflush"/>
|
|
||||||
</widget>
|
|
||||||
<action name="actionimportlocal">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/downr.png</normaloff>icons/downr.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>importlocal</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>import clipping file from local clipping file</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionimportkindle">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/down.png</normaloff>icons/down.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>importkindle</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>import clipping file from kindle</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionconfig">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/config.png</normaloff>icons/config.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>config</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>configuration</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionflush">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/refresh.png</normaloff>icons/refresh.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>refresh</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>refresh import file/quick import from kindle</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionwords">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/books.png</normaloff>icons/books.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>words</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>words</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionstatistic">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/statistics.png</normaloff>icons/statistics.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>statistic</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>statistics reading habbit</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionhomepage">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/home.png</normaloff>icons/home.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>homepage</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>redirect to my homepage</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionabout">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/question.png</normaloff>icons/question.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>about</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>open about dialog</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
<action name="actionsearch">
|
|
||||||
<property name="icon">
|
|
||||||
<iconset>
|
|
||||||
<normaloff>icons/Pixadex.png</normaloff>icons/Pixadex.png</iconset>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>search</string>
|
|
||||||
</property>
|
|
||||||
<property name="toolTip">
|
|
||||||
<string>search note</string>
|
|
||||||
</property>
|
|
||||||
</action>
|
|
||||||
</widget>
|
|
||||||
<resources/>
|
|
||||||
<connections/>
|
|
||||||
</ui>
|
|
||||||
Reference in New Issue
Block a user