Add setter function of pseudo class.
This commit is contained in:
		@ -273,6 +273,25 @@ eek_theme_node_get_element_class (EekThemeNode *node)
 | 
				
			|||||||
    return priv->element_class;
 | 
					    return priv->element_class;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					void
 | 
				
			||||||
 | 
					eek_theme_node_set_pseudo_class (EekThemeNode *node,
 | 
				
			||||||
 | 
					                                 const gchar  *pseudo_class)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    EekThemeNodePrivate *priv;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    g_return_if_fail (EEK_IS_THEME_NODE (node));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    priv = EEK_THEME_NODE_GET_PRIVATE(node);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    if (g_strcmp0 (pseudo_class, priv->pseudo_class)) {
 | 
				
			||||||
 | 
					        g_free (priv->pseudo_class);
 | 
				
			||||||
 | 
					        priv->pseudo_class = g_strdup (pseudo_class);
 | 
				
			||||||
 | 
					        priv->properties_computed = 0;
 | 
				
			||||||
 | 
					        priv->background_computed = 0;
 | 
				
			||||||
 | 
					        priv->foreground_computed = 0;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
const char *
 | 
					const char *
 | 
				
			||||||
eek_theme_node_get_pseudo_class (EekThemeNode *node)
 | 
					eek_theme_node_get_pseudo_class (EekThemeNode *node)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
				
			|||||||
@ -63,51 +63,54 @@ struct _EekThemeNodeClass {
 | 
				
			|||||||
  GObjectClass parent_class;
 | 
					  GObjectClass parent_class;
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
GType           eek_theme_node_get_type
 | 
					GType         eek_theme_node_get_type
 | 
				
			||||||
                                   (void) G_GNUC_CONST;
 | 
					                                 (void) G_GNUC_CONST;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EekThemeNode   *eek_theme_node_new (EekThemeNode               *parent_node,
 | 
					EekThemeNode *eek_theme_node_new (EekThemeNode               *parent_node,
 | 
				
			||||||
                                    /* can be null */ EekTheme *theme,
 | 
					                                  /* can be null */ EekTheme *theme,
 | 
				
			||||||
                                    /* can be null */ GType     element_type,
 | 
					                                  /* can be null */ GType     element_type,
 | 
				
			||||||
                                    const char                 *element_id,
 | 
					                                  const char                 *element_id,
 | 
				
			||||||
                                    const char                 *element_class,
 | 
					                                  const char                 *element_class,
 | 
				
			||||||
                                    const char                 *pseudo_class,
 | 
					                                  const char                 *pseudo_class,
 | 
				
			||||||
                                    const char                 *inline_style);
 | 
					                                  const char                 *inline_style);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EekThemeNode   *eek_theme_node_get_parent
 | 
					EekThemeNode *eek_theme_node_get_parent
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EekTheme       *eek_theme_node_get_theme
 | 
					EekTheme     *eek_theme_node_get_theme
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
GType           eek_theme_node_get_element_type
 | 
					GType         eek_theme_node_get_element_type
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
const char     *eek_theme_node_get_element_id
 | 
					const char   *eek_theme_node_get_element_id
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
const char     *eek_theme_node_get_element_class
 | 
					const char   *eek_theme_node_get_element_class
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
const char     *eek_theme_node_get_pseudo_class
 | 
					void          eek_theme_node_set_pseudo_class
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node,
 | 
				
			||||||
 | 
					                                  const gchar                *pseudo_class);
 | 
				
			||||||
 | 
					const char   *eek_theme_node_get_pseudo_class
 | 
				
			||||||
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Generic getters ... these are not cached so are less efficient. The other
 | 
					/* Generic getters ... these are not cached so are less efficient. The other
 | 
				
			||||||
 * reason for adding the more specific version is that we can handle the
 | 
					 * reason for adding the more specific version is that we can handle the
 | 
				
			||||||
 * details of the actual CSS rules, which can be complicated, especially
 | 
					 * details of the actual CSS rules, which can be complicated, especially
 | 
				
			||||||
 * for fonts
 | 
					 * for fonts
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
gboolean        eek_theme_node_get_color
 | 
					gboolean      eek_theme_node_get_color
 | 
				
			||||||
                                   (EekThemeNode               *node,
 | 
					                                 (EekThemeNode               *node,
 | 
				
			||||||
                                    const char                 *property_name,
 | 
					                                  const char                 *property_name,
 | 
				
			||||||
                                    gboolean                    inherit,
 | 
					                                  gboolean                    inherit,
 | 
				
			||||||
                                    EekColor                  **color);
 | 
					                                  EekColor                  **color);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Specific getters for particular properties: cached
 | 
					/* Specific getters for particular properties: cached
 | 
				
			||||||
 */
 | 
					 */
 | 
				
			||||||
EekColor       *eek_theme_node_get_background_color
 | 
					EekColor     *eek_theme_node_get_background_color
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
EekColor       *eek_theme_node_get_foreground_color
 | 
					EekColor     *eek_theme_node_get_foreground_color
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
EekGradient    *eek_theme_node_get_background_gradient
 | 
					EekGradient  *eek_theme_node_get_background_gradient
 | 
				
			||||||
                                   (EekThemeNode               *node);
 | 
					                                 (EekThemeNode               *node);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
G_END_DECLS
 | 
					G_END_DECLS
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user