28 #ifndef __TERRALIB_LAYOUT_INTERNAL_ITEM_MODEL_H  
   29 #define __TERRALIB_LAYOUT_INTERNAL_ITEM_MODEL_H 
   33 #include "../../Config.h" 
   34 #include "../../property/Property.h" 
   45     class SharedProperties;
 
   72         virtual bool addObserver(
Observer* o);
 
   77         virtual bool removeObserver(
Observer* o);
 
   92         virtual void setType(
EnumType* type);
 
  139         virtual void setName(std::string name);
 
  144         virtual std::string getName();
 
  154         virtual void setId(
int id);
 
  159         virtual int getHashCode();
 
  167         virtual void setPosition(
const double& x, 
const double& y);
 
  192         virtual std::set<ItemObserver*> getChildren() 
const;
 
  202         virtual bool removeChildren(
int hashCode);
 
  212         virtual int getZValue();
 
  217         virtual void setZValue(
int zValue);
 
  224         virtual bool isBorder();
 
  231         virtual void setBorder(
bool value);
 
  238         virtual void resize(
double w, 
double h);
 
  243         virtual void setResizable(
bool resize);
 
  248         virtual bool isResizable();
 
  255         virtual void setAngle(
double angle);
 
  262         virtual double getAngle();
 
  269         virtual double getOldAngle();
 
  283         virtual bool isEnableChildren();
 
  290         virtual void setEnableChildren(
bool value);
 
  299         virtual int calculateHashCode();
 
  308         virtual void addChildrenProperties(
Properties* properties);
 
  310         virtual void updateChildrenProperties(
Property prop);
 
Abstract class to represent an observable. "Model" part of MVC component. 
 
Class responsible for maintaining the drawing context of a MVC component. It is always used by the "M...
 
double m_angle
value of rotation 
 
te::gm::Coord2D m_centerCoordinate
center coordinate of the bounding rectangle 
 
#define TELAYOUTEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
bool m_border
true if should be drawn border, false otherwise 
 
Properties * m_publicProperties
public properties 
 
double m_oldAngle
value of old rotation 
 
Abstract class to represent an observable. "Model" part of MVC component. 
 
Abstract class to represent an observable. "Model" part of MVC component. All classes representing th...
 
The Properties class represents a persistent set of properties. The Properties can be saved to a file...
 
Abstract class to represent an observer. "View" part of MVC component. All classes representing the g...
 
An utility struct for representing 2D coordinates. 
 
EnumType * m_type
type of the MVC component 
 
std::set< ItemObserver * > m_children
children components 
 
Abstract class to represent an observer. "View" part of MVC component. 
 
An Envelope defines a 2D rectangular region. 
 
te::gm::Envelope m_box
bounding rectangle 
 
std::set< Observer * > m_observers
set of observers of this object 
 
std::string m_name
name of the MVC component 
 
bool m_resizable
true if resizable, false otherwise 
 
te::color::RGBAColor m_backgroundColor
background color 
 
Properties * m_properties
properties 
 
bool m_enableChildren
true if MVC component can have children, false otherwise 
 
Class that represents the value of an enumeration. An enumeration is made of "1..n" objects EnumType...
 
A helper class for 32-bit RGBA (Red-Green-Blue-Alpha channel) color. 
 
te::color::RGBAColor m_borderColor
border color 
 
te::gm::Coord2D m_oldPos
value of old position 
 
A property acts like a attribute member of a object and stores the state of this attribute. A set of properties stores the state of an object. Any data type, not included in the convertValue method in the class te::layout::Variant, it will be by default "std::string" value. 
 
int m_zValue
The Z value decides the stacking order of drawing. 
 
SharedProperties * m_sharedProps
Names of common properties among all MVC components.