///////////////////////////////////////////////////////////////////////////////// // // Copyright (C) 2015- Statoil ASA // Copyright (C) 2015- Ceetron Solutions AS // // 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 "RicDeleteAllLinkedViewsFeature.h" #include "RiaApplication.h" #include "RimProject.h" #include "RimViewLinker.h" #include "RimViewLinkerCollection.h" #include CAF_CMD_SOURCE_INIT(RicDeleteAllLinkedViewsFeature, "RicDeleteAllLinkedViewsFeature"); //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- bool RicDeleteAllLinkedViewsFeature::isCommandEnabled() { return true; } //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- void RicDeleteAllLinkedViewsFeature::onActionTriggered(bool isChecked) { RimProject* proj = RiaApplication::instance()->project(); RimViewLinker* viewLinker = proj->viewLinkerCollection()->viewLinker(); if (viewLinker) { // Remove the view linker object from the view linker collection // viewLinkerCollection->viewLinker is a PdmChildField containing one RimViewLinker child object proj->viewLinkerCollection->viewLinker.removeChildObject(viewLinker); viewLinker->applyRangeFilterCollectionByUserChoice(); delete viewLinker; proj->uiCapability()->updateConnectedEditors(); } } //-------------------------------------------------------------------------------------------------- /// //-------------------------------------------------------------------------------------------------- void RicDeleteAllLinkedViewsFeature::setupActionLook(QAction* actionToSetup) { actionToSetup->setText("Delete All Linked Views"); actionToSetup->setIcon(QIcon(":/Erase.png")); }