X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=src%2Fdialogs%2FBookmarksDialog.h;h=0df090333a48033842db0375c42522bcd1566aa4;hb=5e66d268d985552aeeae3e9ae7d0967d359a557f;hp=3e2713e4c39ee974944146a6d3ec7d683bbfbaa8;hpb=7c6edb3608791950c6146ac242e2b6f493ca8e8c;p=PrivacyBrowserPC.git diff --git a/src/dialogs/BookmarksDialog.h b/src/dialogs/BookmarksDialog.h index 3e2713e..0df0903 100644 --- a/src/dialogs/BookmarksDialog.h +++ b/src/dialogs/BookmarksDialog.h @@ -1,5 +1,5 @@ /* - * Copyright 2023 Soren Stoutner . + * Copyright 2023-2024 Soren Stoutner . * * This file is part of Privacy Browser PC . * @@ -22,9 +22,11 @@ // Application headers. #include "structs/BookmarkStruct.h" +#include "widgets/DraggableTreeView.h" // Qt toolkit headers. #include +#include #include class BookmarksDialog : public QDialog @@ -34,7 +36,15 @@ class BookmarksDialog : public QDialog public: // The primary constructor. - explicit BookmarksDialog(); + BookmarksDialog(QWidget *parentWidgetPointer, QIcon currentWebsiteFavorieIcon, QString currentWebsiteTitle, QString currentWebsiteUrl); + + // The public constants. + static const int NAME_COLUMN = 0; + static const int URL_COLUMN = 1; + static const int DATABASE_ID_COLUMN = 2; + static const int DISPLAY_ORDER_COLUMN = 3; + static const int IS_FOLDER_COLUMN = 4; + static const int FOLDER_ID_COLUMN = 5; signals: // The signals. @@ -42,6 +52,29 @@ signals: private Q_SLOTS: // The private slots. + void deleteItems() const; + void refreshBookmarks() const; + void showAddBookmarkDialog(); + void showAddFolderDialog(); + void showEditDialog(); void updateBookmarkFromTree(QStandardItem *modifiedStandardItem); + void updateSelection() const; + +private: + // The private variables. + QPushButton *deleteItemsButtonPointer; + QPushButton *editButtonPointer; + QStandardItemModel *treeModelPointer; + QItemSelectionModel *treeSelectionModelPointer; + DraggableTreeView *draggableTreeViewPointer; + QIcon websiteFavoriteIcon; + QString websiteTitle; + QString websiteUrl; + + // The private functions. + void populateBookmarks() const; + void populateSubfolders(QStandardItem *folderItemNamePointer, const double folderId) const; + void selectSubfolderContents(const QModelIndex &parentModelIndex) const; + void updateUi() const; }; #endif