diff options
-rwxr-xr-x | modules/engines/ms-windows/ChangeLog.old | 3 | ||||
-rwxr-xr-x | modules/engines/ms-windows/wimp_style.c | 21 | ||||
-rwxr-xr-x | modules/engines/ms-windows/wimp_style.h | 2 | ||||
-rwxr-xr-x | modules/engines/ms-windows/wimp_theme_main.c | 9 | ||||
-rwxr-xr-x | modules/engines/ms-windows/xp_theme.c | 3 |
5 files changed, 20 insertions, 18 deletions
diff --git a/modules/engines/ms-windows/ChangeLog.old b/modules/engines/ms-windows/ChangeLog.old index 2d85003f5..44cfc1b88 100755 --- a/modules/engines/ms-windows/ChangeLog.old +++ b/modules/engines/ms-windows/ChangeLog.old @@ -1,5 +1,8 @@ 2003-10-07 Raymond Penners <raymond@dotsphinx.com>
+ * src/wimp_style.c: Tabs not located on top of the notebook are
+ now (again) no longer rendered using XP theming.
+
* src/xp_theme.c: We now properly use IsThemeActive().
* src/xp_theme_defs.h: Renamed from xp_theme_dfns.h
diff --git a/modules/engines/ms-windows/wimp_style.c b/modules/engines/ms-windows/wimp_style.c index a8706b0a8..d3e3c6038 100755 --- a/modules/engines/ms-windows/wimp_style.c +++ b/modules/engines/ms-windows/wimp_style.c @@ -264,7 +264,7 @@ setup_menu_settings (void) } void -setup_system_settings (void) +wimp_style_setup_system_settings (void) { GtkSettings * settings; int cursor_blink_time; @@ -1363,11 +1363,12 @@ draw_extension(GtkStyle *style, height -= XP_EDGE_SIZE; #endif - if (xp_theme_draw (window, - gtk_notebook_get_current_page(notebook)==0 - ? XP_THEME_ELEMENT_TAB_ITEM_LEFT_EDGE - : XP_THEME_ELEMENT_TAB_ITEM, - style, x, y, width, height, state_type, area)) + if (pos_type == GTK_POS_TOP + && xp_theme_draw + (window, gtk_notebook_get_current_page(notebook)==0 + ? XP_THEME_ELEMENT_TAB_ITEM_LEFT_EDGE + : XP_THEME_ELEMENT_TAB_ITEM, + style, x, y, width, height, state_type, area)) { return; } @@ -1588,9 +1589,9 @@ wimp_style_register_type (GTypeModule *module) } void -wimp_init (void) +wimp_style_init (void) { - xp_theme_init (); - setup_system_settings (); - setup_wimp_rc_style (); + xp_theme_init (); + wimp_style_setup_system_settings (); + setup_wimp_rc_style (); } diff --git a/modules/engines/ms-windows/wimp_style.h b/modules/engines/ms-windows/wimp_style.h index 873841a04..691d5dfde 100755 --- a/modules/engines/ms-windows/wimp_style.h +++ b/modules/engines/ms-windows/wimp_style.h @@ -49,6 +49,6 @@ struct _WimpStyleClass void wimp_style_register_type (GTypeModule *module);
void wimp_style_init (void);
-void setup_system_settings (void);
+void wimp_style_setup_system_settings (void);
#endif /* WIMP_TYPE_STYLE */
diff --git a/modules/engines/ms-windows/wimp_theme_main.c b/modules/engines/ms-windows/wimp_theme_main.c index 1147be7e4..64ef40201 100755 --- a/modules/engines/ms-windows/wimp_theme_main.c +++ b/modules/engines/ms-windows/wimp_theme_main.c @@ -36,7 +36,6 @@ * WM_STYLECHANGED
* WM_PALETTECHANGED
*/
-
static GdkFilterReturn
global_filter_func (void *xevent,
GdkEvent *event,
@@ -51,7 +50,7 @@ global_filter_func (void *xevent, case WM_THEMECHANGED:
case WM_SYSCOLORCHANGE:
xp_theme_exit();
- wimp_init ();
+ wimp_style_init ();
/* force all gtkwidgets to redraw */
gtk_rc_reparse_all_for_settings (gtk_settings_get_default(), TRUE);
@@ -59,7 +58,8 @@ global_filter_func (void *xevent, #endif
case WM_SETTINGCHANGE:
- setup_system_settings (); /* catch cursor blink, etc... changes */
+ /* catch cursor blink, etc... changes */
+ wimp_style_setup_system_settings ();
return GDK_FILTER_REMOVE;
default:
@@ -72,8 +72,7 @@ theme_init (GTypeModule *module) {
wimp_rc_style_register_type (module);
wimp_style_register_type (module);
-
- wimp_init ();
+ wimp_style_init ();
gdk_window_add_filter (NULL, global_filter_func, NULL);
}
diff --git a/modules/engines/ms-windows/xp_theme.c b/modules/engines/ms-windows/xp_theme.c index e4aacf911..886f197dd 100755 --- a/modules/engines/ms-windows/xp_theme.c +++ b/modules/engines/ms-windows/xp_theme.c @@ -139,7 +139,6 @@ void xp_theme_exit(void) { int i; - if (! uxtheme_dll) return; @@ -592,7 +591,7 @@ xp_theme_draw(GdkWindow *win, XpThemeElement element, GtkStyle *style, GdkDrawable *drawable; int part_state; - if (!uxtheme_dll) + if (! xp_theme_is_drawable (element)) return FALSE; theme = xp_theme_get_handle_by_element(element); |