Enlightenment CVS committal

Author  : kwo
Project : e16
Module  : e

Dir     : e16/e/src


Modified Files:
      Tag: branch-exp
        E.h actions.c areas.c config.c desktops.c econfig.c econfig.h 
        emodule.h fx.c ipc.c main.c mod-btn.c mod-desks.c mod-ibox.c 
        mod-menus.c mod-misc.c mod-tt.c moveresize.c settings.c 
        slideout.c 


Log Message:
Fx module (cleanups missing).
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/E.h,v
retrieving revision 1.314.2.26
retrieving revision 1.314.2.27
diff -u -3 -r1.314.2.26 -r1.314.2.27
--- E.h 24 Aug 2004 18:15:10 -0000      1.314.2.26
+++ E.h 24 Aug 2004 23:37:50 -0000      1.314.2.27
@@ -1913,16 +1913,6 @@
 void                FocusNewDeskBegin(void);
 void                FocusNewDesk(void);
 
-/* fx.c */
-#define FX_OP_START  1
-#define FX_OP_STOP   2
-#define FX_OP_TOGGLE 3
-void                FX_Op(const char *name, int fx_op);
-void                FX_DeskChange(void);
-void                FX_Pause(void);
-char              **FX_Active(int *num);
-int                 FX_IsOn(const char *effect);
-
 #if ENABLE_GNOME
 /* gnome.c */
 void                GNOME_SetHints(Window win_wm_check);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/actions.c,v
retrieving revision 1.174.2.10
retrieving revision 1.174.2.11
diff -u -3 -r1.174.2.10 -r1.174.2.11
--- actions.c   22 Aug 2004 20:03:48 -0000      1.174.2.10
+++ actions.c   24 Aug 2004 23:37:51 -0000      1.174.2.11
@@ -3108,17 +3108,6 @@
 }
 
 static int
