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