X-Git-Url: https://gitweb.stoutner.com/?p=PrivacyBrowserPC.git;a=blobdiff_plain;f=src%2Fhelpers%2FFolderHelper.cpp;fp=src%2Fhelpers%2FFolderHelper.cpp;h=01e1b229a69f425fd2d1057be61941cfbee1c239;hp=01a45da1f33b08490f6554e2afba8072b41944f4;hb=cc59ec7b2c1ad4d7832b2c05f7245e8387379e66;hpb=5e66d268d985552aeeae3e9ae7d0967d359a557f diff --git a/src/helpers/FolderHelper.cpp b/src/helpers/FolderHelper.cpp index 01a45da..01e1b22 100644 --- a/src/helpers/FolderHelper.cpp +++ b/src/helpers/FolderHelper.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2023 Soren Stoutner . + * Copyright 2023-2024 Soren Stoutner . * * This file is part of Privacy Browser PC . * @@ -61,26 +61,29 @@ void FolderHelper::populateSubfoldersExcept(const double exceptSubfolderDatabase // Populate each subfolder. for (BookmarkStruct bookmarkStruct : *subfoldersList) { - // Only populate the subfolder if it is not excepted. - if (bookmarkStruct.databaseId != exceptSubfolderDatabaseId) - { - // Create a tree widget item. - QTreeWidgetItem *subfolderWidgetItemPointer = new QTreeWidgetItem(); - - // Populate the tree widget item. - subfolderWidgetItemPointer->setText(FOLDER_NAME_COLUMN, bookmarkStruct.name); - subfolderWidgetItemPointer->setIcon(FOLDER_NAME_COLUMN, bookmarkStruct.favoriteIcon); - subfolderWidgetItemPointer->setText(FOLDER_ID_COLUMN, QString::number(bookmarkStruct.folderId, 'f', 0)); // Format the folder ID as a floating point with no trailing zeros. - - // Add the subfolder to the tree widget item. - treeWidgetItemPointer->addChild(subfolderWidgetItemPointer); - - // Select the folder if it is the initial parent folder. - if (bookmarkStruct.folderId == initialParentFolderId) - subfolderWidgetItemPointer->setSelected(true); - - // Add any subfolders. - populateSubfoldersExcept(exceptSubfolderDatabaseId, subfolderWidgetItemPointer, initialParentFolderId); - } + // Determine if this is an excepted folder. + bool exceptedFolder = bookmarkStruct.databaseId == exceptSubfolderDatabaseId; + + // Create a tree widget item. + QTreeWidgetItem *subfolderWidgetItemPointer = new QTreeWidgetItem(); + + // Populate the tree widget item. + subfolderWidgetItemPointer->setText(FOLDER_NAME_COLUMN, bookmarkStruct.name); + subfolderWidgetItemPointer->setIcon(FOLDER_NAME_COLUMN, bookmarkStruct.favoriteIcon); + subfolderWidgetItemPointer->setText(FOLDER_ID_COLUMN, QString::number(bookmarkStruct.folderId, 'f', 0)); // Format the folder ID as a floating point with no trailing zeros. + + // Disable the folder widget if it is excepted. All subfolders will automatically be disabled. + if (exceptedFolder) + subfolderWidgetItemPointer->setDisabled(true); + + // Add the subfolder to the tree widget item. + treeWidgetItemPointer->addChild(subfolderWidgetItemPointer); + + // Select the folder if it is the initial parent folder. + if (bookmarkStruct.folderId == initialParentFolderId) + subfolderWidgetItemPointer->setSelected(true); + + // Add any subfolders. + populateSubfoldersExcept(exceptSubfolderDatabaseId, subfolderWidgetItemPointer, initialParentFolderId); } }