Enlightenment CVS committal

Author  : raster
Project : e17
Module  : apps/e

Dir     : e17/apps/e/src/bin


Modified Files:
        e_config.c e_config.h e_exebuf.c e_fm.c e_int_config_exebuf.c 


Log Message:


metric's first 2 patches - with 1 slight mod for xterm default cmd.

===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_config.c,v
retrieving revision 1.203
retrieving revision 1.204
diff -u -3 -r1.203 -r1.204
--- e_config.c  16 Sep 2006 11:35:54 -0000      1.203
+++ e_config.c  19 Sep 2006 13:58:04 -0000      1.204
@@ -457,6 +457,7 @@
    E_CONFIG_VAL(D, T, exebuf_pos_min_h, INT);
    E_CONFIG_VAL(D, T, exebuf_pos_max_w, INT);
    E_CONFIG_VAL(D, T, exebuf_pos_max_h, INT);
+   E_CONFIG_VAL(D, T, exebuf_term_cmd, STR);
    E_CONFIG_LIST(D, T, color_classes, _e_config_color_class_edd);
    E_CONFIG_VAL(D, T, use_app_icon, INT);
    E_CONFIG_VAL(D, T, cfgdlg_auto_apply, INT); /**/
@@ -653,6 +654,7 @@
    e_config->exebuf_pos_min_h = 160;
    e_config->exebuf_pos_max_w = 400;
    e_config->exebuf_pos_max_h = 320;
+   e_config->exebuf_term_cmd = evas_stringshare_add("xterm -hold -e");
    e_config->color_classes = NULL;
    e_config->use_app_icon = 0;
    e_config->cfgdlg_auto_apply = 0;
===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_config.h,v
retrieving revision 1.120
retrieving revision 1.121
diff -u -3 -r1.120 -r1.121
--- e_config.h  16 Sep 2006 11:35:54 -0000      1.120
+++ e_config.h  19 Sep 2006 13:58:04 -0000      1.121
@@ -209,6 +209,7 @@
    int         exebuf_pos_min_h; // GUI
    int         exebuf_pos_max_w; // GUI
    int         exebuf_pos_max_h; // GUI
+   const char *exebuf_term_cmd; // GUI
    Evas_List  *color_classes;
    int         use_app_icon; // GUI
    int         cfgdlg_auto_apply; // GUI
===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_exebuf.c,v
retrieving revision 1.22
retrieving revision 1.23
diff -u -3 -r1.22 -r1.23
--- e_exebuf.c  23 Aug 2006 03:39:01 -0000      1.22
+++ e_exebuf.c  19 Sep 2006 13:58:04 -0000      1.23
@@ -35,6 +35,7 @@
 static int _e_exebuf_cb_sort_exe(void *data1, void *data2);
 static void _e_exebuf_update(void);
 static void _e_exebuf_exec(void);
+static void _e_exebuf_exec_term(void);
 static void _e_exebuf_exe_sel(E_Exebuf_Exe *exe);
 static void _e_exebuf_exe_desel(E_Exebuf_Exe *exe);
 static void _e_exebuf_exe_scroll_to(int i);
@@ -428,6 +429,42 @@
 }
 
 static void
