Etk
Main Page Object Hierarchy Data Structures Related Pages
Etk

etk_property.h File Reference


Detailed Description


Data Structures

struct  Etk_Property
 An Etk_Property is a name/value couple that can be associated to a type. A property has a default value and can be readable, writable or both. More...
struct  Etk_Property_Value
 The value of a property. You usually do not need to manipulate it directly, use etk_object_properties_set() and etk_object_properties_get() to set and get the value of a property of an object. More...

Enumerations

enum  Etk_Property_Type {
  ETK_PROPERTY_NONE,
  ETK_PROPERTY_INT,
  ETK_PROPERTY_BOOL,
  ETK_PROPERTY_CHAR,
  ETK_PROPERTY_FLOAT,
  ETK_PROPERTY_DOUBLE,
  ETK_PROPERTY_SHORT,
  ETK_PROPERTY_LONG,
  ETK_PROPERTY_POINTER,
  ETK_PROPERTY_STRING,
  ETK_PROPERTY_OTHER
}
 The type of a property. More...
enum  Etk_Property_Flags {
  ETK_PROPERTY_NO_ACCESS = 1 << 0,
  ETK_PROPERTY_READABLE = 1 << 1,
  ETK_PROPERTY_WRITABLE = 1 << 2,
  ETK_PROPERTY_READABLE_WRITABLE,
  ETK_PROPERTY_CONSTRUCT = 1 << 3
}
 Describes if the property is either readable, writable or both. You can also specify if the property needs to be initialized to its default value at the constuction of a new object with ETK_PROPERTY_CONSTRUCT. More...

Functions

Etk_Property * etk_property_new (const char *name, int property_id, Etk_Property_Type type, Etk_Property_Flags flags, Etk_Property_Value *default_value)
 Creates a new property.
void etk_property_delete (Etk_Property *property)
 Deletes the property.
Etk_Property_Type etk_property_type_get (Etk_Property *property)
 Gets the type of the property.
Etk_Property_Value * etk_property_value_new (void)
 Creates a new property value with no type.
void etk_property_value_delete (Etk_Property_Value *value)
 Deletes a property value.
Etk_Property_Type etk_property_value_type_get (Etk_Property_Value *value)
 Gets the type of the value.
Etk_Property_Value * etk_property_value_create (Etk_Property_Type type,...)
 Creates a new property value of type type.
Etk_Property_Value * etk_property_value_create_valist (Etk_Property_Type type, va_list *arg)
 Creates a new property value of type type.
Etk_Property_Value * etk_property_value_int (int value)
 Creates a new integer property value.
Etk_Property_Value * etk_property_value_bool (Etk_Bool value)
 Creates a new boolean property value.
Etk_Property_Value * etk_property_value_char (char value)
 Creates a new char property value.
Etk_Property_Value * etk_property_value_float (float value)
 Creates a new float property value.
Etk_Property_Value * etk_property_value_double (double value)
 Creates a new double property value.
Etk_Property_Value * etk_property_value_short (short value)
 Creates a new short property value.
Etk_Property_Value * etk_property_value_long (long value)
 Creates a new long property value.
Etk_Property_Value * etk_property_value_pointer (void *value)
 Creates a new pointer property value.
Etk_Property_Value * etk_property_value_string (const char *value)
 Creates a new string property value.
void etk_property_value_set (Etk_Property_Value *property_value, Etk_Property_Type type,...)
 Sets the value of a property value.
void etk_property_value_set_valist (Etk_Property_Value *property_value, Etk_Property_Type type, va_list *arg)
 Sets the value of a property value.
void etk_property_value_int_set (Etk_Property_Value *property_value, int value)
 Sets the integer value of a property value.
void etk_property_value_bool_set (Etk_Property_Value *property_value, Etk_Bool value)
 Sets the boolean value of a property value.
void etk_property_value_char_set (Etk_Property_Value *property_value, char value)
 Sets the char value of a property value.
void etk_property_value_float_set (Etk_Property_Value *property_value, float value)
 Sets the float value of a property value.
void etk_property_value_double_set (Etk_Property_Value *property_value, double value)
 Sets the double value of a property value.
void etk_property_value_short_set (Etk_Property_Value *property_value, short value)
 Sets the short value of a property value.
void etk_property_value_long_set (Etk_Property_Value *property_value, long value)
 Sets the long value of a property value.
void etk_property_value_pointer_set (Etk_Property_Value *property_value, void *value)
 Sets the pointer value of a property value.
void etk_property_value_string_set (Etk_Property_Value *property_value, const char *value)
 Sets the string value of a property value.
void etk_property_value_get (Etk_Property_Value *value, Etk_Property_Type type, void *value_location)
 Gets the value of the property value.
int etk_property_value_int_get (Etk_Property_Value *value)
 Gets the integer value of the property value.
Etk_Bool etk_property_value_bool_get (Etk_Property_Value *value)
 Gets the boolean value of the property value.
char etk_property_value_char_get (Etk_Property_Value *value)
 Gets the char value of the property value.
float etk_property_value_float_get (Etk_Property_Value *value)
 Gets the float value of the property value.
double etk_property_value_double_get (Etk_Property_Value *value)
 Gets the double value of the property value.
short etk_property_value_short_get (Etk_Property_Value *value)
 Gets the short value of the property value.
long etk_property_value_long_get (Etk_Property_Value *value)
 Gets the long value of the property value.
void * etk_property_value_pointer_get (Etk_Property_Value *value)
 Gets the pointer value of the property value.
const char * etk_property_value_string_get (Etk_Property_Value *value)
 Gets the string value of the property value.