Matthias Clasen
5adfe6029d
Don't add class "scrollbar" for every trough
...
Turns out "trough" as a detail string is used in a variety
of widgets, not all of which are scrollbars.
2010-12-04 15:39:47 +01:00
Matthias Clasen
2578f4f4c3
Trivial doc fixes
2010-12-04 15:39:47 +01:00
Matthias Clasen
e598f17871
Some header cleanups
...
Move GtkGradient to their own files, also move GtkBorder out of
gtkstyle.h, so that header can be all deprecated.
2010-12-04 15:39:47 +01:00
Matthias Clasen
1915a19503
Add deprecation notes
2010-12-04 15:39:46 +01:00
Matthias Clasen
f8a874abb1
Initial attempt at deprecating GtkStyle api
...
This will probably need some finetuning.
2010-12-04 15:39:46 +01:00
Matthias Clasen
bbca96044e
Fix memory handling when dealing with colors
2010-12-04 15:39:45 +01:00
Matthias Clasen
53c2114356
Deprecate gtk_icon_info_load_symbolic_for_style
...
We might end removing it altogether since it is a bit silly to have
Since: 3.0
Deprecated: 3.0
2010-12-04 15:39:45 +01:00
Carlos Garnacho
e9ef162d4c
GtkSpinner: Use style context for rendering.
...
Animation is now handled by the theming layer, a looping animation
has been defined in the default CSS to handle active spinners.
2010-12-04 15:39:45 +01:00
Carlos Garnacho
3d956b10ee
GtkStyleContext: handle prelight transitions
2010-12-04 15:39:44 +01:00
Carlos Garnacho
c90bee16ba
GtkThemingEngine: Handle prelight transitions in render_layout()
2010-12-04 15:39:44 +01:00
Carlos Garnacho
e696c24f08
GtkThemingEngine: Also render topright and bottomleft corners if junction sides say so
2010-12-04 15:39:44 +01:00
Carlos Garnacho
11004ef61d
Initialize all looping, active state transitions on map()
...
This allows widgets to gtk_widget_set_state_flags() before mapping
and have animations started anyway when this happens.
2010-12-04 15:39:44 +01:00
Carlos Garnacho
4027dceaa9
Add #define for the "spinner" style class
2010-12-04 15:39:44 +01:00
Carlos Garnacho
62e9188ff3
GtkStyleContext: store layout extents for animation purposes.
2010-12-04 15:39:43 +01:00
Carlos Garnacho
818aca5aee
GtkStyleContext: Only allow looping transitions for states being turned on.
2010-12-04 15:39:43 +01:00
Carlos Garnacho
ad6da0cdb8
GtkStyleContext: Stop animations if the window is gone.
2010-12-04 15:39:43 +01:00
Carlos Garnacho
cc18d65986
GtkThemingEngine: render square corner if the gap is too close on render_frame_gap()
2010-12-04 15:39:43 +01:00
Matthias Clasen
f0eed4a5b1
Use gtk_icon_info_load_symbolic_for_context
...
gtk_icon_info_load_symbolic_for_style is going to be deprecated.
2010-12-04 15:39:43 +01:00
Matthias Clasen
f90881271f
Add a GtkStyleContext-variant of symbolic icon loading
2010-12-04 15:39:42 +01:00
Matthias Clasen
0f98b15090
Add illustration to gtk_render_handle docs
2010-12-04 15:39:42 +01:00
Matthias Clasen
3ddee2561b
Small doc addition
2010-12-04 15:39:42 +01:00
Matthias Clasen
d1f1af202b
Add a frame-gap illustration
2010-12-04 15:39:42 +01:00
Matthias Clasen
1391a61bc5
Improve frame-gap drawing
...
Instead of overdrawing the gap with bg-color, clip it away.
2010-12-04 15:39:42 +01:00
Matthias Clasen
54eadfcefd
Fix another parameter mismatch
2010-12-04 15:39:42 +01:00
Matthias Clasen
b51c0f826a
fix parameter name mismatch
2010-12-04 15:39:41 +01:00
Carlos Garnacho
9c0ef02ea5
GtkButton: Remove unneeded gtk_style_context_notify_state_change() calls
...
There is now code to handle this for one-item widgets (such as GtkButton)
in gtk_widget_set_state_flags()
2010-12-04 15:39:41 +01:00
Carlos Garnacho
2f0b5d8a9d
GtkCheckButton: Look active when the pointer button is pressed and hovering
2010-12-04 15:39:41 +01:00
Carlos Garnacho
037c982824
GtkStyleContext: Handle empty areas when coalescing invalidation regions.
2010-12-04 15:39:41 +01:00
Carlos Garnacho
2fb9687f55
GtkToggleButton: Make it able to be prelight and active at the same time.
2010-12-04 15:39:40 +01:00
Carlos Garnacho
1d5a6b687e
GtkComboBox: Use style context for rendering
2010-12-04 15:39:40 +01:00
Carlos Garnacho
c6b2e47931
Let gtk_widget_get_path() correct early calls during init().
2010-12-04 15:39:40 +01:00
Carlos Garnacho
ebd8463007
GtkCssProvider: Handle unfocused label selections in default CSS.
2010-12-04 15:39:40 +01:00
Carlos Garnacho
90dd2eb42b
GtkLabel: Use style context for rendering.
2010-12-04 15:39:40 +01:00
Carlos Garnacho
0fce9342ef
GtkThemingEngine: Draw 3D-like effects on square frames with lines.
2010-12-04 15:39:40 +01:00
Carlos Garnacho
3138cc7677
GtkThemingEngine: Render rounded frames with light/shadow connections at 45°
2010-12-04 15:39:39 +01:00
Carlos Garnacho
95ae1a0aa6
GtkThemingEngine: don't overshoot when rendering frames.
2010-12-04 15:39:39 +01:00
Carlos Garnacho
e47c8e2490
GtkStyle: Return the default icon set if no context is attached.
2010-12-04 15:39:39 +01:00
Carlos Garnacho
5d496aa7f3
GtkStyle: Do not warn if attach count == 0
...
This is going go happen more and more often now, as realize handlers start
removing the gtk_widget_style_attach() calls.
2010-12-04 15:39:39 +01:00
Carlos Garnacho
6bf04fbd94
GtkCssProvider: Add a default border color for insensitive elements.
2010-12-04 15:39:39 +01:00
Matthias Clasen
e57e0e978d
Illustrate extension rendering
2010-12-04 15:39:39 +01:00
Matthias Clasen
8589c5c65e
Add slider illustration
2010-12-04 15:39:38 +01:00
Matthias Clasen
7e96a51953
Add examples for frame rendering
2010-12-04 15:39:38 +01:00
Matthias Clasen
4c04d944e8
Atempt to fix stretched 9slice rendering
2010-12-04 15:39:38 +01:00
Matthias Clasen
30fe448750
Fix handling of junctions in frame drawing code
2010-12-04 15:39:38 +01:00
Matthias Clasen
e522381183
Add a background example to the docs
2010-12-04 15:39:38 +01:00
Matthias Clasen
d532c0e5c2
Test some wilder names for classes, etc
2010-12-04 15:39:37 +01:00
Matthias Clasen
391e445d11
Allow digits in selectors and values, where appropriate
2010-12-04 15:39:37 +01:00
Matthias Clasen
f13f315312
Some more images for gtk_render docs
2010-12-04 15:39:37 +01:00
Matthias Clasen
d4c70f214d
Declare transition and border-image properties to be writeonly
...
We don't make the types of their values public, so getting their
values is useless and will leak.
2010-12-04 15:39:37 +01:00
Matthias Clasen
a5e10e9b26
Improve some gtk_render_ docs
...
With pictures !!
2010-12-04 15:39:36 +01:00
Matthias Clasen
d7a0fe5bf1
Document predefined style provider priorites
...
Also, rename GTK_STYLE_PROVIDER_PRIORITY_DEFAULT to _THEME and
use it for themes.
2010-12-04 15:39:35 +01:00
Matthias Clasen
a260059c7f
Fix doc formatting
2010-12-04 15:39:35 +01:00
Matthias Clasen
d9b0da5b83
Fix resize grip drawing
...
There was some confusion about junctions...
2010-12-04 15:39:34 +01:00
Matthias Clasen
be0ed14cce
Fix GtkRadioButton drawing
2010-12-04 15:39:34 +01:00
Matthias Clasen
fc10599ac8
Make unfocused selections visible in entries
2010-12-04 15:39:33 +01:00
Matthias Clasen
21a193ad02
Make expanders prelight
2010-12-04 15:39:33 +01:00
Matthias Clasen
8b6112b6e0
Rewrite GtkInfoBar color handling to bypass GtkStyle
...
This avoids a segfault that was happening due to the recursion
detection not working anymore with the old way of doing things.
2010-12-04 15:39:33 +01:00
Carlos Garnacho
d63615d9cc
GtkCssProvider: Render inconsistent toggle buttons differently.
2010-12-04 15:39:32 +01:00
Carlos Garnacho
9b2f878b06
GtkCssProvider: do not use selected fg/bg in sliders or spinbutton buttons.
2010-12-04 15:39:32 +01:00
Carlos Garnacho
bcf1ee4825
GtkCssProvider: Use 1px border width for spinbutton buttons.
2010-12-04 15:39:32 +01:00
Carlos Garnacho
74b032b816
GtkCssProvider: Render radio and check boxes framess in menus.
2010-12-04 15:39:32 +01:00
Carlos Garnacho
b33d48a802
GtkCssProvider: use selected fg/bg for selected menu items in CSS.
2010-12-04 15:39:31 +01:00
Carlos Garnacho
85aa672ff7
GtkCssProvider: Draw frame around menubars and toolbars in default CSS.
2010-12-04 15:39:31 +01:00
Matthias Clasen
fea567bb9f
More documentation reshuffling
2010-12-04 15:39:31 +01:00
Matthias Clasen
ace967a042
Tweak wording
2010-12-04 15:39:30 +01:00
Matthias Clasen
3a7f79e814
Document border images better
2010-12-04 15:39:30 +01:00
Matthias Clasen
953ac51fb8
Make url parsing work for slices
...
The border-image parsing code relies on parse_path_str to return
a meaningful end_ptr in case of success, too.
2010-12-04 15:39:29 +01:00
Matthias Clasen
28e549082c
Fix Gtk9Slice creation
2010-12-04 15:39:29 +01:00
Matthias Clasen
69254c552a
Allow / in values
...
Otherwise, using url(path) on the right-hand side of properties
is not going to work.
2010-12-04 15:39:28 +01:00
Matthias Clasen
7d6fb7b7e7
Add some images to the docs
...
Add graphs for the transition functions and gradient examples.
2010-12-04 15:39:28 +01:00
Matthias Clasen
b2d338d370
GtkWidgetPath documentation tweaks
2010-12-04 15:39:27 +01:00
Matthias Clasen
077270142f
GtkStyleContext documentation tweaks
2010-12-04 15:39:27 +01:00
Matthias Clasen
bcf3de095f
Document various style-related enums
2010-12-04 15:39:26 +01:00
Carlos Garnacho
11480c57f0
GtkStyleContext: Use correct type for animation duration.
2010-12-04 15:39:26 +01:00
Carlos Garnacho
32ccac94e0
GtkAnimationDescription: parse "loop" correctly.
...
This sscanf parsing needs to go...
2010-12-04 15:39:25 +01:00
Carlos Garnacho
0c1cfd8a34
GtkStyle: handle scales when translating the detail string.
2010-12-04 15:39:24 +01:00
Carlos Garnacho
71f187a84f
GtkCssProvider: Handle progressbars.
2010-12-04 15:39:24 +01:00
Carlos Garnacho
f3445a2430
GtkCssProvider: Do not have border-color the same than active bg-color.
2010-12-04 15:39:24 +01:00
Carlos Garnacho
171157b0e4
GtkMenu: Use GtkStyleContext for rendering.
2010-12-04 15:39:23 +01:00
Carlos Garnacho
6fff76568c
GtkMenuBar: Use GtkStyleContext for rendering.
2010-12-04 15:39:23 +01:00
Carlos Garnacho
0df9c70200
Use gtk_render_activity() when rendering progressbars through GtkStyle
2010-12-04 15:39:23 +01:00
Carlos Garnacho
ee37847952
GtkCssProvider: Use default value when handling "none".
...
This way the default value has a way to override other values in previous
GtkStyleProviders when merged.
2010-12-04 15:39:22 +01:00
Matthias Clasen
5e26fb75a0
Add GtkStyleProperties to the docs
2010-12-04 15:39:22 +01:00
Matthias Clasen
e2f91f7201
Documentation improvements
...
This patch adds more detail to the explanation of CSS, and also
adds documentation about which files are read.
We also make :focus an alternative to :focused (since :focus is
a standard CSS pseudo-class).
2010-12-04 15:39:22 +01:00
Carlos Garnacho
9567ed01e8
GtkCssProvider: Base prelight foreground on bg color.
...
Entries are also handled, so base/text colors are used.
2010-12-04 15:39:21 +01:00
Carlos Garnacho
de94d04fea
GtkCssProvider: Make prelight a bit less light in default CSS.
2010-12-04 15:39:21 +01:00
Carlos Garnacho
bc3c9ce619
GtkStyle: Fix typo.
...
GtkStateType was being used in gtk_style_context_get(), instead of
GtkStateFlags, oops.
2010-12-04 15:39:20 +01:00
Carlos Garnacho
ead23cd0ce
GtkThemingEngine: Make render_option() depend on border-style and border-color.
2010-12-04 15:39:20 +01:00
Carlos Garnacho
be4a616e6e
GtkRadioButton: Use GtkStyleContext for rendering.
2010-12-04 15:39:20 +01:00
Carlos Garnacho
756e20f58c
Make "button" class depend on mode for GtkToggleButtons
2010-12-04 15:39:20 +01:00
Carlos Garnacho
84d586043e
Fix checkbuttons theming in CSS so it's more similar to 2.x
2010-12-04 15:39:19 +01:00
Carlos Garnacho
7478a77b04
GtkCheckButton: Use GtkStyleContext for rendering.
2010-12-04 15:39:19 +01:00
Carlos Garnacho
04783534ed
GtkThemingEngine: Make render_check() depend on border-style and border-color.
2010-12-04 15:39:19 +01:00
Carlos Garnacho
f62583d30c
GtkContainer: Also copy permanent container's classes on get_path_for_child()
...
This makes inheritance work for the simplest cases when style is defined
for classes.
2010-12-04 15:39:18 +01:00
Carlos Garnacho
6d1cf76822
GtkWidgetPath: Make iter API deal with gints.
...
now gtk_widget_path_iter_* takes gints instead of guints, and also accept
numbers == -1 or > path_length for the path head.
2010-12-04 15:39:18 +01:00
Carlos Garnacho
5f88997297
GtkWidgetPath: Make gtk_widget_path_prepend_type() return nothing.
...
It's senseless to always return 0
2010-12-04 15:39:18 +01:00
Carlos Garnacho
198bb314c7
GtkStyleContext: preserve state on save().
2010-12-04 15:39:18 +01:00
Carlos Garnacho
1bfb169ce6
GtkThemingEngine: Documents that engines must only use this API.
...
It was a bit unclear in the documentation, even if it was from the
API POV.
2010-12-04 15:39:18 +01:00
Matthias Clasen
c5b38121ec
Add tests for matching
...
These tests try to decipher how specificity works for selectors.
2010-12-04 15:39:17 +01:00
Matthias Clasen
e1819055b9
Copy GtkWidgetPaths correctly
...
The code was forgetting to copy class information.
2010-12-04 15:39:17 +01:00
Matthias Clasen
49fed3d7d7
More css parsing tests
2010-12-04 15:39:17 +01:00
Matthias Clasen
4135fbf4d6
A little closer to css
...
Declarations are ;-separated, but there is no ; required after
the last declaration. We harmlessly accept either.
2010-12-04 15:39:17 +01:00
Matthias Clasen
933440e1f1
Some css parsing tests
2010-12-04 15:39:16 +01:00
Matthias Clasen
0396550ece
Work harder at parsing import statements
...
Also, turn g_warning() into g_message() for now, so that tests
don't abort. Eventually, this needs to all go into GErrors.
2010-12-04 15:39:16 +01:00
Matthias Clasen
11cd19987b
Move import syntax closer to css
...
Css allows @import url ("foo.css") or @import "foo.css" or
@import url ('foo.css') but not @import url(foo.css) or @immport foo.css.
2010-12-04 15:39:16 +01:00
Matthias Clasen
f92c352f96
Some error reporting
...
When we take a GError argument, better use it.
2010-12-04 15:39:16 +01:00
Matthias Clasen
5f13b65065
Fix prototype of gtk_css_style_provider_load_from_data
...
GError arguments must be **.
2010-12-04 15:39:16 +01:00
Matthias Clasen
72f9a7940f
Add an outline around menu popups
2010-12-04 15:39:15 +01:00
Matthias Clasen
c8e5d3b07b
Transform the 'menu' detail string to the 'popup' class
2010-12-04 15:39:15 +01:00
Matthias Clasen
016a656923
Fix prelighting of inconsistent radio and check buttons
2010-12-04 15:39:15 +01:00
Matthias Clasen
b6776dc116
Fix the resize handle drawing
2010-12-04 15:39:15 +01:00
Matthias Clasen
627b33265b
Handle float and uint style properties
...
These were giving errors in testgtk.
2010-12-04 15:39:15 +01:00
Matthias Clasen
f0eafe60f8
Remove debug output
2010-12-04 15:39:14 +01:00
Matthias Clasen
4e778d7371
Fix a typo
2010-12-04 15:39:14 +01:00
Matthias Clasen
512bc44dbc
Make frames visible by default
2010-12-04 15:39:14 +01:00
Matthias Clasen
9ca66efe2c
Fix a memory leak
2010-12-04 15:39:14 +01:00
Matthias Clasen
69f91fed94
Translate detail strings for radio buttons
2010-12-04 15:39:14 +01:00
Carlos Garnacho
25b6945971
GtkThemingEngine: remove unused code
2010-12-04 15:39:13 +01:00
Carlos Garnacho
892fe46324
Fix compile warnings
2010-12-04 15:39:13 +01:00
Carlos Garnacho
c9dc09e980
GtkStyleProvider: Pass a GParamSpec in get_style_property().
...
This is so we can know the owner type of the property, and matching
with the stored strings in GtkCssProvider is direct.
2010-12-04 15:39:13 +01:00
Carlos Garnacho
b613f1f1f2
GtkStyleContext: Also use screen providers for widget style properties.
2010-12-04 15:39:13 +01:00
Carlos Garnacho
13e186bbca
Handle menuitem detail string better.
2010-12-04 15:39:13 +01:00
Carlos Garnacho
9a2d1e5433
GtkSettings: install theme CSS with a lower priority.
...
This is so GtkSettings has an opportunity to modify theme colors.
2010-12-04 15:39:12 +01:00
Carlos Garnacho
0057aa5445
Add corners to GtkJunctionSides, defining sides as 2 corners.
2010-12-04 15:39:12 +01:00
Matthias Clasen
eb8a1c4e33
Don't whine about expander-style missing
...
This check was lost in the GtkStyleContext porting.
2010-12-04 15:39:12 +01:00
Carlos Garnacho
43cff6f6f7
GtkCssProvider: theme notebooks.
2010-12-04 15:39:11 +01:00
Carlos Garnacho
6099399fa7
GtkThemingEngine: Use border settings on render_extension/frame_gap()
2010-12-04 15:39:11 +01:00
Carlos Garnacho
60a2e90df7
GtkStyle: transform tabs' detail string.
2010-12-04 15:39:10 +01:00
Carlos Garnacho
534942d994
GtkThemingEngine: Do not use possible reserved word.
2010-12-04 15:39:10 +01:00
Carlos Garnacho
d4aade109f
Fix gtk_css_provider_get_named() docs.
2010-12-04 15:39:09 +01:00
Carlos Garnacho
c37797a10c
GtkSettings: Keep right refcount of the theme provider.
2010-12-04 15:39:08 +01:00
Carlos Garnacho
611cb007b4
GtkSettings: Ensure the theme CSS is loaded on startup.
2010-12-04 15:39:08 +01:00
Carlos Garnacho
8243c3c025
GtkCssProvider: Fix typo in gtk_css_provider_get_named()
...
provider was being redefined in the inner block, so the loaded
provider didn't get to be returned.
2010-12-04 15:39:08 +01:00
Carlos Garnacho
a185954d7c
Hardcode 3.0 version for style files and paths.
...
It's about time to start using the right paths.
2010-12-04 15:39:07 +01:00
Carlos Garnacho
9ffaf1122d
GtkCssProvider: Accept '%' in value strings.
2010-12-04 15:39:06 +01:00
Carlos Garnacho
64e798e190
Do not initialize RC subsystem.
2010-12-04 15:39:06 +01:00
Carlos Garnacho
62ee0956e3
GtkStyleProperties: Use GParamSpec for properties registration.
2010-12-04 15:39:06 +01:00
Carlos Garnacho
1c847d9c21
GtkCssProvider: Docs fix for -gtk-gradient() syntax.
2010-12-04 15:39:06 +01:00
Carlos Garnacho
bcf81a0e23
Handle looping transition animations.
2010-12-04 15:39:05 +01:00
Carlos Garnacho
1123159dc9
GtkCssProvider: Handle better wrong enum/flag values.
2010-12-04 15:39:05 +01:00
Carlos Garnacho
9bb96e271d
GtkCssProviders: Parse GTypeFlags based values.
2010-12-04 15:39:05 +01:00
Carlos Garnacho
5cb6fed0bd
GtkCssProvider: Add initial unit parsing logic
...
At the moment only "px" are supported, and such is the default
value when no unit is specified.
2010-12-04 15:39:05 +01:00
Carlos Garnacho
65abcb722e
GtkCssProvider: Handle the "none" keyword to unset properties.
2010-12-04 15:39:05 +01:00
Carlos Garnacho
c57fdf4c75
GtkStyleContext: Resolve symbolic colors for widget style properties.
2010-12-04 15:39:04 +01:00
Carlos Garnacho
d865cf4b38
GtkStyleProperties: Handle GdkColor types.
...
Just in case.
2010-12-04 15:39:04 +01:00
Carlos Garnacho
8b9b9c22e7
GtkCssProvider: Also parse GdkColor values
...
This is necessary for widget style properties to work.
2010-12-04 15:39:04 +01:00
Carlos Garnacho
815e3499ae
GtkCssProvider: Add lighter/darker color functions.
...
These behave the same than in GtkStyle.
2010-12-04 15:39:04 +01:00
Carlos Garnacho
cb2f9a86e5
GtkCssProvider: allow color names from rgb.txt when parsing colors.
2010-12-04 15:39:03 +01:00
Carlos Garnacho
44b1a6c852
GtkStyleContext: Add #define's for the default properties.
2010-12-04 15:39:03 +01:00
Carlos Garnacho
1be9d6ebc9
Document missing GtkStateType values.
...
The documentation has also moved to gtkenums.h.
2010-12-04 15:39:02 +01:00
Carlos Garnacho
1487b34679
Remove GTK_STATE_LAST.
...
It didn't turn out to be that useful, nor widely used.
2010-12-04 15:38:56 +01:00
Carlos Garnacho
1fb6cc8d77
Use the correct cairo-gobject.h include path.
2010-12-04 15:38:56 +01:00
Carlos Garnacho
fb97bd1f0a
GtkThemingEngine: Document missing class vmethods.
2010-12-04 15:38:55 +01:00
Carlos Garnacho
4689b63739
GtkButton: Use GtkStyleContext for rendering.
2010-12-04 15:38:55 +01:00
Carlos Garnacho
dc2df7d178
GtkWindow: Use GtkStyleContext for rendering.
2010-12-04 15:38:55 +01:00
Carlos Garnacho
3f12fc2bd8
GtkStyleContext: Add gtk_style_context_set_background().
...
This function replaces gtk_style_set_background().
2010-12-04 15:38:54 +01:00
Carlos Garnacho
d9664021cc
GtkWidget: Update pango context from style context's font description.
2010-12-04 15:38:49 +01:00
Carlos Garnacho
1cfeeadc70
GtkWidget: Ensure the style context always has an screen.
...
Things like font settings depend on the screen, and widgets
like GtkTextView trigger queries on widgets without screen
when the parent window is being destroyed.
2010-12-04 15:38:48 +01:00
Carlos Garnacho
48f239c1f2
Add CSS class defines for toolbars and docks.
2010-12-04 15:38:48 +01:00
Carlos Garnacho
99879d4a5f
GtkStyle: translate a few more detail strings.
2010-12-04 15:38:48 +01:00
Carlos Garnacho
3848a58b17
GtkCssProvider: theme progressbars in default CSS.
2010-12-04 15:38:48 +01:00
Carlos Garnacho
0431239ead
GtkThemingEngine: ensure 1px wide frames aren't painted between pixels.
2010-12-04 15:38:48 +01:00
Carlos Garnacho
f66275fa6a
GtkThemingEngine: Use square cap for solid frames.
2010-12-04 15:38:47 +01:00
Carlos Garnacho
3d1403e684
GtkThemingEngine: ensure that background isn't rendered past the frame boundaries.
2010-12-04 15:38:47 +01:00
Carlos Garnacho
d6ba3b7d89
GtkThemingEngine: Get rid of obsolete code for tooltips.
2010-12-04 15:38:47 +01:00
Carlos Garnacho
661a13fe4d
GtkStyleContext: Fix check for GtkIconSize in render_icon_pixbuf().
2010-12-04 15:38:46 +01:00
Carlos Garnacho
405f2f306a
GtkStyleContext: restore widget state too in restore().
2010-12-04 15:38:45 +01:00
Carlos Garnacho
8b267a58da
GtkCssProvider: Do not miss the last class name in concatenated classes.
...
Selectors like .menu.check or .entry.progressbar were being misparsed
and attributed to .menu and .entry.
2010-12-04 15:38:45 +01:00
Carlos Garnacho
d321713704
GtkStyle: transform window background detail string.
2010-12-04 15:38:44 +01:00
Carlos Garnacho
1ec47b20db
GtkStyle: Transform menubar detail string.
2010-12-04 15:38:43 +01:00
Carlos Garnacho
46b8cc8686
GtkStyle: Transform menu accelerators string
2010-12-04 15:38:42 +01:00
Carlos Garnacho
4c898a3c7e
GtkStyleContext: Define some more class names.
2010-12-04 15:38:42 +01:00
Carlos Garnacho
912ad78cc5
Remove GTK_REGION_DEFAULT
...
GTK_STYLE_CLASS_DEFAULT is preferred to match a default area, as
it doesn't make sense to have a per-region default.
2010-12-04 15:38:41 +01:00
Carlos Garnacho
271145645c
GtkThemingEngine: Use GtkSymbolicColor for shades.
2010-12-04 15:38:41 +01:00
Carlos Garnacho
df95a74a27
GtkThemingEngine: Do not require a default value when registering properties
...
NULL should work for 0 for int/double/enum/... types and NULL for
pointer types, this should be sane enough to not require a default
value.
2010-12-04 15:38:40 +01:00
Carlos Garnacho
765f653df6
GtkSymbolicColor: Only require styleproperties when resolving named colors.
...
It is not necessary for resolving colors based on literals,
so be a bit less strict here.
2010-12-04 15:38:40 +01:00
Carlos Garnacho
525963d74d
GtkSymbolicColor: convert to/from hls when shading.
...
This makes shading equal to GtkStyle's.
2010-12-04 15:38:39 +01:00
Carlos Garnacho
3ea9568c20
GtkSymbolicColor: Do not clamp shade/mix/alpha factors.
2010-12-04 15:38:39 +01:00
Carlos Garnacho
a23863211b
GtkStyleContext: Add gtk_render_icon_pixbuf()
...
This function is similar to gtk_style_render_icon(), which is now
implemented on top of this one.
2010-12-04 15:38:38 +01:00
Carlos Garnacho
06c8857191
GtkThemingEngine: Fix compile warning.
2010-12-04 15:38:38 +01:00
Carlos Garnacho
605fa03248
Fix compile warning
2010-12-04 15:38:37 +01:00
Carlos Garnacho
f2c6c82ff0
GtkStatusIcon: update to use gtk_widget_override_symbolic_color().
2010-12-04 15:38:37 +01:00
Carlos Garnacho
f383e6b0a2
GtkWidget: Add new set of methods to override style information.
...
gtk_widget_override_*() deprecates gtk_widget_modify_*(). There are
only functions to modify fg/bg/font/symbolic color, If anything more
fancy/complex is needed. There is the possibility of adding a
GtkStyleProvider yourself.
2010-12-04 15:38:36 +01:00
Carlos Garnacho
920637abef
GtkStyle: Listen to context changes.
...
This way the GtkStyle is updated to the latest style info, actually
emitting ::style-set must be performed after invalidating the style
context.
2010-12-04 15:38:36 +01:00
Carlos Garnacho
33e95ae65f
GtkStyleContext: Add the start of a default set of class names/regions.
2010-12-04 15:38:36 +01:00
Carlos Garnacho
80e74d79bb
GtkStyleContext: Fix merging of local and global providers.
2010-12-04 15:38:35 +01:00
Carlos Garnacho
fb8de847df
GtkStyleProperties: Merge font descriptions on merge()
...
This is necessary so incomplete font descriptions are ensured to have
family and size.
2010-12-04 15:38:34 +01:00
Carlos Garnacho
af20ba6103
GtkSymbolicColor: Take const GdkRGBA in new_literal().
2010-12-04 15:38:34 +01:00
Carlos Garnacho
2efa2947be
Document gtk_render_* functions.
2010-12-04 15:38:34 +01:00
Carlos Garnacho
ebf5bd390f
Add gtk_render_activity()
...
This method will render progress bars and spinners, these should
handle active and inconsistent states' animation progress in order
to perform animations.
2010-12-04 15:38:33 +01:00
Carlos Garnacho
af1f8701dc
GtkThemingEngine: draw resize grip through render_handle().
...
GtkJunctionSides is used instead of GdkWindowEdge, GtkStyle
implementation has changed to use GtkStyleContext's.
2010-12-04 15:38:33 +01:00
Carlos Garnacho
227294a6aa
GtkWidget: Trigger state change transitions on state flags change.
...
This makes state transitions automatic for non-complex widgets, complex
widgets such as GtkTreeView still need to notify state updates themselves.
2010-12-04 15:38:33 +01:00
Carlos Garnacho
c0d08ff627
GtkToolItemGroup: Set widget state as state flags.
2010-12-04 15:38:33 +01:00
Carlos Garnacho
1c2f27fe11
GtkToggleButton: Set widget state as state flags.
2010-12-04 15:38:32 +01:00
Carlos Garnacho
80d1ce9f67
GtkRadioButton: Set widget state as state flags.
2010-12-04 15:38:32 +01:00
Carlos Garnacho
517eaa55e5
GtkNotebook: Set widget state as state flags.
2010-12-04 15:38:32 +01:00
Carlos Garnacho
5f0f21aad3
GtkMenuItem: Set widget state as state flags.
2010-12-04 15:38:31 +01:00
Carlos Garnacho
9ae2e29f44
GtkMenu: Set widget state as state flags.
2010-12-04 15:38:31 +01:00
Carlos Garnacho
399499225e
GtkExpander: Set widget state as state flags.
2010-12-04 15:38:31 +01:00
Carlos Garnacho
f7f5ac1b09
GtkEntry: Set widget state as state flags.
2010-12-04 15:38:31 +01:00
Carlos Garnacho
0e25b19515
GtkComboBox: Set widget state as state flags.
2010-12-04 15:38:30 +01:00
Carlos Garnacho
401b655307
GtkButton: Set widget state as state flags.
2010-12-04 15:38:30 +01:00
Carlos Garnacho
cd98204619
Implement widget states as a set of flags
...
gtk_widget_(set|unset|get)_state_flags() has been added, using GtkStateFlags
to represent the widget state. GtkStateType API has been implemented on top
of the new one.
2010-12-04 15:38:30 +01:00
Carlos Garnacho
34b91a74e5
Document missing value in GtkStateFlags
2010-12-04 15:38:30 +01:00
Carlos Garnacho
4acc20abc1
s/GtkStyleSet/GtkStyleProperties/
...
The former name had oddities such as gtk_style_set_set() and such,
so the new name is nicer in that regard and not much longer.
2010-12-04 15:38:29 +01:00
Carlos Garnacho
1bdd761c3f
GtkWidget: Ensure name changes involve a style context update.
2010-12-04 15:38:29 +01:00
Carlos Garnacho
8ea649e0a0
Rely only on fg/bg colors.
...
"foreground-color" has been renamed to just "color" as in regular CSS,
and the "text-color" and "base-color" properties have been removed. The
default CSS has been changed to have widgets cope with this change.
2010-12-04 15:38:29 +01:00
Carlos Garnacho
7de2cf3286
GtkCssProvider: Fix parsing of concatenated classes.
...
Now selectors such as:
GtkWidget#name.class1.class2
#name.class1.class2
.class1.class2
are parsed correctly, being meaningful for a widget defining several
classes.
2010-12-04 15:38:29 +01:00
Carlos Garnacho
a8a1d8cd01
GtkThemingEngine: Use ::name when registering style props.
2010-12-04 15:38:29 +01:00
Carlos Garnacho
90de318ab3
GtkThemingEngine: Add ::name construct only property
...
This property is to be set by theming engines, the name set will be favored
over the object type name when registering custom properties, making possible
something like:
-Clearlooks-border: blah;
2010-12-04 15:38:28 +01:00
Carlos Garnacho
c88e3bfc0c
GtkStyleSet: Prevent from possible underflow.
2010-12-04 15:38:28 +01:00
Carlos Garnacho
51b742044a
GtkCssProvider: Parse alpha() symbolic colors.
...
The "alpha" symbolic color modifies a passed color's alpha by a factor,
the syntax would accept things like:
background-color: alpha (@bg_color, 0.8);
foreground-color: alpha (shade (@fg_color, 0.8), 0.5);
2010-12-04 15:38:28 +01:00
Carlos Garnacho
ca44965f33
GtkSymbolicColor: Add gtk_symbolic_color_new_alpha()
...
This function modifies the alpha channel of a color, multiplying
it by a factor.
2010-12-04 15:38:28 +01:00
Carlos Garnacho
0bd81ef710
GtkCssProvider: Make default style depend more on custom colors.
2010-12-04 15:38:28 +01:00
Carlos Garnacho
5310ad8070
GtkStyle: Get to style GtkCellRendererText text.
2010-12-04 15:38:27 +01:00
Carlos Garnacho
6356f01b06
GtkThemingEngine: render 0-radius frames with 3D-like 45° corner effect
2010-12-04 15:38:27 +01:00
Carlos Garnacho
43f7fb8354
GtkThemingEngine: Clear the background for .background class
2010-12-04 15:38:27 +01:00
Carlos Garnacho
d565e15951
GtkStyle: translate active state in paint_flat_box().
2010-12-04 15:38:27 +01:00
Carlos Garnacho
087249db07
GtkCssProvider: Update end string when misparsing symbolic colors.
2010-12-04 15:38:26 +01:00
Carlos Garnacho
7d441000f7
GtkCssProvider: Allow '\t' when parsing values.
2010-12-04 15:38:26 +01:00
Carlos Garnacho
4ca3b5071e
GtkSymbolicColor: Initialize alpha when resolving shades.
2010-12-04 15:38:26 +01:00
Carlos Garnacho
975f133d63
GtkThemingEngine: Improve rendering of inset/outset borders.
2010-12-04 15:38:26 +01:00
Carlos Garnacho
39ce35dd75
GtkCssProvider: Improve default CSS.
2010-12-04 15:38:26 +01:00
Carlos Garnacho
6bd0865601
GtkStyle: Handle scrollbar buttons.
2010-12-04 15:38:25 +01:00
Carlos Garnacho
490d59f045
Do not shade alpha values.
2010-12-04 15:38:25 +01:00
Carlos Garnacho
3bfc59b9bb
GtkStyle: Match "trough" and "slider" detail strings.
...
This is so scrollbars can be themed throught the "trough" and
"slider" classes.
2010-12-04 15:38:25 +01:00
Carlos Garnacho
4e02218f52
Use GdkRGBA all around in GtkStyleContext.
2010-12-04 15:38:25 +01:00
Carlos Garnacho
3a455ed8f9
GtkStyleSet: Register the border-style and border-color properties
...
This is also implemented in the theming engine, although the default
CSS should be using it in order to theme buttons, troughs, sliders
and such.
2010-12-04 15:38:25 +01:00
Carlos Garnacho
8d4ffedbf1
GtkStyleContext: '_' prefix the structs, gtk-doc prefers this.
2010-12-04 15:38:24 +01:00
Carlos Garnacho
770f050d8c
GtkWidgetPath: turn into a boxed type.
2010-12-04 15:38:24 +01:00
Carlos Garnacho
c9a3da5025
GtkStyleContext: s/set/add/ and s/unset/remove/ for classes/regions.
...
Several classes and regions may be set to GtkStyleContext, so rename
the functions to be more intuitive.
2010-12-04 15:38:24 +01:00
Carlos Garnacho
161d5175e1
GtkThemingEngine: Honor border-radius in render_background().
2010-12-04 15:38:24 +01:00
Carlos Garnacho
f7dd423862
GtkStyleSet: Register the "border-radius" property
2010-12-04 15:38:24 +01:00
Carlos Garnacho
32b50f2948
GtkStyleContext: Update function declaration in header.
2010-12-04 15:38:23 +01:00
Carlos Garnacho
0a0a1a20a7
GtkCssProvider: Make it able to parse enums.
2010-12-04 15:38:23 +01:00
Carlos Garnacho
d03caa4683
GtkCssProvider: Run through the widget path in the correct order.
...
Comparing a selector with a widget path was being done backwards since
the change to use GtkContainer::get_path_for_child().
2010-12-04 15:38:23 +01:00
Matthias Clasen
35a41bd801
Make loading of theming engines from modules work
2010-12-04 15:38:23 +01:00
Carlos Garnacho
d0f681e898
GtkStyleContext: Add gtk_style_context_new().
2010-12-04 15:38:22 +01:00
Carlos Garnacho
c2f47063c3
GtkCssProvider: Parse default/sorted region flags.
2010-12-04 15:38:22 +01:00
Carlos Garnacho
4a9890e3ab
GtkCssProvider: Parse missing widget states.
2010-12-04 15:38:22 +01:00
Carlos Garnacho
68bfb94f69
Change semantics of the methods to check whether an animation is running.
...
It actually messed up with the state being actually set, and having a
transition animation running for it. Now this dichotomy is removed, and
gtk_style_context_state_is_running() only checks whether an animation is
running, leaving state checking to flags & GTK_STATE_FLAG_*.
2010-12-04 15:38:22 +01:00
Carlos Garnacho
96c16e246c
GtkStyleContext: Actually store region ID when starting an animation.
2010-12-04 15:38:21 +01:00
Carlos Garnacho
a79626b7fb
Add theming docs
...
Both API and file format is documented, there's still missing
a migration doc though.
2010-12-04 15:38:21 +01:00
Carlos Garnacho
59b0fa8133
Remove GtkOrientation parameter from gtk_render_handle().
...
The case for paned can be guessed out from the height and width,
for handlebox the orientation parameter doesn't make much sense,
and this way it could also be used for resize grips.
2010-12-04 15:38:21 +01:00
Benjamin Berg
e8c103f652
Use cairo gobject support instead of a new boxed type.
2010-12-04 15:38:20 +01:00
Carlos Garnacho
88a3c2daae
GtkGradient: Handle symbolic gradients.
...
The css parser has been modified to parse correctly radial gradients:
background-image: -gtk-gradient (radial,
center center, 0,
center center, 0.8,
from (#000 ), to (#fff));
The theming engine has been modified to correctly animate these,
as well as transitions between different pattern types.
2010-12-04 15:38:20 +01:00
Carlos Garnacho
2e8b1cd358
Gtk9Slice: Fix stretch case.
2010-12-04 15:38:20 +01:00
Carlos Garnacho
a65d0d00c0
GtkWidget: Store GtkStyleContext in private struct.
2010-12-04 15:38:19 +01:00
Carlos Garnacho
5bbab9872d
GtkStyleContext: Cache style properties accross class/region changes.
2010-12-04 15:38:19 +01:00
Carlos Garnacho
88b78953b6
GtkContainer: Add method to get the GtkWidgetPath for a child.
...
This is now used throughout in order to have the full path for a given widget,
including intermediate named regions, the default implementation just returns
the GtkContainer's path copy, no intermediate regions between.
2010-12-04 15:38:19 +01:00