Commit Graph

65 Commits

Author SHA1 Message Date
Benjamin Otte
bc9060a591 styleproperty: Make gtk_style_property_register() not be valist
Instead, make the caller create a GtkCssValue in advance.
2012-04-17 08:59:12 +02:00
Benjamin Otte
ffe50c3b67 cssvalue: Add _gtk_css_value_equal()
For now, we return FALSE for all default css values, so this is not very
useful.

I also think of this as an optimization equal, not a guaranteed equal,
because we don't even have a notion of what "equal" means.

For example, for background-repeat, "repeat, repeat" and "repeat"
are functionally equivalent. But the cssvalue has no idea that it's used
for background-repeat.
As a more complicated example, "repeat, no-repeat" and "repeat" are
equal to what one sees as long as there's only one image listed
background-image-source. But once you start transition'ing to an image
with 2 sources, it's different...
2012-04-17 08:59:12 +02:00
Benjamin Otte
9b7640b898 styleproperty: Make _gtk_style_property_parse_value() return a CssValue
Also split out initial/inherit handling into a custom GtkCssValue class.
2012-04-17 08:59:11 +02:00
Benjamin Otte
df45983fcb cssvalue: Remove _gtk_css_value_new_take_gvalue()
Having two constructors from GValues complicates refactorings, so I'd
rather not have them.
2012-04-17 08:59:11 +02:00
Benjamin Otte
8e3e3d582f cssvalue: Get rid of unused functions 2012-04-17 08:59:11 +02:00
Benjamin Otte
58e4fdf911 styleproperty: Make print_func take a GtkCssValue
Also, constify GtkCssValue getters, so we can pass a const GtkCssValue
to the print_func.
2012-04-17 08:59:11 +02:00
Benjamin Otte
b728cfd3e8 cssvalue: Make the structure vtable-based
Don't use real classes, just a vtable.
2012-04-17 08:59:11 +02:00
Benjamin Otte
5bbf59b519 cssvalue: Constify a bunch of APIs 2012-04-17 08:59:10 +02:00
Benjamin Otte
4a12717e4d cssvalue: Remove unused functions 2012-04-17 08:59:10 +02:00
Benjamin Otte
b7ad432654 cssvalue: Re-add support for random value types
This got lost in the CssValue transition, and apparently some people use
this.
2012-04-09 03:09:44 +02:00
Alexander Larsson
b874e6c3cf css: Support GtkBackgroundPosition in cssvalue 2012-03-17 05:13:22 +01:00
Alexander Larsson
ec65270c2c Add some more types to GtkCssValue
Seems these types were used in the parser tests, so we need to
handle them.
2012-03-08 16:49:13 +01:00
Alexander Larsson
1ceed037b2 Don't use GValue in GtkCssValue
We now have complete coverage in the GtkCssValue API for type
handling, so drop the GValue from internal storage and just create
new ones when needed.
2012-03-08 16:39:49 +01:00
Alexander Larsson
3cfd1d93dc Add singletons for small ints and numbers
These represents the majority of int values in use (thousands in use
in a simple app). There is no need to keep multiple instances of
these around.
2012-03-08 11:03:57 +01:00
Alexander Larsson
0ece7a5de3 css: Add GtkCssValue, an immutable refcounted css value 2012-03-08 11:03:54 +01:00