Benjamin Otte
cc3afc7c0f
Revert "API: Add API to set style properties to be inherit"
...
Inheritance is now done using style property flags, so thereis no ned
anymore to clobber the pspec flags namespace.
Also, there is no need to expose this functionality in the public API
without exposing more of the styleproperty API.
This essentially reverts commit 9bfd3d2eec
.
2011-06-02 02:03:52 +02:00
Benjamin Otte
9f0e993b60
styleproperty: Use the new flags for inheritance
...
Instead of gtk_style_param_set_inherit()
2011-06-02 02:03:52 +02:00
Benjamin Otte
4feddc6190
styleproperty: Add flags
...
This allows to set a bunch of specific features, like inheritance in
here, without having to molest the psec.
2011-06-02 02:03:52 +02:00
Benjamin Otte
d59081310b
styleproperties: Rename enum value
...
I want to use that same enum value elsewhere.
2011-06-02 02:03:52 +02:00
Benjamin Otte
fd4ffbb6da
styleproperty: Add _gtk_style_property_is_inherit()
...
And use it instead of gtk_style_param_get_inherit()
2011-06-02 02:03:52 +02:00
Benjamin Otte
abeaad6166
stylecontext: Implement the color getters using the regular API
...
Has two benefits:
1) Less code
2) I can refactor things
2011-06-02 02:03:52 +02:00
Benjamin Otte
8f6efd00e7
themingengine: Improve junction handling code
...
As junctions just modify the border radius and we now have a per-corner
border-radius, we can just set the border-radius to 0 for those corners
and get the same effect.
2011-06-02 02:03:52 +02:00
Benjamin Otte
cf6bfbdb17
css: Make font property a shorthand
...
... and implement the CSS font properties:
- font-size
- font-style
- font-family
- font-weight
- font-variant
2011-06-02 02:03:52 +02:00
Benjamin Otte
8d77fcb2d5
styleproperty: Factor out the string print function
...
We print strings in lots of places.
2011-06-02 02:03:52 +02:00
Benjamin Otte
b5544f5514
tests: Add tests for font-family
2011-06-02 02:03:52 +02:00
Benjamin Otte
66396d2bab
styleproperty: Move default value setting to styleproperty.c
2011-06-02 02:03:52 +02:00
Benjamin Otte
914654901c
styleproperties: use property, not pspec as key
...
This allows calling functions on the style property from more places.
2011-06-02 02:03:52 +02:00
Benjamin Otte
bda86b5dd3
tests: Add a test for border-radius handling
2011-06-02 02:03:52 +02:00
Benjamin Otte
0aa07c6fd6
cssprovider: Remove colors when resetting
2011-06-02 02:03:52 +02:00
Benjamin Otte
a105edbf78
tests: Add a cute demo and test app for the new box css
...
It contains a live editor for CSS, that thing finds lots of bugs...
2011-06-02 02:03:51 +02:00
Benjamin Otte
2bc0fca209
box: Add RTL support for sibling paths
...
We want the reverse path when the box is right-to-left.
2011-06-02 02:03:51 +02:00
Benjamin Otte
bdb8c64dd0
reftests: Add a reftest setting all colors to "none"
2011-06-02 02:03:51 +02:00
Benjamin Otte
be71ea611b
tests: Add CSS test for the last two bugs
...
And it's a 1-byte file, too!
2011-06-02 02:03:51 +02:00
Benjamin Otte
b1aa59d385
css: Don't infloop when resyncing over a slash
2011-06-02 02:03:51 +02:00
Benjamin Otte
beccec296b
css: We want to unescape backslashes, not slashes
2011-06-02 02:03:51 +02:00
Benjamin Otte
940cdb4a7f
stylecontext: Don't crash when colors are "none"
...
Instead, use their default value (pink).
2011-06-02 02:03:51 +02:00
Benjamin Otte
0d69d9558e
css: Match pseudo-classes for siblings
2011-06-02 02:03:51 +02:00
Benjamin Otte
cd838480eb
box: Add support for siblings in widget paths of box children
2011-06-02 02:03:51 +02:00
Benjamin Otte
bc9c43c1cb
box: Only emit pack-type notify if the pack type really changed
...
This is not very useful in itself, but the code reorg will be useful
once we do style invalidation.
2011-06-02 02:03:51 +02:00
Benjamin Otte
79de8e4d08
API: Add support for siblings to widget paths
2011-06-02 02:03:51 +02:00
Benjamin Otte
b669efa1a3
docs: Fix typo
2011-06-02 02:03:51 +02:00
Benjamin Otte
67fe600b2e
widgetpath: Factor out the element copy function
...
I'll need that function soon.
2011-06-02 02:03:51 +02:00
Benjamin Otte
f0e5b57699
widgetpath: Use ref/unref in boxed function
...
This way we avoid lots of copying when using widget paths as properties.
Keeping this as a separate patch so bugs where people were modifying a
structure they shouldn't are easily visible.
2011-06-02 02:03:51 +02:00
Benjamin Otte
03eb4c38c9
widgetpath: Make structure refcounted
...
I want to use widget paths in a way that make a lot more sense with a
refcounted structure. See the following patches.
2011-06-02 02:03:51 +02:00
Benjamin Otte
91602cca6e
themingengine: Add support for the border-radii
2011-06-02 02:03:51 +02:00
Benjamin Otte
90ff426396
css: Add all border-radius properties
...
Implement all border-radisu properties as specified by
http://www.w3.org/TR/css3-background/#the-border-radius
The end goal here is to get joined buttons to really look joined.
2011-06-02 02:03:51 +02:00
Benjamin Otte
812b32e9e5
styleproperty: Add a helper function for printing doubles
...
We will want to print doubles more often, so add a little helper
function for it. We cannot use printf() here, because we want English
locale output.
2011-06-02 02:03:51 +02:00
Benjamin Otte
97a07a79f3
styleproperty: Make keybindings use custom parse/print functions
...
We don't want to use it for GPtrArray.
2011-06-02 02:03:50 +02:00
Benjamin Otte
d14fbf3254
styleproperty: Allow passing in a parse func and a print func
...
It's not used yet, but it's now possible to specify a custom read or
write func.
2011-06-02 02:03:50 +02:00
Benjamin Otte
715674c45b
styleproperty: Rename ParseFunc and PrintFunc typedefs
...
Rename them to GtkStyleParseFunc and GtkStylePrintFunc, so we can export
them.
2011-06-02 02:03:50 +02:00
Benjamin Otte
d0e1e2b103
css: Move property parsing into styleproperty file
...
Just shuffles code around for parsing properties.
2011-06-02 02:03:50 +02:00
Benjamin Otte
5a42464547
css: Rename function to _gtk_style_property_parse_value()
...
... and take an optional style property as argument. This way, we can
allow custom parse functions for properties. The style property needs to
be optional so that we can use it for widget style properties, too.
2011-06-02 02:03:50 +02:00
Benjamin Otte
35488f5846
css: Rename struct variable
...
I want to add parse_func as something different soon.
2011-06-02 02:03:50 +02:00
Benjamin Otte
3e7f74c456
styleproperty: Change _css_value_to_string()
...
Name it _gtk_style_property_print_value() and actually pass it the style
property. This way, we can later change it to use custom print functions
for different style properties.
2011-06-02 02:03:50 +02:00
Benjamin Otte
02a9cb5bc0
css: Change to_string() to print()
...
It's preferrable to print to an existing GString instead of returning a
char* everywhere that needs to be freed later.
2011-06-02 02:03:50 +02:00
Benjamin Otte
43cca78a98
reftests: Test new pseudo-class support in GtkBox
2011-06-02 02:03:50 +02:00
Benjamin Otte
a6daba5e78
API: Change semantics of gtk_container_get_child_path()
...
Include the child widget path in the returned path now. This allows
customizing the path of the current widgets - like adding flags to child
widgets (and maybe siblings in the future).
2011-06-02 02:03:50 +02:00
Benjamin Otte
b0616c8225
API: Add gtk_widget_path_append_for_widget()
...
Includes a bunch of header shuffling so we can use GtkWidget* in
gtkwidgetpath.h
2011-06-02 02:03:50 +02:00
Matthias Clasen
60081644ae
Silence a theme parser error
2011-06-01 18:40:11 -04:00
Benjamin Otte
352569298a
notebook: Implement height_for_width and width_for_height getters
2011-06-02 00:07:25 +02:00
Benjamin Otte
4d78e9c8af
notebook: Rewrite size request function for wfh
2011-06-02 00:07:25 +02:00
Benjamin Otte
d7519e6ca2
notebook: Split out tabs size computation into its own function
2011-06-02 00:07:25 +02:00
Benjamin Otte
edd2f24b6e
notebook: Compute tab width in a simpler way
...
This code should be more obvious: The check only needs to check for
scrollable widgets, and only needs to compare to tab_width.
As a side note, for vis_pages == 1, tab_width will be smaller than
tab_max + stuff, so this code will not behave differently.
2011-06-01 21:57:45 +02:00
Benjamin Otte
86aefc2c31
notebook: Remove uneeded function declaration
2011-06-01 21:45:21 +02:00
Benjamin Otte
975f735fb7
notebook: Include arrow size in tab size computation
...
We don't want tabs to resize when a 2nd page is added, just because the
scroll arrows are now visible. And we do want the arrow size to be
included.
Note: Previosuly this code was never run, as the check
requisition->width < tab_width
was only run when tab_width wasn't computed, so was still equal to 0
(same for the height). So what this patch essentially does it add the
functionality of the if switch.
2011-06-01 17:46:22 +02:00