kindle manager
This commit is contained in:
19
changelog.md
19
changelog.md
@@ -59,15 +59,22 @@ b['1']['2'] = {'3':1} # OK
|
||||
- design GUI with qdesigner 
|
||||
- define toolbar action's slots
|
||||
|
||||
# feature plan
|
||||
## 20200528
|
||||
- first abstract from kindle hard / local directory for different OS
|
||||
- add GUI use QT **done**
|
||||
|
||||
## 20200604
|
||||
## 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
|
||||
## 20200528
|
||||
- first abstract from kindle hard / local directory for different OS
|
||||
- add GUI use QT **done**
|
||||
|
||||
|
||||
2
cui
2
cui
@@ -1,2 +1,2 @@
|
||||
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
|
||||
from PySide2.QtWidgets import QApplication
|
||||
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 kman import *
|
||||
|
||||
# import binary resource file(kmanapp_rc.py)
|
||||
import kmanapp_rc
|
||||
|
||||
class kmanWindow(QMainWindow):
|
||||
"""
|
||||
def __init__(self, *args, **kwargs):
|
||||
@@ -38,7 +46,7 @@ class kmanWindow(QMainWindow):
|
||||
|
||||
ui.searchComboBox.currentIndexChanged.connect(self.search_scope_change)
|
||||
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()
|
||||
#add_ui_component() ###! can not found this function
|
||||
@@ -49,25 +57,48 @@ class kmanWindow(QMainWindow):
|
||||
#inert test data xxxxxxxx
|
||||
model = QStandardItemModel()
|
||||
rootItem = model.invisibleRootItem()
|
||||
idx = 0
|
||||
for i in range(4):
|
||||
item = QStandardItem('item {}'.format(i))
|
||||
idx += 1
|
||||
item = QStandardItem('item {}'.format(idx))
|
||||
rootItem.appendRow(item)
|
||||
icon = QIcon()
|
||||
icon.addFile(u":/icons/book_open_bookmark.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||
item.setIcon(icon)
|
||||
if i==0:
|
||||
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:
|
||||
parentItem = item
|
||||
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.setEditable(False)
|
||||
icon = QIcon()
|
||||
icon.addFile(u":/icons/book_open.png", QSize(), QIcon.Normal, QIcon.Off)
|
||||
item.setIcon(icon)
|
||||
parentItem.appendRow(item)
|
||||
|
||||
self.ui.treeView.setModel(model)
|
||||
|
||||
|
||||
def activated_items(self):
|
||||
print( 'call activated_items()' )
|
||||
def clicked_items(self):
|
||||
print( 'call clicked_items()' )
|
||||
|
||||
def search_button_clicked(self):
|
||||
print( 'call search_button_clicked()' )
|
||||
@@ -116,7 +147,6 @@ class kmanWindow(QMainWindow):
|
||||
def messageBox(self, showInfo):
|
||||
box = QMessageBox.about(self, 'Kindle Management', showInfo)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
import sys
|
||||
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/statistics.png</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>
|
||||
</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)
|
||||
from PySide2.QtWidgets import *
|
||||
|
||||
import kmanapp_rc
|
||||
|
||||
class Ui_MainWindow(object):
|
||||
def setupUi(self, MainWindow):
|
||||
@@ -24,47 +25,47 @@ class Ui_MainWindow(object):
|
||||
self.actionimportlocal = QAction(MainWindow)
|
||||
self.actionimportlocal.setObjectName(u"actionimportlocal")
|
||||
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.actionimportkindle = QAction(MainWindow)
|
||||
self.actionimportkindle.setObjectName(u"actionimportkindle")
|
||||
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.actionconfig = QAction(MainWindow)
|
||||
self.actionconfig.setObjectName(u"actionconfig")
|
||||
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.actionflush = QAction(MainWindow)
|
||||
self.actionflush.setObjectName(u"actionflush")
|
||||
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.actionwords = QAction(MainWindow)
|
||||
self.actionwords.setObjectName(u"actionwords")
|
||||
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.actionstatistic = QAction(MainWindow)
|
||||
self.actionstatistic.setObjectName(u"actionstatistic")
|
||||
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.actionhomepage = QAction(MainWindow)
|
||||
self.actionhomepage.setObjectName(u"actionhomepage")
|
||||
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.actionabout = QAction(MainWindow)
|
||||
self.actionabout.setObjectName(u"actionabout")
|
||||
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.actionsearch = QAction(MainWindow)
|
||||
self.actionsearch.setObjectName(u"actionsearch")
|
||||
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.centralwidget = QWidget(MainWindow)
|
||||
self.centralwidget.setObjectName(u"centralwidget")
|
||||
@@ -90,7 +91,7 @@ class Ui_MainWindow(object):
|
||||
self.searchToolButton = QToolButton(self.centralwidget)
|
||||
self.searchToolButton.setObjectName(u"searchToolButton")
|
||||
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.horizontalLayout.addWidget(self.searchToolButton)
|
||||
|
||||
@@ -44,8 +44,8 @@
|
||||
<string>...</string>
|
||||
</property>
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/search.jpeg</normaloff>icons/search.jpeg</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/search.jpeg</normaloff>:/icons/search.jpeg</iconset>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -137,8 +137,8 @@
|
||||
</widget>
|
||||
<action name="actionimportlocal">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/downr.png</normaloff>icons/downr.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/downr.png</normaloff>:/icons/downr.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>importlocal</string>
|
||||
@@ -149,8 +149,8 @@
|
||||
</action>
|
||||
<action name="actionimportkindle">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/down.png</normaloff>icons/down.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/down.png</normaloff>:/icons/down.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>importkindle</string>
|
||||
@@ -161,8 +161,8 @@
|
||||
</action>
|
||||
<action name="actionconfig">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/config.png</normaloff>icons/config.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/config.png</normaloff>:/icons/config.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>config</string>
|
||||
@@ -173,8 +173,8 @@
|
||||
</action>
|
||||
<action name="actionflush">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/refresh.png</normaloff>icons/refresh.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/refresh.png</normaloff>:/icons/refresh.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>refresh</string>
|
||||
@@ -185,8 +185,8 @@
|
||||
</action>
|
||||
<action name="actionwords">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/books.png</normaloff>icons/books.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/books.png</normaloff>:/icons/books.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>words</string>
|
||||
@@ -197,8 +197,8 @@
|
||||
</action>
|
||||
<action name="actionstatistic">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/statistics.png</normaloff>icons/statistics.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/statistics.png</normaloff>:/icons/statistics.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>statistic</string>
|
||||
@@ -209,8 +209,8 @@
|
||||
</action>
|
||||
<action name="actionhomepage">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/home.png</normaloff>icons/home.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/home.png</normaloff>:/icons/home.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>homepage</string>
|
||||
@@ -221,8 +221,8 @@
|
||||
</action>
|
||||
<action name="actionabout">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/question.png</normaloff>icons/question.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/question.png</normaloff>:/icons/question.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>about</string>
|
||||
@@ -233,8 +233,8 @@
|
||||
</action>
|
||||
<action name="actionsearch">
|
||||
<property name="icon">
|
||||
<iconset>
|
||||
<normaloff>icons/Pixadex.png</normaloff>icons/Pixadex.png</iconset>
|
||||
<iconset resource="kmanapp.qrc">
|
||||
<normaloff>:/icons/Pixadex.png</normaloff>:/icons/Pixadex.png</iconset>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>search</string>
|
||||
@@ -244,6 +244,8 @@
|
||||
</property>
|
||||
</action>
|
||||
</widget>
|
||||
<resources/>
|
||||
<resources>
|
||||
<include location="kmanapp.qrc"/>
|
||||
</resources>
|
||||
<connections/>
|
||||
</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