![]() |
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, bool forceChange, const SumoXMLAttr key, const std::string &value) | |
Constructor. More... | |
GNEChange_Attribute (GNEAttributeCarrier *ac, GNENet *net, const SumoXMLAttr key, const std::string &value, bool customOrigValue=false, const std::string &origValue="") | |
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 47 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 36 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 49 of file GNEChange_Attribute.cpp.
References GNEReferenceCounter::incRef(), myAC, myKey, and toString().
GNEChange_Attribute::~GNEChange_Attribute | ( | ) |
Destructor.
Definition at line 61 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 108 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::requireSaveAdditionals(), GNENet::requireSaveDemandElements(), GNENet::requireSaveNet(), GNEAttributeCarrier::AttributeProperties::requireUpdateGeometry(), GNEAttributeCarrier::setAttribute(), toString(), GNEAttributeCarrier::updateGeometry(), and WRITE_DEBUG.
|
virtual |
get Redo name
Reimplemented from GNEChange.
Definition at line 149 of file GNEChange_Attribute.cpp.
References GNEAttributeCarrier::getTagStr(), and myAC.
|
virtualinherited |
return actual size
Definition at line 44 of file GNEChange.cpp.
bool GNEChange_Attribute::trueChange | ( | ) |
wether original and new value differ
Definition at line 132 of file GNEChange_Attribute.cpp.
References myForceChange, myNewValue, and myOrigValue.
Referenced by GNEUndoList::p_add().
|
virtual |
undo action
Reimplemented from GNEChange.
Definition at line 84 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::requireSaveAdditionals(), GNENet::requireSaveDemandElements(), GNENet::requireSaveNet(), GNEAttributeCarrier::AttributeProperties::requireUpdateGeometry(), GNEAttributeCarrier::setAttribute(), toString(), GNEAttributeCarrier::updateGeometry(), and WRITE_DEBUG.
|
virtual |
return undoName
Reimplemented from GNEChange.
Definition at line 143 of file GNEChange_Attribute.cpp.
References GNEAttributeCarrier::getTagStr(), and myAC.
|
private |
the net to which all operations shall be applied
Definition at line 102 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 108 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 80 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 105 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 75 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 114 of file GNEChange_Attribute.h.
Referenced by redo(), and trueChange().
|
private |
the original value
Definition at line 111 of file GNEChange_Attribute.h.
Referenced by trueChange(), and undo().