-doFX(EWin * edummy, const char *params)
-{
-   EDBUG(6, "doFX");
-   if (params)
-      FX_Op((const char *)params, FX_OP_TOGGLE);
-   autosave();
-   EDBUG_RETURN(0);
-   edummy = NULL;
-}
-
-static int
 doSetPagerHiq(EWin * edummy, const char *params)
 {
    EDBUG(6, "doSetPagerHiq");
@@ -3544,7 +3533,7 @@
    ACTION_ITEM(0, 0, 1, 0, doLinearAreaSet),   /* ACTION_LINEAR_AREA_SET */
    ACTION_ITEM(0, 0, 1, 0, doLinearAreaMoveBy),        /* ACTION_LINEAR_MOVE_BY */
    ACTION_ITEM(0, 0, 0, 0, doAbout),   /* ACTION_ABOUT */
-   ACTION_ITEM(0, 0, 0, 0, doFX),      /* ACTION_FX */
+   ACTION_ITEM(0, 0, 0, 0, NULL),      /* ACTION_FX */
    ACTION_ITEM(1, 0, 0, 0, doMoveWinToLinearArea),     /* 
ACTION_MOVE_WINDOW_TO_LINEAR_AREA */
    ACTION_ITEM(1, 0, 0, 0, doMoveWinByArea),   /* ACTION_MOVE_WINDOW_BY_LINEAR_AREA */
    ACTION_ITEM(0, 0, 0, 0, doSetPagerHiq),     /* ACTION_SET_PAGER_HIQ */
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/areas.c,v
retrieving revision 1.71.2.4
retrieving revision 1.71.2.5
diff -u -3 -r1.71.2.4 -r1.71.2.5
--- areas.c     15 Aug 2004 10:00:20 -0000      1.71.2.4
+++ areas.c     24 Aug 2004 23:37:52 -0000      1.71.2.5
@@ -259,7 +259,7 @@
    if (EventDebug(EDBUG_TYPE_DESKS))
       Eprintf("SetCurrentArea %d,%d\n", ax, ay);
 
-   ModulesSignal(ESIGNAL_AREA_SWITCH);
+   ModulesSignal(ESIGNAL_AREA_SWITCH_START);
 
    dx = VRoot.w * (ax - desks.desk[desks.current].current_area_x);
    dy = VRoot.h * (ay - desks.desk[desks.current].current_area_y);
@@ -339,8 +339,7 @@
    /* re-focus on a new ewin on that new desktop area */
    FocusNewDesk();
 
-   /* tell the FX api abotu the change */
-   FX_DeskChange();
+   ModulesSignal(ESIGNAL_AREA_SWITCH_DONE);
 
    /* update which "edge flip resistance" detector windows are visible */
    EdgeWindowsShow();
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/config.c,v
retrieving revision 1.111.2.12
retrieving revision 1.111.2.13
diff -u -3 -r1.111.2.12 -r1.111.2.13
--- config.c    22 Aug 2004 20:03:49 -0000      1.111.2.12
+++ config.c    24 Aug 2004 23:37:52 -0000      1.111.2.13
@@ -983,33 +983,42 @@
 int
 LoadEConfig(char *themelocation)
 {
-   char                s[FILEPATH_LEN_MAX], ss[FILEPATH_LEN_MAX];
+   static const char  *const config_files[] = {
+      "init.cfg",
+      "control.cfg",
+      "textclasses.cfg",
+      "backup-textclasses.cfg",
+      "colormodifiers.cfg",
+      "backup-colormodifiers.cfg",
+      "imageclasses.cfg",
+      "backup-imageclasses.cfg",
+      "sound.cfg",
+      "desktops.cfg",
+      "actionclasses.cfg",
+      "cursors.cfg",
+      "backup-cursors.cfg",
+      "buttons.cfg",
+      "slideouts.cfg",
+      "borders.cfg",
+      "backup-borders.cfg",
+      "windowmatches.cfg",
+      "tooltips.cfg",
+      "backup-tooltips.cfg",
+      "menustyles.cfg",
+      "keybindings.cfg",
+      "...e_autosave.cfg",
+      "menus.cfg"
+   };
+   char                s[FILEPATH_LEN_MAX];
    char               *theme;
-   FILE               *f;
+   Progressbar        *p = NULL;
+   int                 i;
 
    EDBUG(5, "LoadEConfig");
 
    Esnprintf(s, sizeof(s), "%s/", EDirUser());
    Esnprintf(s, sizeof(s), "%s/config/", EDirRoot());
 
-   /* save the current theme */
-   if ((themelocation) && (themelocation[0] != 0))
-     {
-       Etmp(s);
-       f = fopen(s, "w");
-       if (f)
-         {
-            fprintf(f, "%s\n", themelocation);
-            fclose(f);
-         }
-       Esnprintf(ss, sizeof(ss), "%s/user_theme.cfg", EDirUser());
-       E_mv(s, ss);
-       if (!isfile(ss))
-          Alert(_("WARNING!\n" "There was an error writing the file:\n" "%s\n"
-                  "This may be due to lack of disk space, quota or\n"
-                  "filesystem permissions.\n"), ss);
-     }
-
    theme = ThemeFind(themelocation);
    if (!theme)
      {
@@ -1025,77 +1034,47 @@
    Mode.theme.path = Estrdup(theme);
    Esnprintf(s, sizeof(s), "%s/", theme);
 
-   {
-      Progressbar        *p = NULL;
-      int                 i;
-      static const char  *const config_files[] = {
-        "init.cfg",
-        "control.cfg",
-        "textclasses.cfg",
-        "backup-textclasses.cfg",
-        "colormodifiers.cfg",
-        "backup-colormodifiers.cfg",
-        "imageclasses.cfg",
-        "backup-imageclasses.cfg",
-        "sound.cfg",
-        "desktops.cfg",
-        "actionclasses.cfg",
-        "cursors.cfg",
-        "backup-cursors.cfg",
-        "buttons.cfg",
-        "slideouts.cfg",
-        "borders.cfg",
-        "backup-borders.cfg",
-        "windowmatches.cfg",
-        "tooltips.cfg",
-        "backup-tooltips.cfg",
-        "menustyles.cfg",
-        "keybindings.cfg",
-        "...e_autosave.cfg",
-        "menus.cfg"
-      };
-
-      for (i = 0; i < (int)(sizeof(config_files) / sizeof(char *)); i++)
-
-       {
-          if (i == 1)
-             CreateStartupDisplay(1);
-
-          if ((i > 0) && (!p) && (!init_win_ext))
-            {
-               p = ProgressbarCreate(_("Enlightenment Starting..."), 400, 16);
-               if (p)
-                  ProgressbarShow(p);
-            }
-
-          if (!strcmp(config_files[i], "...e_autosave.cfg"))
-            {
-               is_autosave = 1;
-               /* This file is always preprocessed at a known location: */
-               /*          
-                * if (exists(GetSMFile()))
-                * LoadOpenConfigFile(OpenConfigFileForReading(GetSMFile(), 0));
-                * else */
-               EDBUG(5, "Dummy-LoadOpenConfigFile");
-               LoadOpenConfigFile(OpenConfigFileForReading
-                                  (GetGenericSMFile(), 0));
-               SoundInit();
-               is_autosave = 0;
-            }
-          else
-             LoadConfigFile(config_files[i]);
-
-          if (p)
-             ProgressbarSet(p, (i * 100) /
-                            (int)(sizeof(config_files) / sizeof(char *)));
-       }
-
-      if (p)
-        ProgressbarDestroy(p);
-   }
+   for (i = 0; i < (int)(sizeof(config_files) / sizeof(char *)); i++)
+
+     {
+       if (i == 1)
+          CreateStartupDisplay(1);
+
+       if ((i > 0) && (!p) && (!init_win_ext))
+         {
+            p = ProgressbarCreate(_("Enlightenment Starting..."), 400, 16);
+            if (p)
+               ProgressbarShow(p);
+         }
+
+       if (!strcmp(config_files[i], "...e_autosave.cfg"))
+         {
+            is_autosave = 1;
+            /* This file is always preprocessed at a known location: */
+            /*          
+             * if (exists(GetSMFile()))
+             * LoadOpenConfigFile(OpenConfigFileForReading(GetSMFile(), 0));
+             * else */
+            EDBUG(5, "Dummy-LoadOpenConfigFile");
+            LoadOpenConfigFile(OpenConfigFileForReading
+                               (GetGenericSMFile(), 0));
+            SoundInit();
+            is_autosave = 0;
+         }
+       else
+          LoadConfigFile(config_files[i]);
+
+       if (p)
+          ProgressbarSet(p, (i * 100) /
+                         (int)(sizeof(config_files) / sizeof(char *)));
+     }
+
+   if (p)
+      ProgressbarDestroy(p);
+
    if (theme)
       Efree(theme);
-   themelocation = NULL;
+
    EDBUG_RETURN(0);
 }
 
@@ -1107,7 +1086,7 @@
 {
    ActionClass        *ac;
    Action             *aa;
-   int                 i, num;
+   int                 i;
 
    ConfigurationSave();
 
@@ -1200,19 +1179,6 @@
             fprintf(autosavefile, "1000\n");
          }
      }
-   {
-      char              **slist;
-
-      slist = FX_Active(&num);
-      if (slist)
-       {
-          fprintf(autosavefile, "18 999\n");
-          for (i = 0; i < num; i++)
-             fprintf(autosavefile, "%s\n", slist[i]);
-          freestrlist(slist, num);
-          fprintf(autosavefile, "1000\n");
-       }
-   }
 
    ModuleConfigSave("btn", autosavefile);
    ModuleConfigSave("ibox", autosavefile);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/desktops.c,v
retrieving revision 1.95.2.10
retrieving revision 1.95.2.11
diff -u -3 -r1.95.2.10 -r1.95.2.11
--- desktops.c  22 Aug 2004 20:03:49 -0000      1.95.2.10
+++ desktops.c  24 Aug 2004 23:37:52 -0000      1.95.2.11
@@ -706,7 +706,7 @@
    if (EventDebug(EDBUG_TYPE_DESKS))
       Eprintf("GotoDesktop %d\n", desk);
 
-   ModulesSignal(ESIGNAL_DESK_SWITCH);
+   ModulesSignal(ESIGNAL_DESK_SWITCH_START);
 
    ActionsSuspend();
 
@@ -776,6 +776,8 @@
    ActionsResume();
    FocusNewDesk();
 
+   ModulesSignal(ESIGNAL_DESK_SWITCH_DONE);
+
    if (Mode.mode == MODE_DESKSWITCH)
       Mode.mode = MODE_NONE;
 
@@ -916,7 +918,9 @@
    MoveStickyWindowsToCurrentDesk();
    StackDesktop(desks.current);
    FocusNewDesk();
-   FX_DeskChange();
+#if 0                          /* FIXME - TBD */
+   ModulesSignal(ESIGNAL_DESK_SWITCH_DONE);
+#endif
    RedrawPagersForDesktop(desk, 3);
    ForceUpdatePagersForDesktop(desk);
    UpdatePagerSel();
@@ -944,8 +948,9 @@
    desks.current = desks.order[0];
    MoveStickyWindowsToCurrentDesk();
    StackDesktop(desks.current);
-   FocusNewDesk();
-   FX_DeskChange();
+#if 0                          /* FIXME - TBD */
+   ModulesSignal(ESIGNAL_DESK_SWITCH_DONE);
+#endif
    RedrawPagersForDesktop(desks.order[0], 3);
    ForceUpdatePagersForDesktop(desks.order[0]);
    UpdatePagerSel();
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/econfig.c,v
retrieving revision 1.1.2.5
retrieving revision 1.1.2.6
diff -u -3 -r1.1.2.5 -r1.1.2.6
--- econfig.c   22 Aug 2004 01:30:08 -0000      1.1.2.5
+++ econfig.c   24 Aug 2004 23:37:52 -0000      1.1.2.6
@@ -56,22 +56,22 @@
    switch (ci->type)
      {
      case ITEM_TYPE_BOOL:
-       if (!eX_db_int_get(edf, name, &my_int))
+       if (!edf || !eX_db_int_get(edf, name, &my_int))
           my_int = (ci->dflt) ? 1 : 0;
        *((char *)ci->ptr) = my_int;
        break;
      case ITEM_TYPE_INT:
-       if (!eX_db_int_get(edf, name, &my_int))
+       if (!edf || !eX_db_int_get(edf, name, &my_int))
           my_int = ci->dflt;
        *((int *)ci->ptr) = my_int;
        break;
      case ITEM_TYPE_FLOAT:
-       if (!eX_db_float_get(edf, name, &my_float))
+       if (!edf || !eX_db_float_get(edf, name, &my_float))
           my_float = ci->dflt;
        *((float *)ci->ptr) = my_float;
        break;
      case ITEM_TYPE_STRING:
-       *((char **)ci->ptr) = eX_db_str_get(edf, name);
+       *((char **)ci->ptr) = (edf) ? eX_db_str_get(edf, name) : NULL;
        break;
      }
 }
@@ -126,8 +126,7 @@
    memset(&Conf, 0, sizeof(EConf));
 
    edf = eX_db_open_read(ConfigurationGetFile(buf, sizeof(buf)));
-   if (edf == NULL)
-      return;
+   /* NB! We have to assign the defaults even if it doesn't exist */
 
    /* Load module configs */
    pml = ModuleListGet(&nml);
@@ -141,7 +140,8 @@
      }
    ModuleListFree(pml);
 
-   e_db_close(edf);
+   if (edf)
+      e_db_close(edf);
 }
 
 void
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/econfig.h,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -3 -r1.1.2.2 -r1.1.2.3
--- econfig.h   3 Aug 2004 23:19:03 -0000       1.1.2.2
+++ econfig.h   24 Aug 2004 23:37:52 -0000      1.1.2.3
@@ -44,6 +44,9 @@
 #define CFG_ITEM_INT(conf, name, dflt)   { #name, &conf.name, ITEM_TYPE_INT, dflt }
 #define CFG_ITEM_FLOAT(conf, name, dflt) { #name, &conf.name, ITEM_TYPE_FLOAT, dflt }
 
