gtk+ r19979 - in branches/gtk-2-12: . modules/engines/ms-windows modules/engines/ms-windows/Theme/gtk-2.0
- From: aruiz svn gnome org
- To: svn-commits-list gnome org
- Subject: gtk+ r19979 - in branches/gtk-2-12: . modules/engines/ms-windows modules/engines/ms-windows/Theme/gtk-2.0
- Date: Mon, 7 Apr 2008 23:36:18 +0100 (BST)
Author: aruiz
Date: Mon Apr 7 23:36:17 2008
New Revision: 19979
URL: http://svn.gnome.org/viewvc/gtk+?rev=19979&view=rev
Log:
2008-04-07 Alberto Ruiz <aruiz gnome org>
Merged from trunk:
* modules/engines/ms-windows/Theme/gtk-2.0/gtkrc:
* modules/engines/ms-windows/msw_style.c (draw_box) (draw_arrow)
(combo_box_draw_arrow) (setup_msw_rc_style): draw box does more intelligent
separation for the xp theming engine and the classic theme while drawing the
GtkComboBox button. combobox_draw_arrow is not used anymore, commented.
The style has been updated to fix border/thickness glitches in the combobox
according to the fixes commited regarding bug #521442. (bug #461805)
Modified:
branches/gtk-2-12/ChangeLog
branches/gtk-2-12/modules/engines/ms-windows/Theme/gtk-2.0/gtkrc
branches/gtk-2-12/modules/engines/ms-windows/msw_style.c
Modified: branches/gtk-2-12/modules/engines/ms-windows/Theme/gtk-2.0/gtkrc
==============================================================================
--- branches/gtk-2-12/modules/engines/ms-windows/Theme/gtk-2.0/gtkrc (original)
+++ branches/gtk-2-12/modules/engines/ms-windows/Theme/gtk-2.0/gtkrc Mon Apr 7 23:36:17 2008
@@ -55,3 +55,13 @@
}
class "GtkTreeView" binding "ms-windows-tree-view"
+
+style "msw-combobox-thickness" = "msw-default"
+{
+ xthickness = 0
+ ythickness = 0
+}
+
+widget_class "*TreeView*ComboBox*" style "msw-combobox-thickness"
+widget_class "*ComboBox*GtkFrame*" style "msw-combobox-thickness"
+
Modified: branches/gtk-2-12/modules/engines/ms-windows/msw_style.c
==============================================================================
--- branches/gtk-2-12/modules/engines/ms-windows/msw_style.c (original)
+++ branches/gtk-2-12/modules/engines/ms-windows/msw_style.c Mon Apr 7 23:36:17 2008
@@ -902,24 +902,25 @@
"ythickness = %d\n"
"}\n"
"class \"GtkComboBox\" style \"msw-combobox\"\n",
- GetSystemMetrics (SM_CXEDGE), GetSystemMetrics (SM_CYEDGE));
+ xp_theme_is_active ()? 1 : GetSystemMetrics (SM_CXEDGE),
+ xp_theme_is_active ()? 1 : GetSystemMetrics (SM_CYEDGE));
gtk_rc_parse_string (buf);
/* size of tree view header */
g_snprintf (buf, sizeof (buf),
"style \"msw-header-button\" = \"msw-default\"\n"
"{\n"
- "xthickness = 4\n"
- "ythickness = %d\n"
+ "xthickness = 0\n"
+ "ythickness = 0\n"
+ "GtkWidget::draw-border = { 0, 0, 0, 0 }\n"
"GtkButton::default-border = { 0, 0, 0, 0 }\n"
"GtkButton::default-outside-border = { 0, 0, 0, 0 }\n"
- "GtkButton::child-displacement-x = 1\n"
- "GtkButton::child-displacement-y = 1\n"
+ "GtkButton::child-displacement-x = 0\n"
+ "GtkButton::child-displacement-y = 0\n"
"GtkWidget::focus-padding = 0\n"
"GtkWidget::focus-line-width = 0\n"
"}\n"
- "widget_class \"*TreeView*Button*\" style \"msw-header-button\"\n",
- xp_theme_is_active ()? 2 : 0);
+ "widget_class \"*TreeView*Button*\" style \"msw-header-button\"\n");
gtk_rc_parse_string (buf);
/* FIXME: This should be enabled once gtk+ support GtkNotebok::prelight-tab */
@@ -1078,7 +1079,8 @@
return FALSE;
}
-static gboolean
+/* This function is not needed anymore */
+/* static gboolean
combo_box_draw_arrow (GtkStyle *style,
GdkWindow *window,
GtkStateType state,
@@ -1106,7 +1108,7 @@
}
return FALSE;
-}
+}*/
static void
draw_part (GdkDrawable *drawable,
@@ -1493,13 +1495,8 @@
sanitize_size (window, &width, &height);
- if (GTK_IS_ARROW (widget) && is_combo_box_child (widget))
- {
- if (combo_box_draw_arrow (style, window, state, area, widget))
- {
- return;
- }
- }
+ if (GTK_IS_ARROW (widget) && is_combo_box_child (widget) && xp_theme_is_active ())
+ return;
if (detail && strcmp (detail, "spinbutton") == 0)
{
@@ -1970,23 +1967,29 @@
if (is_combo_box_child (widget) && detail && !strcmp (detail, "button"))
{
RECT rect;
+ DWORD border;
HDC dc;
int cx;
- dc = get_window_dc (style, window, state_type, x, y, width - cx, height, &rect);
- FillRect (dc, &rect, GetSysColorBrush (COLOR_WINDOW));
- release_window_dc (style, window, state_type);
+ border = (GTK_TOGGLE_BUTTON (widget)->active ? DFCS_PUSHED | DFCS_FLAT : 0);
- cx = GetSystemMetrics(SM_CXVSCROLL);
- x += width - cx;
- width = cx;
+ dc = get_window_dc (style, window, state_type, x, y, width, height, &rect);
+ DrawFrameControl (dc, &rect, DFC_SCROLL, DFCS_SCROLLDOWN | border);
+ release_window_dc (style, window, state_type);
if (xp_theme_is_active ()
- && xp_theme_draw (window, XP_THEME_ELEMENT_COMBOBUTTON, style, x, y,
- width, height, state_type, area))
- {
- return;
- }
+ && xp_theme_draw (window, XP_THEME_ELEMENT_COMBOBUTTON, style, x, y,
+ width, height, state_type, area))
+ {
+ cx = GetSystemMetrics(SM_CXVSCROLL);
+ x += width - cx;
+ width = cx;
+
+ dc = get_window_dc (style, window, state_type, x, y, width - cx, height, &rect);
+ FillRect (dc, &rect, GetSysColorBrush (COLOR_WINDOW));
+ release_window_dc (style, window, state_type);
+ return;
+ }
}
if (detail &&
@@ -2937,12 +2940,13 @@
HDC dc;
RECT rect;
- if (is_combo_box_child (widget))
- return;
-
dc = get_window_dc (style, window, state_type, x, y, width, height, &rect);
- if (is_popup_window_child (widget))
+ if (is_combo_box_child (widget))
+ {
+ FillRect (dc, &rect, GetSysColorBrush (COLOR_WINDOW));
+ }
+ else if (is_popup_window_child (widget))
{
FrameRect (dc, &rect, GetSysColorBrush (COLOR_WINDOWFRAME));
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]