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. | |
void | restoreHierarchicalContainers () |
restore container (only use in undo() function) | |
template<typename T > | |
void | addElementInParentsAndChildren (T *element) |
add given element into parents and children (only use in redo() function) | |
template<typename T > | |
void | removeElementFromParentsAndChildren (T *element) |
remove given element from parents and children (only use in redo() function) | |
const Supermode | mySupermode |
supermode related with this change | |
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 | |
const GNEHierarchicalContainer | myOriginalHierarchicalContainer |
Hierarchical container with parent and children. | |
std::map< GNEHierarchicalElement *, GNEHierarchicalContainer > | myHierarchicalContainers |
map with hierarchical container of all parent and children elements | |
Definition at line 42 of file GNEUndoList.h.
GNEUndoList::GNEUndoList | ( | GNEApplicationWindow * | parent | ) |
constructor
Definition at line 129 of file GNEUndoList.cpp.
GNEUndoList::~GNEUndoList | ( | ) |
destructor
Definition at line 135 of file GNEUndoList.cpp.
void GNEUndoList::abortAllChangeGroups | ( | ) |
reverts and discards ALL active chained change groups
Definition at line 317 of file GNEUndoList.cpp.
References abortCurrentSubGroup(), hasCommandGroup(), myChangeGroups, and GNEChangeGroup::undo().
Referenced by GNEViewNet::abortOperation(), clear(), GNEContainerFrame::createPath(), GNEPersonFrame::createPath(), GNEApplicationWindow::onCmdOpenTLSPrograms(), and GNEApplicationWindow::onCmdReloadTLSPrograms().
|
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 542 of file GNEUndoList.cpp.
References GNEChangeGroup::group, and myWorking.
Referenced by abortAllChangeGroups(), and abortLastChangeGroup().
void GNEUndoList::abortLastChangeGroup | ( | ) |
reverts last active chained change group
Definition at line 328 of file GNEUndoList.cpp.
References abortCurrentSubGroup(), and myChangeGroups.
Referenced by GNEAdditionalDialog::acceptChanges(), GNEDemandElementDialog::acceptChanges(), GNEAdditionalDialog::cancelChanges(), GNEDemandElementDialog::cancelChanges(), GNEAdditionalDialog::resetChanges(), and GNEDemandElementDialog::resetChanges().
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 339 of file GNEUndoList.cpp.
References GNEChange::canMerge(), cut(), GNEChangeGroup::group, GNEChange::mergeWith(), myWorking, GNEChange::next, GNEChange::redo(), and GNEChangeGroup::undoList.
Referenced by GNETAZFrame::addOrRemoveTAZMember(), GNEAdditionalHandler::buildAccess(), GNEAdditionalHandler::buildBusStop(), GNEAdditionalHandler::buildCalibratorFlow(), GNEAdditionalHandler::buildChargingStation(), GNEAdditionalHandler::buildClosingLaneReroute(), GNEAdditionalHandler::buildClosingReroute(), GNEConnectorFrame::buildConnection(), GNERouteHandler::buildContainer(), GNERouteHandler::buildContainerFlow(), GNERouteHandler::buildContainerStop(), GNEAdditionalHandler::buildContainerStop(), GNEDataHandler::buildDataInterval(), GNEDataHandler::buildDataSet(), GNEAdditionalHandler::buildDestProbReroute(), GNEAdditionalHandler::buildDetectorE1Instant(), GNEAdditionalHandler::buildDetectorE3(), GNEAdditionalHandler::buildDetectorEntry(), GNEAdditionalHandler::buildDetectorExit(), GNEAdditionalHandler::buildE1Detector(), GNEAdditionalHandler::buildEdgeCalibrator(), GNEDataHandler::buildEdgeData(), GNEMeanDataHandler::buildEdgeMeanData(), GNEDataHandler::buildEdgeRelationData(), GNERouteHandler::buildEmbeddedRoute(), GNERouteHandler::buildFlow(), GNERouteHandler::buildFlowJunctions(), GNERouteHandler::buildFlowOverRoute(), GNERouteHandler::buildFlowTAZs(), GNEAdditionalHandler::buildJpsObstacle(), GNEAdditionalHandler::buildJpsWalkableArea(), GNEAdditionalHandler::buildLaneCalibrator(), GNEMeanDataHandler::buildLaneMeanData(), GNEAdditionalHandler::buildMultiLaneDetectorE2(), GNEAdditionalHandler::buildOverheadWire(), GNEAdditionalHandler::buildParkingArea(), GNEAdditionalHandler::buildParkingAreaReroute(), GNEAdditionalHandler::buildParkingSpace(), GNERouteHandler::buildPerson(), GNERouteHandler::buildPersonFlow(), GNERouteHandler::buildPersonStop(), GNERouteHandler::buildPersonTrip(), GNEAdditionalHandler::buildPOI(), GNEAdditionalHandler::buildPOIGeo(), GNEAdditionalHandler::buildPOILane(), GNEAdditionalHandler::buildPolygon(), GNEAdditionalHandler::buildRerouter(), GNEAdditionalHandler::buildRerouterInterval(), GNERouteHandler::buildRide(), GNERouteHandler::buildRoute(), GNERouteHandler::buildRouteDistribution(), GNEAdditionalHandler::buildRouteProbe(), GNEAdditionalHandler::buildRouteProbReroute(), GNEAdditionalHandler::buildSingleLaneDetectorE2(), GNERouteHandler::buildStop(), GNEAdditionalHandler::buildTAZ(), GNEDataHandler::buildTAZRelationData(), GNEAdditionalHandler::buildTAZSink(), GNEAdditionalHandler::buildTAZSource(), GNEAdditionalHandler::buildTractionSubstation(), GNEAdditionalHandler::buildTrainStop(), GNERouteHandler::buildTranship(), GNERouteHandler::buildTransport(), GNERouteHandler::buildTrip(), GNERouteHandler::buildTripJunctions(), GNERouteHandler::buildTripTAZs(), GNEAdditionalHandler::buildVaporizer(), GNEAdditionalHandler::buildVariableSpeedSign(), GNEAdditionalHandler::buildVariableSpeedSignStep(), GNERouteHandler::buildVehicleOverRoute(), GNERouteHandler::buildVType(), GNERouteHandler::buildVTypeDistribution(), GNERouteHandler::buildWalk(), 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(), GNEStop::disableAttribute(), GNEStopPlan::disableAttribute(), GNEDemandElementFlow::disableFlowAttribute(), GNETAZFrame::dropTAZMembers(), GNENet::duplicateLane(), GNEChange_Distribution::editValue(), GNEStop::enableAttribute(), GNEStopPlan::enableAttribute(), GNEDemandElementFlow::enableFlowAttribute(), GNELaneAreaDetector::fixAdditionalProblem(), GNEOverheadWire::fixAdditionalProblem(), GNEVehicleTypeDialog::GNEVehicleTypeDialog(), GNEJunction::invalidateTLS(), GNENet::joinRoutes(), GNENet::joinSelectedJunctions(), GNERerouterIntervalDialog::onCmdAddClosingLaneReroute(), GNERerouterIntervalDialog::onCmdAddClosingReroute(), GNERerouterIntervalDialog::onCmdAddDestProbReroute(), GNEViewNet::onCmdAddJoinTLS(), GNERerouterIntervalDialog::onCmdAddParkingAreaReroute(), GNERerouterIntervalDialog::onCmdAddRouteProbReroute(), GNEVariableSpeedSignDialog::onCmdAddStep(), GNERerouterIntervalDialog::onCmdClickedClosingLaneReroute(), GNERerouterIntervalDialog::onCmdClickedClosingReroute(), GNERerouterIntervalDialog::onCmdClickedDestProbReroute(), GNECalibratorDialog::onCmdClickedFlow(), GNERerouterDialog::onCmdClickedInterval(), GNERerouterIntervalDialog::onCmdClickedParkingAreaReroute(), GNECalibratorDialog::onCmdClickedRoute(), GNERerouterIntervalDialog::onCmdClickedRouteProbReroute(), GNEVariableSpeedSignDialog::onCmdClickedStep(), GNECalibratorDialog::onCmdClickedVehicleType(), GNEElementTree::onCmdMoveItemDown(), GNEElementTree::onCmdMoveItemUp(), GNEApplicationWindow::onCmdOpenEdgeTypes(), GNEApplicationWindow::onCmdReloadEdgeTypes(), GNETLSEditorFrame::TLSDefinition::onCmdSaveChanges(), GNETLSEditorFrame::parseTLSPrograms(), GNERerouter::rebuildRerouterSymbols(), GNEVariableSpeedSign::rebuildVSSSymbols(), GNEJunction::removeConnectionsFrom(), GNEJunction::removeConnectionsTo(), GNEChange_Distribution::removeKey(), GNEJunction::removeTLSConnections(), GNEJunction::replaceIncomingConnections(), GNENet::replaceIncomingEdge(), GNENet::replaceJunctionByGeometry(), GNENet::restrictLane(), GNEJunction::setAttribute(), GNEJunction::setJunctionType(), GNEEdge::setNumLanes(), and GNENet::splitEdge().
|
inlineprotectedinherited |
add given element into parents and children (only use in redo() function)
Definition at line 124 of file GNEChange.h.
References GNEHierarchicalContainer::getChildren(), GNEHierarchicalContainer::getParents(), and GNEChange::myOriginalHierarchicalContainer.
Referenced by GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_GenericData::redo(), and GNEChange_Lane::redo().
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(), GNEViewNetHelper::EditModes::currentSupermode, GNEViewNet::getEditModes(), GNEApplicationWindow::getViewNet(), myGNEApplicationWindowParent, and NETWORK.
Referenced by GNEViewNet::addRestrictedLane(), GNENet::addReversedEdge(), GNENet::adjustPersonPlans(), begin(), begin(), GNEAdditionalHandler::buildAccess(), GNEAdditionalHandler::buildBusStop(), GNEAdditionalHandler::buildCalibratorFlow(), GNEAdditionalHandler::buildChargingStation(), GNEAdditionalHandler::buildClosingLaneReroute(), GNEAdditionalHandler::buildClosingReroute(), GNEConnectorFrame::buildConnection(), GNERouteHandler::buildContainer(), GNERouteHandler::buildContainerFlow(), GNERouteHandler::buildContainerStop(), GNEAdditionalHandler::buildContainerStop(), GNEDataHandler::buildDataInterval(), GNEDataHandler::buildDataSet(), GNEAdditionalHandler::buildDestProbReroute(), GNEAdditionalHandler::buildDetectorE1Instant(), GNEAdditionalHandler::buildDetectorE3(), GNEAdditionalHandler::buildDetectorEntry(), GNEAdditionalHandler::buildDetectorExit(), GNEAdditionalHandler::buildE1Detector(), GNEAdditionalHandler::buildEdgeCalibrator(), GNEDataHandler::buildEdgeData(), GNEMeanDataHandler::buildEdgeMeanData(), GNEDataHandler::buildEdgeRelationData(), GNERouteHandler::buildEmbeddedRoute(), GNERouteHandler::buildFlow(), GNERouteHandler::buildFlowJunctions(), GNERouteHandler::buildFlowOverRoute(), GNERouteHandler::buildFlowTAZs(), GNEAdditionalHandler::buildJpsObstacle(), GNEAdditionalHandler::buildJpsWalkableArea(), GNEAdditionalHandler::buildLaneCalibrator(), GNEMeanDataHandler::buildLaneMeanData(), GNEAdditionalHandler::buildMultiLaneDetectorE2(), GNEAdditionalHandler::buildOverheadWire(), GNEAdditionalHandler::buildParkingArea(), GNEAdditionalHandler::buildParkingAreaReroute(), GNEAdditionalHandler::buildParkingSpace(), GNERouteHandler::buildPerson(), GNERouteHandler::buildPersonFlow(), GNERouteHandler::buildPersonStop(), GNERouteHandler::buildPersonTrip(), GNEAdditionalHandler::buildPOI(), GNEAdditionalHandler::buildPOIGeo(), GNEAdditionalHandler::buildPOILane(), GNEAdditionalHandler::buildPolygon(), GNEAdditionalHandler::buildRerouter(), GNEAdditionalHandler::buildRerouterInterval(), GNERouteHandler::buildRide(), GNERouteHandler::buildRoute(), GNERouteHandler::buildRouteDistribution(), GNEAdditionalHandler::buildRouteProbe(), GNEAdditionalHandler::buildRouteProbReroute(), GNEAdditionalHandler::buildSingleLaneDetectorE2(), GNERouteHandler::buildStop(), GNEAdditionalHandler::buildTAZ(), GNEDataHandler::buildTAZRelationData(), GNEAdditionalHandler::buildTAZSink(), GNEAdditionalHandler::buildTAZSource(), GNEAdditionalHandler::buildTractionSubstation(), GNEAdditionalHandler::buildTrainStop(), GNERouteHandler::buildTranship(), GNERouteHandler::buildTransport(), GNERouteHandler::buildTrip(), GNERouteHandler::buildTripJunctions(), GNERouteHandler::buildTripTAZs(), GNEAdditionalHandler::buildVaporizer(), GNEAdditionalHandler::buildVariableSpeedSign(), GNEAdditionalHandler::buildVariableSpeedSignStep(), GNERouteHandler::buildVehicleOverRoute(), GNERouteHandler::buildVType(), GNERouteHandler::buildVTypeDistribution(), GNERouteHandler::buildWalk(), GNEChange_Attribute::changeAttribute(), GNEPoly::changeFirstGeometryPoint(), GNEConnection::changeTLIndex(), GNENet::cleanInvalidCrossings(), GNENet::cleanInvalidDemandElements(), GNENet::cleanUnusedRoutes(), GNENet::clearAdditionalElements(), GNENet::clearDataElements(), GNENet::clearDemandElements(), GNENet::clearJunctionConnections(), GNENet::clearMeanDataElements(), GNEPoly::closePolygon(), GNEAccess::commitMoveShape(), GNEEntryExitDetector::commitMoveShape(), GNEInductionLoopDetector::commitMoveShape(), GNEInstantInductionLoopDetector::commitMoveShape(), GNELaneAreaDetector::commitMoveShape(), GNEMultiEntryExitDetector::commitMoveShape(), GNEOverheadWire::commitMoveShape(), GNEParkingSpace::commitMoveShape(), GNERerouter::commitMoveShape(), GNEStoppingPlace::commitMoveShape(), GNETAZ::commitMoveShape(), GNETractionSubstation::commitMoveShape(), GNEVariableSpeedSign::commitMoveShape(), GNEContainer::commitMoveShape(), GNEPerson::commitMoveShape(), GNEPersonTrip::commitMoveShape(), GNERide::commitMoveShape(), GNEStop::commitMoveShape(), GNEStopPlan::commitMoveShape(), GNETranship::commitMoveShape(), GNETransport::commitMoveShape(), GNEVehicle::commitMoveShape(), GNEWalk::commitMoveShape(), GNEConnection::commitMoveShape(), GNECrossing::commitMoveShape(), GNEEdge::commitMoveShape(), GNEJunction::commitMoveShape(), GNELane::commitMoveShape(), GNEWalkingArea::commitMoveShape(), GNEPOI::commitMoveShape(), GNEPoly::commitMoveShape(), GNENet::createEdge(), GNEContainerFrame::createPath(), GNEPersonFrame::createPath(), GNENet::createRoundabout(), GNENet::deleteAdditional(), GNENet::deleteConnection(), GNENet::deleteCrossing(), GNENet::deleteDataInterval(), GNENet::deleteDataSet(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteGenericData(), GNEPoly::deleteGeometryPoint(), GNENet::deleteJunction(), GNENet::deleteLane(), GNENet::deleteMeanData(), GNENet::duplicateLane(), GNEEdge::editEndpoint(), GNETLSEditorFrame::editJunction(), GNEChange_Distribution::editValue(), GNEFixDemandElements::FixRouteOptions::fixElements(), GNEFixDemandElements::FixVehicleOptions::fixElements(), GNEFixDemandElements::FixStopPositionOptions::fixElements(), GNEFixDemandElements::FixPersonPlanOptions::fixElements(), GNEFixNetworkElements::FixEdgeOptions::fixElements(), GNEFixNetworkElements::FixCrossingOptions::fixElements(), getRedoSupermode(), getUndoSupermode(), GNESelectorFrame::handleIDs(), GNEViewNet::hotkeyDel(), GNEAdditionalDialog::initChanges(), GNEDemandElementDialog::initChanges(), GNENet::joinRoutes(), GNENet::joinSelectedJunctions(), GNEApplicationWindow::loadAdditionalElements(), GNEApplicationWindow::loadDataElements(), GNEApplicationWindow::loadDemandElements(), GNEApplicationWindow::loadMeanDataElements(), GNENet::mergeJunctions(), GNEFixAdditionalElements::onCmdAccept(), GNEFixElementsDialog::onCmdAccept(), GNEMultipleParametersDialog::onCmdAccept(), GNESingleParametersDialog::onCmdAccept(), GNEViewNet::onCmdAddJoinTLS(), GNEViewNet::onCmdAddReverse(), GNEViewNet::onCmdAddReversedEdge(), GNEViewNet::onCmdAddReversedEdgeDisconnected(), GNEViewNet::onCmdAddTLS(), GNERoute::GNERoutePopupMenu::onCmdApplyDistance(), GNEViewNet::onCmdClearConnections(), GNEViewNet::onCmdClosePolygon(), GNEViewNet::onCmdDuplicateLane(), GNEViewNet::onCmdEgeApplyTemplate(), GNEViewNet::onCmdLaneReachability(), GNEElementTree::onCmdMoveItemDown(), GNEElementTree::onCmdMoveItemUp(), GNEApplicationWindow::onCmdOpenAdditionals(), GNEFrameAttributeModules::AttributesEditorRow::onCmdOpenAllowDialog(), GNEFrameAttributeModules::AttributesEditorRow::onCmdOpenColorDialog(), GNEApplicationWindow::onCmdOpenDataElements(), GNEApplicationWindow::onCmdOpenDemandElements(), GNEApplicationWindow::onCmdOpenEdgeTypes(), GNEApplicationWindow::onCmdOpenMeanDatas(), GNEViewNet::onCmdOpenPolygon(), GNEApplicationWindow::onCmdOpenTLSPrograms(), GNEApplicationWindow::onCmdReloadAdditionals(), GNEApplicationWindow::onCmdReloadDataElements(), GNEApplicationWindow::onCmdReloadDemandElements(), GNEApplicationWindow::onCmdReloadEdgeTypes(), GNEApplicationWindow::onCmdReloadMeanDatas(), GNEApplicationWindow::onCmdReloadTLSPrograms(), GNEViewNet::onCmdResetConnections(), GNEViewNet::onCmdResetEdgeEndpoint(), GNEViewNet::onCmdResetEdgeEndPoints(), GNEViewNet::onCmdResetEndPoints(), GNEViewNet::onCmdResetJunctionShape(), GNEViewNet::onCmdResetLaneCustomShape(), GNEViewNet::onCmdResetLength(), GNEViewNet::onCmdResetOppositeLane(), GNEViewNet::onCmdReverse(), GNEViewNet::onCmdReverseEdge(), GNEFrameAttributeModules::AttributesEditorRow::onCmdSelectCheckButton(), GNEViewNet::onCmdSelectPolygonElements(), GNEViewNet::onCmdSetCustomGeometryPoint(), GNEFlowEditor::onCmdSetFlowAttribute(), GNEDistributionFrame::DistributionRow::onCmdSetKey(), GNEViewNet::onCmdSimplifyShape(), GNEViewNet::onCmdSmoothEdges(), GNEViewNet::onCmdSmoothEdgesElevation(), GNEViewNet::onCmdStraightenEdges(), GNEViewNet::onCmdStraightenEdgesElevation(), GNEViewNet::onCmdTransformPOI(), GNEPoly::openPolygon(), GNEVType::overwriteVType(), GNECreateEdgeFrame::processClick(), GNERerouter::rebuildRerouterSymbols(), GNEVariableSpeedSign::rebuildVSSSymbols(), GNETAZ::removeGeometryPoint(), GNEConnection::removeGeometryPoint(), GNECrossing::removeGeometryPoint(), GNEEdge::removeGeometryPoint(), GNEJunction::removeGeometryPoint(), GNELane::removeGeometryPoint(), GNEPoly::removeGeometryPoint(), GNEChange_Distribution::removeKey(), GNEViewNet::removeRestrictedLane(), GNEDeleteFrame::removeSelectedAttributeCarriers(), GNENet::removeSolitaryJunctions(), GNENet::replaceIncomingEdge(), GNENet::replaceJunctionByGeometry(), GNEAdditionalDialog::resetChanges(), GNEDemandElementDialog::resetChanges(), GNENet::resetJunctionConnections(), GNEViewNet::restrictLane(), GNENet::reverseEdge(), GNENet::selectRoundabout(), GNERoute::setAttribute(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEJunction::setAttribute(), GNEJunction::setJunctionType(), GNEEdge::setNumLanes(), GNEPoly::simplifyShape(), 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(), GUIViewUpdater::disableUpdate(), 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 422 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 74 of file GNEChange.cpp.
Referenced by add().
|
protected |
Can we redo more commands.
Definition at line 571 of file GNEUndoList.cpp.
References GNEChangeGroup::redoList.
Referenced by onUpdRedo().
|
protected |
Can we undo more commands.
Definition at line 565 of file GNEUndoList.cpp.
References GNEChangeGroup::undoList.
Referenced by onUpdUndo().
void GNEUndoList::clear | ( | ) |
Definition at line 294 of file GNEUndoList.cpp.
References abortAllChangeGroups(), GNEChangeGroup::group, GNEChange::next, GNEChangeGroup::redoList, and GNEChangeGroup::undoList.
Referenced by GNEApplicationWindow::clearUndoList(), GNENet::computeAndUpdate(), GNEApplicationWindow::loadAdditionalElements(), GNEApplicationWindow::loadDataElements(), GNEApplicationWindow::loadDemandElements(), GNEApplicationWindow::loadMeanDataElements(), GNEApplicationWindow::onCmdOpenAdditionals(), GNEApplicationWindow::onCmdOpenDataElements(), GNEApplicationWindow::onCmdOpenDemandElements(), GNEApplicationWindow::onCmdOpenMeanDatas(), GNEApplicationWindow::onCmdReloadAdditionals(), GNEApplicationWindow::onCmdReloadDataElements(), GNEApplicationWindow::onCmdReloadDemandElements(), GNEApplicationWindow::onCmdReloadMeanDatas(), and GNEApplicationWindow::onCmdToggleUndoRedo().
int GNEUndoList::currentCommandGroupSize | ( | ) | const |
get size of current CommandGroup
Definition at line 374 of file GNEUndoList.cpp.
References myChangeGroups, and GNEChange::size().
Referenced by GNEAdditionalDialog::initChanges(), and GNEDemandElementDialog::initChanges().
|
protected |
Cut the redo list. This is automatically invoked when a new undo command is added.
Definition at line 530 of file GNEUndoList.cpp.
References GNEChange::next, and GNEChangeGroup::redoList.
Referenced by add(), and begin().
|
inherited |
Return TRUE if empty.
Definition at line 111 of file GNEChangeGroup.cpp.
References GNEChangeGroup::undoList.
Referenced by 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_SELECT, DEMAND_SELECT, GNEChangeGroup::empty(), GUIViewUpdater::enableUpdate(), GNEViewNet::getEditModes(), GNESelectorFrame::getSelectionInformation(), GNEViewParent::getSelectorFrame(), GNEApplicationWindow::getViewNet(), GNEViewNet::getViewParent(), GNEChangeGroup::group, gViewUpdater, myChangeGroups, myGNEApplicationWindowParent, myWorking, NETWORK_SELECT, GNEChange::next, GNEChangeGroup::undoList, GNESelectorFrame::SelectionInformation::updateInformationLabel(), and GNEViewNet::updateViewNet().
Referenced by GNEAdditionalDialog::acceptChanges(), GNEDemandElementDialog::acceptChanges(), GNEViewNet::addRestrictedLane(), GNENet::addReversedEdge(), GNENet::adjustPersonPlans(), GNEAdditionalHandler::buildAccess(), GNEAdditionalHandler::buildBusStop(), GNEAdditionalHandler::buildCalibratorFlow(), GNEAdditionalHandler::buildChargingStation(), GNEAdditionalHandler::buildClosingLaneReroute(), GNEAdditionalHandler::buildClosingReroute(), GNERouteHandler::buildContainer(), GNERouteHandler::buildContainerFlow(), GNERouteHandler::buildContainerStop(), GNEAdditionalHandler::buildContainerStop(), GNEDataHandler::buildDataInterval(), GNEDataHandler::buildDataSet(), GNEAdditionalHandler::buildDestProbReroute(), GNEAdditionalHandler::buildDetectorE1Instant(), GNEAdditionalHandler::buildDetectorE3(), GNEAdditionalHandler::buildDetectorEntry(), GNEAdditionalHandler::buildDetectorExit(), GNEAdditionalHandler::buildE1Detector(), GNEAdditionalHandler::buildEdgeCalibrator(), GNEDataHandler::buildEdgeData(), GNEMeanDataHandler::buildEdgeMeanData(), GNEDataHandler::buildEdgeRelationData(), GNERouteHandler::buildEmbeddedRoute(), GNERouteHandler::buildFlow(), GNERouteHandler::buildFlowJunctions(), GNERouteHandler::buildFlowOverRoute(), GNERouteHandler::buildFlowTAZs(), GNEAdditionalHandler::buildJpsObstacle(), GNEAdditionalHandler::buildJpsWalkableArea(), GNEAdditionalHandler::buildLaneCalibrator(), GNEMeanDataHandler::buildLaneMeanData(), GNEAdditionalHandler::buildMultiLaneDetectorE2(), GNEAdditionalHandler::buildOverheadWire(), GNEAdditionalHandler::buildParkingArea(), GNEAdditionalHandler::buildParkingAreaReroute(), GNEAdditionalHandler::buildParkingSpace(), GNERouteHandler::buildPerson(), GNERouteHandler::buildPersonFlow(), GNERouteHandler::buildPersonStop(), GNERouteHandler::buildPersonTrip(), GNEAdditionalHandler::buildPOI(), GNEAdditionalHandler::buildPOIGeo(), GNEAdditionalHandler::buildPOILane(), GNEAdditionalHandler::buildPolygon(), GNEAdditionalHandler::buildRerouter(), GNEAdditionalHandler::buildRerouterInterval(), GNERouteHandler::buildRide(), GNERouteHandler::buildRoute(), GNERouteHandler::buildRouteDistribution(), GNEAdditionalHandler::buildRouteProbe(), GNEAdditionalHandler::buildRouteProbReroute(), GNEAdditionalHandler::buildSingleLaneDetectorE2(), GNERouteHandler::buildStop(), GNEAdditionalHandler::buildTAZ(), GNEDataHandler::buildTAZRelationData(), GNEAdditionalHandler::buildTAZSink(), GNEAdditionalHandler::buildTAZSource(), GNEAdditionalHandler::buildTractionSubstation(), GNEAdditionalHandler::buildTrainStop(), GNERouteHandler::buildTranship(), GNERouteHandler::buildTransport(), GNERouteHandler::buildTrip(), GNERouteHandler::buildTripJunctions(), GNERouteHandler::buildTripTAZs(), GNEAdditionalHandler::buildVaporizer(), GNEAdditionalHandler::buildVariableSpeedSign(), GNEAdditionalHandler::buildVariableSpeedSignStep(), GNERouteHandler::buildVehicleOverRoute(), GNERouteHandler::buildVType(), GNERouteHandler::buildVTypeDistribution(), GNERouteHandler::buildWalk(), GNEChange_Attribute::changeAttribute(), GNEPoly::changeFirstGeometryPoint(), GNEConnection::changeTLIndex(), GNENet::cleanInvalidCrossings(), GNENet::cleanInvalidDemandElements(), GNENet::cleanUnusedRoutes(), GNENet::clearAdditionalElements(), GNENet::clearDataElements(), GNENet::clearDemandElements(), GNENet::clearJunctionConnections(), GNENet::clearMeanDataElements(), GNEPoly::closePolygon(), GNEAccess::commitMoveShape(), GNEEntryExitDetector::commitMoveShape(), GNEInductionLoopDetector::commitMoveShape(), GNEInstantInductionLoopDetector::commitMoveShape(), GNELaneAreaDetector::commitMoveShape(), GNEMultiEntryExitDetector::commitMoveShape(), GNEOverheadWire::commitMoveShape(), GNEParkingSpace::commitMoveShape(), GNERerouter::commitMoveShape(), GNEStoppingPlace::commitMoveShape(), GNETAZ::commitMoveShape(), GNETractionSubstation::commitMoveShape(), GNEVariableSpeedSign::commitMoveShape(), GNEContainer::commitMoveShape(), GNEPerson::commitMoveShape(), GNEPersonTrip::commitMoveShape(), GNERide::commitMoveShape(), GNEStop::commitMoveShape(), GNEStopPlan::commitMoveShape(), GNETranship::commitMoveShape(), GNETransport::commitMoveShape(), GNEVehicle::commitMoveShape(), GNEWalk::commitMoveShape(), GNEConnection::commitMoveShape(), GNECrossing::commitMoveShape(), GNEEdge::commitMoveShape(), GNEJunction::commitMoveShape(), GNELane::commitMoveShape(), GNEWalkingArea::commitMoveShape(), GNEPOI::commitMoveShape(), GNEPoly::commitMoveShape(), GNENet::createEdge(), GNEContainerFrame::createPath(), GNEPersonFrame::createPath(), GNENet::createRoundabout(), GNENet::deleteAdditional(), GNENet::deleteConnection(), GNENet::deleteCrossing(), GNENet::deleteDataInterval(), GNENet::deleteDataSet(), GNENet::deleteDemandElement(), GNENet::deleteEdge(), GNENet::deleteGenericData(), GNEPoly::deleteGeometryPoint(), GNENet::deleteJunction(), GNENet::deleteLane(), GNENet::deleteMeanData(), GNENet::duplicateLane(), GNEEdge::editEndpoint(), GNEChange_Distribution::editValue(), GNEFixDemandElements::FixRouteOptions::fixElements(), GNEFixDemandElements::FixVehicleOptions::fixElements(), GNEFixDemandElements::FixStopPositionOptions::fixElements(), GNEFixDemandElements::FixPersonPlanOptions::fixElements(), GNEFixNetworkElements::FixEdgeOptions::fixElements(), GNEFixNetworkElements::FixCrossingOptions::fixElements(), GNESelectorFrame::handleIDs(), GNEViewNet::hotkeyDel(), GNENet::joinRoutes(), GNENet::joinSelectedJunctions(), GNEApplicationWindow::loadAdditionalElements(), GNEApplicationWindow::loadDataElements(), GNEApplicationWindow::loadDemandElements(), GNEApplicationWindow::loadMeanDataElements(), GNENet::mergeJunctions(), GNEFixAdditionalElements::onCmdAccept(), GNEFixElementsDialog::onCmdAccept(), GNEMultipleParametersDialog::onCmdAccept(), GNESingleParametersDialog::onCmdAccept(), GNEViewNet::onCmdAddJoinTLS(), GNEViewNet::onCmdAddReverse(), GNEViewNet::onCmdAddReversedEdge(), GNEViewNet::onCmdAddReversedEdgeDisconnected(), GNEViewNet::onCmdAddTLS(), GNERoute::GNERoutePopupMenu::onCmdApplyDistance(), GNEViewNet::onCmdClearConnections(), GNEViewNet::onCmdClosePolygon(), GNEViewNet::onCmdDuplicateLane(), GNEViewNet::onCmdEgeApplyTemplate(), GNEViewNet::onCmdLaneReachability(), GNEElementTree::onCmdMoveItemDown(), GNEElementTree::onCmdMoveItemUp(), GNEApplicationWindow::onCmdOpenAdditionals(), GNEFrameAttributeModules::AttributesEditorRow::onCmdOpenAllowDialog(), GNEFrameAttributeModules::AttributesEditorRow::onCmdOpenColorDialog(), GNEApplicationWindow::onCmdOpenDataElements(), GNEApplicationWindow::onCmdOpenDemandElements(), GNEApplicationWindow::onCmdOpenEdgeTypes(), GNEApplicationWindow::onCmdOpenMeanDatas(), GNEViewNet::onCmdOpenPolygon(), GNEApplicationWindow::onCmdOpenTLSPrograms(), GNEApplicationWindow::onCmdReloadAdditionals(), GNEApplicationWindow::onCmdReloadDataElements(), GNEApplicationWindow::onCmdReloadDemandElements(), GNEApplicationWindow::onCmdReloadEdgeTypes(), GNEApplicationWindow::onCmdReloadMeanDatas(), GNEApplicationWindow::onCmdReloadTLSPrograms(), GNEViewNet::onCmdResetConnections(), GNEViewNet::onCmdResetEdgeEndpoint(), GNEViewNet::onCmdResetEdgeEndPoints(), GNEViewNet::onCmdResetEndPoints(), GNEViewNet::onCmdResetJunctionShape(), GNEViewNet::onCmdResetLaneCustomShape(), GNEViewNet::onCmdResetLength(), GNEViewNet::onCmdResetOppositeLane(), GNEViewNet::onCmdReverse(), GNEViewNet::onCmdReverseEdge(), GNEFrameAttributeModules::AttributesEditorRow::onCmdSelectCheckButton(), GNEViewNet::onCmdSelectPolygonElements(), GNEViewNet::onCmdSetCustomGeometryPoint(), GNEFlowEditor::onCmdSetFlowAttribute(), GNEDistributionFrame::DistributionRow::onCmdSetKey(), GNEViewNet::onCmdSimplifyShape(), GNEViewNet::onCmdSmoothEdges(), GNEViewNet::onCmdSmoothEdgesElevation(), GNEViewNet::onCmdStraightenEdges(), GNEViewNet::onCmdStraightenEdgesElevation(), GNEViewNet::onCmdTransformPOI(), GNEPoly::openPolygon(), GNEVType::overwriteVType(), GNECreateEdgeFrame::processClick(), GNERerouter::rebuildRerouterSymbols(), GNEVariableSpeedSign::rebuildVSSSymbols(), GNETAZ::removeGeometryPoint(), GNEConnection::removeGeometryPoint(), GNECrossing::removeGeometryPoint(), GNEEdge::removeGeometryPoint(), GNEJunction::removeGeometryPoint(), GNELane::removeGeometryPoint(), GNEPoly::removeGeometryPoint(), GNEChange_Distribution::removeKey(), GNEViewNet::removeRestrictedLane(), GNEDeleteFrame::removeSelectedAttributeCarriers(), GNENet::removeSolitaryJunctions(), GNENet::replaceIncomingEdge(), GNENet::replaceJunctionByGeometry(), GNENet::resetJunctionConnections(), GNEViewNet::restrictLane(), GNENet::reverseEdge(), GNENet::selectRoundabout(), GNERoute::setAttribute(), GNEConnection::setAttribute(), GNEEdge::setAttribute(), GNEJunction::setAttribute(), GNEJunction::setJunctionType(), GNEEdge::setNumLanes(), GNEPoly::simplifyShape(), 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 |
get description
Definition at line 75 of file GNEChangeGroup.cpp.
References GNEChangeGroup::myDescription.
|
inherited |
get icon associated with this ChangeGroup
Definition at line 93 of file GNEChangeGroup.cpp.
References GNEChangeGroup::myIcon.
Referenced by GNEUndoList::Iterator::getIcon().
|
inherited |
get supermode associated with this ChangeGroup
Definition at line 87 of file GNEChangeGroup.cpp.
References GNEChangeGroup::myGroupSupermode.
Referenced by getRedoSupermode(), and getUndoSupermode().
Supermode GNEUndoList::getRedoSupermode | ( | ) | const |
get redo supermode
Definition at line 400 of file GNEUndoList.cpp.
References begin(), GNEChangeGroup::getGroupSupermode(), GNEChange::getSupermode(), NETWORK, and GNEChangeGroup::redoList.
Referenced by GNEApplicationWindow::onCmdRedo().
|
inherited |
get supermode
Definition at line 68 of file GNEChange.cpp.
References GNEChange::mySupermode.
Referenced by getRedoSupermode(), and getUndoSupermode().
|
inherited |
get timeStamp
Definition at line 81 of file GNEChangeGroup.cpp.
References GNEChangeGroup::myTimeStamp.
Referenced by GNEUndoList::Iterator::getTimeStamp().
Supermode GNEUndoList::getUndoSupermode | ( | ) | const |
get undo supermode
Definition at line 384 of file GNEUndoList.cpp.
References begin(), GNEChangeGroup::getGroupSupermode(), GNEChange::getSupermode(), NETWORK, and GNEChangeGroup::undoList.
Referenced by GNEApplicationWindow::onCmdUndo().
bool GNEUndoList::hasCommandGroup | ( | ) | const |
Check if undoList has command group.
Definition at line 416 of file GNEUndoList.cpp.
References myChangeGroups.
Referenced by abortAllChangeGroups(), GNEJunction::invalidateTLS(), onUpdRedo(), onUpdUndo(), GNECreateEdgeFrame::processClick(), 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 80 of file GNEChange.cpp.
Referenced by add().
long GNEUndoList::onCmdRedo | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
redo change
Definition at line 479 of file GNEUndoList.cpp.
References redo().
Referenced by FXDEFMAP().
long GNEUndoList::onCmdUndo | ( | FXObject * | , |
FXSelector | , | ||
void * | |||
) |
Definition at line 428 of file GNEUndoList.cpp.
References undo().
Referenced by FXDEFMAP().
long GNEUndoList::onUpdRedo | ( | FXObject * | sender, |
FXSelector | , | ||
void * | |||
) |
event after Redo
Definition at line 486 of file GNEUndoList.cpp.
References canRedo(), hasCommandGroup(), GNEApplicationWindow::isUndoRedoAllowed(), GNEApplicationWindow::isUndoRedoEnabledTemporally(), myChangeGroups, myGNEApplicationWindowParent, redoName(), and TL.
Referenced by FXDEFMAP(), GNEApplicationWindow::onUpdRedo(), and GNEViewParent::updateUndoRedoButtons().
long GNEUndoList::onUpdUndo | ( | FXObject * | sender, |
FXSelector | , | ||
void * | |||
) |
event after Undo
Definition at line 435 of file GNEUndoList.cpp.
References canUndo(), hasCommandGroup(), GNEApplicationWindow::isUndoRedoAllowed(), GNEApplicationWindow::isUndoRedoEnabledTemporally(), myChangeGroups, myGNEApplicationWindowParent, TL, and undoName().
Referenced by FXDEFMAP(), GNEApplicationWindow::onUpdUndo(), and GNEViewParent::updateUndoRedoButtons().
|
virtual |
redo the last command group
Reimplemented from GNEChangeGroup.
Definition at line 164 of file GNEUndoList.cpp.
References GNEApplicationWindow::getViewNet(), GNEChangeGroup::group, myGNEApplicationWindowParent, myWorking, GNEChange::next, GNEChange::redo(), GNEChangeGroup::redoList, GNEChangeGroup::undoList, GNEApplicationWindow::updateControls(), GNEViewNet::updateViewNet(), and WRITE_DEBUG.
Referenced by GNEApplicationWindow::onCmdRedo(), onCmdRedo(), and GNEUndoListDialog::onCmdSelectRow().
|
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, and GNEChange::redoName().
Referenced by GNEUndoList::Iterator::getDescription(), and onUpdRedo().
|
inlineprotectedinherited |
remove given element from parents and children (only use in redo() function)
Definition at line 167 of file GNEChange.h.
References GNEHierarchicalContainer::getChildren(), GNEHierarchicalContainer::getParents(), and GNEChange::myOriginalHierarchicalContainer.
Referenced by GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Edge::redo(), GNEChange_GenericData::redo(), and GNEChange_Lane::redo().
|
protectedinherited |
restore container (only use in undo() function)
Definition at line 94 of file GNEChange.cpp.
References GNEChange::myHierarchicalContainers.
Referenced by GNEChange_Additional::undo(), GNEChange_DemandElement::undo(), GNEChange_Edge::undo(), GNEChange_GenericData::undo(), and GNEChange_Lane::undo().
|
virtualinherited |
Return the size of the command group.
Reimplemented from GNEChange.
Definition at line 143 of file GNEChangeGroup.cpp.
References GNEChangeGroup::GNEChangeGroup(), GNEChange::next, GNEChangeGroup::redoList, GNEChange::size(), and GNEChangeGroup::undoList.
|
virtual |
undo the last command group
Reimplemented from GNEChangeGroup.
Definition at line 139 of file GNEUndoList.cpp.
References GNEApplicationWindow::getViewNet(), GNEChangeGroup::group, myGNEApplicationWindowParent, myWorking, GNEChange::next, GNEChangeGroup::redoList, GNEChange::undo(), GNEChangeGroup::undoList, GNEApplicationWindow::updateControls(), GNEViewNet::updateViewNet(), and WRITE_DEBUG.
Referenced by GNEUndoListDialog::onCmdSelectRow(), GNEApplicationWindow::onCmdUndo(), and 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, and GNEChange::undoName().
Referenced by onUpdUndo().
|
privateinherited |
group (can be access by GNEUndoList)
Definition at line 95 of file GNEChangeGroup.h.
Referenced by abortCurrentSubGroup(), add(), begin(), clear(), end(), redo(), undo(), and GNEChangeGroup::~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 GNEChangeGroup::getDescription(), GNEChangeGroup::redoName(), and GNEChangeGroup::undoName().
|
protectedinherited |
we group antagonistic commands (create junction/delete junction) and keep them apart by this flag
Definition at line 212 of file GNEChange.h.
Referenced by 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_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_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_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(), and GNEChange_TLS::undoName().
|
private |
Definition at line 236 of file GNEUndoList.h.
Referenced by begin(), end(), onUpdRedo(), onUpdUndo(), redo(), and undo().
|
protectedinherited |
supermode associated with this ChangeGroup
Definition at line 82 of file GNEChangeGroup.h.
Referenced by GNEChangeGroup::getGroupSupermode().
|
protectedinherited |
map with hierarchical container of all parent and children elements
Definition at line 221 of file GNEChange.h.
Referenced by GNEChange::GNEChange(), and GNEChange::restoreHierarchicalContainers().
|
protectedinherited |
icon associated with this ChangeGroup
Definition at line 85 of file GNEChangeGroup.h.
Referenced by GNEChangeGroup::getGroupIcon().
|
protectedinherited |
Hierarchical container with parent and children.
Definition at line 218 of file GNEChange.h.
Referenced by GNEChange::addElementInParentsAndChildren(), GNEChange_DemandElement::redo(), GNEChange::removeElementFromParentsAndChildren(), and GNEChange_DemandElement::undo().
|
protectedinherited |
flag for check if element is selected
Definition at line 215 of file GNEChange.h.
Referenced by 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_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 209 of file GNEChange.h.
Referenced by GNEChange::getSupermode().
|
privateinherited |
timeStamp HH:MM:SS
Definition at line 98 of file GNEChangeGroup.h.
Referenced by GNEChangeGroup::getTimeStamp().
|
private |
Currently busy with undo or redo.
Definition at line 230 of file GNEUndoList.h.
Referenced by abortCurrentSubGroup(), add(), begin(), busy(), end(), redo(), and undo().
|
privateinherited |
Definition at line 225 of file GNEChange.h.
Referenced by add(), clear(), cut(), end(), GNEChangeGroup::redo(), redo(), GNEChangeGroup::size(), GNEChangeGroup::undo(), undo(), and GNEChangeGroup::~GNEChangeGroup().
|
privateinherited |
redo list command (can be access by GNEUndoList)
Definition at line 92 of file GNEChangeGroup.h.
Referenced by canRedo(), clear(), cut(), getRedoSupermode(), GNEChangeGroup::redo(), redo(), redoName(), GNEChangeGroup::size(), GNEChangeGroup::undo(), undo(), and GNEChangeGroup::~GNEChangeGroup().
|
privateinherited |
undo list command (can be access by GNEUndoList)
Definition at line 89 of file GNEChangeGroup.h.
Referenced by add(), canUndo(), clear(), GNEChangeGroup::empty(), end(), getUndoSupermode(), GNEChangeGroup::redo(), redo(), GNEChangeGroup::size(), GNEChangeGroup::undo(), undo(), undoName(), and GNEChangeGroup::~GNEChangeGroup().