Download

Support

lib/ewl_window.h

Go to the documentation of this file.
00001 /* vim: set sw=8 ts=8 sts=8 expandtab: */
00002 #ifndef EWL_WINDOW_H
00003 #define EWL_WINDOW_H
00004 
00027 #define EWL_WINDOW_TYPE "window"
00028 
00033 #define EWL_WINDOW_IS(w) (ewl_widget_type_is(EWL_WIDGET(w), EWL_WINDOW_TYPE))
00034 
00039 typedef struct Ewl_Window Ewl_Window;
00040 
00045 #define EWL_WINDOW(win) ((Ewl_Window *) win)
00046 
00051 struct Ewl_Window
00052 {
00053         Ewl_Embed embed; 
00055         void *window; 
00056         union {
00057                 Ewl_Window *ewl;
00058                 Ewl_Embed_Window *foreign;
00059         } transient; 
00060         union {
00061                 Ewl_Window *ewl;
00062                 Ewl_Embed_Window *foreign;
00063         } leader; 
00065         char *title; 
00066         char *name; 
00067         char *classname; 
00069         Ewl_Window_Flags flags; 
00070         Ewl_Window_Flags old_flags; 
00071 };
00072 
00073 extern unsigned int EWL_CALLBACK_EXPOSE; 
00075 extern unsigned int EWL_CALLBACK_DELETE_WINDOW; 
00078 Ewl_Widget              *ewl_window_new(void);
00079 int                      ewl_window_init(Ewl_Window *win);
00080 Ewl_Window              *ewl_window_window_find(void *window);
00081 void                     ewl_window_title_set(Ewl_Window *win,
00082                                         const char *title);
00083 const char              *ewl_window_title_get(Ewl_Window *win);
00084 void                     ewl_window_name_set(Ewl_Window *win, const char *name);
00085 const char              *ewl_window_name_get(Ewl_Window *win);
00086 void                     ewl_window_class_set(Ewl_Window *win,
00087                                         const char *classname);
00088 const char              *ewl_window_class_get(Ewl_Window *win);
00089 void                     ewl_window_borderless_set(Ewl_Window *win,
00090                                         unsigned int border);
00091 unsigned int             ewl_window_borderless_get(Ewl_Window *win);
00092 void                     ewl_window_dialog_set(Ewl_Window *win, int dialog);
00093 int                      ewl_window_dialog_get(Ewl_Window *win);
00094 void                     ewl_window_fullscreen_set(Ewl_Window *win,
00095                                         unsigned int fullscreen);
00096 unsigned int             ewl_window_fullscreen_get(Ewl_Window *win);
00097 void                     ewl_window_skip_taskbar_set(Ewl_Window *win,
00098                                         unsigned int skip);
00099 unsigned int             ewl_window_skip_taskbar_get(Ewl_Window *win);
00100 void                     ewl_window_skip_pager_set(Ewl_Window *win,
00101                                         unsigned int skip);
00102 unsigned int             ewl_window_skip_pager_get(Ewl_Window *win);
00103 void                     ewl_window_attention_demand(Ewl_Window *win);
00104 void                     ewl_window_urgent_set(Ewl_Window *win,
00105                                         unsigned int urgent);
00106 unsigned int             ewl_window_urgent_get(Ewl_Window *win);
00107 void                     ewl_window_move(Ewl_Window *win, int x, int y);
00108 void                     ewl_window_raise(Ewl_Window *win);
00109 void                     ewl_window_lower(Ewl_Window *win);
00110 void                     ewl_window_transient_for(Ewl_Window *win,
00111                                         Ewl_Window *forwin);
00112 void                     ewl_window_transient_for_foreign(Ewl_Window *win,
00113                                         Ewl_Embed_Window *forwin);
00114 void                     ewl_window_leader_set(Ewl_Window *win,
00115                                         Ewl_Window *leader);
00116 void                     ewl_window_leader_foreign_set(Ewl_Window *win,
00117                                         Ewl_Embed_Window *leader);
00118 Ewl_Window              *ewl_window_leader_get(Ewl_Window *win);
00119 Ewl_Embed_Window        *ewl_window_leader_foreign_get(Ewl_Window *win);
00120 int                      ewl_window_modal_get(Ewl_Window *win);
00121 void                     ewl_window_modal_set(Ewl_Window *win, int modal);
00122 void                     ewl_window_keyboard_grab_set(Ewl_Window *win, int grab);
00123 int                      ewl_window_keyboard_grab_get(Ewl_Window *win);
00124 void                     ewl_window_pointer_grab_set(Ewl_Window *win, int grab);
00125 int                      ewl_window_pointer_grab_get(Ewl_Window *win);
00126 void                     ewl_window_override_set(Ewl_Window *win, int override);
00127 int                      ewl_window_override_get(Ewl_Window *win);
00128 
00129 /*
00130  * Internally used callbacks, override at your own risk.
00131  */
00132 void ewl_window_cb_realize(Ewl_Widget *w, void *ev_data, void *user_data);
00133 void ewl_window_cb_postrealize(Ewl_Widget *w, void *ev_data, void *user_data);
00134 void ewl_window_cb_realize_parent(Ewl_Widget *w, void *ev_data,
00135                                                 void *user_data);
00136 void ewl_window_cb_unrealize(Ewl_Widget *w, void *ev_data, void *user_data);
00137 void ewl_window_cb_show(Ewl_Widget *w, void *ev_data, void *user_data);
00138 void ewl_window_cb_expose(Ewl_Widget *w, void *ev, void *user_data);
00139 void ewl_window_cb_hide(Ewl_Widget *w, void *ev_data, void *user_data);
00140 void ewl_window_cb_destroy(Ewl_Widget *w, void *ev_data, void *user_data);
00141 void ewl_window_cb_configure(Ewl_Widget *w, void *ev_data, void *user_data);
00142 
00147 #endif

Copyright © Enlightenment.org

Enlightened Widget Library Documentation Generated: Sun Sep 27 01:48:49 2009