+_e_exebuf_exec_term(void)
+{
+   char tmp[EXEBUFLEN];
+   char *active_cmd;
+
+   if (exe_sel)
+     {
+       if (exe_sel->app)
+         {
+            if (exe_sel->app->exe)
+              active_cmd = exe_sel->app->exe;
+            else
+              {
+                 e_zone_app_exec(exebuf->zone, exe_sel->app);
+                 e_exehist_add("exebuf", exe_sel->app->exe);
+              }
+         }
+       else 
+         active_cmd = exe_sel->file;
+     }
+   else
+     active_cmd = cmd_buf;
+
+   if (strlen(active_cmd) > 0)
+     {
+       /* Copy the terminal command to the start of the string...
+        * making sure it has a null terminator if greater than EXEBUFLEN */
+       snprintf(tmp, EXEBUFLEN, "%s %s", e_config->exebuf_term_cmd, 
active_cmd);
+       e_zone_exec(exebuf->zone, tmp);
+       e_exehist_add("exebuf", tmp);
+     }
+
+   e_exebuf_hide();
+}
+
+static void
 _e_exebuf_exe_sel(E_Exebuf_Exe *exe)
 {
    edje_object_signal_emit(exe->bg_object, "e,state,selected", "e");
@@ -984,8 +1021,12 @@
      _e_exebuf_complete();
    else if (!strcmp(ev->keysymbol, "Tab"))
      _e_exebuf_complete();
+   else if (!strcmp(ev->keysymbol, "Return") && (ev->modifiers & 
ECORE_X_MODIFIER_CTRL))
+     _e_exebuf_exec_term();
    else if (!strcmp(ev->keysymbol, "Return"))
      _e_exebuf_exec();
+   else if (!strcmp(ev->keysymbol, "KP_Enter") && (ev->modifiers & 
ECORE_X_MODIFIER_CTRL))
+     _e_exebuf_exec_term();
    else if (!strcmp(ev->keysymbol, "KP_Enter"))
      _e_exebuf_exec();
    else if (!strcmp(ev->keysymbol, "Escape"))
===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_fm.c,v
retrieving revision 1.70
retrieving revision 1.71
diff -u -3 -r1.70 -r1.71
--- e_fm.c      18 Sep 2006 14:52:43 -0000      1.70
+++ e_fm.c      19 Sep 2006 13:58:04 -0000      1.71
@@ -58,6 +58,7 @@
    unsigned char     iconlist_changed : 1;
    unsigned char     order_file : 1;
    unsigned char     typebuf_visible : 1;
+   unsigned char     show_hidden_files : 1;
 
    E_Fm2_Config     *config;
 
@@ -200,6 +201,7 @@
 static void _e_fm2_icon_menu(E_Fm2_Icon *ic, Evas_Object *obj, unsigned int 
timestamp);
 static void _e_fm2_icon_menu_post_cb(void *data, E_Menu *m);
 static void _e_fm2_refresh(void *data, E_Menu *m, E_Menu_Item *mi);
+static void _e_fm2_toggle_hidden_files(void *data, E_Menu *m, E_Menu_Item *mi);
 static void _e_fm2_new_directory(void *data, E_Menu *m, E_Menu_Item *mi);
 static void _e_fm2_new_directory_delete_cb(void *obj);
 static void _e_fm2_new_directory_yes_cb(char *text, void *data);
@@ -234,6 +236,7 @@
      }
    else return 0;
 
+
    _e_fm2_smart = evas_smart_new("e_fm",
                                 _e_fm2_smart_add, /* add */
                                 _e_fm2_smart_del, /* del */
@@ -3190,10 +3193,10 @@
      {
        dp = readdir(sd->dir);
        if (!dp) goto endscan;
-       /* no - you don't want the cuirrent and parent dir links listed */
+       /* no - you don't want the current and parent dir links listed */
        if ((!strcmp(dp->d_name, ".")) || (!strcmp(dp->d_name, ".."))) return 1;
-       /* skip dotfiles */
-       if (dp->d_name[0] == '.') return 1;
+       /* skip dotfiles if we're not showing hidden files */
+       if (dp->d_name[0] == '.' && !sd->show_hidden_files) return 1;
        _e_fm2_file_add(data, dp->d_name);
      }
    return 1;
@@ -3511,6 +3514,16 @@
                             "e/fileman/button/refresh");
    e_menu_item_callback_set(mi, _e_fm2_refresh, sd);
 
+   mi = e_menu_item_new(mn);
+   e_menu_item_label_set(mi, _("Show Hidden Files"));
+   e_menu_item_icon_edje_set(mi,
+                            e_theme_edje_file_get("base/theme/fileman",
+                                                  
"e/fileman/button/hidden_files"),
+                            "e/fileman/button/hidden_files");
+   e_menu_item_check_set(mi, 1);
+   e_menu_item_toggle_set(mi, sd->show_hidden_files);
+   e_menu_item_callback_set(mi, _e_fm2_toggle_hidden_files, sd);
+
    if (ecore_file_can_write(sd->realpath))
      {
        mi = e_menu_item_new(mn);
@@ -3592,6 +3605,16 @@
                             "e/fileman/button/refresh");
    e_menu_item_callback_set(mi, _e_fm2_refresh, ic->sd);
 
