Enlightenment CVS committal

Author  : lordchaos
Project : e17
Module  : proto

Dir     : e17/proto/entropy/src/plugins


Modified Files:
        etk_list_viewer.c layout_etk_simple.c 


Log Message:
* Menu changes
* Hookup ctrl-q for quit, and exit menu item

===================================================================
RCS file: 
/cvsroot/enlightenment/e17/proto/entropy/src/plugins/etk_list_viewer.c,v
retrieving revision 1.36
retrieving revision 1.37
diff -u -3 -r1.36 -r1.37
--- etk_list_viewer.c   4 Mar 2006 06:09:12 -0000       1.36
+++ etk_list_viewer.c   5 Mar 2006 02:00:54 -0000       1.37
@@ -101,10 +101,10 @@
    switch (item_type)
    {
       case ETK_MENU_ITEM_NORMAL:
-         menu_item = etk_menu_item_new_with_label(label);
+         menu_item = etk_menu_item_image_new_with_label(label);
          break;
       case ETK_MENU_ITEM_SEPARATOR:
-         menu_item = etk_menu_separator_new();
+         menu_item = etk_menu_item_separator_new();
          break;
       default:
          return NULL;
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/proto/entropy/src/plugins/layout_etk_simple.c,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -3 -r1.23 -r1.24
--- layout_etk_simple.c 4 Mar 2006 01:40:02 -0000       1.23
+++ layout_etk_simple.c 5 Mar 2006 02:00:54 -0000       1.24
@@ -36,14 +36,21 @@
 
 void layout_etk_simple_add_header(entropy_gui_component_instance* instance, 
char* name, char* uri);
 
+
+void layout_etk_simple_quit(entropy_core* core)
+{
+  entropy_core_destroy (core);
+  etk_main_quit ();
+}
+
 static Etk_Bool
 _etk_window_deleted_cb (Etk_Object * object, void *data)
 {
   entropy_core *core = (entropy_core *) data;
 
-  entropy_core_destroy (core);
-  etk_main_quit ();
-  exit (0);
+  layout_etk_simple_quit(core);
+
+  return ETK_TRUE;
 }
 
 void
@@ -77,10 +84,10 @@
    switch (item_type)
    {
       case ETK_MENU_ITEM_NORMAL:
-         menu_item = etk_menu_item_new_with_label(label);
+         menu_item = etk_menu_item_image_new_with_label(label);
          break;
       case ETK_MENU_ITEM_SEPARATOR:
-         menu_item = etk_menu_separator_new();
+         menu_item = etk_menu_item_separator_new();
          break;
       default:
          return NULL;
@@ -90,7 +97,7 @@
       Etk_Widget *image;
       
       image = etk_image_new_from_stock(stock_id, ETK_STOCK_SMALL);
-      etk_menu_item_image_set(ETK_MENU_ITEM(menu_item), ETK_IMAGE(image));
+      etk_menu_item_image_set(ETK_MENU_ITEM_IMAGE(menu_item), 
ETK_IMAGE(image));
    }
    etk_menu_shell_append(menu_shell, ETK_MENU_ITEM(menu_item));
    
@@ -133,6 +140,14 @@
   etk_main ();
 }
 
+void etk_layout_simple_exit_cb(Etk_Object* obj, void* data)
+{
+       entropy_gui_component_instance* instance = data;
+
+       layout_etk_simple_quit(instance->core);
+}
+
+
 void etk_mime_dialog_cb(Etk_Object* obj, void* data)
 {
        etk_mime_dialog_create();
@@ -144,6 +159,24 @@
        etk_location_add_dialog_create((entropy_gui_component_instance*)data, 
layout_etk_simple_add_header);
 }
 
+
+void
+_entropy_etk_layout_key_down_cb(Etk_Object *object, void *event, void *data)
+{
+   Etk_Event_Key_Up_Down *ev;
+   entropy_gui_component_instance* instance = data;
+
+   ev = event;
+
+   if(evas_key_modifier_is_set(ev->modifiers, "Control"))
+   {
+          if (!strcmp(ev->key, "q"))
+          {
+                  layout_etk_simple_quit(instance->core);
+          }
+   }
+}
+
 void layout_etk_simple_add_header(entropy_gui_component_instance* instance, 
char* name, char* uri)
 {
   void *(*structure_plugin_init) (entropy_core * core,
@@ -230,6 +263,8 @@
 
   /*Etk related init */
   window = etk_window_new ();
+  etk_signal_connect("key_down", ETK_OBJECT(window), 
ETK_CALLBACK(_entropy_etk_layout_key_down_cb), layout);
+  
   gui->paned = etk_hpaned_new();
 
   etk_signal_connect ("delete_event", ETK_OBJECT (window),
@@ -246,7 +281,8 @@
   menu_item = _entropy_etk_menu_item_new(ETK_MENU_ITEM_NORMAL, _("File"), 
ETK_STOCK_NO_STOCK, ETK_MENU_SHELL(menubar), NULL);
   menu = etk_menu_new();
   etk_menu_item_submenu_set(ETK_MENU_ITEM(menu_item), ETK_MENU(menu));
-  _entropy_etk_menu_item_new(ETK_MENU_ITEM_NORMAL, _("Exit"), 
ETK_STOCK_SYSTEM_SHUTDOWN, ETK_MENU_SHELL(menu), NULL);
+  menu_item = _entropy_etk_menu_item_new(ETK_MENU_ITEM_NORMAL, _("Exit"), 
ETK_STOCK_SYSTEM_SHUTDOWN, ETK_MENU_SHELL(menu), NULL);
+  etk_signal_connect("activated", ETK_OBJECT(menu_item), 
ETK_CALLBACK(etk_layout_simple_exit_cb), layout);
   
   menu_item = _entropy_etk_menu_item_new(ETK_MENU_ITEM_NORMAL, _("Edit"), 
ETK_STOCK_NO_STOCK, ETK_MENU_SHELL(menubar), NULL);
   menu = etk_menu_new();




-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to