Enlightenment CVS committal

Author  : horms
Project : e17
Module  : apps/entice

Dir     : e17/apps/entice/src/bin


Modified Files:
        buttons.c entice.h event.c globals.h main.c misc.c panel.c 


Log Message:
If the panel or button bar are brough in manualy using the p an b keys
respectivly, then don't hide them through random mouse or configure
events. Only remove them on recepit of another p and be respectively.

===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/buttons.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- buttons.c   16 Mar 2003 06:08:51 -0000      1.4
+++ buttons.c   16 Mar 2003 07:57:26 -0000      1.5
@@ -183,8 +183,17 @@
    double              duration = 0.5;
    double              val;
    double              px;
+   int                *force;
 
-   buttons_active = 1;
+   force = (int *)data;
+
+   if(buttons_active == active_force_out && !(force && *force))
+      return;
+
+   if(force && *force)
+      buttons_active = active_force_in;
+   else
+      buttons_active = active_in;
 
    if (v == 0)
       start = get_time();
@@ -204,7 +213,7 @@
 
    if (val < 1.0)
       ecore_add_event_timer("e_slide_buttons()", 0.05, e_slide_buttons_in,
-                           v + 1, NULL);
+                           v + 1, force);
 }
 
 void
@@ -215,6 +224,12 @@
    double              duration = 0.5;
    double              val;
    double              px;
+   int                 *force;
+
+   force = (int *)data;
+
+   if(buttons_active == active_force_in && !(force && *force))
+      return;
 
    if (v == 0)
       start = get_time();
@@ -234,14 +249,17 @@
 
    if (val < 1.0)
       ecore_add_event_timer("e_slide_buttons()", 0.05, e_slide_buttons_out,
-                           v + 1, NULL);
+                           v + 1, force);
    else
-      buttons_active = 0;
+      if(force && *force)
+         buttons_active = active_force_out;
+      else
+         buttons_active = active_out;
 }
 
 void
 show_buttons(void *data, Evas * e, Evas_Object * obj, void *event_info)
 {
-   if (!buttons_active)
+   if (buttons_active == active_out || buttons_active == active_force_out)
       e_slide_buttons_in(0, NULL);
 }
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/entice.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -3 -r1.3 -r1.4
--- entice.h    16 Mar 2003 06:08:51 -0000      1.3
+++ entice.h    16 Mar 2003 07:57:27 -0000      1.4
@@ -45,6 +45,14 @@
    int                 subst;
 };
 
+enum active_state 
+{
+   active_out       = 0,
+   active_in        = 1,
+   active_force_out = 2,
+   active_force_in  = 3
+};
+
 #include "buttons.h"
 #include "event.h"
 #include "fade.h"
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/event.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -3 -r1.9 -r1.10
--- event.c     16 Mar 2003 06:08:51 -0000      1.9
+++ event.c     16 Mar 2003 07:57:27 -0000      1.10
@@ -141,9 +141,9 @@
        evas_output_viewport_set(evas, 0, 0, win_w, win_h);
        evas_output_size_set(evas, win_w, win_h);
        e_handle_resize();
-       if (panel_active)
+       if (panel_active == active_in)
           e_slide_panel_out(0, NULL);
-       if (buttons_active)
+       if (buttons_active == active_in)
           e_slide_buttons_out(0, NULL);
      }
 }
