玉兔远程控制 0.1.0-bate6
载入中...
搜索中...
未找到
FrmBookmark.h
1// Author: Kang Lin <kl222@126.com>
2
3#pragma once
4#include <QWidget>
5#include <QStandardItem>
6#include <QToolBar>
7#include <QTreeView>
8#include "BookmarkDatabase.h"
9#include "ParameterWebBrowser.h"
10
11namespace Ui {
12class CFrmBookmark;
13}
14
15class CFrmBookmark : public QWidget
16{
17 Q_OBJECT
18
19public:
20 explicit CFrmBookmark(CParameterWebBrowser* pPara, QWidget *parent = nullptr);
22
23 void refresh();
24
25signals:
26 void openUrlRequested(const QString &url);
27
28private slots:
29 void onAddBookmark();
30 void onAddFolder();
31 void onEditBookmark();
32 void onDeleteBookmark();
33 void onSetFavorite();
34 void onImportBookmarks();
35 void onExportBookmarks();
36 void onSearchTextChanged(const QString &text);
37 void onTreeViewDoubleClicked(const QModelIndex &index);
38 void onCustomContextMenu(const QPoint &pos);
39
40private:
41 void setupUI();
42 void setupToolBar();
43 void setupTreeView();
44 void loadBookmarks();
45
46 enum Role {
47 ID = Qt::UserRole,
48 Type,
49 Url
50 };
51
52private:
53 Ui::CFrmBookmark *ui;
54 CBookmarkDatabase *m_pDatabase;
55 CParameterWebBrowser* m_pPara;
56 QTreeView *m_pTreeView;
57 QLineEdit *m_pSearchEdit;
58 QToolBar *m_pToolBar;
59 QStandardItemModel *m_pModel;
60 QMap<int, QStandardItem*> m_folderItems;
61};
62