+/* Change to this? */
+#define CFR_ITEM_BOOL(conf, name, dflt)  { #name, &conf, ITEM_TYPE_BOOL, dflt }
+
 const CfgItem      *CfgItemFind(const CfgItem * pcl, int ncl, const char *name);
 void                CfgItemToString(const CfgItem * ci, char *buf, int len);
 
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/emodule.h,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -3 -r1.1.2.1 -r1.1.2.2
--- emodule.h   31 Jul 2004 20:25:53 -0000      1.1.2.1
+++ emodule.h   24 Aug 2004 23:37:53 -0000      1.1.2.2
@@ -51,8 +51,14 @@
    ESIGNAL_INIT,
    ESIGNAL_START,
    ESIGNAL_EXIT,
-   ESIGNAL_AREA_SWITCH,
-   ESIGNAL_DESK_SWITCH,
+   ESIGNAL_AREA_SWITCH_START,
+   ESIGNAL_AREA_SWITCH_DONE,
+   ESIGNAL_DESK_SWITCH_START,
+   ESIGNAL_DESK_SWITCH_DONE,
+   ESIGNAL_MOVE_START,
+   ESIGNAL_MOVE_DONE,
+   ESIGNAL_RESIZE_START,
+   ESIGNAL_RESIZE_DONE,
 } e_signal_t;
 
 #if 0                          /* Maybe later */
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/fx.c,v
retrieving revision 1.41.2.3
retrieving revision 1.41.2.4
diff -u -3 -r1.41.2.3 -r1.41.2.4
--- fx.c        22 Aug 2004 20:03:49 -0000      1.41.2.3
+++ fx.c        24 Aug 2004 23:37:53 -0000      1.41.2.4
@@ -23,6 +23,8 @@
 #include "E.h"
 #include <math.h>
 
+/* FIXME - Needs cleaning up */
+
 /* Someone may do this right one day, but for now - kill'em */
 #define ENABLE_FX_INFO 0
 
@@ -30,6 +32,10 @@
 #define M_PI_2 (3.141592654 / 2)
 #endif
 
+#define FX_OP_START  1
+#define FX_OP_STOP   2
+#define FX_OP_TOGGLE 3
+
 typedef struct _fxhandler
 {
    const char         *name;
@@ -37,204 +43,11 @@
    void                (*desk_func) (void);
    void                (*quit_func) (void);
    void                (*pause_func) (void);
-   char                in_use;
+   char                enabled;
    char                paused;
 }
 FXHandler;
 
-static void         FX_Ripple_Init(const char *name);
-static void         FX_Ripple_Desk(void);
-static void         FX_Ripple_Quit(void);
-static void         FX_Ripple_Pause(void);
-
-#ifdef E_FX_RAINDROPS          /* FIXME */
-static void         FX_Raindrops_Init(const char *name);
-static void         FX_Raindrops_Desk(void);
-static void         FX_Raindrops_Quit(void);
-static void         FX_Raindrops_Pause(void);
-#endif
-static void         FX_Waves_Init(const char *name);
-static void         FX_Waves_Desk(void);
-static void         FX_Waves_Quit(void);
-static void         FX_Waves_Pause(void);
-static void         FX_ImageSpinner_Init(const char *name);
-static void         FX_ImageSpinner_Desk(void);
-static void         FX_ImageSpinner_Quit(void);
-static void         FX_ImageSpinner_Pause(void);
-
-static FXHandler    fx_handlers[] = {
-   {"ripples",
-    FX_Ripple_Init, FX_Ripple_Desk, FX_Ripple_Quit, FX_Ripple_Pause,
-    0, 0},
-#ifdef E_FX_RAINDROPS          /* FIXME */
-   {"raindrops",
-    FX_Raindrops_Init, FX_Raindrops_Desk, FX_Raindrops_Quit,
-    FX_Raindrops_Pause,
-    0, 0},
-#endif
-   {"waves",
-    FX_Waves_Init, FX_Waves_Desk, FX_Waves_Quit, FX_Waves_Pause,
-    0, 0},
-   {"imagespinner",
-    FX_ImageSpinner_Init, FX_ImageSpinner_Desk, FX_ImageSpinner_Quit,
-    FX_ImageSpinner_Pause,
-    0, 0}
-};
-#define N_FX_HANDLERS (sizeof(fx_handlers)/sizeof(FXHandler))
-
-/****************************** Effect handlers *****************************/
-
-static FXHandler   *
-FX_Find(const char *name)
-{
-   unsigned int        i;
-
-   for (i = 0; i < N_FX_HANDLERS; i++)
-      if (!strcmp(fx_handlers[i].name, name))
-        return &fx_handlers[i];
-
-   return NULL;
-}
-
-void
-FX_Op(const char *name, int fx_op)
-{
-   FXHandler          *fxh;
-
-   fxh = FX_Find(name);
-   if (fxh == NULL)
-      return;
-
-   switch (fx_op)
-     {
-     case FX_OP_START:
-       if (fxh->in_use)
-          break;
-      do_start:
-       if (fxh->init_func)
-          fxh->init_func(name);
-       fxh->in_use = 1;
-       break;
-
-     case FX_OP_STOP:
-       if (!fxh->in_use)
-          break;
-      do_stop:
-       if (fxh->quit_func)
-          fxh->quit_func();
-       fxh->in_use = 0;
-       break;
-
-     case FX_OP_TOGGLE:
-       if (fxh->in_use)
-          goto do_stop;
-       else
-          goto do_start;
-       break;
-     }
-}
-
-#if 0
-
-/*
- e  Doesn't look like this is ever used, commented out for now
- * --Mandrake
- */
-static void
-FX_Activate(char *effect)
-{
-   unsigned int        i;
-
-   for (i = 0; i < N_FX_HANDLERS; i++)
-     {
-       if (!strcmp(fx_handlers[i].name, effect))
-         {
-            if (!fx_handlers[i].in_use)
-              {
-                 fx_handlers[i].in_use = 1;
-                 fx_handlers[i].init_func(effect);
-              }
-         }
-     }
-   return;
-}
-#endif
-
-void
-FX_DeskChange(void)
-{
-   unsigned int        i;
-
-   for (i = 0; i < N_FX_HANDLERS; i++)
-     {
-       if (fx_handlers[i].in_use)
-         {
-            if (fx_handlers[i].desk_func)
-               fx_handlers[i].desk_func();
-         }
-     }
-}
-
-void
-FX_Pause(void)
-{
-   unsigned int        i;
-
-   for (i = 0; i < N_FX_HANDLERS; i++)
-     {
-       if (fx_handlers[i].in_use)
-         {
-            if (fx_handlers[i].paused)
-              {
-                 if (fx_handlers[i].pause_func)
-                    fx_handlers[i].pause_func();
-                 fx_handlers[i].paused = 1;
-              }
-            else
-              {
-                 if (fx_handlers[i].pause_func)
-                    fx_handlers[i].pause_func();
-                 fx_handlers[i].paused = 0;
-              }
-         }
-     }
-}
-
-char              **
-FX_Active(int *num)
-{
-   unsigned int        i;
-   char              **list = NULL;
-
-   *num = 0;
-   for (i = 0; i < N_FX_HANDLERS; i++)
-     {
-       if (fx_handlers[i].in_use)
-         {
-            (*num)++;
-            list = Erealloc(list, sizeof(char *) * (*num));
-
-            list[(*num) - 1] = Estrdup(fx_handlers[i].name);
-         }
-     }
-   return list;
-}
-
-int
-FX_IsOn(const char *effect)
-{
-   unsigned int        i;
-
-   for (i = 0; i < N_FX_HANDLERS; i++)
-     {
-       if (!strcmp(fx_handlers[i].name, effect))
-         {
-            return fx_handlers[i].in_use;
-         }
-     }
-   return 0;
-}
-
 /****************************** RIPPLES *************************************/
 
 #define fx_ripple_waterh 64
@@ -822,12 +635,10 @@
 }
 
 static void
