37 #ifdef CHECK_MEMORY_LEAKS 57 myLaneAttrs(laneAttrs) {
58 myEdge->incRef(
"GNEChange_Lane");
61 myLane->incRef(
"GNEChange_Lane");
62 myAdditionalSets = myLane->getAdditionalSets();
89 (*i)->removeLaneChild(
myLane);
91 if ((*i)->getNumberOfEdgeChilds() == 0) {
100 (*i)->addLaneChild(
myLane);
112 (*i)->addLaneChild(
myLane);
118 (*i)->removeLaneChild(
myLane);
120 if ((*i)->getNumberOfEdgeChilds() == 0) {
130 return (
"Undo create lane");
132 return (
"Undo delete lane");
139 return (
"Redo create lane");
141 return (
"Redo delete lane");
void addLane(GNELane *lane, const NBEdge::Lane &laneAttrs)
increase number of lanes by one use the given attributes and restore the GNELane
const NBEdge::Lane myLaneAttrs
we need to preserve the attributes explicitly because they are not contained withing GNELane itself ...
~GNEChange_Lane()
Destructor.
the function-object for an editing operation (abstract base)
The representation of a single edge during network building.
This lane is powered by an underlying GNEEdge and basically knows how to draw itself.
std::vector< GNEAdditionalSet * > myAdditionalSets
additional sets vinculated with this lane
FXString redoName() const
get Redo name
FXString undoName() const
return undoName
void removeLane(GNELane *lane)
the number of lanes by one. argument is only used to increase robustness (assertions) ...
void decRef(const std::string &debugMsg="")
A road/street connecting two junctions (netedit-version)
GNEEdge * myEdge
we need the edge because it is the target of our change commands
GNENet * myNet
the net to which operations shall be applied or which shall be informed about gui updates (we are not...
GNELane * myLane
we need to preserve the lane because it maybe the target of GNEChange_Attribute commands ...
bool myForward
we group antagonistic commands (create junction/delete junction) and keep them apart by this flag ...
void deleteAdditional(GNEAdditional *additional)
delete additional element previously inserted
void insertAdditional(GNEAdditional *additional, bool hardFail=true)
Insert a additional element previously created in GNEAdditionalHandler.