/* This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #ifndef _WINDOW_FLAGS_ #define _WINDOW_FLAGS_ /* access to the common flags of a window */ #define FW_COMMON_FLAGS(fw) ((fw)->flags.common) #define FW_COMMON_STATIC_FLAGS(fw) ((fw)->flags.common.s) #define DO_GRAB_FOCUS(fw) \ ((fw)->flags.common.s.do_grab_focus_when_created) #define DO_GRAB_FOCUS_TRANSIENT(fw) \ ((fw)->flags.common.s.do_grab_focus_when_transient_created) #define DO_LOWER_TRANSIENT(fw) ((fw)->flags.common.s.do_lower_transient) #define DO_NOT_SHOW_ON_MAP(fw) \ ((fw)->flags.common.s.do_not_show_on_map) #define DO_NOT_PASS_CLICK_FOCUS_CLICK(fw) \ ((fw)->flags.common.s.do_not_pass_click_focus_click) #define SET_DO_NOT_PASS_CLICK_FOCUS_CLICK(fw,x) \ (fw)->flags.common.s.do_not_pass_click_focus_click = !!(x) #define SETM_DO_NOT_PASS_CLICK_FOCUS_CLICK(fw,x) \ (fw)->flag_mask.common.s.do_not_pass_click_focus_click = !!(x) #define DO_NOT_RAISE_CLICK_FOCUS_CLICK(fw) \ ((fw)->flags.common.s.do_not_raise_click_focus_click) #define SET_DO_NOT_RAISE_CLICK_FOCUS_CLICK(fw,x) \ (fw)->flags.common.s.do_not_raise_click_focus_click = !!(x) #define SETM_DO_NOT_RAISE_CLICK_FOCUS_CLICK(fw,x) \ (fw)->flag_mask.common.s.do_not_raise_click_focus_click = !!(x) #define DO_RAISE_MOUSE_FOCUS_CLICK(fw) \ ((fw)->flags.common.s.do_raise_mouse_focus_click) #define SET_DO_RAISE_MOUSE_FOCUS_CLICK(fw,x) \ (fw)->flags.common.s.do_raise_mouse_focus_click = !!(x) #define SETM_DO_RAISE_MOUSE_FOCUS_CLICK(fw,x) \ (fw)->flag_mask.common.s.do_raise_mouse_focus_click = !!(x) #define DO_RAISE_TRANSIENT(fw) ((fw)->flags.common.s.do_raise_transient) #define DO_RESIZE_OPAQUE(fw) ((fw)->flags.common.s.do_resize_opaque) #define DO_SHRINK_WINDOWSHADE(fw) \ ((fw)->flags.common.s.do_shrink_windowshade) #define SET_DO_SHRINK_WINDOWSHADE(fw,x) \ (fw)->flags.common.s.do_shrink_windowshade = !!(x) #define SETM_DO_SHRINK_WINDOWSHADE(fw,x) \ (fw)->flag_mask.common.s.do_shrink_windowshade = !!(x) #define DO_SKIP_CIRCULATE(fw) \ ((fw)->flags.common.s.do_circulate_skip) #define SET_DO_SKIP_CIRCULATE(fw,x) \ (fw)->flags.common.s.do_circulate_skip = !!(x) #define SETM_DO_SKIP_CIRCULATE(fw,x) \ (fw)->flag_mask.common.s.do_circulate_skip = !!(x) #define DO_SKIP_ICON_CIRCULATE(fw) \ ((fw)->flags.common.s.do_circulate_skip_icon) #define SET_DO_SKIP_ICON_CIRCULATE(fw,x) \ (fw)->flags.common.s.do_circulate_skip_icon = !!(x) #define SETM_DO_SKIP_ICON_CIRCULATE(fw,x) \ (fw)->flag_mask.common.s.do_circulate_skip_icon = !!(x) #define DO_SKIP_SHADED_CIRCULATE(fw) \ ((fw)->flags.common.s.do_circulate_skip_shaded) #define SET_DO_SKIP_SHADED_CIRCULATE(fw,x) \ (fw)->flags.common.s.do_circulate_skip_shaded = !!(x) #define SETM_DO_SKIP_SHADED_CIRCULATE(fw,x) \ (fw)->flag_mask.common.s.do_circulate_skip_shaded = !!(x) #define DO_SKIP_WINDOW_LIST(fw) \ ((fw)->flags.common.s.do_window_list_skip) #define SET_DO_SKIP_WINDOW_LIST(fw,x) \ (fw)->flags.common.s.do_window_list_skip = !!(x) #define SETM_DO_SKIP_WINDOW_LIST(fw,x) \ (fw)->flag_mask.common.s.do_window_list_skip = !!(x) #define DO_STACK_TRANSIENT_PARENT(fw) \ ((fw)->flags.common.s.do_stack_transient_parent) #define DO_START_ICONIC(fw) ((fw)->flags.common.s.do_start_iconic) #define SET_DO_START_ICONIC(fw,x) \ (fw)->flags.common.s.do_start_iconic = !!(x) #define SETM_DO_START_ICONIC(fw,x) \ (fw)->flag_mask.common.s.do_start_iconic = !!(x) #define HAS_BOTTOM_TITLE(fw) ((fw)->flags.common.s.has_bottom_title) #define SET_HAS_BOTTOM_TITLE(fw,x) \ (fw)->flags.common.s.has_bottom_title = !!(x) #define SETM_HAS_BOTTOM_TITLE(fw,x) \ (fw)->flag_mask.common.s.has_bottom_title = !!(x) #define HAS_STIPPLED_TITLE(fw) \ ((fw)->flags.common.s.has_stippled_title) #define SET_HAS_STIPPLED_TITLE(fw,x) \ (fw)->flags.common.s.has_stippled_title = !!(x) #define SETM_HAS_STIPPLED_TITLE(fw,x) \ (fw)->flag_mask.common.s.has_stippled_title = !!(x) #define ICON_OVERRIDE_MODE(fw) \ ((fw)->flags.common.s.icon_override) #define SET_ICON_OVERRIDE_MODE(fw,x) \ (fw)->flags.common.s.icon_override = !!(x) #define SETM_ICON_OVERRIDE_MODE(fw,x) \ (fw)->flag_mask.common.s.icon_override = !!(x) #define IS_ICON_STICKY(fw) ((fw)->flags.common.s.is_icon_sticky) #define SET_ICON_STICKY(fw,x) (fw)->flags.common.s.is_icon_sticky = !!(x) #define SETM_ICON_STICKY(fw,x) \ (fw)->flag_mask.common.s.is_icon_sticky = !!(x) #define USE_ICON_POSITION_HINT(fw) \ ((fw)->flags.common.s.use_icon_position_hint) #define SET_USE_ICON_POSITION_HINT(fw,x) \ (fw)->flags.common.s.use_icon_position_hint = !!(x) #define SETM_USE_ICON_POSITION_HINT(fw,x) \ (fw)->flag_mask.common.s.use_icon_position_hint = !!(x) #define IS_ICON_SUPPRESSED(fw) \ ((fw)->flags.common.s.is_icon_suppressed) #define SET_ICON_SUPPRESSED(fw,x) \ (fw)->flags.common.s.is_icon_suppressed = !!(x) #define SETM_ICON_SUPPRESSED(fw,x) \ (fw)->flag_mask.common.s.is_icon_suppressed = !!(x) #define IS_LENIENT(fw) ((fw)->flags.common.s.is_lenient) #define SET_LENIENT(fw,x) (fw)->flags.common.s.is_lenient = !!(x) #define SETM_LENIENT(fw,x) (fw)->flag_mask.common.s.is_lenient = !!(x) #define IS_STICKY(fw) ((fw)->flags.common.is_sticky) #define SET_STICKY(fw,x) (fw)->flags.common.is_sticky = !!(x) #define SETM_STICKY(fw,x) (fw)->flag_mask.common.is_sticky = !!(x) #define GET_FOCUS_MODE(fw) ((fw)->flags.common.s.focus_mode) #define SET_FOCUS_MODE(fw,x) (fw)->flags.common.s.focus_mode = (x) #define SETM_FOCUS_MODE(fw,x) (fw)->flag_mask.common.s.focus_mode =(x) #define HAS_CLICK_FOCUS(fw) \ ((fw)->flags.common.s.focus_mode == FOCUS_CLICK) #define HAS_MOUSE_FOCUS(fw) \ ((fw)->flags.common.s.focus_mode == FOCUS_MOUSE) #define HAS_ICON_FONT(fw) \ ((fw)->flags.common.has_icon_font) #define SET_HAS_ICON_FONT(fw,x) \ (fw)->flags.common.has_icon_font = !!(x) #define SETM_HAS_ICON_FONT(fw,x) \ (fw)->flag_mask.common.has_icon_font = !!(x) #define HAS_SLOPPY_FOCUS(fw) \ ((fw)->flags.common.s.focus_mode == FOCUS_SLOPPY) #define HAS_NEVER_FOCUS(fw) \ ((fw)->flags.common.s.focus_mode == FOCUS_NEVER) #define HAS_NO_ICON_TITLE(fw) \ ((fw)->flags.common.s.has_no_icon_title) #define SET_HAS_NO_ICON_TITLE(fw,x) \ (fw)->flags.common.s.has_no_icon_title = !!(x) #define SETM_HAS_NO_ICON_TITLE(fw,x) \ (fw)->flag_mask.common.s.has_no_icon_title = !!(x) #define HAS_WINDOW_FONT(fw) \ ((fw)->flags.common.has_window_font) #define SET_HAS_WINDOW_FONT(fw,x) \ (fw)->flags.common.has_window_font = !!(x) #define SETM_HAS_WINDOW_FONT(fw,x) \ (fw)->flag_mask.common.has_window_font = !!(x) #define HAS_MWM_BORDER(fw) ((fw)->flags.common.s.has_mwm_border) #define HAS_MWM_BUTTONS(fw) ((fw)->flags.common.s.has_mwm_buttons) #define HAS_MWM_OVERRIDE_HINTS(fw) \ ((fw)->flags.common.s.has_mwm_override) #define HAS_OVERRIDE_SIZE_HINTS(fw) \ ((fw)->flags.common.s.has_override_size) #define DO_ICONIFY_WINDOW_GROUPS(fw) \ ((fw)->flags.common.s.do_iconify_window_groups) #define DO_IGNORE_GNOME_HINTS(fw) \ ((fw)->flags.common.s.do_ignore_gnome_hints) #define DO_IGNORE_RESTACK(fw) \ ((fw)->flags.common.s.do_ignore_restack) #define DO_IGNORE_ICON_BOXES(fw) \ ((fw)->flags.common.s.do_ignore_icon_boxes) #define DO_USE_WINDOW_GROUP_HINT(fw) \ ((fw)->flags.common.s.do_use_window_group_hint) #define IS_FIXED(fw) ((fw)->flags.common.s.is_fixed) #define SET_FIXED(fw,x) (fw)->flags.common.s.is_fixed = !!(x) #define SETM_FIXED(fw,x) (fw)->flag_mask.common.s.is_fixed = !!(x) #define HAS_DEPRESSABLE_BORDER(fw) ((fw)->flags.common.s.has_depressable_border) /* access to the special flags of a window */ #define DO_DELETE_ICON_MOVED(fw) \ ((fw)->flags.do_delete_icon_moved) #define SET_DELETE_ICON_MOVED(fw,x) \ (fw)->flags.do_delete_icon_moved = !!(x) #define SETM_DELETE_ICON_MOVED(fw,x) \ (fw)->flag_mask.do_delete_icon_moved = !!(x) #define DO_REUSE_DESTROYED(fw) ((fw)->flags.do_reuse_destroyed) #define SET_DO_REUSE_DESTROYED(fw,x) \ (fw)->flags.do_reuse_destroyed = !!(x) #define SETM_DO_REUSE_DESTROYED(fw,x) \ (fw)->flag_mask.do_reuse_destroyed = !!(x) #define HAS_BORDER(fw) ((fw)->flags.has_border) #define SET_HAS_BORDER(fw,x) (fw)->flags.has_border = !!(x) #define SETM_HAS_BORDER(fw,x) (fw)->flag_mask.has_border = !!(x) #define HAS_ICON_CHANGED(fw) ((fw)->flags.has_icon_changed) #define SET_HAS_ICON_CHANGED(fw,x) (fw)->flags.has_icon_changed = !!(x) #define SETM_HAS_ICON_CHANGED(fw,x) (fw)->flag_mask.has_icon_changed = !!(x) #define HAS_TITLE(fw) ((fw)->flags.has_title) #define SET_HAS_TITLE(fw,x) (fw)->flags.has_title = !!(x) #define SETM_HAS_TITLE(fw,x) (fw)->flag_mask.has_title = !!(x) #define IS_MAPPED(fw) ((fw)->flags.is_mapped) #define SET_MAPPED(fw,x) (fw)->flags.is_mapped = !!(x) #define SETM_MAPPED(fw,x) (fw)->flag_mask.is_mapped = !!(x) #define IS_DECOR_CHANGED(fw) ((fw)->flags.is_decor_changed) #define SET_DECOR_CHANGED(fw,x) (fw)->flags.is_decor_changed = !!(x) #define SETM_DECOR_CHANGED(fw,x) (fw)->flag_mask.is_decor_changed = !!(x) #define IS_ICON_FONT_LOADED(fw) ((fw)->flags.is_icon_font_loaded) #define SET_ICON_FONT_LOADED(fw,x) (fw)->flags.is_icon_font_loaded = !!(x) #define SETM_ICON_FONT_LOADED(fw,x) (fw)->flag_mask.is_icon_font_loaded = !!(x) #define IS_ICONIFIED(fw) ((fw)->flags.is_iconified) #define SET_ICONIFIED(fw,x) (fw)->flags.is_iconified = !!(x) #define SETM_ICONIFIED(fw,x) (fw)->flag_mask.is_iconified = !!(x) #define IS_ICONIFIED_BY_PARENT(fw) \ ((fw)->flags.is_iconified_by_parent) #define SET_ICONIFIED_BY_PARENT(fw,x) \ (fw)->flags.is_iconified_by_parent = !!(x) #define SETM_ICONIFIED_BY_PARENT(fw,x) \ (fw)->flag_mask.is_iconified_by_parent = !!(x) #define IS_ICON_ENTERED(fw) ((fw)->flags.is_icon_entered) #define SET_ICON_ENTERED(fw,x) (fw)->flags.is_icon_entered = !!(x) #define SETM_ICON_ENTERED(fw,x) (fw)->flag_mask.is_icon_entered = !!(x) #define IS_ICON_OURS(fw) ((fw)->flags.is_icon_ours) #define SET_ICON_OURS(fw,x) (fw)->flags.is_icon_ours = !!(x) #define SETM_ICON_OURS(fw,x) (fw)->flag_mask.is_icon_ours = !!(x) #define IS_ICON_SHAPED(fw) ((fw)->flags.is_icon_shaped) #define SET_ICON_SHAPED(fw,x) (fw)->flags.is_icon_shaped = !!(x) #define SETM_ICON_SHAPED(fw,x) (fw)->flag_mask.is_icon_shaped = !!(x) #define IS_ICON_MOVED(fw) ((fw)->flags.is_icon_moved) #define SET_ICON_MOVED(fw,x) (fw)->flags.is_icon_moved = !!(x) #define SETM_ICON_MOVED(fw,x) (fw)->flag_mask.is_icon_moved = !!(x) #define IS_ICON_UNMAPPED(fw) ((fw)->flags.is_icon_unmapped) #define SET_ICON_UNMAPPED(fw,x) \ (fw)->flags.is_icon_unmapped = !!(x) #define SETM_ICON_UNMAPPED(fw,x) \ (fw)->flag_mask.is_icon_unmapped = !!(x) #define IS_IN_TRANSIENT_SUBTREE(fw) ((fw)->flags.is_in_transient_subtree) #define SET_IN_TRANSIENT_SUBTREE(fw,x) \ (fw)->flags.is_in_transient_subtree = !!(x) #define IS_MAP_PENDING(fw) ((fw)->flags.is_map_pending) #define SET_MAP_PENDING(fw,x) (fw)->flags.is_map_pending = !!(x) #define SETM_MAP_PENDING(fw,x) (fw)->flag_mask.is_map_pending = !!(x) #define IS_MAXIMIZED(fw) ((fw)->flags.is_maximized) #define SET_MAXIMIZED(fw,x) (fw)->flags.is_maximized = !!(x) #define SETM_MAXIMIZED(fw,x) (fw)->flag_mask.is_maximized = !!(x) #define IS_NAME_CHANGED(fw) ((fw)->flags.is_name_changed) #define SET_NAME_CHANGED(fw,x) (fw)->flags.is_name_changed = !!(x) #define SETM_NAME_CHANGED(fw,x) (fw)->flag_mask.is_name_changed = !!(x) #define IS_PIXMAP_OURS(fw) ((fw)->flags.is_pixmap_ours) #define SET_PIXMAP_OURS(fw,x) (fw)->flags.is_pixmap_ours = !!(x) #define SETM_PIXMAP_OURS(fw,x) (fw)->flag_mask.is_pixmap_ours = !!(x) #define IS_PLACED_WB3(fw) ((fw)->flags.is_placed_wb3) #define SET_PLACED_WB3(fw,x) (fw)->flags.is_placed_wb3 = !!(x) #define SETM_PLACED_WB3(fw,x) (fw)->flag_mask.is_placed_wb3 = !!(x) #define IS_PLACED_BY_FVWM(fw) ((fw)->flags.is_placed_by_fvwm) #define SET_PLACED_BY_FVWM(fw,x) (fw)->flags.is_placed_by_fvwm = (x) #define SETM_PLACED_BY_FVWM(fw,x) (fw)->flag_mask.is_placed_by_fvwm = (x) #define IS_SCHEDULED_FOR_DESTROY(fw) ((fw)->flags.is_scheduled_for_destroy) #define SET_SCHEDULED_FOR_DESTROY(fw,x) \ (fw)->flags.is_scheduled_for_destroy = !!(x) #define IS_SCHEDULED_FOR_RAISE(fw) ((fw)->flags.is_scheduled_for_raise) #define SET_SCHEDULED_FOR_RAISE(fw,x) (fw)->flags.is_scheduled_for_raise = !!(x) #define IS_SHADED(fw) ((fw)->flags.is_window_shaded) #define SET_SHADED(fw,x) (fw)->flags.is_window_shaded = !!(x) #define SETM_SHADED(fw,x) (fw)->flag_mask.is_window_shaded = !!(x) #define IS_TRANSIENT(fw) ((fw)->flags.is_transient) #define SET_TRANSIENT(fw,x) (fw)->flags.is_transient = !!(x) #define SETM_TRANSIENT(fw,x) (fw)->flag_mask.is_transient = !!(x) #define IS_DEICONIFY_PENDING(fw) ((fw)->flags.is_deiconify_pending) #define SET_DEICONIFY_PENDING(fw,x) (fw)->flags.is_deiconify_pending = !!(x) #define SETM_DEICONIFY_PENDING(fw,x) \ (fw)->flag_mask.is_deiconify_pending = !!(x) #define DO_ICONIFY_AFTER_MAP(fw) ((fw)->flags.do_iconify_after_map) #define SET_ICONIFY_AFTER_MAP(fw,x) (fw)->flags.do_iconify_after_map = !!(x) #define SETM_ICONIFY_AFTER_MAP(fw,x) \ (fw)->flag_mask.do_iconify_after_map = !!(x) #define IS_SIZE_INC_SET(fw) ((fw)->flags.is_size_inc_set) #define SET_SIZE_INC_SET(fw,x) (fw)->flags.is_size_inc_set = !!(x) #define SETM_SIZE_INC_SET(fw,x) (fw)->flag_mask.is_size_inc_set = !!(x) #define IS_STYLE_DELETED(fw) ((fw)->flags.is_style_deleted) #define SET_STYLE_DELETED(fw,x) (fw)->flags.is_style_deleted = !!(x) #define SETM_STYLE_DELETED(fw,x) (fw)->flag_mask.is_style_deleted = !!(x) #define IS_VIEWPORT_MOVED(fw) ((fw)->flags.is_viewport_moved) #define SET_VIEWPORT_MOVED(fw,x) \ (fw)->flags.is_viewport_moved = !!(x) #define SETM_VIEWPORT_MOVED(fw,x) \ (fw)->flag_mask.is_viewport_moved = !!(x) #define IS_VIEWPORT_MOVED(fw) ((fw)->flags.is_viewport_moved) #define IS_FOCUS_CHANGE_BROADCAST_PENDING(fw) \ ((fw)->flags.is_focus_change_broadcast_pending) #define SET_FOCUS_CHANGE_BROADCAST_PENDING(fw,x) \ (fw)->flags.is_focus_change_broadcast_pending = !!(x) #define SETM_FOCUS_CHANGE_BROADCAST_PENDING(fw,x) \ (fw)->flag_mask.is_focus_change_broadcast_pending = !!(x) #define IS_FULLY_VISIBLE(fw) ((fw)->flags.is_fully_visible) #define SET_FULLY_VISIBLE(fw,x) \ (fw)->flags.is_fully_visible = !!(x) #define SETM_FULLY_VISIBLE(fw,x) \ (fw)->flag_mask.is_fully_visible = !!(x) #define IS_PARTIALLY_VISIBLE(fw) \ ((fw)->flags.is_partially_visible) #define SET_PARTIALLY_VISIBLE(fw,x) \ (fw)->flags.is_partially_visible = !!(x) #define SETM_PARTIALLY_VISIBLE(fw,x) \ (fw)->flag_mask.is_partially_visible = !!(x) #define IS_WINDOW_DRAWN_ONCE(fw) \ ((fw)->flags.is_window_drawn_once) #define SET_WINDOW_DRAWN_ONCE(fw,x) \ (fw)->flags.is_window_drawn_once = !!(x) #define SETM_WINDOW_DRAWN_ONCE(fw,x) \ (fw)->flag_mask.is_window_drawn_once = !!(x) #define IS_WINDOW_BEING_MOVED_OPAQUE(fw) \ ((fw)->flags.is_window_being_moved_opaque) #define SET_WINDOW_BEING_MOVED_OPAQUE(fw,x) \ (fw)->flags.is_window_being_moved_opaque = !!(x) #define SETM_WINDOW_BEING_MOVED_OPAQUE(fw,x) \ (fw)->flag_mask.is_window_being_moved_opaque = !!(x) #define IS_WINDOW_BORDER_DRAWN(fw) ((fw)->flags.is_window_border_drawn) #define SET_WINDOW_BORDER_DRAWN(fw,x) \ (fw)->flags.is_window_border_drawn = !!(x) #define SETM_WINDOW_BORDER_DRAWN(fw,x) \ (fw)->flag_mask.is_window_border_drawn = !!(x) #define IS_WINDOW_FONT_LOADED(fw) ((fw)->flags.is_window_font_loaded) #define SET_WINDOW_FONT_LOADED(fw,x) (fw)->flags.is_window_font_loaded = !!(x) #define SETM_WINDOW_FONT_LOADED(fw,x) \ (fw)->flag_mask.is_window_font_loaded = !!(x) #define WM_DELETES_WINDOW(fw) ((fw)->flags.does_wm_delete_window) #define SET_WM_DELETES_WINDOW(fw,x) \ (fw)->flags.does_wm_delete_window = !!(x) #define SETM_WM_DELETES_WINDOW(fw,x) \ (fw)->flag_mask.does_wm_delete_window = !!(x) #define WM_TAKES_FOCUS(fw) ((fw)->flags.does_wm_take_focus) #define SET_WM_TAKES_FOCUS(fw,x) \ (fw)->flags.does_wm_take_focus = !!(x) #define SETM_WM_TAKES_FOCUS(fw,x) \ (fw)->flag_mask.does_wm_take_focus = !!(x) #define USING_DEFAULT_WINDOW_FONT(fw) \ ((fw)->flags.using_default_window_font) #define SET_USING_DEFAULT_WINDOW_FONT(fw,x) \ (fw)->flags.using_default_window_font = !!(x) #define SETM_USING_DEFAULT_WINDOW_FONT(fw,x) \ (fw)->flag_mask.using_default_window_font = !!(x) #define USING_DEFAULT_ICON_FONT(fw) \ ((fw)->flags.using_default_icon_font) #define SET_USING_DEFAULT_ICON_FONT(fw,x) \ (fw)->flags.using_default_icon_font = !!(x) #define SETM_USING_DEFAULT_ICON_FONT(fw,x) \ (fw)->flag_mask.using_default_icon_font = !!(x) #define WAS_ICON_HINT_PROVIDED(fw) \ ((fw)->flags.was_icon_hint_provided) #define SET_WAS_ICON_HINT_PROVIDED(fw,x) \ (fw)->flags.was_icon_hint_provided = (x) #define SETM_WAS_ICON_HINT_PROVIDED(fw,x) \ (fw)->flag_mask.was_icon_hint_provided = (x) #define WAS_ICON_NAME_PROVIDED(fw) \ ((fw)->flags.was_icon_name_provided) #define SET_WAS_ICON_NAME_PROVIDED(fw,x) \ (fw)->flags.was_icon_name_provided = (x) #define SETM_WAS_ICON_NAME_PROVIDED(fw,x) \ (fw)->flag_mask.was_icon_name_provided = (x) #endif /* _WINDOW_FLAGS_ */