From b45d2155c0a288658febd8d624f36cedeffa8844 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:41:46 +0100 Subject: [PATCH 01/13] Use correct icon getter --- ExampleAnalysis/src/ExampleAnalysisPlugin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ExampleAnalysis/src/ExampleAnalysisPlugin.cpp b/ExampleAnalysis/src/ExampleAnalysisPlugin.cpp index 2019484..c4c5e0e 100644 --- a/ExampleAnalysis/src/ExampleAnalysisPlugin.cpp +++ b/ExampleAnalysis/src/ExampleAnalysisPlugin.cpp @@ -278,7 +278,7 @@ mv::gui::PluginTriggerActions ExampleAnalysisPluginFactory::getPluginTriggerActi const auto numberOfDatasets = datasets.count(); if (numberOfDatasets >= 1 && PluginFactory::areAllDatasetsOfTheSameType(datasets, PointType)) { - auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example Analysis", "Perform an Example Analysis", getIcon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { + auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example Analysis", "Perform an Example Analysis", icon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { for (auto dataset : datasets) getPluginInstance(dataset); }); From 8aac2ca92185b7d288ced30b9298f2d74258eb02 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:43:02 +0100 Subject: [PATCH 02/13] Removed redundant override --- ExampleData/src/ExampleDataPlugin.cpp | 10 ---------- ExampleData/src/ExampleDataPlugin.h | 14 -------------- 2 files changed, 24 deletions(-) diff --git a/ExampleData/src/ExampleDataPlugin.cpp b/ExampleData/src/ExampleDataPlugin.cpp index da0b3ea..5ec06d3 100644 --- a/ExampleData/src/ExampleDataPlugin.cpp +++ b/ExampleData/src/ExampleDataPlugin.cpp @@ -71,11 +71,6 @@ Dataset PixelSet::copy() const return copySet; } -QIcon PixelSet::getIcon(const QColor& color /*= Qt::black*/) const -{ - return QIcon(); -} - std::vector& PixelSet::getSelectionIndices() { return _indices; @@ -177,11 +172,6 @@ ExampleDataPluginFactory::ExampleDataPluginFactory() getPluginMetadata().setLicenseText("This plugin is distributed under the [LGPL v3.0](https://www.gnu.org/licenses/lgpl-3.0.en.html) license."); } -QIcon ExampleDataPluginFactory::getIcon(const QColor& color /*= Qt::black*/) const -{ - return Application::getIconFont("FontAwesome").getIcon("database", color); -} - plugin::RawData* ExampleDataPluginFactory::produce() { return new ExampleDataPlugin(this); diff --git a/ExampleData/src/ExampleDataPlugin.h b/ExampleData/src/ExampleDataPlugin.h index 08fd493..540666b 100644 --- a/ExampleData/src/ExampleDataPlugin.h +++ b/ExampleData/src/ExampleDataPlugin.h @@ -62,13 +62,6 @@ class EXAMPLEDATAPLUGIN_EXPORT PixelSet : public mv::DatasetImpl /** Mandatory override for copying of data sets */ mv::Dataset copy() const override; - /** - * Get set icon - * @param color Icon color for flat (font) icons - * @return Icon - */ - QIcon getIcon(const QColor& color = Qt::black) const override; - public: // Selection /** @@ -122,12 +115,5 @@ class ExampleDataPluginFactory : public RawDataFactory public: ExampleDataPluginFactory(); - /** - * Get plugin icon - * @param color Icon color for flat (font) icons - * @return Icon - */ - QIcon getIcon(const QColor& color = Qt::black) const override; - mv::plugin::RawData* produce() override; }; From 3805fca56c6bb414b9d3ca57c25556e750702dd4 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:43:48 +0100 Subject: [PATCH 03/13] Set icon in plugin factory --- ExampleData/src/ExampleDataPlugin.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ExampleData/src/ExampleDataPlugin.cpp b/ExampleData/src/ExampleDataPlugin.cpp index 5ec06d3..0b6f346 100644 --- a/ExampleData/src/ExampleDataPlugin.cpp +++ b/ExampleData/src/ExampleDataPlugin.cpp @@ -157,6 +157,8 @@ void PixelSet::selectInvert() ExampleDataPluginFactory::ExampleDataPluginFactory() { + setIconByName("database"); + getPluginMetadata().setDescription("Example data plugin"); getPluginMetadata().setSummary("This example shows how to implement a basic data plugin in ManiVault Studio."); getPluginMetadata().setCopyrightHolder({ "BioVault (Biomedical Visual Analytics Unit LUMC - TU Delft)" }); From c4deb22179c15e29c9297ba64ad394945bd01bbc Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:44:18 +0100 Subject: [PATCH 04/13] Use correct icon getter --- ExampleDependencies/src/ExampleDependenciesPlugin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ExampleDependencies/src/ExampleDependenciesPlugin.cpp b/ExampleDependencies/src/ExampleDependenciesPlugin.cpp index 423a401..85cce8c 100644 --- a/ExampleDependencies/src/ExampleDependenciesPlugin.cpp +++ b/ExampleDependencies/src/ExampleDependenciesPlugin.cpp @@ -185,7 +185,7 @@ mv::gui::PluginTriggerActions ExampleDependenciesPluginFactory::getPluginTrigger const auto numberOfDatasets = datasets.count(); if (numberOfDatasets >= 1 && PluginFactory::areAllDatasetsOfTheSameType(datasets, PointType)) { - auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example dependencies", "Perform an Example Analysis", getIcon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { + auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example dependencies", "Perform an Example Analysis", icon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { for (auto& dataset : datasets) getPluginInstance(dataset); }); From 03ab55a4c37ec680b80fd471fcc8cfa117a5a043 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:45:09 +0100 Subject: [PATCH 05/13] Use correct icon getter --- ExampleTransformation/src/ExampleTransformationPlugin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ExampleTransformation/src/ExampleTransformationPlugin.cpp b/ExampleTransformation/src/ExampleTransformationPlugin.cpp index 7cb91cd..eaabd51 100644 --- a/ExampleTransformation/src/ExampleTransformationPlugin.cpp +++ b/ExampleTransformation/src/ExampleTransformationPlugin.cpp @@ -172,7 +172,7 @@ mv::gui::PluginTriggerActions ExampleTransformationPluginFactory::getPluginTrigg const auto addPluginTriggerAction = [this, &pluginTriggerActions, datasets](const ExampleTransformationPlugin::Type& type) -> void { const auto typeName = ExampleTransformationPlugin::getTypeName(type); - auto pluginTriggerAction = new mv::gui::PluginTriggerAction(const_cast(this), this, QString("Example/%1").arg(typeName), QString("Perform %1 data transformation").arg(typeName), getIcon(), [this, datasets, type](mv::gui::PluginTriggerAction& pluginTriggerAction) -> void { + auto pluginTriggerAction = new mv::gui::PluginTriggerAction(const_cast(this), this, QString("Example/%1").arg(typeName), QString("Perform %1 data transformation").arg(typeName), icon(), [this, datasets, type](mv::gui::PluginTriggerAction& pluginTriggerAction) -> void { for (const auto& dataset : datasets) { auto pluginInstance = dynamic_cast(plugins().requestPlugin(getKind())); From b94824e69374d694c69da18d00ef9321c22dd926 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:45:48 +0100 Subject: [PATCH 06/13] Removed redundant override --- ExampleViewJS/src/ExampleViewJSPlugin.cpp | 5 ----- ExampleViewJS/src/ExampleViewJSPlugin.h | 3 --- 2 files changed, 8 deletions(-) diff --git a/ExampleViewJS/src/ExampleViewJSPlugin.cpp b/ExampleViewJS/src/ExampleViewJSPlugin.cpp index 32f8de3..aa38556 100644 --- a/ExampleViewJS/src/ExampleViewJSPlugin.cpp +++ b/ExampleViewJS/src/ExampleViewJSPlugin.cpp @@ -250,11 +250,6 @@ ExampleViewJSPluginFactory::ExampleViewJSPluginFactory() getPluginMetadata().setLicenseText("This plugin is distributed under the [LGPL v3.0](https://www.gnu.org/licenses/lgpl-3.0.en.html) license."); } -QIcon ExampleViewJSPluginFactory::getIcon(const QColor& color /*= Qt::black*/) const -{ - return mv::Application::getIconFont("FontAwesome").getIcon("bullseye", color); -} - ViewPlugin* ExampleViewJSPluginFactory::produce() { return new ExampleViewJSPlugin(this); diff --git a/ExampleViewJS/src/ExampleViewJSPlugin.h b/ExampleViewJS/src/ExampleViewJSPlugin.h index 161bd0c..17be088 100644 --- a/ExampleViewJS/src/ExampleViewJSPlugin.h +++ b/ExampleViewJS/src/ExampleViewJSPlugin.h @@ -91,9 +91,6 @@ class ExampleViewJSPluginFactory : public ViewPluginFactory /** Default constructor */ ExampleViewJSPluginFactory(); - /** Get plugin icon */ - QIcon getIcon(const QColor& color = Qt::black) const override; - /** Creates an instance of the example view plugin */ ViewPlugin* produce() override; From 2ef10b3d164de1bec50567d5134bb98afc548c05 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:46:13 +0100 Subject: [PATCH 07/13] Use correct icon getter --- ExampleViewJS/src/ExampleViewJSPlugin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ExampleViewJS/src/ExampleViewJSPlugin.cpp b/ExampleViewJS/src/ExampleViewJSPlugin.cpp index aa38556..a607fc4 100644 --- a/ExampleViewJS/src/ExampleViewJSPlugin.cpp +++ b/ExampleViewJS/src/ExampleViewJSPlugin.cpp @@ -274,7 +274,7 @@ mv::gui::PluginTriggerActions ExampleViewJSPluginFactory::getPluginTriggerAction const auto numberOfDatasets = datasets.count(); if (numberOfDatasets >= 1 && PluginFactory::areAllDatasetsOfTheSameType(datasets, PointType)) { - auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example JS", "View JavaScript visualization", getIcon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { + auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example JS", "View JavaScript visualization", icon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { for (auto dataset : datasets) getPluginInstance()->loadData(Datasets({ dataset })); From 2f19713292bf7571dc4e8a92544e46901b075ab6 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:46:31 +0100 Subject: [PATCH 08/13] Set icon in plugin factory --- ExampleViewJS/src/ExampleViewJSPlugin.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ExampleViewJS/src/ExampleViewJSPlugin.cpp b/ExampleViewJS/src/ExampleViewJSPlugin.cpp index a607fc4..1a3ec90 100644 --- a/ExampleViewJS/src/ExampleViewJSPlugin.cpp +++ b/ExampleViewJS/src/ExampleViewJSPlugin.cpp @@ -235,6 +235,8 @@ void ExampleViewJSPlugin::createData() ExampleViewJSPluginFactory::ExampleViewJSPluginFactory() { + setIconByName("bullseye"); + getPluginMetadata().setDescription("Example Javascript view plugin"); getPluginMetadata().setSummary("This plugin shows how to implement a basic Javascript-based view plugin in ManiVault Studio."); getPluginMetadata().setCopyrightHolder({ "BioVault (Biomedical Visual Analytics Unit LUMC - TU Delft)" }); From a3b98d0fdb10342acc76886e17103c6b75fb6cae Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:47:33 +0100 Subject: [PATCH 09/13] Removed redundant override --- ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp | 5 ----- ExampleViewOpenGL/src/ExampleViewGLPlugin.h | 3 --- 2 files changed, 8 deletions(-) diff --git a/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp b/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp index 38dabf7..f14690f 100644 --- a/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp +++ b/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp @@ -296,11 +296,6 @@ void ExampleViewGLPluginFactory::initialize() setStatusBarAction(_statusBarAction); } -QIcon ExampleViewGLPluginFactory::getIcon(const QColor& color /*= Qt::black*/) const -{ - return mv::Application::getIconFont("FontAwesome").getIcon("cube", color); -} - mv::DataTypes ExampleViewGLPluginFactory::supportedDataTypes() const { DataTypes supportedTypes; diff --git a/ExampleViewOpenGL/src/ExampleViewGLPlugin.h b/ExampleViewOpenGL/src/ExampleViewGLPlugin.h index 492e21a..97c6f59 100644 --- a/ExampleViewOpenGL/src/ExampleViewGLPlugin.h +++ b/ExampleViewOpenGL/src/ExampleViewGLPlugin.h @@ -94,9 +94,6 @@ class ExampleViewGLPluginFactory : public ViewPluginFactory /** Perform post-construction initialization */ void initialize() override; - /** Get plugin icon */ - QIcon getIcon(const QColor& color = Qt::black) const override; - /** Creates an instance of the example view plugin */ ViewPlugin* produce() override; From ed1e32da0e809d95323ed5e2280dbde72257b4a9 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:47:45 +0100 Subject: [PATCH 10/13] Use correct icon getter --- ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp b/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp index f14690f..434a001 100644 --- a/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp +++ b/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp @@ -317,7 +317,7 @@ mv::gui::PluginTriggerActions ExampleViewGLPluginFactory::getPluginTriggerAction const auto numberOfDatasets = datasets.count(); if (numberOfDatasets >= 1 && PluginFactory::areAllDatasetsOfTheSameType(datasets, PointType)) { - auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example GL", "OpenGL view example data", getIcon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { + auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example GL", "OpenGL view example data", icon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { for (auto& dataset : datasets) getPluginInstance()->loadData(Datasets({ dataset })); }); From c8112d8c70294ed6801263afee6dcf631cfe29f4 Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:48:06 +0100 Subject: [PATCH 11/13] Set icon in plugin factory --- ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp b/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp index 434a001..f314220 100644 --- a/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp +++ b/ExampleViewOpenGL/src/ExampleViewGLPlugin.cpp @@ -239,6 +239,8 @@ ExampleViewGLPluginFactory::ExampleViewGLPluginFactory() : _statusBarPopupGroupAction(this, "Popup Group"), _statusBarPopupAction(this, "Popup") { + setIconByName("cube"); + getPluginMetadata().setDescription("Example OpenGL view"); getPluginMetadata().setSummary("This example shows how to implement a basic OpenGL-based view plugin in ManiVault Studio."); getPluginMetadata().setCopyrightHolder({ "BioVault (Biomedical Visual Analytics Unit LUMC - TU Delft)" }); From 3c6fedb57b5b4fdfa983f81d8f470f1eba2497bf Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:48:40 +0100 Subject: [PATCH 12/13] Use correct icon getter --- ExampleView/src/ExampleViewPlugin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ExampleView/src/ExampleViewPlugin.cpp b/ExampleView/src/ExampleViewPlugin.cpp index 486ad85..a445b8d 100644 --- a/ExampleView/src/ExampleViewPlugin.cpp +++ b/ExampleView/src/ExampleViewPlugin.cpp @@ -230,7 +230,7 @@ mv::gui::PluginTriggerActions ExampleViewPluginFactory::getPluginTriggerActions( const auto numberOfDatasets = datasets.count(); if (numberOfDatasets >= 1 && PluginFactory::areAllDatasetsOfTheSameType(datasets, PointType)) { - auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example", "View example data", getIcon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { + auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example", "View example data", icon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { for (auto dataset : datasets) getPluginInstance(); }); From dc65e72dbbbe343d79fb9bf3bb92eee207d0aa8c Mon Sep 17 00:00:00 2001 From: Thomas Kroes Date: Thu, 27 Feb 2025 11:49:08 +0100 Subject: [PATCH 13/13] Use correct icon getter --- ExampleWriter/src/ExampleWriterPlugin.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ExampleWriter/src/ExampleWriterPlugin.cpp b/ExampleWriter/src/ExampleWriterPlugin.cpp index 1fa52b2..0525867 100644 --- a/ExampleWriter/src/ExampleWriterPlugin.cpp +++ b/ExampleWriter/src/ExampleWriterPlugin.cpp @@ -111,7 +111,7 @@ PluginTriggerActions ExampleWriterPluginFactory::getPluginTriggerActions(const m if (PluginFactory::areAllDatasetsOfTheSameType(datasets, PointType)) { if (datasets.count() >= 1) { - auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example Writer", "Export random data to disk (not the selected data set)", getIcon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { + auto pluginTriggerAction = new PluginTriggerAction(const_cast(this), this, "Example Writer", "Export random data to disk (not the selected data set)", icon(), [this, getPluginInstance, datasets](PluginTriggerAction& pluginTriggerAction) -> void { for (auto dataset : datasets) getPluginInstance(dataset); });