-FX_Waves_Init(const char *name)
+FX_Waves_Init(const char *name __UNUSED__)
 {
    fx_wave_count = 0;
    DoIn("FX_WAVE_TIMEOUT", 0.066, FX_Wave_timeout, 0, NULL);
-   return;
-   name = NULL;
 }
 
 static void
@@ -981,6 +792,149 @@
 
 /****************************************************************************/
 
+static FXHandler    fx_handlers[] = {
+   {"ripples",
+    FX_Ripple_Init, FX_Ripple_Desk, FX_Ripple_Quit, FX_Ripple_Pause,
+    0, 0},
+   {"waves",
+    FX_Waves_Init, FX_Waves_Desk, FX_Waves_Quit, FX_Waves_Pause,
+    0, 0},
+#ifdef E_FX_RAINDROPS          /* FIXME */
+   {"raindrops",
+    FX_Raindrops_Init, FX_Raindrops_Desk, FX_Raindrops_Quit,
+    FX_Raindrops_Pause,
+    0, 0},
+#endif
+   {"imagespinner",
+    FX_ImageSpinner_Init, FX_ImageSpinner_Desk, FX_ImageSpinner_Quit,
+    FX_ImageSpinner_Pause,
+    0, 0}
+};
+#define N_FX_HANDLERS (sizeof(fx_handlers)/sizeof(FXHandler))
+
+/****************************** Effect handlers *****************************/
+
+static FXHandler   *
+FX_Find(const char *name)
+{
+   unsigned int        i;
+
+   for (i = 0; i < N_FX_HANDLERS; i++)
+      if (!strcmp(fx_handlers[i].name, name))
+        return &fx_handlers[i];
+
+   return NULL;
+}
+
+static void
+FX_Op(const char *name, int fx_op)
+{
+   FXHandler          *fxh;
+
+   fxh = FX_Find(name);
+   if (fxh == NULL)
+      return;
+
+   switch (fx_op)
+     {
+     case FX_OP_START:
+       if (fxh->enabled)
+          break;
+      do_start:
+       if (fxh->init_func)
+          fxh->init_func(name);
+       fxh->enabled = 1;
+       break;
+
+     case FX_OP_STOP:
+       if (!fxh->enabled)
+          break;
+      do_stop:
+       if (fxh->quit_func)
+          fxh->quit_func();
+       fxh->enabled = 0;
+       break;
+
+     case FX_OP_TOGGLE:
+       if (fxh->enabled)
+          goto do_stop;
+       else
+          goto do_start;
+       break;
+     }
+}
+
+static void
+FX_DeskChange(void)
+{
+   unsigned int        i;
+
+   for (i = 0; i < N_FX_HANDLERS; i++)
+     {
+       if (fx_handlers[i].enabled)
+         {
+            if (fx_handlers[i].desk_func)
+               fx_handlers[i].desk_func();
+         }
+     }
+}
+
+static void
+FX_Pause(void)
+{
+   unsigned int        i;
+
+   for (i = 0; i < N_FX_HANDLERS; i++)
+     {
+       if (fx_handlers[i].enabled)
+         {
+            if (fx_handlers[i].paused)
+              {
+                 if (fx_handlers[i].pause_func)
+                    fx_handlers[i].pause_func();
+                 fx_handlers[i].paused = 1;
+              }
+            else
+              {
+                 if (fx_handlers[i].pause_func)
+                    fx_handlers[i].pause_func();
+                 fx_handlers[i].paused = 0;
+              }
+         }
+     }
+}
+
+static void
+FX_StartAll(void)
+{
+   unsigned int        i;
+   FXHandler          *fxh;
+
+   for (i = 0; i < N_FX_HANDLERS; i++)
+     {
+       fxh = &fx_handlers[i];
+       if (fxh->enabled && fxh->init_func)
+          fxh->init_func(fxh->name);
+     }
+}
+
+static int
+FX_IsOn(const char *effect)
+{
+   unsigned int        i;
+
+   for (i = 0; i < N_FX_HANDLERS; i++)
+     {
+       if (!strcmp(fx_handlers[i].name, effect))
+         {
+            return fx_handlers[i].enabled;
+         }
+     }
+   return 0;
+}
+
+/****************************************************************************/
+
 #if 0
 /*
  * Configuration load/save
@@ -1024,3 +978,224 @@
           "Done loading an FX block.  Outcome is likely not good.\n"));
 }
 #endif
+
+/*
+ * Fx Module
+ */
+
+static void
+FxSighan(int sig)
+{
+   switch (sig)
+     {
+     case ESIGNAL_START:
+       FX_StartAll();
+       break;
+     case ESIGNAL_AREA_SWITCH_START:
+     case ESIGNAL_DESK_SWITCH_START:
+       break;
+     case ESIGNAL_AREA_SWITCH_DONE:
+     case ESIGNAL_DESK_SWITCH_DONE:
+       FX_DeskChange();
+       break;
+     case ESIGNAL_MOVE_START:
+     case ESIGNAL_MOVE_DONE:
+     case ESIGNAL_RESIZE_START:
+     case ESIGNAL_RESIZE_DONE:
+       FX_Pause();
+       break;
+     }
+}
+
+#if 0                          /* Obsolete */
+static int
+FxConfigSave(FILE * fs)
+{
+   char              **slist;
+
+   slist = FX_Active(&num);
+   if (slist)
+     {
+       fprintf(autosavefile, "18 999\n");
+       for (i = 0; i < num; i++)
+          fprintf(autosavefile, "%s\n", slist[i]);
+       freestrlist(slist, num);
+       fprintf(autosavefile, "1000\n");
+     }
+}
+#endif
+
+static char         tmp_effect_raindrops;
+static char         tmp_effect_ripples;
+static char         tmp_effect_waves;
+
+static void
+CB_ConfigureFX(int val, void *data __UNUSED__)
+{
+   if (val < 2)
+     {
+       FX_Op("raindrops", tmp_effect_raindrops ? FX_OP_START : FX_OP_STOP);
+       FX_Op("ripples", tmp_effect_ripples ? FX_OP_START : FX_OP_STOP);
+       FX_Op("waves", tmp_effect_waves ? FX_OP_START : FX_OP_STOP);
+     }
+   autosave();
+}
+
+static void
+FxSettings(void)
+{
+   Dialog             *d;
+   DItem              *table, *di;
+
+   if ((d =
+       FindItem("CONFIGURE_EFFECTS", 0, LIST_FINDBY_NAME, LIST_TYPE_DIALOG)))
+     {
+       SoundPlay("SOUND_SETTINGS_ACTIVE");
+       ShowDialog(d);
+       return;
+     }
+   SoundPlay("SOUND_SETTINGS_FX");
+
+   tmp_effect_raindrops = FX_IsOn("raindrops");
+   tmp_effect_ripples = FX_IsOn("ripples");
+   tmp_effect_waves = FX_IsOn("waves");
+
+   d = DialogCreate("CONFIGURE_EFFECTS");
+   DialogSetTitle(d, _("Miscellaneous Effects Settings"));
+
+   table = DialogInitItem(d);
+   DialogItemTableSetOptions(table, 1, 0, 0, 0);
+
+   if (Conf.dialogs.headers)
+     {
+       di = DialogAddItem(table, DITEM_IMAGE);
+       DialogItemSetPadding(di, 2, 2, 2, 2);
+       DialogItemImageSetFile(di, "pix/fx.png");
+
+       di = DialogAddItem(table, DITEM_TEXT);
+       DialogItemSetPadding(di, 2, 2, 2, 2);
+       DialogItemSetFill(di, 1, 0);
+       DialogItemTextSetText(di,
+                             _("Enlightenment Miscellaneous Effects\n"
+                               "Settings Dialog\n"));
+
+       di = DialogAddItem(table, DITEM_SEPARATOR);
+       DialogItemSetPadding(di, 2, 2, 2, 2);
+       DialogItemSetFill(di, 1, 0);
+       DialogItemSeparatorSetOrientation(di, 0);
+     }
+
+   /* Effects */
+   di = DialogAddItem(table, DITEM_TEXT);
+   DialogItemSetPadding(di, 2, 2, 2, 2);
+   DialogItemSetFill(di, 1, 0);
+// DialogItemSetAlign(di, 0, 512);
+   DialogItemTextSetText(di, _("Effects"));
+#if 0                          /* Disabled */
+   di = DialogAddItem(table, DITEM_CHECKBUTTON);
+   DialogItemSetPadding(di, 2, 2, 2, 2);
+   DialogItemSetFill(di, 1, 0);
+   DialogItemCheckButtonSetText(di, _("Enable Effect: Raindrops"));
+   DialogItemCheckButtonSetState(di, tmp_effect_raindrops);
+   DialogItemCheckButtonSetPtr(di, &tmp_effect_raindrops);
+#endif
+   di = DialogAddItem(table, DITEM_CHECKBUTTON);
+   DialogItemSetPadding(di, 2, 2, 2, 2);
+   DialogItemSetFill(di, 1, 0);
+   DialogItemCheckButtonSetText(di, _("Ripples"));
+   DialogItemCheckButtonSetState(di, tmp_effect_ripples);
+   DialogItemCheckButtonSetPtr(di, &tmp_effect_ripples);
+
+   di = DialogAddItem(table, DITEM_CHECKBUTTON);
+   DialogItemSetPadding(di, 2, 2, 2, 2);
+   DialogItemSetFill(di, 1, 0);
+   DialogItemCheckButtonSetText(di, _("Waves"));
+   DialogItemCheckButtonSetState(di, tmp_effect_waves);
+   DialogItemCheckButtonSetPtr(di, &tmp_effect_waves);
+
+   di = DialogAddItem(table, DITEM_SEPARATOR);
+   DialogItemSetPadding(di, 2, 2, 2, 2);
+   DialogItemSetFill(di, 1, 0);
+   DialogItemSeparatorSetOrientation(di, 0);
+
+   DialogAddButton(d, _("OK"), CB_ConfigureFX, 1);
+   DialogAddButton(d, _("Apply"), CB_ConfigureFX, 0);
+   DialogAddButton(d, _("Close"), CB_ConfigureFX, 1);
+   DialogSetExitFunction(d, CB_ConfigureFX, 2, d);
+   DialogBindKey(d, "Escape", DialogCallbackClose, 0, d);
+   DialogBindKey(d, "Return", CB_ConfigureFX, 0, d);
+
+   ShowDialog(d);
+}
+
+static void
+FxConfigure(const char *params __UNUSED__)
+{
+   FxSettings();
+}
+
+static void
+FxIpc(const char *params, Client * c __UNUSED__)
+{
+   char                word1[FILEPATH_LEN_MAX];
+   char                word2[FILEPATH_LEN_MAX];
+
+   if (!params)
+      return;
+
+   word1[0] = '\0';
+   word2[0] = '\0';
+
+   word(params, 1, word1);
+
+   if (!strcmp(word1, "raindrops") || !strcmp(word1, "ripples") ||
+       !strcmp(word1, "waves"))
+     {
+       word(params, 2, word2);
+       if (!strcmp(word2, ""))
+          FX_Op(word1, FX_OP_TOGGLE);
+       else if (!strcmp(word2, "on"))
+          FX_Op(word1, FX_OP_START);
+       else if (!strcmp(word2, "off"))
+          FX_Op(word1, FX_OP_STOP);
+       else if (!strcmp(word2, "?"))
+          IpcPrintf("%s: %s", word1, FX_IsOn(word1) ? "on" : "off");
+       else
+          IpcPrintf("Error: unknown mode specified");
+     }
+}
+
+IpcItem             FxIpcArray[] = {
+   {
+    FxIpc,
+    "fx", "fx",
+    "Toggle various effects on/off",
+    "Use \"fx <effect> <mode>\" to set the mode of a particular effect\n"
+    "Use \"fx <effect> ?\" to get the current mode\n"
+    "the following effects are available\n"
+    " ripples <on/off> (ripples that act as a water effect on the screen)\n"
+    " waves <on/off> (waves that act as a water effect on the screen)\n"}
+   ,
+};
+#define N_IPC_FUNCS (sizeof(FxIpcArray)/sizeof(IpcItem))
+
+static const CfgItem FxCfgItems[] = {
+   CFR_ITEM_BOOL(fx_handlers[0].enabled, ripples.enabled, 0),
+   CFR_ITEM_BOOL(fx_handlers[1].enabled, waves.enabled, 0),
+#ifdef E_FX_RAINDROPS          /* FIXME */
+   CFR_ITEM_BOOL(fx_handlers[2].enabled, raindrops.enabled, 0),
+#endif
+};
+#define N_CFG_ITEMS (sizeof(FxCfgItems)/sizeof(CfgItem))
+
+/*
+ * Module descriptor
+ */
+EModule             ModEffects = {
+   "effects", "efx",
+   FxSighan,
+   NULL, NULL,
+   FxConfigure,
+   {N_CFG_ITEMS, FxCfgItems},
+   {0, NULL}
+};
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/ipc.c,v
retrieving revision 1.174.2.14
retrieving revision 1.174.2.15
diff -u -3 -r1.174.2.14 -r1.174.2.15
--- ipc.c       23 Aug 2004 21:14:43 -0000      1.174.2.14
+++ ipc.c       24 Aug 2004 23:37:53 -0000      1.174.2.15
@@ -1897,408 +1897,6 @@
       CommsSend(c, buf);
 }
 
