00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef __CR_SEL_ENG_H__
00024 #define __CR_SEL_ENG_H__
00025
00026 #include "cr-utils.h"
00027 #include "cr-stylesheet.h"
00028 #include "cr-cascade.h"
00029 #include "cr-style.h"
00030
00031 #ifdef CROCO_HAVE_LIBXML2
00032 #include <libxml/tree.h>
00033 #endif
00034
00035 #ifdef CROCO_SELENG_ENABLED
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045 G_BEGIN_DECLS
00046
00047 typedef struct _CRSelEng CRSelEng ;
00048 typedef struct _CRSelEngPriv CRSelEngPriv ;
00049
00050
00051
00052
00053
00054
00055
00056
00057 struct _CRSelEng
00058 {
00059 CRSelEngPriv *priv ;
00060 } ;
00061
00062 CRSelEng *
00063 cr_sel_eng_new (void) ;
00064
00065 enum CRStatus
00066 cr_sel_eng_matches_node (CRSelEng *a_this, CRSimpleSel *a_sel,
00067 xmlNode *a_node, gboolean *a_result) ;
00068
00069 enum CRStatus
00070 cr_sel_eng_get_matched_rulesets (CRSelEng *a_this,
00071 CRStyleSheet *a_sheet,
00072 xmlNode *a_node,
00073 CRStatement ***a_rulesets,
00074 gulong *a_len) ;
00075
00076 enum CRStatus
00077 cr_sel_eng_get_matched_properties_from_cascade (CRSelEng *a_this,
00078 CRCascade *a_cascade,
00079 xmlNode *a_node,
00080 GHashTable **props_decls_dict) ;
00081
00082 enum CRStatus
00083 cr_sel_eng_get_matched_style (CRSelEng *a_this,
00084 CRCascade *a_cascade,
00085 xmlNode *a_node,
00086 CRStyle *a_parent_style,
00087 CRStyle **a_style) ;
00088
00089 void
00090 cr_sel_eng_destroy (CRSelEng *a_this) ;
00091
00092 G_END_DECLS
00093
00094 #endif
00095
00096 #endif