forked from AuroraMiddleware/gtk
Merge branch 'matthiasc/css-split-states' into 'master'
Split off some states in css change tracking See merge request GNOME/gtk!1322
This commit is contained in:
commit
5ac24db049
@ -529,7 +529,7 @@ _gtk_css_matcher_superset_init (GtkCssMatcher *matcher,
|
||||
GtkCssChange relevant)
|
||||
{
|
||||
g_return_if_fail (subset != NULL);
|
||||
g_return_if_fail ((relevant & ~(GTK_CSS_CHANGE_CLASS | GTK_CSS_CHANGE_NAME | GTK_CSS_CHANGE_POSITION | GTK_CSS_CHANGE_STATE)) == 0);
|
||||
g_return_if_fail ((relevant & ~(GTK_CSS_CHANGE_CLASS | GTK_CSS_CHANGE_NAME | GTK_CSS_CHANGE_POSITION | GTK_CSS_CHANGE_STATE | GTK_CSS_CHANGE_HOVER | GTK_CSS_CHANGE_DISABLED | GTK_CSS_CHANGE_BACKDROP | GTK_CSS_CHANGE_SELECTED)) == 0);
|
||||
|
||||
matcher->superset.klass = >K_CSS_MATCHER_SUPERSET;
|
||||
matcher->superset.subset = subset;
|
||||
|
@ -1138,9 +1138,30 @@ void
|
||||
gtk_css_node_set_state (GtkCssNode *cssnode,
|
||||
GtkStateFlags state_flags)
|
||||
{
|
||||
GtkStateFlags old_state;
|
||||
|
||||
old_state = gtk_css_node_declaration_get_state (cssnode->decl);
|
||||
|
||||
if (gtk_css_node_declaration_set_state (&cssnode->decl, state_flags))
|
||||
{
|
||||
gtk_css_node_invalidate (cssnode, GTK_CSS_CHANGE_STATE);
|
||||
GtkStateFlags states = old_state ^ state_flags;
|
||||
GtkCssChange change = 0;
|
||||
|
||||
if (states & GTK_STATE_FLAG_PRELIGHT)
|
||||
change |= GTK_CSS_CHANGE_HOVER;
|
||||
if (states & GTK_STATE_FLAG_INSENSITIVE)
|
||||
change |= GTK_CSS_CHANGE_DISABLED;
|
||||
if (states & GTK_STATE_FLAG_BACKDROP)
|
||||
change |= GTK_CSS_CHANGE_BACKDROP;
|
||||
if (states & GTK_STATE_FLAG_SELECTED)
|
||||
change |= GTK_CSS_CHANGE_SELECTED;
|
||||
if (states & ~(GTK_STATE_FLAG_PRELIGHT |
|
||||
GTK_STATE_FLAG_INSENSITIVE |
|
||||
GTK_STATE_FLAG_BACKDROP |
|
||||
GTK_STATE_FLAG_SELECTED))
|
||||
change |= GTK_CSS_CHANGE_STATE;
|
||||
|
||||
gtk_css_node_invalidate (cssnode, change);
|
||||
g_object_notify_by_pspec (G_OBJECT (cssnode), cssnode_properties[PROP_STATE]);
|
||||
}
|
||||
}
|
||||
|
@ -728,6 +728,30 @@ comp_pseudoclass_state (const GtkCssSelector *a,
|
||||
return a->state.state - b->state.state;
|
||||
}
|
||||
|
||||
#define GTK_CSS_CHANGE_PSEUDOCLASS_HOVER GTK_CSS_CHANGE_HOVER
|
||||
DEFINE_SIMPLE_SELECTOR(pseudoclass_hover, PSEUDOCLASS_HOVER, print_pseudoclass_state,
|
||||
match_pseudoclass_state, hash_pseudoclass_state, comp_pseudoclass_state,
|
||||
FALSE, TRUE, FALSE)
|
||||
#undef GTK_CSS_CHANGE_PSEUDOCLASS_HOVER
|
||||
|
||||
#define GTK_CSS_CHANGE_PSEUDOCLASS_DISABLED GTK_CSS_CHANGE_DISABLED
|
||||
DEFINE_SIMPLE_SELECTOR(pseudoclass_disabled, PSEUDOCLASS_DISABLED, print_pseudoclass_state,
|
||||
match_pseudoclass_state, hash_pseudoclass_state, comp_pseudoclass_state,
|
||||
FALSE, TRUE, FALSE)
|
||||
#undef GTK_CSS_CHANGE_PSEUDOCLASS_DISABLED
|
||||
|
||||
#define GTK_CSS_CHANGE_PSEUDOCLASS_BACKDROP GTK_CSS_CHANGE_BACKDROP
|
||||
DEFINE_SIMPLE_SELECTOR(pseudoclass_backdrop, PSEUDOCLASS_BACKDROP, print_pseudoclass_state,
|
||||
match_pseudoclass_state, hash_pseudoclass_state, comp_pseudoclass_state,
|
||||
FALSE, TRUE, FALSE)
|
||||
#undef GTK_CSS_CHANGE_PSEUDOCLASS_BACKDROP
|
||||
|
||||
#define GTK_CSS_CHANGE_PSEUDOCLASS_SELECTED GTK_CSS_CHANGE_SELECTED
|
||||
DEFINE_SIMPLE_SELECTOR(pseudoclass_selected, PSEUDOCLASS_SELECTED, print_pseudoclass_state,
|
||||
match_pseudoclass_state, hash_pseudoclass_state, comp_pseudoclass_state,
|
||||
FALSE, TRUE, FALSE)
|
||||
#undef GTK_CSS_CHANGE_PSEUDOCLASS_SELECTED
|
||||
|
||||
#define GTK_CSS_CHANGE_PSEUDOCLASS_STATE GTK_CSS_CHANGE_STATE
|
||||
DEFINE_SIMPLE_SELECTOR(pseudoclass_state, PSEUDOCLASS_STATE, print_pseudoclass_state,
|
||||
match_pseudoclass_state, hash_pseudoclass_state, comp_pseudoclass_state,
|
||||
@ -1288,9 +1312,26 @@ gtk_css_selector_parse_selector_pseudo_class (GtkCssParser *parser,
|
||||
{
|
||||
if (pseudo_classes[i].state_flag)
|
||||
{
|
||||
selector = gtk_css_selector_new (negate ? >K_CSS_SELECTOR_NOT_PSEUDOCLASS_STATE
|
||||
: >K_CSS_SELECTOR_PSEUDOCLASS_STATE,
|
||||
selector);
|
||||
if (pseudo_classes[i].state_flag == GTK_STATE_FLAG_PRELIGHT)
|
||||
selector = gtk_css_selector_new (negate ? >K_CSS_SELECTOR_NOT_PSEUDOCLASS_HOVER
|
||||
: >K_CSS_SELECTOR_PSEUDOCLASS_HOVER,
|
||||
selector);
|
||||
else if (pseudo_classes[i].state_flag == GTK_STATE_FLAG_INSENSITIVE)
|
||||
selector = gtk_css_selector_new (negate ? >K_CSS_SELECTOR_NOT_PSEUDOCLASS_DISABLED
|
||||
: >K_CSS_SELECTOR_PSEUDOCLASS_DISABLED,
|
||||
selector);
|
||||
else if (pseudo_classes[i].state_flag == GTK_STATE_FLAG_BACKDROP)
|
||||
selector = gtk_css_selector_new (negate ? >K_CSS_SELECTOR_NOT_PSEUDOCLASS_BACKDROP
|
||||
: >K_CSS_SELECTOR_PSEUDOCLASS_BACKDROP,
|
||||
selector);
|
||||
else if (pseudo_classes[i].state_flag == GTK_STATE_FLAG_SELECTED)
|
||||
selector = gtk_css_selector_new (negate ? >K_CSS_SELECTOR_NOT_PSEUDOCLASS_SELECTED
|
||||
: >K_CSS_SELECTOR_PSEUDOCLASS_SELECTED,
|
||||
selector);
|
||||
else
|
||||
selector = gtk_css_selector_new (negate ? >K_CSS_SELECTOR_NOT_PSEUDOCLASS_STATE
|
||||
: >K_CSS_SELECTOR_PSEUDOCLASS_STATE,
|
||||
selector);
|
||||
selector->state.state = pseudo_classes[i].state_flag;
|
||||
}
|
||||
else
|
||||
|
@ -74,19 +74,20 @@ _gtk_css_change_for_sibling (GtkCssChange match)
|
||||
| GTK_CSS_CHANGE_LAST_CHILD \
|
||||
| GTK_CSS_CHANGE_NTH_CHILD \
|
||||
| GTK_CSS_CHANGE_NTH_LAST_CHILD \
|
||||
| GTK_CSS_CHANGE_STATE )
|
||||
| GTK_CSS_CHANGE_STATE \
|
||||
| GTK_CSS_CHANGE_HOVER \
|
||||
| GTK_CSS_CHANGE_DISABLED \
|
||||
| GTK_CSS_CHANGE_SELECTED \
|
||||
| GTK_CSS_CHANGE_BACKDROP)
|
||||
|
||||
#define KEEP_STATES ( ~(BASE_STATES|GTK_CSS_CHANGE_SOURCE|GTK_CSS_CHANGE_PARENT_STYLE) \
|
||||
| GTK_CSS_CHANGE_NTH_CHILD \
|
||||
| GTK_CSS_CHANGE_NTH_LAST_CHILD)
|
||||
|
||||
#define SIBLING_SHIFT 8
|
||||
|
||||
return (match & KEEP_STATES) | ((match & BASE_STATES) << SIBLING_SHIFT);
|
||||
return (match & KEEP_STATES) | ((match & BASE_STATES) << GTK_CSS_CHANGE_SIBLING_SHIFT);
|
||||
|
||||
#undef BASE_STATES
|
||||
#undef KEEP_STATES
|
||||
#undef SIBLING_SHIFT
|
||||
}
|
||||
|
||||
GtkCssChange
|
||||
@ -100,6 +101,10 @@ _gtk_css_change_for_child (GtkCssChange match)
|
||||
| GTK_CSS_CHANGE_NTH_CHILD \
|
||||
| GTK_CSS_CHANGE_NTH_LAST_CHILD \
|
||||
| GTK_CSS_CHANGE_STATE \
|
||||
| GTK_CSS_CHANGE_HOVER \
|
||||
| GTK_CSS_CHANGE_DISABLED \
|
||||
| GTK_CSS_CHANGE_BACKDROP \
|
||||
| GTK_CSS_CHANGE_SELECTED \
|
||||
| GTK_CSS_CHANGE_SIBLING_CLASS \
|
||||
| GTK_CSS_CHANGE_SIBLING_NAME \
|
||||
| GTK_CSS_CHANGE_SIBLING_ID \
|
||||
@ -107,14 +112,18 @@ _gtk_css_change_for_child (GtkCssChange match)
|
||||
| GTK_CSS_CHANGE_SIBLING_LAST_CHILD \
|
||||
| GTK_CSS_CHANGE_SIBLING_NTH_CHILD \
|
||||
| GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD \
|
||||
| GTK_CSS_CHANGE_SIBLING_STATE )
|
||||
| GTK_CSS_CHANGE_SIBLING_STATE \
|
||||
| GTK_CSS_CHANGE_SIBLING_HOVER \
|
||||
| GTK_CSS_CHANGE_SIBLING_DISABLED \
|
||||
| GTK_CSS_CHANGE_SIBLING_BACKDROP \
|
||||
| GTK_CSS_CHANGE_SIBLING_SELECTED)
|
||||
|
||||
#define PARENT_SHIFT 16
|
||||
#define KEEP_STATES (~(BASE_STATES|GTK_CSS_CHANGE_SOURCE|GTK_CSS_CHANGE_PARENT_STYLE))
|
||||
|
||||
return (match & ~(BASE_STATES|GTK_CSS_CHANGE_SOURCE|GTK_CSS_CHANGE_PARENT_STYLE)) | ((match & BASE_STATES) << PARENT_SHIFT);
|
||||
return (match & KEEP_STATES) | ((match & BASE_STATES) << GTK_CSS_CHANGE_PARENT_SHIFT);
|
||||
|
||||
#undef BASE_STATES
|
||||
#undef PARENT_SHIFT
|
||||
#undef KEEP_STATES
|
||||
}
|
||||
|
||||
void
|
||||
@ -133,6 +142,11 @@ gtk_css_change_print (GtkCssChange change,
|
||||
{ GTK_CSS_CHANGE_NTH_CHILD, "nth-child" },
|
||||
{ GTK_CSS_CHANGE_NTH_LAST_CHILD, "nth-last-child" },
|
||||
{ GTK_CSS_CHANGE_STATE, "state" },
|
||||
{ GTK_CSS_CHANGE_HOVER, "hover" },
|
||||
{ GTK_CSS_CHANGE_DISABLED, "disabled" },
|
||||
{ GTK_CSS_CHANGE_BACKDROP, "backdrop" },
|
||||
{ GTK_CSS_CHANGE_SELECTED, "selected" },
|
||||
|
||||
{ GTK_CSS_CHANGE_SIBLING_CLASS, "sibling-class" },
|
||||
{ GTK_CSS_CHANGE_SIBLING_NAME, "sibling-name" },
|
||||
{ GTK_CSS_CHANGE_SIBLING_ID, "sibling-id" },
|
||||
@ -141,6 +155,11 @@ gtk_css_change_print (GtkCssChange change,
|
||||
{ GTK_CSS_CHANGE_SIBLING_NTH_CHILD, "sibling-nth-child" },
|
||||
{ GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD, "sibling-nth-last-child" },
|
||||
{ GTK_CSS_CHANGE_SIBLING_STATE, "sibling-state" },
|
||||
{ GTK_CSS_CHANGE_SIBLING_HOVER, "sibling-hover" },
|
||||
{ GTK_CSS_CHANGE_SIBLING_DISABLED, "sibling-disabled" },
|
||||
{ GTK_CSS_CHANGE_SIBLING_BACKDROP, "sibling-backdrop" },
|
||||
{ GTK_CSS_CHANGE_SIBLING_SELECTED, "sibling-selected" },
|
||||
|
||||
{ GTK_CSS_CHANGE_PARENT_CLASS, "parent-class" },
|
||||
{ GTK_CSS_CHANGE_PARENT_NAME, "parent-name" },
|
||||
{ GTK_CSS_CHANGE_PARENT_ID, "parent-id" },
|
||||
@ -149,6 +168,11 @@ gtk_css_change_print (GtkCssChange change,
|
||||
{ GTK_CSS_CHANGE_PARENT_NTH_CHILD, "parent-nth-child" },
|
||||
{ GTK_CSS_CHANGE_PARENT_NTH_LAST_CHILD, "parent-nth-last-child" },
|
||||
{ GTK_CSS_CHANGE_PARENT_STATE, "parent-state" },
|
||||
{ GTK_CSS_CHANGE_PARENT_HOVER, "parent-hover" },
|
||||
{ GTK_CSS_CHANGE_PARENT_DISABLED, "parent-disabled" },
|
||||
{ GTK_CSS_CHANGE_PARENT_BACKDROP, "parent-backdrop" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SELECTED, "parent-selected" },
|
||||
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_CLASS, "parent-sibling-" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_NAME, "parent-sibling-name" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_ID, "parent-sibling-id" },
|
||||
@ -157,6 +181,11 @@ gtk_css_change_print (GtkCssChange change,
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_NTH_CHILD, "parent-sibling-nth-child" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_NTH_LAST_CHILD, "parent-sibling-nth-last-child" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_STATE, "parent-sibling-state" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_HOVER, "parent-sibling-hover" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_DISABLED, "parent-sibling-disabled" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_BACKDROP, "parent-sibling-backdrop" },
|
||||
{ GTK_CSS_CHANGE_PARENT_SIBLING_SELECTED, "parent-sibling-selected" },
|
||||
|
||||
{ GTK_CSS_CHANGE_SOURCE, "source" },
|
||||
{ GTK_CSS_CHANGE_PARENT_STYLE, "parent-style" },
|
||||
{ GTK_CSS_CHANGE_TIMESTAMP, "timestamp" },
|
||||
|
@ -36,61 +36,93 @@ typedef struct _GtkCssStyle GtkCssStyle;
|
||||
#define GTK_CSS_CHANGE_NTH_CHILD (1ULL << 5)
|
||||
#define GTK_CSS_CHANGE_NTH_LAST_CHILD (1ULL << 6)
|
||||
#define GTK_CSS_CHANGE_STATE (1ULL << 7)
|
||||
#define GTK_CSS_CHANGE_SIBLING_CLASS (1ULL << 8)
|
||||
#define GTK_CSS_CHANGE_SIBLING_NAME (1ULL << 9)
|
||||
#define GTK_CSS_CHANGE_SIBLING_ID (1ULL << 10)
|
||||
#define GTK_CSS_CHANGE_SIBLING_FIRST_CHILD (1ULL << 11)
|
||||
#define GTK_CSS_CHANGE_SIBLING_LAST_CHILD (1ULL << 12)
|
||||
#define GTK_CSS_CHANGE_SIBLING_NTH_CHILD (1ULL << 13)
|
||||
#define GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD (1ULL << 14)
|
||||
#define GTK_CSS_CHANGE_SIBLING_STATE (1ULL << 15)
|
||||
#define GTK_CSS_CHANGE_PARENT_CLASS (1ULL << 16)
|
||||
#define GTK_CSS_CHANGE_PARENT_NAME (1ULL << 17)
|
||||
#define GTK_CSS_CHANGE_PARENT_ID (1ULL << 18)
|
||||
#define GTK_CSS_CHANGE_PARENT_FIRST_CHILD (1ULL << 19)
|
||||
#define GTK_CSS_CHANGE_PARENT_LAST_CHILD (1ULL << 20)
|
||||
#define GTK_CSS_CHANGE_PARENT_NTH_CHILD (1ULL << 21)
|
||||
#define GTK_CSS_CHANGE_PARENT_NTH_LAST_CHILD (1ULL << 22)
|
||||
#define GTK_CSS_CHANGE_PARENT_STATE (1ULL << 23)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_CLASS (1ULL << 24)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_ID (1ULL << 25)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_NAME (1ULL << 26)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_FIRST_CHILD (1ULL << 27)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_LAST_CHILD (1ULL << 28)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_NTH_CHILD (1ULL << 29)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_NTH_LAST_CHILD (1ULL << 30)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_STATE (1ULL << 31)
|
||||
#define GTK_CSS_CHANGE_HOVER (1ULL << 8)
|
||||
#define GTK_CSS_CHANGE_DISABLED (1ULL << 9)
|
||||
#define GTK_CSS_CHANGE_BACKDROP (1ULL << 10)
|
||||
#define GTK_CSS_CHANGE_SELECTED (1ULL << 11)
|
||||
|
||||
#define GTK_CSS_CHANGE_SIBLING_SHIFT 12
|
||||
|
||||
#define GTK_CSS_CHANGE_SIBLING_CLASS (1ULL << 12)
|
||||
#define GTK_CSS_CHANGE_SIBLING_NAME (1ULL << 13)
|
||||
#define GTK_CSS_CHANGE_SIBLING_ID (1ULL << 14)
|
||||
#define GTK_CSS_CHANGE_SIBLING_FIRST_CHILD (1ULL << 15)
|
||||
#define GTK_CSS_CHANGE_SIBLING_LAST_CHILD (1ULL << 16)
|
||||
#define GTK_CSS_CHANGE_SIBLING_NTH_CHILD (1ULL << 17)
|
||||
#define GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD (1ULL << 18)
|
||||
#define GTK_CSS_CHANGE_SIBLING_STATE (1ULL << 19)
|
||||
#define GTK_CSS_CHANGE_SIBLING_HOVER (1ULL << 20)
|
||||
#define GTK_CSS_CHANGE_SIBLING_DISABLED (1ULL << 21)
|
||||
#define GTK_CSS_CHANGE_SIBLING_BACKDROP (1ULL << 22)
|
||||
#define GTK_CSS_CHANGE_SIBLING_SELECTED (1ULL << 23)
|
||||
|
||||
#define GTK_CSS_CHANGE_PARENT_SHIFT (GTK_CSS_CHANGE_SIBLING_SHIFT + GTK_CSS_CHANGE_SIBLING_SHIFT)
|
||||
|
||||
#define GTK_CSS_CHANGE_PARENT_CLASS (1ULL << 24)
|
||||
#define GTK_CSS_CHANGE_PARENT_NAME (1ULL << 25)
|
||||
#define GTK_CSS_CHANGE_PARENT_ID (1ULL << 26)
|
||||
#define GTK_CSS_CHANGE_PARENT_FIRST_CHILD (1ULL << 27)
|
||||
#define GTK_CSS_CHANGE_PARENT_LAST_CHILD (1ULL << 28)
|
||||
#define GTK_CSS_CHANGE_PARENT_NTH_CHILD (1ULL << 29)
|
||||
#define GTK_CSS_CHANGE_PARENT_NTH_LAST_CHILD (1ULL << 30)
|
||||
#define GTK_CSS_CHANGE_PARENT_STATE (1ULL << 31)
|
||||
#define GTK_CSS_CHANGE_PARENT_HOVER (1ULL << 32)
|
||||
#define GTK_CSS_CHANGE_PARENT_DISABLED (1ULL << 33)
|
||||
#define GTK_CSS_CHANGE_PARENT_BACKDROP (1ULL << 34)
|
||||
#define GTK_CSS_CHANGE_PARENT_SELECTED (1ULL << 35)
|
||||
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_SHIFT (GTK_CSS_CHANGE_PARENT_SHIFT + GTK_CSS_CHANGE_SIBLING_SHIFT)
|
||||
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_CLASS (1ULL << 36)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_ID (1ULL << 37)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_NAME (1ULL << 38)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_FIRST_CHILD (1ULL << 39)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_LAST_CHILD (1ULL << 40)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_NTH_CHILD (1ULL << 41)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_NTH_LAST_CHILD (1ULL << 42)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_STATE (1ULL << 43)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_HOVER (1ULL << 44)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_DISABLED (1ULL << 45)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_BACKDROP (1ULL << 46)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_SELECTED (1ULL << 47)
|
||||
|
||||
/* add more */
|
||||
#define GTK_CSS_CHANGE_SOURCE (1ULL << 32)
|
||||
#define GTK_CSS_CHANGE_PARENT_STYLE (1ULL << 33)
|
||||
#define GTK_CSS_CHANGE_TIMESTAMP (1ULL << 34)
|
||||
#define GTK_CSS_CHANGE_ANIMATIONS (1ULL << 35)
|
||||
#define GTK_CSS_CHANGE_SOURCE (1ULL << 48)
|
||||
#define GTK_CSS_CHANGE_PARENT_STYLE (1ULL << 49)
|
||||
#define GTK_CSS_CHANGE_TIMESTAMP (1ULL << 50)
|
||||
#define GTK_CSS_CHANGE_ANIMATIONS (1ULL << 51)
|
||||
|
||||
#define GTK_CSS_CHANGE_RESERVED_BIT (1ULL << 62) /* Used internally in gtkcssselector.c */
|
||||
|
||||
typedef guint64 GtkCssChange;
|
||||
|
||||
#define GTK_CSS_CHANGE_POSITION (GTK_CSS_CHANGE_FIRST_CHILD | GTK_CSS_CHANGE_LAST_CHILD | \
|
||||
GTK_CSS_CHANGE_NTH_CHILD | GTK_CSS_CHANGE_NTH_LAST_CHILD)
|
||||
#define GTK_CSS_CHANGE_SIBLING_POSITION (GTK_CSS_CHANGE_SIBLING_FIRST_CHILD | GTK_CSS_CHANGE_SIBLING_LAST_CHILD | \
|
||||
GTK_CSS_CHANGE_SIBLING_NTH_CHILD | GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD)
|
||||
#define GTK_CSS_CHANGE_PARENT_POSITION (GTK_CSS_CHANGE_PARENT_FIRST_CHILD | GTK_CSS_CHANGE_PARENT_LAST_CHILD | \
|
||||
GTK_CSS_CHANGE_PARENT_NTH_CHILD | GTK_CSS_CHANGE_PARENT_NTH_LAST_CHILD)
|
||||
#define GTK_CSS_CHANGE_PARENT_SIBLING_POSITION (GTK_CSS_CHANGE_PARENT_SIBLING_FIRST_CHILD | GTK_CSS_CHANGE_PARENT_SIBLING_LAST_CHILD | \
|
||||
GTK_CSS_CHANGE_PARENT_SIBLING_NTH_CHILD | GTK_CSS_CHANGE_PARENT_SIBLING_NTH_LAST_CHILD)
|
||||
#define GTK_CSS_CHANGE_POSITION (GTK_CSS_CHANGE_FIRST_CHILD | \
|
||||
GTK_CSS_CHANGE_LAST_CHILD | \
|
||||
GTK_CSS_CHANGE_NTH_CHILD | \
|
||||
GTK_CSS_CHANGE_NTH_LAST_CHILD)
|
||||
#define GTK_CSS_CHANGE_SIBLING_POSITION (GTK_CSS_CHANGE_POSITION << GTK_CSS_CHANGE_SIBLING_SHIFT)
|
||||
|
||||
#define GTK_CSS_CHANGE_ANY_SELF (GTK_CSS_CHANGE_CLASS | \
|
||||
GTK_CSS_CHANGE_NAME | \
|
||||
GTK_CSS_CHANGE_ID | \
|
||||
GTK_CSS_CHANGE_POSITION | \
|
||||
GTK_CSS_CHANGE_STATE | \
|
||||
GTK_CSS_CHANGE_DISABLED | \
|
||||
GTK_CSS_CHANGE_BACKDROP | \
|
||||
GTK_CSS_CHANGE_SELECTED | \
|
||||
GTK_CSS_CHANGE_HOVER)
|
||||
#define GTK_CSS_CHANGE_ANY_SIBLING (GTK_CSS_CHANGE_ANY_SELF << GTK_CSS_CHANGE_SIBLING_SHIFT)
|
||||
#define GTK_CSS_CHANGE_ANY_PARENT (GTK_CSS_CHANGE_ANY_SELF << GTK_CSS_CHANGE_PARENT_SHIFT)
|
||||
#define GTK_CSS_CHANGE_ANY_PARENT_SIBLING (GTK_CSS_CHANGE_ANY_SELF << GTK_CSS_CHANGE_PARENT_SIBLING_SHIFT)
|
||||
|
||||
#define GTK_CSS_CHANGE_ANY ((1 << 19) - 1)
|
||||
#define GTK_CSS_CHANGE_ANY_SELF (GTK_CSS_CHANGE_CLASS | GTK_CSS_CHANGE_NAME | GTK_CSS_CHANGE_ID | GTK_CSS_CHANGE_POSITION | GTK_CSS_CHANGE_STATE)
|
||||
#define GTK_CSS_CHANGE_ANY_SIBLING (GTK_CSS_CHANGE_SIBLING_CLASS | GTK_CSS_CHANGE_SIBLING_NAME | \
|
||||
GTK_CSS_CHANGE_SIBLING_ID | \
|
||||
GTK_CSS_CHANGE_SIBLING_POSITION | GTK_CSS_CHANGE_SIBLING_STATE)
|
||||
#define GTK_CSS_CHANGE_ANY_PARENT (GTK_CSS_CHANGE_PARENT_CLASS | GTK_CSS_CHANGE_PARENT_SIBLING_CLASS | \
|
||||
GTK_CSS_CHANGE_PARENT_NAME | GTK_CSS_CHANGE_PARENT_SIBLING_NAME | \
|
||||
GTK_CSS_CHANGE_PARENT_ID | GTK_CSS_CHANGE_PARENT_SIBLING_ID | \
|
||||
GTK_CSS_CHANGE_PARENT_POSITION | GTK_CSS_CHANGE_PARENT_SIBLING_POSITION | \
|
||||
GTK_CSS_CHANGE_PARENT_STATE | GTK_CSS_CHANGE_PARENT_SIBLING_STATE)
|
||||
#define GTK_CSS_CHANGE_ANY (GTK_CSS_CHANGE_ANY_SELF | \
|
||||
GTK_CSS_CHANGE_ANY_SIBLING | \
|
||||
GTK_CSS_CHANGE_ANY_PARENT | \
|
||||
GTK_CSS_CHANGE_ANY_PARENT_SIBLING | \
|
||||
GTK_CSS_CHANGE_SOURCE | \
|
||||
GTK_CSS_CHANGE_PARENT_STYLE | \
|
||||
GTK_CSS_CHANGE_TIMESTAMP | \
|
||||
GTK_CSS_CHANGE_ANIMATIONS)
|
||||
|
||||
/*
|
||||
* GtkCssAffects:
|
||||
|
Loading…
Reference in New Issue
Block a user