![]() |
Eclipse SUMO - Simulation of Urban MObility
|
the function-object for an editing operation (abstract base) More...
#include <GNEChange_Attribute.h>
Public Member Functions | |
GNEChange_Attribute (GNEAttributeCarrier *ac, GNENet *net, const SumoXMLAttr key, const std::string &value, bool customOrigValue=false, const std::string &origValue="") | |
Constructor. More... | |
GNEChange_Attribute (GNEAttributeCarrier *ac, GNENet *net, bool forceChange, const SumoXMLAttr key, const std::string &value) | |
Constructor. More... | |
virtual FXuint | size () const |
return actual size More... | |
bool | trueChange () |
wether original and new value differ More... | |
~GNEChange_Attribute () | |
Destructor. More... | |
inherited from GNEChange | |
get undo Name | |
FXString | undoName () const |
return undoName More... | |
FXString | redoName () const |
get Redo name More... | |
void | undo () |
undo action More... | |
void | redo () |
redo action More... | |
Protected Attributes | |
bool | myForward |
we group antagonistic commands (create junction/delete junction) and keep them apart by this flag More... | |
GNENet * | myNet |
the net to which operations shall be applied or which shall be informed about gui updates (we are not responsible for the pointer) More... | |
Private Attributes | |
GNEAttributeCarrier * | myAC |
the net to which all operations shall be applied More... | |
bool | myForceChange |
flag used to force set attributes More... | |
const SumoXMLAttr | myKey |
The attribute name (or the original attribute if we're editing a disjoint attribute) More... | |
const std::string | myNewValue |
the original value More... | |
const std::string | myOrigValue |
the original value More... | |
the function-object for an editing operation (abstract base)
Definition at line 48 of file GNEChange_Attribute.h.
GNEChange_Attribute::GNEChange_Attribute | ( | GNEAttributeCarrier * | ac, |
GNENet * | net, | ||
const SumoXMLAttr | key, | ||
const std::string & | value, | ||
bool | customOrigValue = false , |
||
const std::string & | origValue = "" |
||
) |
Constructor.
[in] | ac | The attribute-carrier to be modified |
[in] | net | Net in which AC is saved |
[in] | key | The attribute key |
[in] | value | The new value |
Definition at line 37 of file GNEChange_Attribute.cpp.
References toString().
GNEChange_Attribute::GNEChange_Attribute | ( | GNEAttributeCarrier * | ac, |
GNENet * | net, | ||
bool | forceChange, | ||
const SumoXMLAttr | key, | ||
const std::string & | value | ||
) |
Constructor.
[in] | ac | The attribute-carrier to be modified |
[in] | net | Net in which AC is saved |
[in] | forceChange | enable or disable force change |
[in] | key | The attribute key |
[in] | value | The new value |
Definition at line 50 of file GNEChange_Attribute.cpp.
References GNEReferenceCounter::incRef(), myAC, myKey, and toString().
GNEChange_Attribute::~GNEChange_Attribute | ( | ) |
Destructor.
Definition at line 62 of file GNEChange_Attribute.cpp.
References GNEReferenceCounter::decRef(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::TagProperties::getTag(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), GNEAttributeCarrier::TagProperties::isShape(), myAC, myKey, GNEChange::myNet, ShapeContainer::removePOI(), ShapeContainer::removePolygon(), SUMO_TAG_POI, SUMO_TAG_POILANE, SUMO_TAG_POLY, toString(), GNEReferenceCounter::unreferenced(), and WRITE_DEBUG.
|
virtual |
redo action
Reimplemented from GNEChange.
Definition at line 109 of file GNEChange_Attribute.cpp.
References GNEAttributeCarrier::TagProperties::getAttributeProperties(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), GNE_ATTR_SELECTED, GNEAttributeCarrier::TagProperties::hasAttribute(), GNEAttributeCarrier::TagProperties::isAdditional(), GNEAttributeCarrier::TagProperties::isDemandElement(), GNEAttributeCarrier::TagProperties::isNetElement(), GNEAttributeCarrier::TagProperties::isShape(), myAC, myKey, GNEChange::myNet, myNewValue, GNENet::requiereSaveAdditionals(), GNENet::requiereSaveDemandElements(), GNENet::requiereSaveNet(), GNEAttributeCarrier::AttributeProperties::requiereUpdateGeometry(), GNEAttributeCarrier::setAttribute(), toString(), GNEAttributeCarrier::updateGeometry(), and WRITE_DEBUG.
|
virtual |
get Redo name
Reimplemented from GNEChange.
Definition at line 150 of file GNEChange_Attribute.cpp.
References GNEAttributeCarrier::getTagStr(), and myAC.
|
virtualinherited |
bool GNEChange_Attribute::trueChange | ( | ) |
wether original and new value differ
Definition at line 133 of file GNEChange_Attribute.cpp.
References myForceChange, myNewValue, and myOrigValue.
Referenced by GNEUndoList::p_add().
|
virtual |
undo action
Reimplemented from GNEChange.
Definition at line 85 of file GNEChange_Attribute.cpp.
References GNEAttributeCarrier::TagProperties::getAttributeProperties(), GNEAttributeCarrier::getID(), GNEAttributeCarrier::getTagProperty(), GNEAttributeCarrier::getTagStr(), GNE_ATTR_SELECTED, GNEAttributeCarrier::TagProperties::hasAttribute(), GNEAttributeCarrier::TagProperties::isAdditional(), GNEAttributeCarrier::TagProperties::isDemandElement(), GNEAttributeCarrier::TagProperties::isNetElement(), GNEAttributeCarrier::TagProperties::isShape(), myAC, myKey, GNEChange::myNet, myOrigValue, GNENet::requiereSaveAdditionals(), GNENet::requiereSaveDemandElements(), GNENet::requiereSaveNet(), GNEAttributeCarrier::AttributeProperties::requiereUpdateGeometry(), GNEAttributeCarrier::setAttribute(), toString(), GNEAttributeCarrier::updateGeometry(), and WRITE_DEBUG.
|
virtual |
return undoName
Reimplemented from GNEChange.
Definition at line 144 of file GNEChange_Attribute.cpp.
References GNEAttributeCarrier::getTagStr(), and myAC.
|
private |
the net to which all operations shall be applied
Definition at line 103 of file GNEChange_Attribute.h.
Referenced by GNEChange_Attribute(), redo(), redoName(), undo(), undoName(), and ~GNEChange_Attribute().
|
private |
flag used to force set attributes
Definition at line 109 of file GNEChange_Attribute.h.
Referenced by trueChange().
|
protectedinherited |
we group antagonistic commands (create junction/delete junction) and keep them apart by this flag
Definition at line 81 of file GNEChange.h.
Referenced by GNEChange_Junction::redo(), GNEChange_Shape::redo(), GNEChange_TLS::redo(), GNEChange_Additional::redo(), GNEChange_DemandElement::redo(), GNEChange_Children::redo(), GNEChange_Connection::redo(), GNEChange_Edge::redo(), GNEChange_Lane::redo(), GNEChange_Crossing::redo(), GNEChange_Shape::redoName(), GNEChange_Junction::redoName(), GNEChange_TLS::redoName(), GNEChange_Additional::redoName(), GNEChange_DemandElement::redoName(), GNEChange_Children::redoName(), GNEChange_Connection::redoName(), GNEChange_Edge::redoName(), GNEChange_Lane::redoName(), GNEChange_Crossing::redoName(), GNEChange_Junction::undo(), GNEChange_Shape::undo(), GNEChange_TLS::undo(), GNEChange_Additional::undo(), GNEChange_DemandElement::undo(), GNEChange_Children::undo(), GNEChange_Connection::undo(), GNEChange_Edge::undo(), GNEChange_Lane::undo(), GNEChange_Crossing::undo(), GNEChange_Junction::undoName(), GNEChange_Shape::undoName(), GNEChange_TLS::undoName(), GNEChange_Additional::undoName(), GNEChange_DemandElement::undoName(), GNEChange_Children::undoName(), GNEChange_Connection::undoName(), GNEChange_Edge::undoName(), GNEChange_Lane::undoName(), and GNEChange_Crossing::undoName().
|
private |
The attribute name (or the original attribute if we're editing a disjoint attribute)
Definition at line 106 of file GNEChange_Attribute.h.
Referenced by GNEChange_Attribute(), redo(), undo(), and ~GNEChange_Attribute().
|
protectedinherited |
the net to which operations shall be applied or which shall be informed about gui updates (we are not responsible for the pointer)
Definition at line 76 of file GNEChange.h.
Referenced by GNEChange_Crossing::GNEChange_Crossing(), GNEChange_Junction::redo(), GNEChange_Shape::redo(), GNEChange_Additional::redo(), GNEChange_TLS::redo(), GNEChange_DemandElement::redo(), GNEChange_Children::redo(), GNEChange_EnableAttribute::redo(), GNEChange_Connection::redo(), GNEChange_Edge::redo(), GNEChange_Lane::redo(), GNEChange_Crossing::redo(), redo(), GNEChange_Junction::undo(), GNEChange_Shape::undo(), GNEChange_Additional::undo(), GNEChange_TLS::undo(), GNEChange_DemandElement::undo(), GNEChange_EnableAttribute::undo(), GNEChange_Children::undo(), GNEChange_Connection::undo(), GNEChange_Edge::undo(), GNEChange_Lane::undo(), GNEChange_Crossing::undo(), undo(), GNEChange_Additional::~GNEChange_Additional(), ~GNEChange_Attribute(), GNEChange_Crossing::~GNEChange_Crossing(), GNEChange_DemandElement::~GNEChange_DemandElement(), GNEChange_EnableAttribute::~GNEChange_EnableAttribute(), and GNEChange_Shape::~GNEChange_Shape().
|
private |
the original value
Definition at line 115 of file GNEChange_Attribute.h.
Referenced by redo(), and trueChange().
|
private |
the original value
Definition at line 112 of file GNEChange_Attribute.h.
Referenced by trueChange(), and undo().