1 /* 2 SPDX-License-Identifier: GPL-2.0-or-later 3 SPDX-FileCopyrightText: 2002-2014 Umbrello UML Modeller Authors <umbrello-devel@kde.org> 4 */ 5 6 #include "cmdsetvisibility.h" 7 8 // app includes 9 #include "uml.h" 10 #include "umldoc.h" 11 #include "umlobject.h" 12 13 #include <KLocalizedString> 14 15 namespace Uml 16 { 17 CmdSetVisibility(UMLObject * obj,Visibility::Enum visibility)18 CmdSetVisibility::CmdSetVisibility(UMLObject * obj, Visibility::Enum visibility) 19 : CmdBaseObjectCommand(obj), 20 m_visibility(visibility) 21 { 22 setText(i18n("Change visibility : %1", obj->name())); 23 m_oldVisibility = obj->visibility(); 24 } 25 ~CmdSetVisibility()26 CmdSetVisibility::~CmdSetVisibility() 27 { 28 } 29 redo()30 void CmdSetVisibility::redo() 31 { 32 UMLObject *umlObject = object(); 33 if (umlObject) 34 umlObject->setVisibilityCmd(m_visibility); 35 } 36 undo()37 void CmdSetVisibility::undo() 38 { 39 UMLObject *umlObject = object(); 40 if (umlObject) 41 umlObject->setVisibilityCmd(m_oldVisibility); 42 } 43 44 } 45