32 #include "../../../../../geometry/Envelope.h"
33 #include "../../../../../geometry/Coord2D.h"
71 std::pair<std::set<Observer*>::iterator,
bool> p = m_observers.insert(o);
81 int num = m_observers.erase(o);
91 std::set<Observer*>::iterator it;
92 for(it = m_observers.begin(); it != m_observers.end(); ++it)
94 (*it)->updateObserver(context);
100 m_properties->
clear();
103 pro_name.
setName(m_sharedProps->getName());
104 pro_name.
setId(
"unknown");
106 m_properties->addProperty(pro_name);
109 pro_id.
setName(m_sharedProps->getId());
110 pro_id.
setId(
"unknown");
112 m_properties->addProperty(pro_id);
116 double x1 = m_box.getLowerLeftX();
117 double x2 = m_box.getUpperRightX();
118 double y1 = m_box.getLowerLeftY();
119 double y2 = m_box.getUpperRightY();
122 pro_x1.
setName(m_sharedProps->getX1());
123 pro_x1.
setId(
"unknown");
125 m_properties->addProperty(pro_x1);
128 pro_x2.
setName(m_sharedProps->getX2());
129 pro_x2.
setId(
"unknown");
131 m_properties->addProperty(pro_x2);
134 pro_y1.
setName(m_sharedProps->getY1());
135 pro_y1.
setId(
"unknown");
137 m_properties->addProperty(pro_y1);
140 pro_y2.
setName(m_sharedProps->getY2());
141 pro_y2.
setId(
"unknown");
143 m_properties->addProperty(pro_y2);
148 pro_zValue.
setName(m_sharedProps->getZValue());
149 pro_zValue.
setId(
"unknown");
151 m_properties->addProperty(pro_zValue);
154 pro_border.
setName(m_sharedProps->getBorder());
155 pro_border.
setId(
"unknown");
157 m_properties->addProperty(pro_border);
159 m_properties->setTypeObj(m_type);
175 return m_backgroundColor;
180 m_backgroundColor = color;
185 m_borderColor = color;
190 return m_borderColor;
197 m_properties->setObjectName(m_name);
209 double x2 = x + m_box.getWidth();
212 double y2 = y + m_box.getHeight();
222 return m_box.contains(env);
324 if((w <= 0) || (h <= 0))
327 if(w == m_box.getWidth() && h == m_box.getHeight())
330 m_box.m_urx = m_box.m_llx + w;
331 m_box.m_ury = m_box.m_lly + h;
virtual void setPosition(const double &x, const double &y)
virtual ~ItemModelObservable()
virtual void setType(LayoutAbstractObjectType type)
An utility struct for representing 2D coordinates.
virtual void updateProperties(te::layout::Properties *properties)
virtual void setBorder(bool value)
void setValue(typename ValueType value, LayoutPropertyDataType type)
virtual te::color::RGBAColor getBorderColor()
virtual void notifyAll(ContextItem context)
An Envelope defines a 2D rectangular region.
virtual void setZValue(int zValue)
virtual void setBackgroundColor(te::color::RGBAColor color)
virtual LayoutAbstractObjectType getType()
te::color::RGBAColor m_backgroundColor
virtual void setName(std::string name)
virtual te::color::RGBAColor getBackgroundColor()
Properties * m_properties
LayoutAbstractObjectType
Enum TdkAbstractComponentType. This is the enumeration of the components types.
virtual Properties * getProperties() const
virtual void setId(int id)
virtual std::string getName()
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color.
virtual bool addObserver(Observer *o)
void setName(std::string name)
virtual te::gm::Envelope getBox()
virtual void resize(double w, double h)
virtual void setBorderColor(te::color::RGBAColor color)
void setId(std::string id)
virtual bool contains(const te::gm::Coord2D &coord) const
virtual void setBox(te::gm::Envelope box)
virtual bool contains(Property property)
bool isValid() const
It tells if the rectangle is valid or not.
virtual bool removeObserver(Observer *o)
SharedProperties * m_sharedProps