diff options
author | Matthias Clasen <mclasen@redhat.com> | 2007-01-28 04:41:52 +0000 |
---|---|---|
committer | Matthias Clasen <matthiasc@src.gnome.org> | 2007-01-28 04:41:52 +0000 |
commit | 85832deef32a5ff8de112dfc85be0ba624bd3c56 (patch) | |
tree | bd65621d7676e798fa0c516ec987a97e87755966 /gtk/gtknotebook.c | |
parent | f560d06dd5f216a69d7dc4564c388366076546d3 (diff) | |
download | gtk+-85832deef32a5ff8de112dfc85be0ba624bd3c56.tar.gz |
Avoid some unnecessary gtk_widget_get_style() calls.
2007-01-27 Matthias Clasen <mclasen@redhat.com>
* gtk/gtknotebook.c (gtk_notebook_draw_arrow):
(gtk_notebook_draw_focus): Avoid some unnecessary
gtk_widget_get_style() calls.
svn path=/trunk/; revision=17229
Diffstat (limited to 'gtk/gtknotebook.c')
-rw-r--r-- | gtk/gtknotebook.c | 45 |
1 files changed, 24 insertions, 21 deletions
diff --git a/gtk/gtknotebook.c b/gtk/gtknotebook.c index 8b64b93f4c..c1c95a4b19 100644 --- a/gtk/gtknotebook.c +++ b/gtk/gtknotebook.c @@ -1688,7 +1688,7 @@ gtk_notebook_size_request (GtkWidget *widget, gint scroll_arrow_vlength; gtk_widget_style_get (widget, - "focus-line-width", &focus_width, + "focus-line-width", &focus_width, "tab-overlap", &tab_overlap, "tab-curvature", &tab_curvature, "arrow-spacing", &arrow_spacing, @@ -2996,22 +2996,25 @@ gtk_notebook_draw_focus (GtkWidget *widget, notebook->cur_page->tab_label->window == event->window) { GtkNotebookPage *page; - GdkRectangle area; - gint focus_width; - - gtk_widget_style_get (widget, "focus-line-width", &focus_width, NULL); page = notebook->cur_page; - area.x = page->tab_label->allocation.x - focus_width; - area.y = page->tab_label->allocation.y - focus_width; - area.width = page->tab_label->allocation.width + 2 * focus_width; - area.height = page->tab_label->allocation.height + 2 * focus_width; - if (gtk_widget_intersect (page->tab_label, &event->area, NULL)) - gtk_paint_focus (widget->style, event->window, GTK_WIDGET_STATE (widget), - NULL, widget, "tab", - area.x, area.y, area.width, area.height); + { + GdkRectangle area; + gint focus_width; + + gtk_widget_style_get (widget, "focus-line-width", &focus_width, NULL); + + area.x = page->tab_label->allocation.x - focus_width; + area.y = page->tab_label->allocation.y - focus_width; + area.width = page->tab_label->allocation.width + 2 * focus_width; + area.height = page->tab_label->allocation.height + 2 * focus_width; + + gtk_paint_focus (widget->style, event->window, + GTK_WIDGET_STATE (widget), NULL, widget, "tab", + area.x, area.y, area.width, area.height); + } } } @@ -4626,20 +4629,20 @@ gtk_notebook_draw_arrow (GtkNotebook *notebook, GtkArrowType arrow; gboolean is_rtl, left; - gtk_notebook_get_arrow_rect (notebook, &arrow_rect, nbarrow); - - widget = GTK_WIDGET (notebook); - - is_rtl = gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL; - left = (ARROW_IS_LEFT (nbarrow) && !is_rtl) || - (!ARROW_IS_LEFT (nbarrow) && is_rtl); - if (GTK_WIDGET_DRAWABLE (notebook)) { gint scroll_arrow_hlength; gint scroll_arrow_vlength; gint arrow_size; + gtk_notebook_get_arrow_rect (notebook, &arrow_rect, nbarrow); + + widget = GTK_WIDGET (notebook); + + is_rtl = gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL; + left = (ARROW_IS_LEFT (nbarrow) && !is_rtl) || + (!ARROW_IS_LEFT (nbarrow) && is_rtl); + gtk_widget_style_get (widget, "scroll-arrow-hlength", &scroll_arrow_hlength, "scroll-arrow-vlength", &scroll_arrow_vlength, |