14 #ifndef VCARDPROPERTY_H
15 #define VCARDPROPERTY_H
17 #include "libical_vcard_export.h"
18 #include "vcardderivedproperty.h"
22 LIBICAL_VCARD_EXPORT vcardproperty *vcardproperty_new(vcardproperty_kind kind);
31 LIBICAL_VCARD_EXPORT vcardproperty *vcardproperty_new_from_string(
const char *str);
33 LIBICAL_VCARD_EXPORT
const char *vcardproperty_as_vcard_string(vcardproperty *prop);
35 LIBICAL_VCARD_EXPORT
char *vcardproperty_as_vcard_string_r(vcardproperty *prop);
37 LIBICAL_VCARD_EXPORT
void vcardproperty_free(vcardproperty *prop);
39 LIBICAL_VCARD_EXPORT vcardproperty_kind vcardproperty_isa(
const vcardproperty *property);
41 LIBICAL_VCARD_EXPORT
bool vcardproperty_isa_property(
void *property);
43 LIBICAL_VCARD_EXPORT
void vcardproperty_add_parameters(
struct vcardproperty_impl *prop, va_list args);
45 LIBICAL_VCARD_EXPORT
void vcardproperty_add_parameter(vcardproperty *prop, vcardparameter *parameter);
47 LIBICAL_VCARD_EXPORT
void vcardproperty_set_parameter(vcardproperty *prop, vcardparameter *parameter);
49 LIBICAL_VCARD_EXPORT
void vcardproperty_set_parameter_from_string(vcardproperty *prop,
52 LIBICAL_VCARD_EXPORT
const char *vcardproperty_get_parameter_as_string(vcardproperty *prop,
55 LIBICAL_VCARD_EXPORT
char *vcardproperty_get_parameter_as_string_r(vcardproperty *prop,
68 vcardparameter_kind kind);
95 vcardparameter *param);
97 LIBICAL_VCARD_EXPORT
int vcardproperty_count_parameters(
const vcardproperty *prop);
100 LIBICAL_VCARD_EXPORT vcardparameter *vcardproperty_get_first_parameter(vcardproperty *prop,
101 vcardparameter_kind kind);
102 LIBICAL_VCARD_EXPORT vcardparameter *vcardproperty_get_next_parameter(vcardproperty *prop,
103 vcardparameter_kind kind);
105 LIBICAL_VCARD_EXPORT
void vcardproperty_set_value(vcardproperty *prop, vcardvalue *value);
106 LIBICAL_VCARD_EXPORT
void vcardproperty_set_value_from_string(vcardproperty *prop,
const char *str,
109 LIBICAL_VCARD_EXPORT vcardvalue *vcardproperty_get_value(
const vcardproperty *prop);
110 LIBICAL_VCARD_EXPORT
const char *vcardproperty_get_value_as_string(
const vcardproperty *prop);
111 LIBICAL_VCARD_EXPORT
char *vcardproperty_get_value_as_string_r(
const vcardproperty *prop);
126 LIBICAL_VCARD_EXPORT
void vcardproperty_set_x_name(vcardproperty *prop,
const char *name);
127 LIBICAL_VCARD_EXPORT
const char *vcardproperty_get_x_name(
const vcardproperty *prop);
131 LIBICAL_VCARD_EXPORT
void vcardproperty_set_group(vcardproperty *prop,
const char *group);
132 LIBICAL_VCARD_EXPORT
const char *vcardproperty_get_group(
const vcardproperty *prop);
139 LIBICAL_VCARD_EXPORT
char *vcardproperty_get_property_name_r(
const vcardproperty *prop);
141 LIBICAL_VCARD_EXPORT vcardvalue_kind vcardparameter_value_to_value_kind(vcardparameter_value value);
156 LIBICAL_VCARD_EXPORT vcardvalue_kind vcardproperty_kind_to_value_kind(vcardproperty_kind kind);
157 LIBICAL_VCARD_EXPORT vcardproperty_kind vcardproperty_value_kind_to_kind(vcardvalue_kind kind);
158 LIBICAL_VCARD_EXPORT
const char *vcardproperty_kind_to_string(vcardproperty_kind kind);
159 LIBICAL_VCARD_EXPORT vcardproperty_kind vcardproperty_string_to_kind(
const char *
string);
164 LIBICAL_VCARD_EXPORT
const char *vcardproperty_enum_to_string(
int e);
165 LIBICAL_VCARD_EXPORT
char *vcardproperty_enum_to_string_r(
int e);
166 LIBICAL_VCARD_EXPORT
int vcardproperty_kind_and_string_to_enum(
const int kind,
const char *str);
168 LIBICAL_VCARD_EXPORT
bool vcardproperty_enum_belongs_to_property(vcardproperty_kind kind,
int e);
176 LIBICAL_VCARD_EXPORT
bool vcardproperty_is_structured(vcardproperty_kind pkind);
177 LIBICAL_VCARD_EXPORT
bool vcardproperty_is_multivalued(vcardproperty_kind pkind);
179 LIBICAL_VCARD_EXPORT
void vcardproperty_add_type_parameter(vcardproperty *prop,
void vcardparameter_set_parent(vcardparameter *param, vcardproperty *property)
vcardproperty * vcardparameter_get_parent(const vcardparameter *param)
void vcardproperty_remove_parameter_by_name(vcardproperty *prop, const char *name)
Removes all parameters with the specified name.
void vcardproperty_remove_parameter_by_kind(vcardproperty *prop, vcardparameter_kind kind)
Removes all parameters with the specified kind.
const char * vcardproperty_get_property_name(const vcardproperty *prop)
void vcardproperty_normalize(vcardproperty *prop)
vcardproperty * vcardvalue_get_parent(const vcardvalue *value)
void vcardproperty_remove_parameter_by_ref(vcardproperty *prop, vcardparameter *param)
Removes the specified parameter reference from the property.
vcardproperty * vcardproperty_clone(const vcardproperty *old)
Deeply clones an vcardproperty.
void vcardvalue_set_parent(vcardvalue *value, vcardproperty *property)
bool vcardproperty_kind_is_valid(const vcardproperty_kind kind)