diff --git a/ApplicationCode/Application/Tools/CMakeLists_files.cmake b/ApplicationCode/Application/Tools/CMakeLists_files.cmake index 0abbebfb1c..3dd9a35db2 100644 --- a/ApplicationCode/Application/Tools/CMakeLists_files.cmake +++ b/ApplicationCode/Application/Tools/CMakeLists_files.cmake @@ -36,6 +36,7 @@ ${CMAKE_CURRENT_LIST_DIR}/RiaOffshoreSphericalCoords.h ${CMAKE_CURRENT_LIST_DIR}/RiaWeightedAverageCalculator.h ${CMAKE_CURRENT_LIST_DIR}/RiaWeightedAverageCalculator.inl ${CMAKE_CURRENT_LIST_DIR}/RiaWeightedGeometricMeanCalculator.h +${CMAKE_CURRENT_LIST_DIR}/RiaOptionItemFactory.h ) set (SOURCE_GROUP_SOURCE_FILES @@ -72,6 +73,7 @@ ${CMAKE_CURRENT_LIST_DIR}/RiaSCurveCalculator.cpp ${CMAKE_CURRENT_LIST_DIR}/RiaArcCurveCalculator.cpp ${CMAKE_CURRENT_LIST_DIR}/RiaJCurveCalculator.cpp ${CMAKE_CURRENT_LIST_DIR}/RiaWeightedGeometricMeanCalculator.cpp +${CMAKE_CURRENT_LIST_DIR}/RiaOptionItemFactory.cpp ) list(APPEND CODE_HEADER_FILES diff --git a/ApplicationCode/Application/Tools/RiaOptionItemFactory.cpp b/ApplicationCode/Application/Tools/RiaOptionItemFactory.cpp new file mode 100644 index 0000000000..c594610921 --- /dev/null +++ b/ApplicationCode/Application/Tools/RiaOptionItemFactory.cpp @@ -0,0 +1,49 @@ +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2018 Statoil ASA +// +// ResInsight is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. +// +// See the GNU General Public License at +// for more details. +// +///////////////////////////////////////////////////////////////////////////////// + +#include "RiaOptionItemFactory.h" + +#include "Rim3dView.h" +#include "RimCase.h" + +//-------------------------------------------------------------------------------------------------- +/// +//-------------------------------------------------------------------------------------------------- +void RiaOptionItemFactory::appendOptionItemFromViewNameAndCaseName(Rim3dView* view, QList* optionItems) +{ + if (!view || !optionItems) return; + + QString caseName; + + RimCase* rimCase = nullptr; + view->firstAncestorOrThisOfType(rimCase); + if (rimCase) + { + caseName = rimCase->caseUserDescription(); + } + else + { + caseName = ""; + } + + QString displayName = caseName + " : " + view->name(); + + QIcon icon = view->uiCapability()->uiIcon(); + + optionItems->push_back(caf::PdmOptionItemInfo(displayName, view, false, icon)); +} diff --git a/ApplicationCode/Application/Tools/RiaOptionItemFactory.h b/ApplicationCode/Application/Tools/RiaOptionItemFactory.h new file mode 100644 index 0000000000..e2ab8b01ca --- /dev/null +++ b/ApplicationCode/Application/Tools/RiaOptionItemFactory.h @@ -0,0 +1,31 @@ +///////////////////////////////////////////////////////////////////////////////// +// +// Copyright (C) 2018 Statoil ASA +// +// ResInsight is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY +// WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. +// +// See the GNU General Public License at +// for more details. +// +///////////////////////////////////////////////////////////////////////////////// + +#pragma once + +#include "cafPdmUiItem.h" + +#include + +class Rim3dView; + +class RiaOptionItemFactory +{ +public: + static void appendOptionItemFromViewNameAndCaseName(Rim3dView* view, QList* optionItems); +}; diff --git a/ApplicationCode/Commands/HoloLensCommands/RicHoloLensExportToFolderUi.cpp b/ApplicationCode/Commands/HoloLensCommands/RicHoloLensExportToFolderUi.cpp index bb40850ef7..0a136e822d 100644 --- a/ApplicationCode/Commands/HoloLensCommands/RicHoloLensExportToFolderUi.cpp +++ b/ApplicationCode/Commands/HoloLensCommands/RicHoloLensExportToFolderUi.cpp @@ -19,6 +19,7 @@ #include "RicHoloLensExportToFolderUi.h" #include "RiaApplication.h" +#include "RiaOptionItemFactory.h" #include "RimCase.h" #include "RimGridView.h" @@ -81,16 +82,7 @@ QList RicHoloLensExportToFolderUi::calculateValueOptions for (RimGridView* v : visibleViews) { - RimCase* rimCase = nullptr; - v->firstAncestorOrThisOfType(rimCase); - - QIcon icon; - if (rimCase) - { - icon = rimCase->uiCapability()->uiIcon(); - } - - options.push_back(caf::PdmOptionItemInfo(v->name(), v, false, icon)); + RiaOptionItemFactory::appendOptionItemFromViewNameAndCaseName(v, &options); } }