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; 
00074 extern unsigned int EWL_CALLBACK_DELETE_WINDOW; 
00076 Ewl_Widget         *ewl_window_new(void);
00077 int                  ewl_window_init(Ewl_Window *win);
00078 Ewl_Window         *ewl_window_window_find(void *window);
00079 void                  ewl_window_title_set(Ewl_Window *win, const char *title);
00080 const char         *ewl_window_title_get(Ewl_Window *win);
00081 void                  ewl_window_name_set(Ewl_Window *win, const char *name);
00082 const char         *ewl_window_name_get(Ewl_Window *win);
00083 void                  ewl_window_class_set(Ewl_Window *win, const char *classname);
00084 const char        *ewl_window_class_get(Ewl_Window *win);
00085 void                  ewl_window_borderless_set(Ewl_Window *win, unsigned int border);
00086 unsigned int          ewl_window_borderless_get(Ewl_Window *win);
00087 void                  ewl_window_dialog_set(Ewl_Window *win, int dialog);
00088 int                  ewl_window_dialog_get(Ewl_Window *win);
00089 void                  ewl_window_fullscreen_set(Ewl_Window *win,
00090                                         unsigned int fullscreen);
00091 unsigned int          ewl_window_fullscreen_get(Ewl_Window *win);
00092 void                  ewl_window_skip_taskbar_set(Ewl_Window *win,
00093                                         unsigned int skip);
00094 unsigned int          ewl_window_skip_taskbar_get(Ewl_Window *win);
00095 void                  ewl_window_skip_pager_set(Ewl_Window *win,
00096                                         unsigned int skip);
00097 unsigned int          ewl_window_skip_pager_get(Ewl_Window *win);
00098 void                 ewl_window_attention_demand(Ewl_Window *win);
00099 void                 ewl_window_urgent_set(Ewl_Window *win, unsigned int urgent);
00100 unsigned int          ewl_window_urgent_get(Ewl_Window *win);
00101 void                  ewl_window_move(Ewl_Window *win, int x, int y);
00102 void                  ewl_window_raise(Ewl_Window *win);
00103 void                  ewl_window_lower(Ewl_Window *win);
00104 void                  ewl_window_transient_for(Ewl_Window *win, Ewl_Window *forwin);
00105 void                  ewl_window_transient_for_foreign(Ewl_Window *win,
00106                                                     Ewl_Embed_Window *forwin);
00107 void                  ewl_window_leader_set(Ewl_Window *win, Ewl_Window *leader);
00108 void                  ewl_window_leader_foreign_set(Ewl_Window *win,
00109                                                     Ewl_Embed_Window *leader);
00110 Ewl_Window        *ewl_window_leader_get(Ewl_Window *win);
00111 Ewl_Embed_Window *ewl_window_leader_foreign_get(Ewl_Window *win);
00112 int                 ewl_window_modal_get(Ewl_Window *win);
00113 void                 ewl_window_modal_set(Ewl_Window *win, int modal);
00114 void                  ewl_window_keyboard_grab_set(Ewl_Window *win, int grab);
00115 int                  ewl_window_keyboard_grab_get(Ewl_Window *win);
00116 void                  ewl_window_pointer_grab_set(Ewl_Window *win, int grab);
00117 int                  ewl_window_pointer_grab_get(Ewl_Window *win);
00118 void                  ewl_window_override_set(Ewl_Window *win, int override);
00119 int                  ewl_window_override_get(Ewl_Window *win);
00120 
00121 /*
00122  * Internally used callbacks, override at your own risk.
00123  */
00124 void ewl_window_cb_realize(Ewl_Widget *w, void *ev_data, void *user_data);
00125 void ewl_window_cb_postrealize(Ewl_Widget *w, void *ev_data, void *user_data);
00126 void ewl_window_cb_realize_parent(Ewl_Widget *w, void *ev_data,
00127                                                 void *user_data);
00128 void ewl_window_cb_unrealize(Ewl_Widget *w, void *ev_data, void *user_data);
00129 void ewl_window_cb_show(Ewl_Widget *w, void *ev_data, void *user_data);
00130 void ewl_window_cb_expose(Ewl_Widget *w, void *ev, void *user_data);
00131 void ewl_window_cb_hide(Ewl_Widget *w, void *ev_data, void *user_data);
00132 void ewl_window_cb_destroy(Ewl_Widget *w, void *ev_data, void *user_data);
00133 void ewl_window_cb_configure(Ewl_Widget *w, void *ev_data, void *user_data);
00134 
00139 #endif

Copyright © Enlightenment.org

Enlightened Widget Library Documentation Generated: Sat May 17 16:49:10 2008