-#if 0
-static void
-IPC_FX(const char *params, Client * c)
-{
-   char                buf[FILEPATH_LEN_MAX];
-
-   buf[0] = 0;
-
-   if (params)
-     {
-
-       char                word1[FILEPATH_LEN_MAX];
-       char                word2[FILEPATH_LEN_MAX];
-
-       word1[0] = '\0';
-       word2[0] = '\0';
-
-       word(params, 1, word1);
-
-       if (!strcmp(word1, "raindrops") || !strcmp(word1, "ripples") ||
-           !strcmp(word1, "waves"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, ""))
-               FX_Op(word1, FX_OP_TOGGLE);
-            else if (!strcmp(word2, "on"))
-               FX_Op(word1, FX_OP_START);
-            else if (!strcmp(word2, "off"))
-               FX_Op(word1, FX_OP_STOP);
-            else if (!strcmp(word2, "?"))
-               Esnprintf(buf, sizeof(buf), "%s: %s", word1,
-                         FX_IsOn(word1) ? "on" : "off");
-            else
-               Esnprintf(buf, sizeof(buf), "Error: unknown mode specified");
-         }
-       else if (!strcmp(word1, "deskslide"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, "on"))
-              {
-                 Conf.desks.slidein = 1;
-              }
-            else if (!strcmp(word2, "off"))
-              {
-                 Conf.desks.slidein = 0;
-              }
-            else if (!strcmp(word2, "?"))
-              {
-                 if (Conf.desks.slidein)
-                    Esnprintf(buf, sizeof(buf), "deskslide: on");
-                 else
-                    Esnprintf(buf, sizeof(buf), "deskslide: off");
-              }
-            else
-              {
-                 Esnprintf(buf, sizeof(buf), "Error: unknown mode specified");
-              }
-         }
-       else if (!strcmp(word1, "mapslide"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, "on"))
-              {
-                 Conf.mapslide = 1;
-              }
-            else if (!strcmp(word2, "off"))
-              {
-                 Conf.mapslide = 0;
-              }
-            else if (!strcmp(word2, "?"))
-              {
-                 if (Conf.mapslide)
-                    Esnprintf(buf, sizeof(buf), "mapslide: on");
-                 else
-                    Esnprintf(buf, sizeof(buf), "mapslide: off");
-              }
-            else
-              {
-                 Esnprintf(buf, sizeof(buf), "Error: unknown mode specified");
-              }
-         }
-       else if (!strcmp(word1, "menu_animate"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, "on"))
-              {
-                 Conf.menuslide = 1;
-              }
-            else if (!strcmp(word2, "off"))
-              {
-                 Conf.menuslide = 0;
-              }
-            else if (!strcmp(word2, "?"))
-              {
-                 if (Conf.menuslide)
-                    Esnprintf(buf, sizeof(buf), "menu_animate: on");
-                 else
-                    Esnprintf(buf, sizeof(buf), "menu_animate: off");
-              }
-            else
-              {
-                 Esnprintf(buf, sizeof(buf), "Error: unknown mode specified");
-              }
-         }
-       else if (!strcmp(word1, "animate_win_shading"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, "on"))
-              {
-                 Conf.animate_shading = 1;
-              }
-            else if (!strcmp(word2, "off"))
-              {
-                 Conf.animate_shading = 0;
-              }
-            else if (!strcmp(word2, "?"))
-              {
-                 if (Conf.animate_shading)
-                    Esnprintf(buf, sizeof(buf), "animate_win_shading: on");
-                 else
-                    Esnprintf(buf, sizeof(buf), "animate_win_shading: off");
-              }
-            else
-              {
-                 Esnprintf(buf, sizeof(buf), "Error: unknown mode specified");
-              }
-         }
-       else if (!strcmp(word1, "window_shade_speed"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, "?"))
-              {
-                 if (Conf.animate_shading)
-                   {
-                      Esnprintf(buf, sizeof(buf), "shadespeed: %d seconds",
-                                Conf.shadespeed);
-                   }
-                 else
-                   {
-                      Esnprintf(buf, sizeof(buf), "shadespeed: off");
-                   }
-              }
-            else
-              {
-                 Conf.shadespeed = atoi(word2);
-              }
-         }
-       else if (!strcmp(word1, "dragbar"))
-         {
-
-            char                move;
-
-            word(params, 2, word2);
-            move = 0;
-            if (!strcmp(word2, "off"))
-              {
-                 Conf.desks.dragbar_width = 0;
-                 move = 1;
-              }
-            else if (!strcmp(word2, "on"))
-              {
-                 Conf.desks.dragbar_width = 16;
-                 move = 1;
-              }
-            else if (!strcmp(word2, "bottom"))
-              {
-                 Conf.desks.dragbar_width = 16;
-                 Conf.desks.dragdir = 3;
-                 move = 1;
-              }
-            else if (!strcmp(word2, "right"))
-              {
-                 Conf.desks.dragbar_width = 16;
-                 Conf.desks.dragdir = 1;
-                 move = 1;
-              }
-            else if (!strcmp(word2, "left"))
-              {
-                 Conf.desks.dragbar_width = 16;
-                 Conf.desks.dragdir = 0;
-                 move = 1;
-              }
-            else if (!strcmp(word2, "top"))
-              {
-                 Conf.desks.dragbar_width = 16;
-                 Conf.desks.dragdir = 2;
-                 move = 1;
-              }
-            else if (!strcmp(word2, "?"))
-              {
-                 if (Conf.desks.dragbar_width)
-                   {
-                      if (Conf.desks.dragdir == 1)
-                        {
-                           Esnprintf(buf, sizeof(buf), "Dragbar: right");
-                        }
-                      else if (Conf.desks.dragdir == 2)
-                        {
-                           Esnprintf(buf, sizeof(buf), "Dragbar: top");
-                        }
-                      else if (Conf.desks.dragdir == 3)
-                        {
-                           Esnprintf(buf, sizeof(buf), "Dragbar: bottom");
-                        }
-                      else
-                        {
-                           Esnprintf(buf, sizeof(buf), "Dragbar: left");
-                        }
-                   }
-                 else
-                   {
-                      Esnprintf(buf, sizeof(buf), "Dragbar: off");
-                   }
-              }
-            else
-              {
-                 Esnprintf(buf, sizeof(buf), "Error: unknown mode specified");
-              }
-
-            if (move)
-              {
-
-                 Button             *b;
-                 int                 i;
-
-                 GotoDesktop(desks.current);
-                 for (i = 0; i < ENLIGHTENMENT_CONF_NUM_DESKTOPS; i++)
-                    MoveDesktop(i, 0, 0);
-                 while ((b =
-                         RemoveItem("_DESKTOP_DRAG_CONTROL", 0,
-                                    LIST_FINDBY_NAME, LIST_TYPE_BUTTON)))
-                    ButtonDestroy(b);
-                 while ((b =
-                         RemoveItem("_DESKTOP_DESKRAY_DRAG_CONTROL", 0,
-                                    LIST_FINDBY_NAME, LIST_TYPE_BUTTON)))
-                    ButtonDestroy(b);
-                 InitDesktopControls();
-                 ShowDesktopControls();
-              }
-         }
-       else if (!strcmp(word1, "tooltips"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, "off"))
-              {
-                 Conf.tooltips.enable = 0;
-              }
-            else if (!strcmp(word2, "on"))
-              {
-                 Conf.tooltips.enable = 1;
-              }
-            else if (!strcmp(word2, "?"))
-              {
-                 if (Conf.tooltips.enable)
-                   {
-                      Esnprintf(buf, sizeof(buf), "tooltips: %f seconds",
-                                Conf.tooltips.delay);
-                   }
-                 else
-                   {
-                      Esnprintf(buf, sizeof(buf), "tooltips: off");
-                   }
-              }
-            else
-              {
-                 Conf.tooltips.delay = atof(word2);
-                 if (!Conf.tooltips.delay)
-                    Conf.tooltips.enable = 0;
-                 else
-                    Conf.tooltips.enable = 1;
-              }
-         }
-       else if (!strcmp(word1, "edge_resistance"))
-         {
-            word(params, 2, word2);
-            if (word2[0])
-              {
-                 if (!strcmp(word2, "off"))
-                   {
-                      Conf.edge_flip_resistance = -1;
-                   }
-                 else if (!strcmp(word2, "?"))
-                   {
-                      if (Conf.edge_flip_resistance >= 0)
-                        {
-                           Esnprintf(buf, sizeof(buf),
-                                     "edge_resistance: %d / 100 seconds",
-                                     Conf.edge_flip_resistance);
-                        }
-                      else
-                        {
-                           Esnprintf(buf, sizeof(buf), "edge_resistance: off");
-                        }
-                   }
-                 else
-                   {
-                      Conf.edge_flip_resistance = atoi(word2);
-                   }
-              }
-            else
-              {
-                 Esnprintf(buf, sizeof(buf), "Error: no time given");
-              }
-         }
-       else if (!strcmp(word1, "edge_snap_distance"))
-         {
-            word(params, 2, word2);
-            if (word2[0])
-              {
-                 if (!strcmp(word2, "?"))
-                   {
-                      Esnprintf(buf, sizeof(buf), "edge_snap_distance: %d",
-                                Conf.snap.edge_snap_dist);
-                   }
-                 else
-                   {
-                      Conf.snap.edge_snap_dist = atoi(word2);
-                   }
-              }
-            else
-              {
-                 Esnprintf(buf, sizeof(buf), "Error: no pixel distance given");
-              }
-         }
-       else if (!strcmp(word1, "autoraise"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, "off"))
-              {
-                 Conf.autoraise.enable = 0;
-              }
-            else if (!strcmp(word2, "on"))
-              {
-                 Conf.autoraise.enable = 1;
-              }
-            else if (!strcmp(word2, "?"))
-              {
-                 if (Conf.autoraise.enable)
-                   {
-                      Esnprintf(buf, sizeof(buf), "autoraise: %f seconds",
-                                Conf.autoraise.delay);
-                   }
-                 else
-                   {
-                      Esnprintf(buf, sizeof(buf), "autoraise: off");
-                   }
-              }
-            else
-              {
-                 Conf.autoraise.delay = atof(word2);
-                 if (!Conf.autoraise.delay)
-                    Conf.autoraise.enable = 0;
-                 else
-                    Conf.autoraise.enable = 1;
-              }
-         }
-       else if (!strcmp(word1, "audio"))
-         {
-            word(params, 2, word2);
-            if (!strcmp(word2, "on"))
-              {
-                 if (!Conf.sound)
-                   {
-                      Conf.sound = 1;
-                      SoundInit();
-                   }
-              }
-            else if (!strcmp(word2, "off"))
-              {
-                 if (Conf.sound)
-                   {
-                      Conf.sound = 0;
-                      SoundExit();
-                   }
-              }
-            else if (!strcmp(word2, "?"))
-              {
-                 if (Conf.sound)
-                    Esnprintf(buf, sizeof(buf), "audio: on");
-                 else
-                    Esnprintf(buf, sizeof(buf), "audio: off");
-              }
-            else
-              {
-                 Esnprintf(buf, sizeof(buf), "Error: unknown mode specified");
-              }
-         }
-       else
-         {
-            Esnprintf(buf, sizeof(buf), "Error: unknown effect specified");
-         }
-     }
-   else
-     {
-       Esnprintf(buf, sizeof(buf), "Error: no effect specified");
-     }
-
-   if (buf[0])
-      CommsSend(c, buf);
-}
-#endif
-
 static void
 IPC_ButtonShow(const char *params, Client * c)
 {
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/main.c,v
retrieving revision 1.99.2.10
retrieving revision 1.99.2.11
diff -u -3 -r1.99.2.10 -r1.99.2.11
--- main.c      22 Aug 2004 01:30:08 -0000      1.99.2.10
+++ main.c      24 Aug 2004 23:37:54 -0000      1.99.2.11
@@ -181,30 +181,7 @@
      }
 
    if (!Mode.theme.path)
