]> gitweb.stoutner.com Git - PrivacyBrowserPC.git/blobdiff - src/dialogs/AddBookmarkDialog.cpp
Handle HTTP authentication. https://redmine.stoutner.com/issues/898
[PrivacyBrowserPC.git] / src / dialogs / AddBookmarkDialog.cpp
index e69543e7ab51cb1e28a0e79b33df964af1d04d95..041ca3d33df3db53b761d1ab9717c18936783b06 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2023 Soren Stoutner <soren@stoutner.com>.
+ * Copyright 2023-2024 Soren Stoutner <soren@stoutner.com>.
  *
  * This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-pc>.
  *
@@ -30,7 +30,8 @@
 #include <QPushButton>
 
 // Construct the class.
-AddBookmarkDialog::AddBookmarkDialog(const QString &bookmarkName, const QString &bookmarkUrl, const QIcon &favoriteIcon, const double parentFolderId) : QDialog(nullptr)
+AddBookmarkDialog::AddBookmarkDialog(QWidget *parentWidgetPointer, const QString &bookmarkName, const QString &bookmarkUrl, const QIcon &favoriteIcon, const double parentFolderId) :
+                                     QDialog(parentWidgetPointer)
 {
     // Set the window title.
     setWindowTitle(i18nc("The add bookmark dialog window title.", "Add Bookmark"));
@@ -45,7 +46,7 @@ AddBookmarkDialog::AddBookmarkDialog(const QString &bookmarkName, const QString
     addBookmarkDialogUi.setupUi(this);
 
     // Get handles for the widgets.
-    defaultFavoriteIconRadioButtonPointer = addBookmarkDialogUi.defaultFavoriteIconRadioButton;
+    websiteFavoriteIconRadioButtonPointer = addBookmarkDialogUi.websiteFavoriteIconRadioButton;
     customFavoriteIconRadioButtonPointer = addBookmarkDialogUi.customFavoriteIconRadioButton;
     parentFolderTreeWidgetPointer = addBookmarkDialogUi.parentFolderTreeWidget;
     bookmarkNameLineEditPointer = addBookmarkDialogUi.bookmarkNameLineEdit;
@@ -53,8 +54,9 @@ AddBookmarkDialog::AddBookmarkDialog(const QString &bookmarkName, const QString
     QPushButton *browseButtonPointer = addBookmarkDialogUi.browseButton;
     QDialogButtonBox *dialogButtonBoxPointer = addBookmarkDialogUi.dialogButtonBox;
 
-    // Set the default favorite icon.
-    defaultFavoriteIconRadioButtonPointer->setIcon(favoriteIcon);
+    // Set the icons.
+    websiteFavoriteIconRadioButtonPointer->setIcon(favoriteIcon);
+    customFavoriteIconRadioButtonPointer->setIcon(QIcon::fromTheme(QLatin1String("globe"), QIcon::fromTheme(QLatin1String("applications-internet"))));
 
     // Instantiate a folder helper.
     folderHelperPointer = new FolderHelper();
@@ -73,7 +75,7 @@ AddBookmarkDialog::AddBookmarkDialog(const QString &bookmarkName, const QString
 
     // Populate the bookmarks tree widget item.
     bookmarksTreeWidgetItemPointer->setText(folderHelperPointer->FOLDER_NAME_COLUMN, i18nc("The bookmarks root tree widget name", "Bookmarks"));
-    bookmarksTreeWidgetItemPointer->setIcon(folderHelperPointer->FOLDER_NAME_COLUMN, QIcon::fromTheme("bookmarks"));
+    bookmarksTreeWidgetItemPointer->setIcon(folderHelperPointer->FOLDER_NAME_COLUMN, QIcon::fromTheme(QLatin1String("bookmarks"), QIcon::fromTheme(QLatin1String("bookmark-new"))));
     bookmarksTreeWidgetItemPointer->setText(folderHelperPointer->FOLDER_ID_COLUMN, QLatin1String("0"));
 
     // Add the bookmarks tree widget item to the root of the tree.
@@ -93,10 +95,12 @@ AddBookmarkDialog::AddBookmarkDialog(const QString &bookmarkName, const QString
     bookmarkNameLineEditPointer->setText(bookmarkName);
     bookmarkUrlLineEditPointer->setText(bookmarkUrl);
 
-    // Scroll to the beginning of the line edits.
-    bookmarkNameLineEditPointer->setCursorPosition(0);
+    // Scroll to the beginning of the bookmark URL line edit.
     bookmarkUrlLineEditPointer->setCursorPosition(0);
 
+    // Focus the bookmark name line edit.
+    bookmarkNameLineEditPointer->setFocus();
+
     // Add buttons to the dialog button box.
     addButtonPointer = dialogButtonBoxPointer->addButton(i18nc("The add bookmark button", "Add"), QDialogButtonBox::AcceptRole);
 
@@ -125,7 +129,7 @@ void AddBookmarkDialog::addBookmark()
     QTreeWidgetItem *selectedFolderPointer = selectedFoldersList.first();
 
     // Get the favorite icon.
-    QIcon favoriteIcon = defaultFavoriteIconRadioButtonPointer->isChecked() ? defaultFavoriteIconRadioButtonPointer->icon() : customFavoriteIconRadioButtonPointer->icon();
+    QIcon favoriteIcon = websiteFavoriteIconRadioButtonPointer->isChecked() ? websiteFavoriteIconRadioButtonPointer->icon() : customFavoriteIconRadioButtonPointer->icon();
 
     // Create a bookmark struct.
     BookmarkStruct *bookmarkStructPointer = new BookmarkStruct;
@@ -165,7 +169,7 @@ void AddBookmarkDialog::browse()
 
 void AddBookmarkDialog::updateUi()
 {
-    // Determine if both line edits are populated.
+    // Update the add button status
     if (bookmarkNameLineEditPointer->text().isEmpty() || bookmarkUrlLineEditPointer->text().isEmpty())  // At least one of the line edits is empty.
     {
         // Disable the add button.