@@ -224,17 +224,25 @@
      }
    else if (!strcmp(e->key, "p"))
      {
-       if (panel_active)
+       int force = 1;
+       if (panel_active == active_in || panel_active == active_force_in) {
+           panel_active = active_in;
           e_slide_panel_out(0, NULL);
-       else
-          e_slide_panel_in(0, NULL);
+       }
+       else {
+          e_slide_panel_in(0, &force);
+       }
      }
    else if (!strcmp(e->key, "b"))
      {
-       if (buttons_active)
+       int force = 1;
+       if (buttons_active == active_in || buttons_active == active_force_in) {
+          buttons_active = active_in;
           e_slide_buttons_out(0, NULL);
-       else
-          e_slide_buttons_in(0, NULL);
+       }
+       else {
+          e_slide_buttons_in(0, &force);
+       }
      }
    else if (!strcmp(e->key, "d"))
      {
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/globals.h,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- globals.h   14 Feb 2003 09:55:29 -0000      1.5
+++ globals.h   16 Mar 2003 07:57:27 -0000      1.6
@@ -54,8 +54,8 @@
 extern int          icon_y;
 
 extern int          dragging;
-extern int          panel_active;
-extern int          buttons_active;
+extern enum active_state panel_active;
+extern enum active_state buttons_active;
 extern int          scroll_x;
 extern int          scroll_y;
 extern int          scroll_sx;
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/main.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- main.c      14 Feb 2003 09:55:29 -0000      1.5
+++ main.c      16 Mar 2003 07:57:27 -0000      1.6
@@ -51,8 +51,8 @@
 int                 icon_y = 0;
 
 int                 dragging = 0;
-int                 panel_active = 0;
-int                 buttons_active = 0;
+enum active_state   panel_active = active_out;
+enum active_state   buttons_active = active_out;
 int                 scroll_x = 0, scroll_y = 0;
 int                 scroll_sx = 0, scroll_sy = 0;
 int                 arrow_l = 0, arrow_r = 0, arrow_t = 0, arrow_b = 0;
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/misc.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -3 -r1.7 -r1.8
--- misc.c      16 Feb 2003 09:35:15 -0000      1.7
+++ misc.c      16 Mar 2003 07:57:27 -0000      1.8
@@ -362,10 +362,12 @@
        evas_output_viewport_set(evas, 0, 0, win_w, win_h);
        evas_output_size_set(evas, win_w, win_h);
        e_handle_resize();
-       if (panel_active)
-          e_slide_panel_out(0, NULL);
-       if (buttons_active)
-          e_slide_buttons_out(0, NULL);
+       if (panel_active == active_in || panel_active == active_force_in) {
+               e_slide_panel_out(0, NULL);
+       }
+       else {
+               e_slide_panel_in(0, NULL);
+       }
      }
    else
      {
@@ -381,10 +383,12 @@
        evas_output_viewport_set(evas, 0, 0, win_w, win_h);
        evas_output_size_set(evas, win_w, win_h);
        e_handle_resize();
-       if (panel_active)
-          e_slide_panel_out(0, NULL);
-       if (buttons_active)
-          e_slide_buttons_out(0, NULL);
+       if (panel_active == active_in || panel_active == active_force_in) {
+               e_slide_panel_out(0, NULL);
+       }
+       else {
+               e_slide_panel_in(0, NULL);
+       }
        if (win)
           ecore_window_destroy(win);
        win = 0;
===================================================================
RCS file: /cvsroot/enlightenment/e17/apps/entice/src/bin/panel.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- panel.c     5 Feb 2003 05:45:45 -0000       1.2
+++ panel.c     16 Mar 2003 07:57:27 -0000      1.3
@@ -9,8 +9,17 @@
    double              val;
    double              px;
    int                 w;
+   int                *force;
 
-   panel_active = 1;
+   force = (int *)data;
+
+   if(panel_active == active_force_out && !(force && *force)) 
+      return;
+
+   if(force && *force)
+      panel_active = active_force_in;
+   else
+      panel_active = active_in;
 
    if (v == 0)
       evas_object_layer_set(o_showpanel, 180);
@@ -29,7 +38,7 @@
 
    if (val < 1.0)
       ecore_add_event_timer("e_slide_panel()", 0.05, e_slide_panel_in, v + 1,
-                           NULL);
+                           force);
 }
 
 void
@@ -41,6 +50,12 @@
    double              val;
    double              px;
    int                 w;
+   int                 *force;
+
+   force = (int *)data;
+
+   if(panel_active == active_force_in && !(force && *force)) 
+      return;
 
    if (v == 0)
       evas_object_layer_set(o_showpanel, 1000);
@@ -59,9 +74,12 @@
 
    if (val < 1.0)
       ecore_add_event_timer("e_slide_panel()", 0.05, e_slide_panel_out, v + 1,
-                           NULL);
+                           force);
    else
-      panel_active = 0;
+      if(force && *force) 
+         panel_active = active_force_out;
+      else
+         panel_active = active_out;
 }
 
 void




-------------------------------------------------------
This SF.net email is sponsored by:Crypto Challenge is now open! 
Get cracking and register here for some mind boggling fun and 
the chance of winning an Apple iPod:
http://ads.sourceforge.net/cgi-bin/redirect.pl?thaw0031en
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to