Libcroco
|
The definition of the CRStyle class. More...
Go to the source code of this file.
The definition of the CRStyle class.
Definition in file cr-style.c.
typedef struct _CRPropertyDesc CRPropertyDesc |
Definition at line 92 of file cr-style.c.
enum CRDirection |
Definition at line 224 of file cr-style.c.
enum CRPropertyID |
A property ID.
Each supported css property has an ID which is an entry into a property "population" jump table. each entry of the property population jump table contains code to tranform the literal form of a property value into a strongly typed value.
Definition at line 42 of file cr-style.c.
enum CRStatus cr_style_border_style_to_string | ( | enum CRBorderStyle | a_prop, |
GString * | a_str, | ||
guint | a_nb_indent | ||
) |
Definition at line 2436 of file cr-style.c.
References BORDER_STYLE_DASHED, BORDER_STYLE_DOTTED, BORDER_STYLE_DOUBLE, BORDER_STYLE_GROOVE, BORDER_STYLE_HIDDEN, BORDER_STYLE_INSET, BORDER_STYLE_NONE, BORDER_STYLE_OUTSET, BORDER_STYLE_RIDGE, BORDER_STYLE_SOLID, CR_BAD_PARAM_ERROR, CR_OK, and cr_utils_dump_n_chars2().
Referenced by cr_style_to_string().
enum CRStatus cr_style_copy | ( | CRStyle * | a_dest, |
CRStyle * | a_src | ||
) |
Copies a style data structure into another.
TODO: this is actually broken because it's based on memcpy although some data stuctures of CRStyle should be properly duplicated.
a_dest | the destination style datastructure |
a_src | the source style datastructure. |
Definition at line 2312 of file cr-style.c.
References CR_BAD_PARAM_ERROR, and CR_OK.
Referenced by cr_style_dup().
void cr_style_destroy | ( | CRStyle * | a_this | ) |
Destructor of the CRStyle class.
a_this | the instance to destroy. |
Definition at line 2845 of file cr-style.c.
Referenced by cr_style_unref().
enum CRStatus cr_style_display_type_to_string | ( | enum CRDisplayType | a_code, |
GString * | a_str, | ||
guint | a_nb_indent | ||
) |
Definition at line 2484 of file cr-style.c.
References CR_BAD_PARAM_ERROR, CR_OK, cr_utils_dump_n_chars2(), DISPLAY_BLOCK, DISPLAY_COMPACT, DISPLAY_INHERIT, DISPLAY_INLINE, DISPLAY_INLINE_TABLE, DISPLAY_LIST_ITEM, DISPLAY_MARKER, DISPLAY_NONE, DISPLAY_RUN_IN, DISPLAY_TABLE, DISPLAY_TABLE_CAPTION, DISPLAY_TABLE_CELL, DISPLAY_TABLE_COLUMN, DISPLAY_TABLE_COLUMN_GROUP, DISPLAY_TABLE_FOOTER_GROUP, DISPLAY_TABLE_HEADER_GROUP, DISPLAY_TABLE_ROW, and DISPLAY_TABLE_ROW_GROUP.
Referenced by cr_style_to_string().
CRStyle* cr_style_dup | ( | CRStyle * | a_this | ) |
Duplicates the current instance of CRStyle .
The newly created instance of CRStyle must be freed using cr_style_destroy ().
a_this | the current instance of CRStyle. |
Definition at line 2287 of file cr-style.c.
References cr_style_copy(), cr_style_new(), and cr_utils_trace_info.
enum CRStatus cr_style_float_type_to_string | ( | enum CRFloatType | a_code, |
GString * | a_str, | ||
guint | a_nb_indent | ||
) |
Definition at line 2589 of file cr-style.c.
References CR_BAD_PARAM_ERROR, CR_OK, cr_utils_dump_n_chars2(), FLOAT_INHERIT, FLOAT_LEFT, FLOAT_NONE, and FLOAT_RIGHT.
Referenced by cr_style_to_string().
CRStyle* cr_style_new | ( | gboolean | a_set_props_to_initial_values | ) |
Default constructor of CRStyle.
a_set_props_to_initial_values | if TRUE, the style properties will be set to the default values. Only the style properties of the root box should be set to their initial values. Otherwise, the style values are set to their default value. Read the CSS2 spec, chapters 6.1.1 to 6.2. |
Definition at line 1712 of file cr-style.c.
References cr_style_set_props_to_default_values(), cr_style_set_props_to_initial_values(), and cr_utils_trace_info.
Referenced by cr_sel_eng_get_matched_style(), and cr_style_dup().
enum CRStatus cr_style_num_prop_val_to_string | ( | CRNumPropVal * | a_prop_val, |
GString * | a_str, | ||
guint | a_nb_indent | ||
) |
dump a CRNumpPropVal in a string.
a_prop_val | the numerical property value to dump |
a_str | the string to dump the numerical propertie into. Note that the string value is appended to a_str. |
a_nb_indent | the number white chars of indentation. |
Definition at line 2328 of file cr-style.c.
References _CRNumPropVal::av, CR_BAD_PARAM_ERROR, CR_ERROR, cr_num_to_string(), CR_OK, cr_utils_dump_n_chars2(), _CRNumPropVal::cv, and _CRNumPropVal::sv.
Referenced by cr_style_to_string().
enum CRStatus cr_style_position_type_to_string | ( | enum CRPositionType | a_code, |
GString * | a_str, | ||
guint | a_nb_indent | ||
) |
Definition at line 2557 of file cr-style.c.
References CR_BAD_PARAM_ERROR, CR_OK, cr_utils_dump_n_chars2(), POSITION_ABSOLUTE, POSITION_FIXED, POSITION_INHERIT, POSITION_RELATIVE, and POSITION_STATIC.
Referenced by cr_style_to_string().
enum CRStatus cr_style_ref | ( | CRStyle * | a_this | ) |
Increases the reference count of the current instance of CRStyle.
a_this | the current instance of CRStyle. |
Definition at line 2246 of file cr-style.c.
References CR_BAD_PARAM_ERROR, and CR_OK.
enum CRStatus cr_style_resolve_inherited_properties | ( | CRStyle * | a_this | ) |
Resolves the inherited properties.
The function sets the "inherited" properties to either the value of their parent properties. This function is *NOT* recursive. So the inherited properties of the parent style must have been resolved prior to calling this function.
a_this | the instance where |
Definition at line 1937 of file cr-style.c.
References BORDER_STYLE_INHERIT, CR_BAD_PARAM_ERROR, cr_font_size_copy(), cr_num_copy(), CR_OK, cr_rgb_copy(), cr_rgb_is_set_to_inherit(), DISPLAY_INHERIT, FLOAT_INHERIT, FONT_STRETCH_INHERIT, FONT_STYLE_INHERIT, FONT_VARIANT_INHERIT, FONT_WEIGHT_INHERIT, INHERITED_FONT_SIZE, NB_BORDER_STYLE_PROPS, NB_NUM_PROPS, NB_RGB_PROPS, NUM_INHERIT, and POSITION_INHERIT.
enum CRStatus cr_style_rgb_prop_val_to_string | ( | CRRgbPropVal * | a_prop_val, |
GString * | a_str, | ||
guint | a_nb_indent | ||
) |
Definition at line 2382 of file cr-style.c.
References _CRRgbPropVal::av, CR_BAD_PARAM_ERROR, CR_ERROR, CR_OK, cr_rgb_to_string(), cr_utils_dump_n_chars2(), _CRRgbPropVal::cv, and _CRRgbPropVal::sv.
Referenced by cr_style_to_string().
enum CRStatus cr_style_set_props_to_default_values | ( | CRStyle * | a_this | ) |
Sets the style properties to their default values according to the css2 spec i.e inherit if the property is inherited, its initial value otherwise.
a_this | the current instance of CRStyle. |
Definition at line 1740 of file cr-style.c.
References BORDER_STYLE_NONE, CR_BAD_PARAM_ERROR, cr_font_size_clear(), cr_font_size_set_to_inherit(), cr_num_set(), CR_OK, cr_rgb_set(), cr_rgb_set_to_inherit(), cr_rgb_set_to_transparent(), cr_utils_trace_info, DISPLAY_INLINE, FLOAT_NONE, FONT_STYLE_INHERIT, FONT_VARIANT_INHERIT, FONT_WEIGHT_INHERIT, NB_BORDER_STYLE_PROPS, NB_NUM_PROPS, NB_RGB_PROPS, NUM_AUTO, NUM_LENGTH_PX, NUM_PROP_BORDER_BOTTOM, NUM_PROP_BORDER_LEFT, NUM_PROP_BORDER_RIGHT, NUM_PROP_BORDER_TOP, NUM_PROP_BOTTOM, NUM_PROP_LEFT, NUM_PROP_MARGIN_BOTTOM, NUM_PROP_MARGIN_LEFT, NUM_PROP_MARGIN_RIGHT, NUM_PROP_MARGIN_TOP, NUM_PROP_PADDING_BOTTOM, NUM_PROP_PADDING_LEFT, NUM_PROP_PADDING_RIGHT, NUM_PROP_PADDING_TOP, NUM_PROP_RIGHT, NUM_PROP_TOP, NUM_PROP_WIDTH, POSITION_STATIC, RGB_PROP_BACKGROUND_COLOR, and RGB_PROP_COLOR.
Referenced by cr_sel_eng_get_matched_style(), and cr_style_new().
enum CRStatus cr_style_set_props_to_initial_values | ( | CRStyle * | a_this | ) |
Sets the style properties to their initial value according to the css2 spec.
This function should be used to initialize the style of the root element of an xml tree. Some properties are user agent dependant like font-family, and are not initialized, read the spec to make you renderer compliant.
a_this | the current instance of CRStyle. |
Definition at line 1845 of file cr-style.c.
References BORDER_STYLE_NONE, CR_BAD_PARAM_ERROR, cr_font_size_set_predefined_absolute_font_size(), cr_num_set(), CR_OK, cr_rgb_set(), cr_rgb_set_to_transparent(), cr_utils_trace_info, DISPLAY_BLOCK, FLOAT_NONE, FONT_SIZE_MEDIUM, FONT_STRETCH_NORMAL, FONT_STYLE_NORMAL, FONT_VARIANT_NORMAL, FONT_WEIGHT_NORMAL, NB_BORDER_STYLE_PROPS, NB_NUM_PROPS, NB_RGB_PROPS, NUM_AUTO, NUM_LENGTH_PX, NUM_PROP_BORDER_BOTTOM, NUM_PROP_BORDER_LEFT, NUM_PROP_BORDER_RIGHT, NUM_PROP_BORDER_TOP, NUM_PROP_BOTTOM, NUM_PROP_LEFT, NUM_PROP_MARGIN_BOTTOM, NUM_PROP_MARGIN_LEFT, NUM_PROP_MARGIN_RIGHT, NUM_PROP_MARGIN_TOP, NUM_PROP_PADDING_BOTTOM, NUM_PROP_PADDING_LEFT, NUM_PROP_PADDING_RIGHT, NUM_PROP_PADDING_TOP, NUM_PROP_RIGHT, NUM_PROP_TOP, NUM_PROP_WIDTH, POSITION_STATIC, RGB_PROP_BACKGROUND_COLOR, RGB_PROP_COLOR, and WHITE_SPACE_NORMAL.
Referenced by cr_sel_eng_get_matched_style(), and cr_style_new().
enum CRStatus cr_style_set_style_from_decl | ( | CRStyle * | a_this, |
CRDeclaration * | a_decl | ||
) |
Walks through a css2 property declaration, and populated the according field(s) in the CRStyle structure.
If the properties or their value(s) are/is not known, sets the corresponding field(s) of CRStyle to its/their default value(s)
a_this | the instance of CRStyle to set. |
a_decl | the declaration from which the CRStyle fields are set. |
Definition at line 2012 of file cr-style.c.
References CR_BAD_PARAM_ERROR, CR_OK, CR_UNKNOWN_TYPE_ERROR, DIR_BOTTOM, DIR_LEFT, DIR_RIGHT, DIR_TOP, PROP_ID_BACKGROUND_COLOR, PROP_ID_BORDER, PROP_ID_BORDER_BOTTOM, PROP_ID_BORDER_BOTTOM_COLOR, PROP_ID_BORDER_BOTTOM_STYLE, PROP_ID_BORDER_BOTTOM_WIDTH, PROP_ID_BORDER_LEFT, PROP_ID_BORDER_LEFT_COLOR, PROP_ID_BORDER_LEFT_STYLE, PROP_ID_BORDER_LEFT_WIDTH, PROP_ID_BORDER_RIGHT, PROP_ID_BORDER_RIGHT_COLOR, PROP_ID_BORDER_RIGHT_STYLE, PROP_ID_BORDER_RIGHT_WIDTH, PROP_ID_BORDER_STYLE, PROP_ID_BORDER_TOP, PROP_ID_BORDER_TOP_COLOR, PROP_ID_BORDER_TOP_STYLE, PROP_ID_BORDER_TOP_WIDTH, PROP_ID_BORDER_WIDTH, PROP_ID_BOTTOM, PROP_ID_COLOR, PROP_ID_DISPLAY, PROP_ID_FLOAT, PROP_ID_FONT_FAMILY, PROP_ID_FONT_SIZE, PROP_ID_FONT_STYLE, PROP_ID_FONT_WEIGHT, PROP_ID_LEFT, PROP_ID_MARGIN, PROP_ID_MARGIN_BOTTOM, PROP_ID_MARGIN_LEFT, PROP_ID_MARGIN_RIGHT, PROP_ID_MARGIN_TOP, PROP_ID_NOT_KNOWN, PROP_ID_PADDING, PROP_ID_PADDING_BOTTOM, PROP_ID_PADDING_LEFT, PROP_ID_PADDING_RIGHT, PROP_ID_PADDING_TOP, PROP_ID_POSITION, PROP_ID_RIGHT, PROP_ID_TOP, PROP_ID_WHITE_SPACE, PROP_ID_WIDTH, _CRDeclaration::property, and _CRDeclaration::value.
enum CRStatus cr_style_to_string | ( | CRStyle * | a_this, |
GString ** | a_str, | ||
guint | a_nb_indent | ||
) |
Serializes in instance of CRStyle into a string.
a_this | the instance of CRStyle to serialize |
a_str | the string to serialise the style into. if *a_str is NULL, a new GString is instanciated, otherwise the style serialisation is appended to the existed *a_str |
the | number of white space char to use for indentation. |
Definition at line 2659 of file cr-style.c.
References BORDER_STYLE_PROP_TOP, CR_BAD_PARAM_ERROR, cr_font_family_to_string(), cr_font_size_adjust_to_string(), cr_font_size_to_string(), cr_font_stretch_to_string(), cr_font_style_to_string(), cr_font_variant_to_string(), cr_font_weight_to_string(), CR_OK, cr_style_border_style_to_string(), cr_style_display_type_to_string(), cr_style_float_type_to_string(), cr_style_num_prop_val_to_string(), cr_style_position_type_to_string(), cr_style_rgb_prop_val_to_string(), cr_style_white_space_type_to_string(), cr_utils_dump_n_chars2(), NB_BORDER_STYLE_PROPS, NB_NUM_PROPS, NB_RGB_PROPS, NUM_PROP_TOP, and RGB_PROP_BORDER_TOP_COLOR.
gboolean cr_style_unref | ( | CRStyle * | a_this | ) |
Decreases the reference count of the current instance of CRStyle.
If the reference count reaches 0, the instance of CRStyle is destoyed.
a_this | the current instance of CRStyle. |
Definition at line 2264 of file cr-style.c.
References cr_style_destroy().
enum CRStatus cr_style_white_space_type_to_string | ( | enum CRWhiteSpaceType | a_code, |
GString * | a_str, | ||
guint | a_nb_indent | ||
) |
Definition at line 2619 of file cr-style.c.
References CR_BAD_PARAM_ERROR, CR_OK, cr_utils_dump_n_chars2(), WHITE_SPACE_INHERIT, WHITE_SPACE_NORMAL, WHITE_SPACE_NOWRAP, and WHITE_SPACE_PRE.
Referenced by cr_style_to_string().