Eclipse SUMO - Simulation of Urban MObility
GNEChangeGroup.h
Go to the documentation of this file.
1 /****************************************************************************/
2 // Eclipse SUMO, Simulation of Urban MObility; see https://eclipse.dev/sumo
3 // Copyright (C) 2006-2024 German Aerospace Center (DLR) and others.
4 // This program and the accompanying materials are made available under the
5 // terms of the Eclipse Public License 2.0 which is available at
6 // https://www.eclipse.org/legal/epl-2.0/
7 // This Source Code may also be made available under the following Secondary
8 // Licenses when the conditions for such availability set forth in the Eclipse
9 // Public License 2.0 are satisfied: GNU General Public License, version 2
10 // or later which is available at
11 // https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html
12 // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-or-later
13 /****************************************************************************/
18 //
19 /****************************************************************************/
20 #pragma once
21 #include <config.h>
22 
23 #include "GNEChange.h"
24 
31 class GNEChangeGroup : public GNEChange {
32  FXDECLARE(GNEChangeGroup)
33 
34 public:
36  friend class GNEUndoList;
37 
39  GNEChangeGroup(Supermode groupSupermode, GUIIcon icon, const std::string& description);
40 
43 
45  void undo();
46 
48  void redo();
49 
51  std::string undoName() const;
52 
54  std::string redoName() const;
55 
57  int size() const;
58 
60  const std::string& getDescription();
61 
63  const std::string& getTimeStamp();
64 
67 
69  GUIIcon getGroupIcon() const;
70 
72  bool empty() const;
73 
74 protected:
77 
79  const std::string myDescription;
80 
83 
85  const GUIIcon myIcon;
86 
87 private:
90 
93 
96 
98  std::string myTimeStamp;
99 
102 
105 };
Supermode
@brie enum for supermodes
GUIIcon
An enumeration of icons used by the gui applications.
Definition: GUIIcons.h:33
GNEChange * undoList
undo list command (can be access by GNEUndoList)
GNEChangeGroup & operator=(const GNEChangeGroup &)=delete
invalidate assignment operator
const std::string myDescription
description of command
const Supermode myGroupSupermode
supermode associated with this ChangeGroup
const std::string & getTimeStamp()
get timeStamp
GUIIcon getGroupIcon() const
get icon associated with this ChangeGroup
std::string undoName() const
get undo Name
GNEChange * redoList
redo list command (can be access by GNEUndoList)
GNEChangeGroup * group
group (can be access by GNEUndoList)
int size() const
Return the size of the command group.
const GUIIcon myIcon
icon associated with this ChangeGroup
std::string redoName() const
get redo name
bool empty() const
Return TRUE if empty.
std::string myTimeStamp
timeStamp HH:MM:SS
const std::string & getDescription()
get description
Supermode getGroupSupermode() const
get supermode associated with this ChangeGroup
void redo()
Redo whole command group.
void undo()
Undo whole command group.
GNEChangeGroup()
FOX need this.
~GNEChangeGroup()
Delete undo command and sub-commands.
GNEChangeGroup(const GNEChangeGroup &)
invalidate copy constructor
the function-object for an editing operation (abstract base)
Definition: GNEChange.h:56