-     {
-       FILE               *f;
-       char                s[FILEPATH_LEN_MAX];
-       char               *file;
-
-       file = FindFile("user_theme.cfg");
-       if (file)
-         {
-            s[0] = 0;
-            f = fopen(file, "r");
-            if (f)
-              {
-                 if (fscanf(f, "%4000s", s) < 1)
-                    s[0] = 0;
-                 fclose(f);
-                 if (s[0])
-                    Mode.theme.path = Estrdup(s);
-              }
-            Efree(file);
-         }
-
-       if (!Mode.theme.path)
-          Mode.theme.path = ThemeGetDefault();
-     }
+      Mode.theme.path = ThemeGetDefault();
    SetSMUserThemePath(Mode.theme.path);
 
    /* run most of the setup */
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/mod-btn.c,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -u -3 -r1.1.2.1 -r1.1.2.2
--- mod-btn.c   8 Aug 2004 22:31:42 -0000       1.1.2.1
+++ mod-btn.c   24 Aug 2004 23:37:54 -0000      1.1.2.2
@@ -33,8 +33,7 @@
 {
    switch (sig)
      {
-     case ESIGNAL_AREA_SWITCH:
-     case ESIGNAL_DESK_SWITCH:
+     default:
        break;
      }
 }
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/mod-desks.c,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -3 -r1.1.2.2 -r1.1.2.3
--- mod-desks.c 22 Aug 2004 20:04:06 -0000      1.1.2.2
+++ mod-desks.c 24 Aug 2004 23:37:54 -0000      1.1.2.3
@@ -35,9 +35,6 @@
      case ESIGNAL_INIT:
        DesktopsInit();
        break;
