![]() | ![]() | ![]() | Libplanner Reference Manual | ![]() |
---|
MrpProperty — represents a custom property in the project.
#include <libplanner/planner.h> typedef MrpProperty; enum MrpPropertyType; MrpProperty* mrp_property_new (const gchar *name, MrpPropertyType type, const gchar *label, const gchar *description, gboolean user_defined); const gchar* mrp_property_get_name (MrpProperty *property); MrpPropertyType mrp_property_get_property_type (MrpProperty *property); void mrp_property_set_label (MrpProperty *property, const gchar *label); const gchar* mrp_property_get_label (MrpProperty *property); void mrp_property_set_description (MrpProperty *property, const gchar *description); const gchar* mrp_property_get_description (MrpProperty *property); void mrp_property_set_user_defined (MrpProperty *property, gboolean user_defined); gboolean mrp_property_get_user_defined (MrpProperty *property); MrpProperty* mrp_property_ref (MrpProperty *property); void mrp_property_unref (MrpProperty *property); const gchar* mrp_property_type_as_string (MrpPropertyType type);
MrpProperty is a typedef to GParamSpec. It is used to add properties to projects, resources and tasks in run time, for example by the user of a GUI application, or plugins that add functionality.
typedef enum { MRP_PROPERTY_TYPE_NONE, MRP_PROPERTY_TYPE_INT, MRP_PROPERTY_TYPE_FLOAT, MRP_PROPERTY_TYPE_STRING, MRP_PROPERTY_TYPE_STRING_LIST, MRP_PROPERTY_TYPE_DATE, MRP_PROPERTY_TYPE_DURATION, MRP_PROPERTY_TYPE_COST } MrpPropertyType;
The different types of custom properties. Cost and duration are simply float and integer values, but the extra information provided makes it possible to format the values properly in a GUI.
MRP_PROPERTY_TYPE_NONE | invalid (unset type) |
MRP_PROPERTY_TYPE_INT | integer type |
MRP_PROPERTY_TYPE_FLOAT | float type |
MRP_PROPERTY_TYPE_STRING | string type |
MRP_PROPERTY_TYPE_STRING_LIST | not implemented |
MRP_PROPERTY_TYPE_DATE | date type |
MRP_PROPERTY_TYPE_DURATION | duration type |
MRP_PROPERTY_TYPE_COST | cost type (float) |
MrpProperty* mrp_property_new (const gchar *name, MrpPropertyType type, const gchar *label, const gchar *description, gboolean user_defined);
Creates a new MrpProperty. name must be unique in the application. user_defined specifies if the property was created by a user or a plugin or Planner itself.
name : | the name of the property |
type : | an MrpPropertyType |
label : | the human readable label |
description : | a string describing the property |
user_defined : | a gboolean |
Returns : | a newly create property |
const gchar* mrp_property_get_name (MrpProperty *property);
Fetches the name of property
property : | an MrpProperty |
Returns : | the name of property |
MrpPropertyType mrp_property_get_property_type (MrpProperty *property);
Fetches the type of property
property : | an MrpProperty |
Returns : | the type of property |
void mrp_property_set_label (MrpProperty *property, const gchar *label);
Sets the label of property and signals the "property-changed" signal on the project property is attached to.
property : | an MrpProperty |
label : | a string containing the new label |
const gchar* mrp_property_get_label (MrpProperty *property);
Fetches the label of property
property : | an MrpProperty |
Returns : | the label of property |
void mrp_property_set_description (MrpProperty *property, const gchar *description);
Sets the description of property and signals the "property-changed" signal on the project property is attached to.
property : | an MrpProperty |
description : | a string containing the new description |
const gchar* mrp_property_get_description (MrpProperty *property);
Fetches the description of property
property : | an MrpProperty |
Returns : | the description of property |
void mrp_property_set_user_defined (MrpProperty *property, gboolean user_defined);
Sets if property is user-defined or created by a plugin or Planner itself.
property : | an MrpProperty |
user_defined : | if the property is user defined |
gboolean mrp_property_get_user_defined (MrpProperty *property);
Fetches if property is uesr defined or not.
property : | an MrpProperty |
Returns : | TRUE if property is user defined, otherwise FALSE |
MrpProperty* mrp_property_ref (MrpProperty *property);
Add a reference to property. User should call this when storing a reference to property.
property : | an MrpProperty |
Returns : | the property |
void mrp_property_unref (MrpProperty *property);
Remove a reference from property. If the reference count reaches 0 the property will be freed. User should not use it's reference after calling mrp_property_unref().
property : | an MrpProperty |
const gchar* mrp_property_type_as_string (MrpPropertyType type);
Transform a MrpPropertyTYpe into a human readable string.
type : | an MrpPropertyType |
Returns : | a string representation of type |
<< MrpError | mrptime >> |