+   mi = e_menu_item_new(mn);
+   e_menu_item_label_set(mi, _("Show Hidden Files"));
+   e_menu_item_icon_edje_set(mi,
+                            e_theme_edje_file_get("base/theme/fileman",
+                                                  
"e/fileman/button/hidden_files"),
+                            "e/fileman/button/hidden_files");
+   e_menu_item_check_set(mi, 1);
+   e_menu_item_toggle_set(mi, sd->show_hidden_files);
+   e_menu_item_callback_set(mi, _e_fm2_toggle_hidden_files, sd);
+
    if (ecore_file_can_write(sd->realpath))
      {
        mi = e_menu_item_new(mn);
@@ -3716,6 +3739,20 @@
    sd = data;
    if (sd->refresh_job) ecore_job_del(sd->refresh_job);
    sd->refresh_job = ecore_job_add(_e_fm2_refresh_job_cb, sd->obj);
+}
+
+static void
+_e_fm2_toggle_hidden_files(void *data, E_Menu *m, E_Menu_Item *mi)
+{
+   E_Fm2_Smart_Data *sd;
+   
+   sd = data;
+   if (sd->show_hidden_files)
+     sd->show_hidden_files = 0;
+   else
+     sd->show_hidden_files = 1;
+
+   _e_fm2_refresh(data, m, mi);
 }
 
 static void
===================================================================
RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_exebuf.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -3 -r1.4 -r1.5
--- e_int_config_exebuf.c       14 Aug 2006 15:22:45 -0000      1.4
+++ e_int_config_exebuf.c       19 Sep 2006 13:58:04 -0000      1.5
@@ -23,6 +23,7 @@
    int pos_min_h;
    int pos_max_w;
    int pos_max_h;
+   char * term_cmd;
 };
 
 EAPI E_Config_Dialog *
@@ -63,6 +64,9 @@
    cfdata->pos_min_h = e_config->exebuf_pos_min_h;
    cfdata->pos_max_w = e_config->exebuf_pos_max_w;
    cfdata->pos_max_h = e_config->exebuf_pos_max_h;
+   if (e_config->exebuf_term_cmd)
+     cfdata->term_cmd = strdup(e_config->exebuf_term_cmd);
+
 }
 
 static void *
@@ -99,11 +103,11 @@
    o = e_widget_list_add(evas, 0, 0);
 
    of = e_widget_framelist_add(evas, _("General Settings"), 0);
-   ob = e_widget_label_add(evas, _("Maximum Number Of Matched Eaps To List"));
+   ob = e_widget_label_add(evas, _("Maximum Number of Matched Eaps to List"));
    e_widget_framelist_object_append(of, ob);
    ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), 10, 50, 5, 0, NULL, 
&(cfdata->max_eap_list), 200);
    e_widget_framelist_object_append(of, ob);   
-   ob = e_widget_label_add(evas, _("Maximum Number Of Matched Exes To List"));
+   ob = e_widget_label_add(evas, _("Maximum Number of Matched Exes to List"));
    e_widget_framelist_object_append(of, ob);
    ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), 10, 50, 5, 0, NULL, 
&(cfdata->max_exe_list), 200);
    e_widget_framelist_object_append(of, ob);   
@@ -129,6 +133,13 @@
    e_config->exebuf_pos_min_h = cfdata->pos_min_h;
    e_config->exebuf_pos_max_w = cfdata->pos_max_w;
    e_config->exebuf_pos_max_h = cfdata->pos_max_h;
+   if (e_config->exebuf_term_cmd)
+     evas_stringshare_del(e_config->exebuf_term_cmd);
+   e_config->exebuf_term_cmd = NULL;
+   if (cfdata->term_cmd) 
+     {
+         e_config->exebuf_term_cmd = evas_stringshare_add(cfdata->term_cmd);
+     }
    e_config_save_queue();
 
    return 1;
@@ -191,6 +202,13 @@
    ob = e_widget_slider_add(evas, 1, 0, _("%4.0f"), 0, 4000, 50, 0, NULL, 
&(cfdata->pos_max_h), 200);
    e_widget_framelist_object_append(of, ob);   
    e_widget_table_object_append(ot, of, 1, 0, 1, 2, 1, 0, 1, 0);
+
+   of = e_widget_framelist_add(evas, _("Terminal Settings"), 0);      
+   ob = e_widget_label_add(evas, _("Terminal Command"));
+   e_widget_framelist_object_append(of, ob);
+   ob = e_widget_entry_add(evas, &(cfdata->term_cmd));
+   e_widget_framelist_object_append(of, ob);
+   e_widget_table_object_append(ot, of, 1, 2, 1, 1, 1, 1, 1, 1);
 
    e_widget_list_object_append(o, ot, 1, 1, 0.5);      
    return o;   



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to