-     case ESIGNAL_AREA_SWITCH:
-     case ESIGNAL_DESK_SWITCH:
-       break;
      }
 }
 
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/mod-ibox.c,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -u -3 -r1.1.2.2 -r1.1.2.3
--- mod-ibox.c  8 Aug 2004 22:31:42 -0000       1.1.2.2
+++ mod-ibox.c  24 Aug 2004 23:37:54 -0000      1.1.2.3
@@ -32,8 +32,7 @@
 {
    switch (sig)
      {
-     case ESIGNAL_AREA_SWITCH:
-     case ESIGNAL_DESK_SWITCH:
+     default:
        break;
      }
 }
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/mod-menus.c,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -3 -r1.1.2.3 -r1.1.2.4
--- mod-menus.c 22 Aug 2004 20:04:07 -0000      1.1.2.3
+++ mod-menus.c 24 Aug 2004 23:37:54 -0000      1.1.2.4
@@ -32,8 +32,8 @@
 {
    switch (sig)
      {
-     case ESIGNAL_AREA_SWITCH:
-     case ESIGNAL_DESK_SWITCH:
+     case ESIGNAL_AREA_SWITCH_START:
+     case ESIGNAL_DESK_SWITCH_START:
        MenusHide();
        break;
      }
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/mod-misc.c,v
retrieving revision 1.1.2.8
retrieving revision 1.1.2.9
diff -u -3 -r1.1.2.8 -r1.1.2.9
--- mod-misc.c  22 Aug 2004 20:04:07 -0000      1.1.2.8
+++ mod-misc.c  24 Aug 2004 23:37:54 -0000      1.1.2.9
@@ -30,8 +30,9 @@
 extern EModule      ModBackgrounds;
 extern EModule      ModButtons;
 extern EModule      ModDesktops;
+extern EModule      ModEffects;
 extern EModule      ModFocus;
-extern EModule      ModFX;
+extern EModule      ModFx;
 extern EModule      ModGroups;
 extern EModule      ModImageclass;
 extern EModule      ModIconboxes;
@@ -52,8 +53,9 @@
    &ModBackgrounds,
    &ModButtons,
    &ModDesktops,
+   &ModEffects,
    &ModFocus,
-   &ModFX,
+   &ModFx,
    &ModGroups,
    &ModIconboxes,
    &ModImageclass,
@@ -170,16 +172,18 @@
 
    p = params;
    l = 0;
+   s[0] = '\0';
    sscanf(p, "%100s %n", s, &l);
    p += l;
 
+   Eprintf(">%s< >%s<\n", params, s);
    if (!strcmp(s, "group"))
      {
        ewin = GetFocusEwin();
        if (ewin)
           SettingsGroups(ewin);
      }
-   else if (!strcmp(s, "group_defaults"))
+   else if (!s[0] || !strcmp(s, "group_defaults"))
      {
        SettingsDefaultGroupControl();
      }
@@ -226,13 +230,13 @@
 
 #define EM_DECLARE(mod, name, nick, conf) \
    EModule mod = { name, nick, NULL, NULL, NULL, conf, { 0, NULL}, { 0, NULL} }
-EM_DECLARE(ModFocus, "Focus", "foc", FocusConfigure);
-EM_DECLARE(ModFX, "FX", "fx", FxConfigure);
-EM_DECLARE(ModGroups, "Groups", "gr", GroupsConfigure);
-EM_DECLARE(ModMoveResize, "MoveResize", "mr", MoveResizeConfigure);
-EM_DECLARE(ModPagers, "Pagers", "pg", PagersConfigure);
-EM_DECLARE(ModPlacement, "Placement", "pl", PlacementConfigure);
-EM_DECLARE(ModRemember, "Remember", "re", RememberConfigure);
+EM_DECLARE(ModFocus, "focus", "foc", FocusConfigure);
+EM_DECLARE(ModFx, "fx", "fx", FxConfigure);
+EM_DECLARE(ModGroups, "groups", "grp", GroupsConfigure);
+EM_DECLARE(ModMoveResize, "moveresize", "mr", MoveResizeConfigure);
+EM_DECLARE(ModPagers, "pagers", "pgr", PagersConfigure);
+EM_DECLARE(ModPlacement, "placement", "pl", PlacementConfigure);
+EM_DECLARE(ModRemember, "remember", "re", RememberConfigure);
 
 /* Stuff not elsewhere */
 EModule             ModMisc = {
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/Attic/mod-tt.c,v
retrieving revision 1.1.2.6
retrieving revision 1.1.2.7
diff -u -3 -r1.1.2.6 -r1.1.2.7
--- mod-tt.c    22 Aug 2004 20:04:07 -0000      1.1.2.6
+++ mod-tt.c    24 Aug 2004 23:37:54 -0000      1.1.2.7
@@ -106,8 +106,8 @@
 {
    switch (sig)
      {
-     case ESIGNAL_AREA_SWITCH:
-     case ESIGNAL_DESK_SWITCH:
+     case ESIGNAL_AREA_SWITCH_START:
+     case ESIGNAL_DESK_SWITCH_START:
        TooltipsHide();
        break;
      }
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/moveresize.c,v
retrieving revision 1.22.2.2
retrieving revision 1.22.2.3
diff -u -3 -r1.22.2.2 -r1.22.2.3
--- moveresize.c        15 Aug 2004 07:28:28 -0000      1.22.2.2
+++ moveresize.c        24 Aug 2004 23:37:55 -0000      1.22.2.3
@@ -44,13 +44,13 @@
    if (((ewin->groups) || (ewin->has_transients)) && (Conf.movemode > 0))
       Conf.movemode = 0;
 #endif
-   if (Conf.movemode > 0)
-     {
-       FX_Pause();
-       GrabX();
-     }
 
    SoundPlay("SOUND_MOVE_START");
+   ModulesSignal(ESIGNAL_MOVE_START);
+
+   if (Conf.movemode > 0)
+      GrabX();
+
    GrabPointerRelease();
    GrabPointerSet(VRoot.win, ECSR_ACT_MOVE, 1);
 
@@ -159,10 +159,10 @@
 
    XSync(disp, False);
    if (Conf.movemode > 0)
-     {
-       FX_Pause();
-       UngrabX();
-     }
+      UngrabX();
+
+   ModulesSignal(ESIGNAL_MOVE_DONE);
+
    if (wasresize)
       ForceUpdatePagersForDesktop(desks.current);
    Efree(gwins);
@@ -267,14 +267,15 @@
       EDBUG_RETURN(0);
 
    mode_moveresize_ewin = ewin;
+
+   SoundPlay("SOUND_RESIZE_START");
+   ModulesSignal(ESIGNAL_RESIZE_START);
+
    if (Conf.resizemode > 0)
-     {
-       FX_Pause();
-       GrabX();
-     }
+      GrabX();
+
    Mode.queue_up = 0;
 
-   SoundPlay("SOUND_RESIZE_START");
    GrabPointerRelease();
    GrabPointerSet(VRoot.win, ECSR_ACT_RESIZE, 1);
 
@@ -382,12 +383,13 @@
    for (i = 0; i < ewin->border->num_winparts; i++)
       ewin->bits[i].no_expose = 1;
    ICCCM_Configure(ewin);
+
    XSync(disp, False);
    if (Conf.resizemode > 0)
-     {
-       FX_Pause();
-       UngrabX();
-     }
+      UngrabX();
+
+   ModulesSignal(ESIGNAL_RESIZE_DONE);
+
    ForceUpdatePagersForDesktop(desks.current);
 
    EwinUpdateAfterMoveResize(ewin, 1);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/settings.c,v
retrieving revision 1.120.2.7
retrieving revision 1.120.2.8
diff -u -3 -r1.120.2.7 -r1.120.2.8
--- settings.c  21 Aug 2004 09:09:21 -0000      1.120.2.7
+++ settings.c  24 Aug 2004 23:37:55 -0000      1.120.2.8
@@ -1345,9 +1345,6 @@
 static int          tmp_cleanup_slide_speed;
 static int          tmp_desktop_slide_speed;
 static int          tmp_shade_speed;
-static char         tmp_effect_raindrops;
-static char         tmp_effect_ripples;
-static char         tmp_effect_waves;
 
 static void
 CB_ConfigureFX(int val, void *data)
@@ -1368,10 +1365,6 @@
        Conf.slidespeedcleanup = tmp_cleanup_slide_speed;
        Conf.desks.slidespeed = tmp_desktop_slide_speed;
 
-       FX_Op("raindrops", tmp_effect_raindrops ? FX_OP_START : FX_OP_STOP);
-       FX_Op("ripples", tmp_effect_ripples ? FX_OP_START : FX_OP_STOP);
-       FX_Op("waves", tmp_effect_waves ? FX_OP_START : FX_OP_STOP);
-
        if ((Conf.desks.dragdir != tmp_dragdir) ||
            ((tmp_dragbar) && (Conf.desks.dragbar_width < 1)) ||
            ((!tmp_dragbar) && (Conf.desks.dragbar_width > 0)))
@@ -1428,10 +1421,6 @@
    tmp_cleanup_slide_speed = Conf.slidespeedcleanup;
    tmp_desktop_slide_speed = Conf.desks.slidespeed;
 
-   tmp_effect_raindrops = FX_IsOn("raindrops");
-   tmp_effect_ripples = FX_IsOn("ripples");
-   tmp_effect_waves = FX_IsOn("waves");
-
    d = DialogCreate("CONFIGURE_FX");
    DialogSetTitle(d, _("Special FX Settings"));
 
@@ -1739,42 +1728,6 @@
    DialogItemSetFill(di, 1, 0);
    DialogItemSeparatorSetOrientation(di, 0);
 
-   /* Effects */
-   di = DialogAddItem(table, DITEM_TEXT);
-   DialogItemSetPadding(di, 2, 2, 2, 2);
-   DialogItemSetFill(di, 1, 0);
-   DialogItemSetColSpan(di, 4);
-   DialogItemTextSetText(di, _("Effects"));
-#if 0                          /* Disabled */
-   di = DialogAddItem(table, DITEM_CHECKBUTTON);
-   DialogItemSetPadding(di, 2, 2, 2, 2);
-   DialogItemSetFill(di, 1, 0);
-   DialogItemSetColSpan(di, 4);
-   DialogItemCheckButtonSetText(di, _("Enable Effect: Raindrops"));
-   DialogItemCheckButtonSetState(di, tmp_effect_raindrops);
-   DialogItemCheckButtonSetPtr(di, &tmp_effect_raindrops);
-#endif
-   di = DialogAddItem(table, DITEM_CHECKBUTTON);
-   DialogItemSetPadding(di, 2, 2, 2, 2);
-   DialogItemSetFill(di, 1, 0);
-   DialogItemCheckButtonSetText(di, _("Ripples"));
-   DialogItemCheckButtonSetState(di, tmp_effect_ripples);
-   DialogItemCheckButtonSetPtr(di, &tmp_effect_ripples);
-
-   di = DialogAddItem(table, DITEM_CHECKBUTTON);
-   DialogItemSetPadding(di, 2, 2, 2, 2);
-   DialogItemSetFill(di, 1, 0);
-   DialogItemSetColSpan(di, 3);
-   DialogItemCheckButtonSetText(di, _("Waves"));
-   DialogItemCheckButtonSetState(di, tmp_effect_waves);
-   DialogItemCheckButtonSetPtr(di, &tmp_effect_waves);
-
-   di = DialogAddItem(table, DITEM_SEPARATOR);
-   DialogItemSetColSpan(di, 4);
-   DialogItemSetPadding(di, 2, 2, 2, 2);
-   DialogItemSetFill(di, 1, 0);
-   DialogItemSeparatorSetOrientation(di, 0);
-
    DialogAddButton(d, _("OK"), CB_ConfigureFX, 1);
    DialogAddButton(d, _("Apply"), CB_ConfigureFX, 0);
    DialogAddButton(d, _("Close"), CB_ConfigureFX, 1);
===================================================================
RCS file: /cvsroot/enlightenment/e16/e/src/slideout.c,v
retrieving revision 1.22.2.2
retrieving revision 1.22.2.3
diff -u -3 -r1.22.2.2 -r1.22.2.3
--- slideout.c  22 Aug 2004 20:04:07 -0000      1.22.2.2
+++ slideout.c  24 Aug 2004 23:37:55 -0000      1.22.2.3
@@ -504,8 +504,8 @@
 {
    switch (sig)
      {
-     case ESIGNAL_AREA_SWITCH:
-     case ESIGNAL_DESK_SWITCH:
+     case ESIGNAL_AREA_SWITCH_START:
+     case ESIGNAL_DESK_SWITCH_START:
        SlideoutsHide();
        break;
      }




-------------------------------------------------------
SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media
100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33
Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift.
http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to