From 07b62e4f07b1f5ffa2c02dfcb2b5eadbe957cda8 Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Tue, 5 Jul 2005 12:57:49 +0000 Subject: [PATCH] start of code for remember stuff... nothing yet... SVN revision: 15642 --- src/bin/Makefile.am | 4 ++- src/bin/e_includes.h | 1 + src/bin/e_main.c | 7 ++++ src/bin/e_remember.c | 24 +++++++++++++ src/bin/e_remember.h | 83 ++++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 118 insertions(+), 1 deletion(-) create mode 100644 src/bin/e_remember.c create mode 100644 src/bin/e_remember.h diff --git a/src/bin/Makefile.am b/src/bin/Makefile.am index ec72385c8..46a186e16 100644 --- a/src/bin/Makefile.am +++ b/src/bin/Makefile.am @@ -64,7 +64,8 @@ e_winlist.h \ e_alert.h \ e_maximize.h \ e_grabinput.h \ -e_bg.h +e_bg.h \ +e_remember.h enlightenment_SOURCES = \ e_main.c \ @@ -118,6 +119,7 @@ e_alert.c \ e_maximize.c \ e_grabinput.c \ e_bg.c \ +e_remember.c \ $(ENLIGHTENMENTHEADERS) enlightenment_LDFLAGS = -export-dynamic @e_libs@ @x_libs@ @dlopen_libs@ diff --git a/src/bin/e_includes.h b/src/bin/e_includes.h index c9c561282..5aa465d6e 100644 --- a/src/bin/e_includes.h +++ b/src/bin/e_includes.h @@ -52,3 +52,4 @@ #include "e_maximize.h" #include "e_grabinput.h" #include "e_bg.h" +#include "e_remember.h" diff --git a/src/bin/e_main.c b/src/bin/e_main.c index 347316749..14ac750dd 100644 --- a/src/bin/e_main.c +++ b/src/bin/e_main.c @@ -403,6 +403,13 @@ main(int argc, char **argv) "failed. Perhaps another window manager is running?\n")); _e_main_shutdown(-1); } + /* do remember stuff */ + if (!e_remember_init()) + { + e_error_message_show(_("Enlightenment cannot setup remember settings.")); + _e_main_shutdown(-1); + } + _e_main_shutdown_push(e_remember_shutdown); e_container_all_freeze(); diff --git a/src/bin/e_remember.c b/src/bin/e_remember.c new file mode 100644 index 000000000..2bda68369 --- /dev/null +++ b/src/bin/e_remember.c @@ -0,0 +1,24 @@ +/* + * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2 + */ +#include "e.h" + +/* local subsystem functions */ + +/* local subsystem globals */ + +/* externally accessible functions */ + +int +e_remember_init(void) +{ + return 1; +} + +int +e_remember_shutdown(void) +{ + return 1; +} + +/* local subsystem functions */ diff --git a/src/bin/e_remember.h b/src/bin/e_remember.h new file mode 100644 index 000000000..160afb175 --- /dev/null +++ b/src/bin/e_remember.h @@ -0,0 +1,83 @@ +/* + * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2 + */ +#ifdef E_TYPEDEFS + +typedef struct _E_Remember E_Remember; +#define E_REMEMBER_MATCH_NAME (1 << 0) +#define E_REMEMBER_MATCH_CLASS (1 << 1) +#define E_REMEMBER_MATCH_TITLE (1 << 2) +#define E_REMEMBER_MATCH_ROLE (1 << 3) + +#define E_REMEMBER_APPLY_POS (1 << 0) +#define E_REMEMBER_APPLY_SIZE (1 << 1) +#define E_REMEMBER_APPLY_LAYER (1 << 2) +#define E_REMEMBER_APPLY_LOCKS (1 << 3) +#define E_REMEMBER_APPLY_BORDER (1 << 4) +#define E_REMEMBER_APPLY_STICKY (1 << 5) +#define E_REMEMBER_APPLY_DESKTOP (1 << 6) +#define E_REMEMBER_APPLY_SHADE (1 << 7) +#define E_REMEMBER_APPLY_ZONE (1 << 8) +#define E_REMEMBER_APPLY_RUN (1 << 9) + +#else +#ifndef E_REMEMBER_H +#define E_REMEMBER_H + +struct _E_Remember +{ + int match; + unsigned char apply_first_only; + int used_count; + char *name, *class, *title, *role; + int apply; + struct { + int pos_x, pos_y; + int res_x, res_y; + int pos_w, pos_h; + + int w, h; + + int layer; + + unsigned char lock_user_location; + unsigned char lock_client_location; + unsigned char lock_user_size; + unsigned char lock_client_size; + unsigned char lock_user_stacking; + unsigned char lock_client_stacking; + unsigned char lock_user_iconify; + unsigned char lock_client_iconify; + unsigned char lock_user_desk; + unsigned char lock_client_desk; + unsigned char lock_user_sticky; + unsigned char lock_client_sticky; + unsigned char lock_user_shade; + unsigned char lock_client_shade; + unsigned char lock_user_maximize; + unsigned char lock_client_mazimize; + unsigned char lock_user_fullscreen; + unsigned char lock_client_fullscreen; + unsigned char lock_border; + unsigned char lock_close; + unsigned char lock_focus_in; + unsigned char lock_focus_out; + unsigned char lock_life; + + char *border; + + unsigned char sticky; + + unsigned char shaded; + + int zone; + + char *command; + } prop; +}; + +EAPI int e_remember_init(void); +EAPI int e_remember_shutdown(void); + +#endif +#endif