![]() |
Eclipse SUMO - Simulation of Urban MObility
|
#include <GNEUndoList.h>
Data Structures | |
| class | Iterator |
| FOX declaration. More... | |
| class | RedoIterator |
| redo iterator More... | |
| class | UndoIterator |
| undo iterator More... | |
Public Member Functions | |
| void | abortAllChangeGroups () |
| reverts and discards ALL active chained change groups | |
| void | abortLastChangeGroup () |
| reverts last active chained change group | |
| void | add (GNEChange *command, bool doit=false, bool merge=true) |
| Add new command, executing it if desired. The new command will be merged with the previous command if merge is TRUE and we're not at a marked position and the commands are mergeable. Otherwise the new command will be appended after the last undo command in the currently active undo group. If the new command is successfully merged, it will be deleted. Furthermore, all redo commands will be deleted since it is no longer possible to redo from this point. | |
| void | begin (const GNEAttributeCarrier *AC, const std::string &description) |
| Begin undo command sub-group with current supermode. (used for ACs This begins a new group of commands that are treated as a single command. Must eventually be followed by a matching end() after recording the sub-commands. The new sub-group will be appended to its parent group's undo list when end() is called. | |
| void | begin (GUIIcon icon, const std::string &description) |
| Begin undo command sub-group with current supermode. This begins a new group of commands that are treated as a single command. Must eventually be followed by a matching end() after recording the sub-commands. The new sub-group will be appended to its parent group's undo list when end() is called. | |
| void | begin (Supermode supermode, GUIIcon icon, const std::string &description) |
| Begin undo command sub-group specifying supermode. This begins a new group of commands that are treated as a single command. Must eventually be followed by a matching end() after recording the sub-commands. The new sub-group will be appended to its parent group's undo list when end() is called. | |
| bool | busy () const |
| Return TRUE if currently inside undo or redo operation; this is useful to avoid generating another undo command while inside an undo operation. | |
| void | clear () |
| int | currentCommandGroupSize () const |
| get size of current CommandGroup | |
| void | end () |
| End undo command sub-group. If the sub-group is still empty, it will be deleted; otherwise, the sub-group will be added as a new command into parent group. | |
| Supermode | getRedoSupermode () const |
| get redo supermode | |
| Supermode | getUndoSupermode () const |
| get undo supermode | |
| GNEUndoList (GNEApplicationWindow *parent) | |
| constructor | |
| bool | hasCommandGroup () const |
| Check if undoList has command group. | |
| void | redo () |
| redo the last command group | |
| std::string | redoName () const |
| Return name of the first redo command available; if no Redo command available this will return the empty string. | |
| void | undo () |
| undo the last command group | |
| std::string | undoName () const |
| Return name of the first undo command available; if no undo command available this will return the empty string. | |
| ~GNEUndoList () | |
| destructor | |
FOX-callbacks | |
undo change | |
| long | onCmdUndo (FXObject *, FXSelector, void *) |
| long | onUpdUndo (FXObject *, FXSelector, void *) |
| event after Undo | |
| long | onCmdRedo (FXObject *, FXSelector, void *) |
| redo change | |
| long | onUpdRedo (FXObject *, FXSelector, void *) |
| event after Redo | |
Protected Member Functions | |
| void | abortCurrentSubGroup () |
| Abort the current command sub-group being compiled. All commands already added to the sub-groups undo list will be discarded. Intermediate command groups will be left intact. | |
| bool | canRedo () const |
| Can we redo more commands. | |
| bool | canUndo () const |
| Can we undo more commands. | |
| void | cut () |
| Cut the redo list. This is automatically invoked when a new undo command is added. | |
Private Attributes | |
| std::stack< GNEChangeGroup * > | myChangeGroups |
| GNEApplicationWindow *const | myGNEApplicationWindowParent |
| bool | myWorking |
| Currently busy with undo or redo. | |
declare friend class | |
| GNEChange * | undoList |
| undo list command (can be access by GNEUndoList) | |
| GNEChange * | redoList |
| redo list command (can be access by GNEUndoList) | |
| GNEChangeGroup * | group |
| group (can be access by GNEUndoList) | |
| std::string | myTimeStamp |
| timeStamp HH:MM:SS | |
| int | size () const |
| Return the size of the command group. | |
| const std::string & | getDescription () |
| get description | |
| const std::string & | getTimeStamp () |
| get timeStamp | |
| Supermode | getGroupSupermode () const |
| get supermode associated with this ChangeGroup | |
| GUIIcon | getGroupIcon () const |
| get icon associated with this ChangeGroup | |
| bool | empty () const |
| Return TRUE if empty. | |
| const std::string | myDescription |
| description of command | |
| const Supermode | myGroupSupermode |
| supermode associated with this ChangeGroup | |
| const GUIIcon | myIcon |
| icon associated with this ChangeGroup | |
friend class | |
| GNEChange * | next |
| Supermode | getSupermode () const |
| get supermode | |
| bool | canMerge () const |
| Return TRUE if this command can be merged with previous undo commands. This is useful to combine e.g. multiple consecutive single-character text changes into a single block change. The default implementation returns FALSE. | |
| bool | mergeWith (GNEChange *command) |
| Called by the undo system to try and merge the new incoming command with this command; should return TRUE if merging was possible. The default implementation returns FALSE. | |
| template<typename T> | |
| void | addElementInParentsAndChildren (T *element) |
| add given element in parents and children | |
| template<typename T> | |
| void | removeElementFromParentsAndChildren (T *element) |
| remove given element from parents and children | |
| const Supermode | mySupermode |
| supermode related with this change | |
| const GNEHierarchicalStructureParents | myParents |
| Hierarchical container with parents. | |
| bool | myForward |
| we group antagonistic commands (create junction/delete junction) and keep them apart by this flag | |
| const bool | mySelectedElement |
| flag for check if element is selected | |
Definition at line 42 of file GNEUndoList.h.
| GNEUndoList::GNEUndoList | ( | GNEApplicationWindow * | parent | ) |
constructor
Definition at line 131 of file GNEUndoList.cpp.
References myGNEApplicationWindowParent, and myWorking.
Referenced by GNEUndoList::RedoIterator::RedoIterator(), GNEUndoList::UndoIterator::UndoIterator(), and GNEUndoList::Iterator::~Iterator().
| GNEUndoList::~GNEUndoList | ( | ) |
destructor
Definition at line 137 of file GNEUndoList.cpp.
| void GNEUndoList::abortAllChangeGroups | ( | ) |
reverts and discards ALL active chained change groups
Definition at line 323 of file GNEUndoList.cpp.
References abortCurrentSubGroup(), hasCommandGroup(), and myChangeGroups.
Referenced by clear().
|
protected |
Abort the current command sub-group being compiled. All commands already added to the sub-groups undo list will be discarded. Intermediate command groups will be left intact.
Definition at line 548 of file GNEUndoList.cpp.
References GNEChangeGroup::GNEChangeGroup(), GNEChangeGroup::group, and myWorking.
Referenced by abortAllChangeGroups(), and abortLastChangeGroup().
| void GNEUndoList::abortLastChangeGroup | ( | ) |
reverts last active chained change group
Definition at line 334 of file GNEUndoList.cpp.
References abortCurrentSubGroup(), and myChangeGroups.
| void GNEUndoList::add | ( | GNEChange * | command, |
| bool | doit = false, | ||
| bool | merge = true ) |
Add new command, executing it if desired. The new command will be merged with the previous command if merge is TRUE and we're not at a marked position and the commands are mergeable. Otherwise the new command will be appended after the last undo command in the currently active undo group. If the new command is successfully merged, it will be deleted. Furthermore, all redo commands will be deleted since it is no longer possible to redo from this point.
Definition at line 345 of file GNEUndoList.cpp.
References GNEChange::canMerge(), cut(), GNEChange::GNEChange(), GNEChangeGroup::GNEChangeGroup(), GNEChangeGroup::group, GNEChange::mergeWith(), myWorking, GNEChange::next, GNEChange::redo(), and GNEChangeGroup::undoList.
Referenced by GNEChange_Attribute::changeAttribute(), GNEConnection::changeTLIndex(), GNENet::cleanInvalidDemandElements(), GNENet::cleanUnusedRoutes(), GNENet::createEdge(), GNENet::createJunction(), GNENet::createRoundabout(), GNENet::deleteAdditional(), GNENet::deleteConnection(), GNENet::deleteCrossing(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteGenericData(), GNENet::deleteJunction(), GNENet::deleteLane(), GNENet::deleteMeanData(), GNENet::deleteTAZSourceSink(), GNEStop::disableAttribute(), GNEStopPlan::disableAttribute(), GNEDemandElementFlow::disableFlowAttribute(), GNENet::duplicateLane(), GNEStop::enableAttribute(), GNEStopPlan::enableAttribute(), GNEDemandElementFlow::enableFlowAttribute(), GNEJunction::invalidateTLS(), GNENet::joinRoutes(), GNENet::joinSelectedJunctions(), GNETLSEditorFrame::TLSPrograms::onCmdSaveChanges(), GNERerouter::rebuildRerouterSymbols(), GNEVariableSpeedSign::rebuildVSSSymbols(), GNEJunction::removeConnectionsFrom(), GNEJunction::removeConnectionsTo(), GNEElementList::removeElementRecursively(), GNEElementList::removeElementRecursively(), GNEJunction::removeTLSConnections(), GNEJunction::replaceIncomingConnections(), GNENet::replaceIncomingEdge(), GNENet::replaceJunctionByGeometry(), GNENet::restrictLane(), GNEJunction::setAttribute(), GNEJunction::setJunctionType(), GNEEdge::setNumLanes(), and GNENet::splitEdge().
|
inlineprotectedinherited |
add given element in parents and children
Definition at line 121 of file GNEChange.h.
References GNEHierarchicalElement::insertChild(), and myParents.
Referenced by GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_GenericData::redo(), GNEChange_Junction::redo(), GNEChange_TAZSourceSink::redo(), GNEChange_Additional::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), GNEChange_GenericData::undo(), GNEChange_Junction::undo(), and GNEChange_TAZSourceSink::undo().
| void GNEUndoList::begin | ( | const GNEAttributeCarrier * | AC, |
| const std::string & | description ) |
Begin undo command sub-group with current supermode. (used for ACs This begins a new group of commands that are treated as a single command. Must eventually be followed by a matching end() after recording the sub-commands. The new sub-group will be appended to its parent group's undo list when end() is called.
Definition at line 219 of file GNEUndoList.cpp.
References begin(), GNETagProperties::getGUIIcon(), and GNEAttributeCarrier::getTagProperty().
| void GNEUndoList::begin | ( | GUIIcon | icon, |
| const std::string & | description ) |
Begin undo command sub-group with current supermode. This begins a new group of commands that are treated as a single command. Must eventually be followed by a matching end() after recording the sub-commands. The new sub-group will be appended to its parent group's undo list when end() is called.
Definition at line 209 of file GNEUndoList.cpp.
References begin(), myGNEApplicationWindowParent, and NETWORK.
Referenced by GNENet::addReversedEdge(), GNENet::adjustPersonPlans(), begin(), begin(), GNEChange_Attribute::changeAttribute(), GNEConnection::changeTLIndex(), GNENet::cleanInvalidCrossings(), GNENet::cleanInvalidDemandElements(), GNENet::cleanUnusedRoutes(), GNENet::clearAdditionalElements(), GNENet::clearDataElements(), GNENet::clearDemandElements(), GNENet::clearJunctionConnections(), GNENet::clearMeanDataElements(), GNEMoveElementConnection::commitMoveShape(), GNEMoveElementCrossing::commitMoveShape(), GNEMoveElementEdge::commitMoveShape(), GNEMoveElementJunction::commitMoveShape(), GNEMoveElementLane::commitMoveShape(), GNEMoveElementLaneDouble::commitMoveShape(), GNEMoveElementLaneSingle::commitMoveShape(), GNEMoveElementPlan::commitMoveShape(), GNEMoveElementPlanParent::commitMoveShape(), GNEMoveElementShape::commitMoveShape(), GNEMoveElementVehicle::commitMoveShape(), GNEMoveElementView::commitMoveShape(), GNEMoveElementViewResizable::commitMoveShape(), GNENet::createEdge(), GNENet::createRoundabout(), GNENet::deleteAdditional(), GNENet::deleteConnection(), GNENet::deleteCrossing(), GNENet::deleteDataInterval(), GNENet::deleteDataSet(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteGenericData(), GNENet::deleteJunction(), GNENet::deleteLane(), GNENet::deleteMeanData(), GNENet::deleteTAZSourceSink(), GNENet::duplicateLane(), GNEEdge::editEndpoint(), getRedoSupermode(), getUndoSupermode(), GNENet::joinRoutes(), GNENet::joinSelectedJunctions(), GNENet::mergeJunctions(), GNERoute::GNERoutePopupMenu::onCmdApplyDistance(), GNEVType::overwriteVType(), GNERerouter::rebuildRerouterSymbols(), GNEVariableSpeedSign::rebuildVSSSymbols(), GNEMoveElementConnection::removeGeometryPoint(), GNEMoveElementCrossing::removeGeometryPoint(), GNEMoveElementEdge::removeGeometryPoint(), GNEMoveElementJunction::removeGeometryPoint(), GNEMoveElementLane::removeGeometryPoint(), GNEMoveElementShape::removeGeometryPoint(), GNENet::removeSolitaryJunctions(), GNENet::replaceIncomingEdge(), GNENet::replaceJunctionByGeometry(), GNENet::resetJunctionConnections(), GNENet::reverseEdge(), GNENet::selectRoundabout(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEJunction::setAttribute(), GNERoute::setAttribute(), GNEJunction::setJunctionType(), GNEEdge::setNumLanes(), GNEMoveElementLaneDouble::setSize(), GNENet::splitEdge(), GNENet::splitEdgesBidi(), GNENet::splitJunction(), GNERouteHandler::transformToContainer(), GNERouteHandler::transformToContainerFlow(), GNERouteHandler::transformToFlow(), GNERouteHandler::transformToFlowJunctions(), GNERouteHandler::transformToFlowTAZs(), GNERouteHandler::transformToPerson(), GNERouteHandler::transformToPersonFlow(), GNERouteHandler::transformToRouteFlow(), GNERouteHandler::transformToTrip(), GNERouteHandler::transformToTripJunctions(), GNERouteHandler::transformToTripTAZs(), and GNERouteHandler::transformToVehicle().
Begin undo command sub-group specifying supermode. This begins a new group of commands that are treated as a single command. Must eventually be followed by a matching end() after recording the sub-commands. The new sub-group will be appended to its parent group's undo list when end() is called.
Definition at line 225 of file GNEUndoList.cpp.
References cut(), GNEChangeGroup::GNEChangeGroup(), GNEChangeGroup::GNEChangeGroup(), GNEChangeGroup::group, gViewUpdater, myChangeGroups, and myWorking.
| bool GNEUndoList::busy | ( | ) | const |
Return TRUE if currently inside undo or redo operation; this is useful to avoid generating another undo command while inside an undo operation.
Definition at line 428 of file GNEUndoList.cpp.
References myWorking.
|
inherited |
Return TRUE if this command can be merged with previous undo commands. This is useful to combine e.g. multiple consecutive single-character text changes into a single block change. The default implementation returns FALSE.
Definition at line 72 of file GNEChange.cpp.
Referenced by GNEUndoList::add().
|
protected |
Can we redo more commands.
Definition at line 577 of file GNEUndoList.cpp.
References GNEChangeGroup::redoList.
Referenced by onUpdRedo().
|
protected |
Can we undo more commands.
Definition at line 571 of file GNEUndoList.cpp.
References GNEChangeGroup::undoList.
Referenced by onUpdUndo().
| void GNEUndoList::clear | ( | ) |
Definition at line 300 of file GNEUndoList.cpp.
References abortAllChangeGroups(), GNEChange::GNEChange(), GNEChangeGroup::group, GNEChangeGroup::redoList, and GNEChangeGroup::undoList.
| int GNEUndoList::currentCommandGroupSize | ( | ) | const |
get size of current CommandGroup
Definition at line 380 of file GNEUndoList.cpp.
References myChangeGroups.
|
protected |
Cut the redo list. This is automatically invoked when a new undo command is added.
Definition at line 536 of file GNEUndoList.cpp.
References GNEChange::GNEChange(), and GNEChangeGroup::redoList.
Referenced by add(), and begin().
|
inherited |
Return TRUE if empty.
Definition at line 105 of file GNEChangeGroup.cpp.
References undoList.
Referenced by GNEUndoList::end().
| void GNEUndoList::end | ( | ) |
End undo command sub-group. If the sub-group is still empty, it will be deleted; otherwise, the sub-group will be added as a new command into parent group.
Definition at line 247 of file GNEUndoList.cpp.
References DATA_INSPECT, DATA_SELECT, DEMAND_INSPECT, DEMAND_SELECT, GNEChangeGroup::empty(), GNEChangeGroup::GNEChangeGroup(), GNEChangeGroup::group, gViewUpdater, myChangeGroups, myGNEApplicationWindowParent, myWorking, NETWORK_INSPECT, NETWORK_SELECT, GNEChange::next, and GNEChangeGroup::undoList.
Referenced by GNENet::addReversedEdge(), GNENet::adjustPersonPlans(), GNEChange_Attribute::changeAttribute(), GNEConnection::changeTLIndex(), GNENet::cleanInvalidCrossings(), GNENet::cleanInvalidDemandElements(), GNENet::cleanUnusedRoutes(), GNENet::clearAdditionalElements(), GNENet::clearDataElements(), GNENet::clearDemandElements(), GNENet::clearJunctionConnections(), GNENet::clearMeanDataElements(), GNEMoveElementConnection::commitMoveShape(), GNEMoveElementCrossing::commitMoveShape(), GNEMoveElementEdge::commitMoveShape(), GNEMoveElementJunction::commitMoveShape(), GNEMoveElementLane::commitMoveShape(), GNEMoveElementLaneDouble::commitMoveShape(), GNEMoveElementLaneSingle::commitMoveShape(), GNEMoveElementPlan::commitMoveShape(), GNEMoveElementPlanParent::commitMoveShape(), GNEMoveElementShape::commitMoveShape(), GNEMoveElementVehicle::commitMoveShape(), GNEMoveElementView::commitMoveShape(), GNEMoveElementViewResizable::commitMoveShape(), GNENet::createEdge(), GNENet::createRoundabout(), GNENet::deleteAdditional(), GNENet::deleteConnection(), GNENet::deleteCrossing(), GNENet::deleteDataInterval(), GNENet::deleteDataSet(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteGenericData(), GNENet::deleteJunction(), GNENet::deleteLane(), GNENet::deleteMeanData(), GNENet::deleteTAZSourceSink(), GNENet::duplicateLane(), GNEEdge::editEndpoint(), GNENet::joinRoutes(), GNENet::joinSelectedJunctions(), GNENet::mergeJunctions(), GNERoute::GNERoutePopupMenu::onCmdApplyDistance(), GNEVType::overwriteVType(), GNERerouter::rebuildRerouterSymbols(), GNEVariableSpeedSign::rebuildVSSSymbols(), GNEMoveElementConnection::removeGeometryPoint(), GNEMoveElementCrossing::removeGeometryPoint(), GNEMoveElementEdge::removeGeometryPoint(), GNEMoveElementJunction::removeGeometryPoint(), GNEMoveElementLane::removeGeometryPoint(), GNEMoveElementShape::removeGeometryPoint(), GNENet::removeSolitaryJunctions(), GNENet::replaceIncomingEdge(), GNENet::replaceJunctionByGeometry(), GNENet::resetJunctionConnections(), GNENet::reverseEdge(), GNENet::selectRoundabout(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEJunction::setAttribute(), GNERoute::setAttribute(), GNEJunction::setJunctionType(), GNEEdge::setNumLanes(), GNEMoveElementLaneDouble::setSize(), GNENet::splitEdge(), GNENet::splitEdgesBidi(), GNENet::splitJunction(), GNERouteHandler::transformToContainer(), GNERouteHandler::transformToContainerFlow(), GNERouteHandler::transformToFlow(), GNERouteHandler::transformToFlowJunctions(), GNERouteHandler::transformToFlowTAZs(), GNERouteHandler::transformToPerson(), GNERouteHandler::transformToPersonFlow(), GNERouteHandler::transformToRouteFlow(), GNERouteHandler::transformToTrip(), GNERouteHandler::transformToTripJunctions(), GNERouteHandler::transformToTripTAZs(), and GNERouteHandler::transformToVehicle().
|
inherited |
|
inherited |
get icon associated with this ChangeGroup
Definition at line 87 of file GNEChangeGroup.cpp.
References myIcon.
Referenced by GNEUndoList::Iterator::getIcon().
|
inherited |
get supermode associated with this ChangeGroup
Definition at line 81 of file GNEChangeGroup.cpp.
References myGroupSupermode.
| Supermode GNEUndoList::getRedoSupermode | ( | ) | const |
get redo supermode
Definition at line 406 of file GNEUndoList.cpp.
References begin(), GNEChangeGroup::GNEChangeGroup(), NETWORK, and GNEChangeGroup::redoList.
|
inherited |
get supermode
Definition at line 66 of file GNEChange.cpp.
References mySupermode.
Referenced by GNEChange_Attribute::GNEChange_Attribute(), GNEChange_Attribute::GNEChange_Attribute(), and GNEChange_ToggleAttribute::GNEChange_ToggleAttribute().
|
inherited |
get timeStamp
Definition at line 75 of file GNEChangeGroup.cpp.
References myTimeStamp.
Referenced by GNEUndoList::Iterator::getTimeStamp().
| Supermode GNEUndoList::getUndoSupermode | ( | ) | const |
get undo supermode
Definition at line 390 of file GNEUndoList.cpp.
References begin(), GNEChangeGroup::GNEChangeGroup(), NETWORK, and GNEChangeGroup::undoList.
| bool GNEUndoList::hasCommandGroup | ( | ) | const |
Check if undoList has command group.
Definition at line 422 of file GNEUndoList.cpp.
References myChangeGroups.
Referenced by abortAllChangeGroups(), GNEJunction::invalidateTLS(), onUpdRedo(), onUpdUndo(), and GNEJunction::setLogicValid().
|
inherited |
Called by the undo system to try and merge the new incoming command with this command; should return TRUE if merging was possible. The default implementation returns FALSE.
Definition at line 78 of file GNEChange.cpp.
References GNEChange().
Referenced by GNEUndoList::add().
| long GNEUndoList::onCmdRedo | ( | FXObject * | , |
| FXSelector | , | ||
| void * | ) |
redo change
Definition at line 485 of file GNEUndoList.cpp.
References redo().
Referenced by FXDEFMAP().
| long GNEUndoList::onCmdUndo | ( | FXObject * | , |
| FXSelector | , | ||
| void * | ) |
Definition at line 434 of file GNEUndoList.cpp.
References undo().
Referenced by FXDEFMAP().
| long GNEUndoList::onUpdRedo | ( | FXObject * | sender, |
| FXSelector | , | ||
| void * | ) |
event after Redo
Definition at line 492 of file GNEUndoList.cpp.
References canRedo(), hasCommandGroup(), myChangeGroups, myGNEApplicationWindowParent, redoName(), and TL.
Referenced by FXDEFMAP().
| long GNEUndoList::onUpdUndo | ( | FXObject * | sender, |
| FXSelector | , | ||
| void * | ) |
event after Undo
Definition at line 441 of file GNEUndoList.cpp.
References canUndo(), hasCommandGroup(), myChangeGroups, myGNEApplicationWindowParent, TL, and undoName().
Referenced by FXDEFMAP().
|
virtual |
redo the last command group
Reimplemented from GNEChangeGroup.
Definition at line 165 of file GNEUndoList.cpp.
References GNEChange::GNEChange(), GNEChangeGroup::group, myGNEApplicationWindowParent, myWorking, GNEChange::next, GNEChange::redo(), GNEChangeGroup::redoList, and GNEChangeGroup::undoList.
Referenced by onCmdRedo().
|
virtual |
Return name of the first redo command available; if no Redo command available this will return the empty string.
Reimplemented from GNEChangeGroup.
Definition at line 199 of file GNEUndoList.cpp.
References GNEChangeGroup::redoList.
Referenced by GNEUndoList::Iterator::getDescription(), and onUpdRedo().
|
inlineprotectedinherited |
remove given element from parents and children
Definition at line 148 of file GNEChange.h.
References myParents, and GNEHierarchicalElement::removeChild().
Referenced by GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_GenericData::redo(), GNEChange_Junction::redo(), GNEChange_TAZSourceSink::redo(), GNEChange_Additional::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), GNEChange_GenericData::undo(), GNEChange_Junction::undo(), and GNEChange_TAZSourceSink::undo().
|
virtualinherited |
Return the size of the command group.
Reimplemented from GNEChange.
Definition at line 137 of file GNEChangeGroup.cpp.
References GNEChange::GNEChange(), GNEChangeGroup(), GNEChange::next, redoList, GNEChange::size(), and undoList.
|
virtual |
undo the last command group
Reimplemented from GNEChangeGroup.
Definition at line 141 of file GNEUndoList.cpp.
References GNEChange::GNEChange(), GNEChangeGroup::group, myGNEApplicationWindowParent, myWorking, GNEChange::next, GNEChangeGroup::redoList, GNEChange::undo(), and GNEChangeGroup::undoList.
Referenced by onCmdUndo().
|
virtual |
Return name of the first undo command available; if no undo command available this will return the empty string.
Reimplemented from GNEChangeGroup.
Definition at line 189 of file GNEUndoList.cpp.
References GNEChangeGroup::undoList.
Referenced by onUpdUndo().
|
privateinherited |
group (can be access by GNEUndoList)
Definition at line 95 of file GNEChangeGroup.h.
Referenced by GNEUndoList::abortCurrentSubGroup(), GNEUndoList::add(), GNEUndoList::begin(), GNEUndoList::clear(), GNEUndoList::end(), GNEChangeGroup(), GNEChangeGroup(), GNEUndoList::redo(), GNEUndoList::undo(), and ~GNEChangeGroup().
|
private |
Definition at line 233 of file GNEUndoList.h.
Referenced by abortAllChangeGroups(), abortLastChangeGroup(), begin(), currentCommandGroupSize(), end(), hasCommandGroup(), onUpdRedo(), and onUpdUndo().
|
protectedinherited |
description of command
Definition at line 79 of file GNEChangeGroup.h.
Referenced by getDescription(), GNEChangeGroup(), redoName(), and undoName().
|
protectedinherited |
we group antagonistic commands (create junction/delete junction) and keep them apart by this flag
Definition at line 180 of file GNEChange.h.
Referenced by GNEChange(), GNEChange(), GNEChange(), GNEChange_Additional::redo(), GNEChange_Children::redo(), GNEChange_Connection::redo(), GNEChange_Crossing::redo(), GNEChange_DataInterval::redo(), GNEChange_DataSet::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_EdgeType::redo(), GNEChange_GenericData::redo(), GNEChange_Junction::redo(), GNEChange_Lane::redo(), GNEChange_MeanData::redo(), GNEChange_TAZSourceSink::redo(), GNEChange_TLS::redo(), GNEChange_Additional::redoName(), GNEChange_Children::redoName(), GNEChange_Connection::redoName(), GNEChange_Crossing::redoName(), GNEChange_DataInterval::redoName(), GNEChange_DataSet::redoName(), GNEChange_DemandElement::redoName(), GNEChange_Edge::redoName(), GNEChange_EdgeType::redoName(), GNEChange_GenericData::redoName(), GNEChange_Junction::redoName(), GNEChange_Lane::redoName(), GNEChange_MeanData::redoName(), GNEChange_TAZSourceSink::redoName(), GNEChange_TLS::redoName(), GNEChange_Additional::undo(), GNEChange_Children::undo(), GNEChange_Connection::undo(), GNEChange_Crossing::undo(), GNEChange_DataInterval::undo(), GNEChange_DataSet::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), GNEChange_EdgeType::undo(), GNEChange_GenericData::undo(), GNEChange_Junction::undo(), GNEChange_Lane::undo(), GNEChange_MeanData::undo(), GNEChange_TAZSourceSink::undo(), GNEChange_TLS::undo(), GNEChange_Additional::undoName(), GNEChange_Children::undoName(), GNEChange_Connection::undoName(), GNEChange_Crossing::undoName(), GNEChange_DataInterval::undoName(), GNEChange_DataSet::undoName(), GNEChange_DemandElement::undoName(), GNEChange_Edge::undoName(), GNEChange_EdgeType::undoName(), GNEChange_GenericData::undoName(), GNEChange_Junction::undoName(), GNEChange_Lane::undoName(), GNEChange_MeanData::undoName(), GNEChange_TAZSourceSink::undoName(), and GNEChange_TLS::undoName().
|
private |
Definition at line 236 of file GNEUndoList.h.
Referenced by begin(), end(), GNEUndoList(), onUpdRedo(), onUpdUndo(), redo(), and undo().
|
protectedinherited |
supermode associated with this ChangeGroup
Definition at line 82 of file GNEChangeGroup.h.
Referenced by getGroupSupermode(), GNEChangeGroup(), and GNEChangeGroup().
|
protectedinherited |
icon associated with this ChangeGroup
Definition at line 85 of file GNEChangeGroup.h.
Referenced by getGroupIcon(), GNEChangeGroup(), and GNEChangeGroup().
|
protectedinherited |
Hierarchical container with parents.
Definition at line 177 of file GNEChange.h.
Referenced by addElementInParentsAndChildren(), GNEChange(), GNEChange_DemandElement::redo(), removeElementFromParentsAndChildren(), and GNEChange_DemandElement::undo().
|
protectedinherited |
flag for check if element is selected
Definition at line 183 of file GNEChange.h.
Referenced by GNEChange(), GNEChange(), GNEChange(), GNEChange_Additional::redo(), GNEChange_Connection::redo(), GNEChange_Crossing::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_GenericData::redo(), GNEChange_Junction::redo(), GNEChange_Lane::redo(), GNEChange_MeanData::redo(), GNEChange_TAZSourceSink::redo(), GNEChange_Additional::undo(), GNEChange_Connection::undo(), GNEChange_Crossing::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), GNEChange_GenericData::undo(), GNEChange_Junction::undo(), GNEChange_Lane::undo(), and GNEChange_MeanData::undo().
|
protectedinherited |
supermode related with this change
Definition at line 174 of file GNEChange.h.
Referenced by getSupermode(), GNEChange(), GNEChange(), and GNEChange().
|
privateinherited |
timeStamp HH:MM:SS
Definition at line 98 of file GNEChangeGroup.h.
Referenced by getTimeStamp(), and GNEChangeGroup().
|
private |
Currently busy with undo or redo.
Definition at line 230 of file GNEUndoList.h.
Referenced by abortCurrentSubGroup(), add(), begin(), busy(), end(), GNEUndoList(), redo(), and undo().
|
privateinherited |
Definition at line 187 of file GNEChange.h.
Referenced by GNEUndoList::add(), GNEUndoList::end(), GNEChange(), GNEChange(), GNEChange(), GNEChangeGroup::redo(), GNEUndoList::redo(), GNEChangeGroup::size(), GNEChangeGroup::undo(), and GNEUndoList::undo().
|
privateinherited |
redo list command (can be access by GNEUndoList)
Definition at line 92 of file GNEChangeGroup.h.
Referenced by GNEUndoList::canRedo(), GNEUndoList::clear(), GNEUndoList::cut(), GNEUndoList::getRedoSupermode(), GNEChangeGroup(), GNEChangeGroup(), redo(), GNEUndoList::redo(), GNEUndoList::RedoIterator::RedoIterator(), GNEUndoList::redoName(), size(), undo(), GNEUndoList::undo(), and ~GNEChangeGroup().
|
privateinherited |
undo list command (can be access by GNEUndoList)
Definition at line 89 of file GNEChangeGroup.h.
Referenced by GNEUndoList::add(), GNEUndoList::canUndo(), GNEUndoList::clear(), empty(), GNEUndoList::end(), GNEUndoList::getUndoSupermode(), GNEChangeGroup(), GNEChangeGroup(), redo(), GNEUndoList::redo(), GNEUndoList::RedoIterator::RedoIterator(), size(), undo(), GNEUndoList::undo(), GNEUndoList::UndoIterator::UndoIterator(), GNEUndoList::undoName(), and ~GNEChangeGroup().