gtk-css-engine r82 - in branches/bzr: . libccd/ccd src themes/gtk-css-test/gtk-2.0
- From: robsta svn gnome org
- To: svn-commits-list gnome org
- Subject: gtk-css-engine r82 - in branches/bzr: . libccd/ccd src themes/gtk-css-test/gtk-2.0
- Date: Fri, 5 Sep 2008 11:33:58 +0000 (UTC)
Author: robsta
Date: Fri Sep 5 11:33:58 2008
New Revision: 82
URL: http://svn.gnome.org/viewvc/gtk-css-engine?rev=82&view=rev
Log:
Fix for using multiple attribute selectors.
Modified:
branches/bzr/ (props changed)
branches/bzr/libccd/ccd/ccd-parser.c
branches/bzr/libccd/ccd/ccd-selector.c
branches/bzr/libccd/ccd/ccd-selector.h
branches/bzr/src/gce-node.c
branches/bzr/themes/gtk-css-test/gtk-2.0/styles.css
Modified: branches/bzr/libccd/ccd/ccd-parser.c
==============================================================================
--- branches/bzr/libccd/ccd/ccd-parser.c (original)
+++ branches/bzr/libccd/ccd/ccd-parser.c Fri Sep 5 11:33:58 2008
@@ -91,9 +91,14 @@
case NO_ADD_SELECTOR:
default:
g_assert_not_reached ();
+ return NULL;
}
- g_return_val_if_fail (selector, NULL);
+ if (cr_add_sel->next) {
+ ccd_selector_t *refinement;
+ refinement = walk_additional_selector (cr_add_sel->next);
+ ccd_selector_refine (selector, refinement);
+ }
return selector;
}
Modified: branches/bzr/libccd/ccd/ccd-selector.c
==============================================================================
--- branches/bzr/libccd/ccd/ccd-selector.c (original)
+++ branches/bzr/libccd/ccd/ccd-selector.c Fri Sep 5 11:33:58 2008
@@ -528,12 +528,11 @@
* Does it matter that the refinements order is reversed?
*/
void
-ccd_selector_refine (ccd_selector_t *self,
- ccd_selector_t *selector)
+ccd_selector_refine (ccd_selector_t *self,
+ ccd_selector_t const *selector)
{
- g_assert (self && selector);
+ g_assert (self && self->refinement == NULL && selector);
- selector->refinement = self->refinement;
self->refinement = selector;
switch (selector->modality) {
Modified: branches/bzr/libccd/ccd/ccd-selector.h
==============================================================================
--- branches/bzr/libccd/ccd/ccd-selector.h (original)
+++ branches/bzr/libccd/ccd/ccd-selector.h Fri Sep 5 11:33:58 2008
@@ -55,7 +55,7 @@
void ccd_selector_free (ccd_selector_t *self);
-void ccd_selector_refine (ccd_selector_t *self, ccd_selector_t *selector);
+void ccd_selector_refine (ccd_selector_t *self, ccd_selector_t const *selector);
ccd_selector_t * ccd_selector_append_child (ccd_selector_t *self, ccd_selector_t *selector);
ccd_selector_t * ccd_selector_append_descendant (ccd_selector_t *self, ccd_selector_t *selector);
Modified: branches/bzr/src/gce-node.c
==============================================================================
--- branches/bzr/src/gce-node.c (original)
+++ branches/bzr/src/gce-node.c Fri Sep 5 11:33:58 2008
@@ -278,7 +278,7 @@
return NULL;
}
- /* attributes provided in the drawing function take precedence */
+ /* Attributes provided in the drawing function take precedence. */
if (0 == strcmp ("shadow", name)) {
return g_strdup (node->shadow);
} else if (0 == strcmp ("orientation", name)) {
@@ -291,8 +291,7 @@
return g_strdup (node->gap);
}
- /* now try to find an apropriate style property */
-
+ /* Now try to find an apropriate style property. */
param = gtk_widget_class_find_style_property (
GTK_WIDGET_CLASS (G_OBJECT_GET_CLASS (node->widget)),
name);
@@ -302,7 +301,12 @@
return _to_string (&property);
}
- if (g_object_class_find_property (G_OBJECT_GET_CLASS (node->widget), name)) {
+ /* Next look for an apropriate gobject property. */
+ param = g_object_class_find_property (
+ G_OBJECT_GET_CLASS (node->widget),
+ name);
+ if (param) {
+ g_value_init (&property, param->value_type);
g_object_get_property (G_OBJECT (node->widget), name, &property);
return _to_string (&property);
}
Modified: branches/bzr/themes/gtk-css-test/gtk-2.0/styles.css
==============================================================================
--- branches/bzr/themes/gtk-css-test/gtk-2.0/styles.css (original)
+++ branches/bzr/themes/gtk-css-test/gtk-2.0/styles.css Fri Sep 5 11:33:58 2008
@@ -1,4 +1,4 @@
-/*
+
arrow[orientation=up] {
background-image: url(arrow-up.png);
}
@@ -101,17 +101,4 @@
GtkProgressBar:prelight {
background-color: yellow;
}
-*/
-extension[gap=left] {
- border: 1px solid red;
-}
-extension[gap=top] {
- border: 1px solid blue;
-}
-extension[gap=right] {
- border: 1px solid yellow;
-}
-extension[gap=bottom] {
- border: 1px solid black;
-}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]