Enlightenment CVS committal Author : titan Project : e17 Module : proto
Dir : e17/proto/entropy/src/plugins Modified Files: layout_ewl_simple.c Log Message: Lets get menus going again. menu functions++, menu++ =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/plugins/layout_ewl_simple.c,v retrieving revision 1.59 retrieving revision 1.60 diff -u -3 -r1.59 -r1.60 --- layout_ewl_simple.c 13 Aug 2006 01:58:18 -0000 1.59 +++ layout_ewl_simple.c 27 Aug 2006 02:45:04 -0000 1.60 @@ -83,9 +83,63 @@ { layout_ewl_simple_quit(instance->core); } +} + +static Ewl_Widget * +_entropy_ewl_menu_item_new(Ewl_Menu_Item_Type item_type, const char *label, + char *stock, Ewl_Widget *menu, Ewl_Widget *statusbar) +{ + Ewl_Widget *menu_item = NULL; + + if (!menu) return NULL; + + switch (item_type) + { + case EWL_MENU_ITEM_NORMAL: + menu_item = ewl_menu_item_new(); + if (stock != NULL) ewl_button_image_set(EWL_BUTTON(menu_item), stock, NULL); + ewl_button_label_set(EWL_BUTTON(menu_item), label); + break; + case EWL_MENU_ITEM_SEPARATOR: + menu_item = ewl_hseparator_new(); + break; + default: + return NULL; + } + ewl_container_child_append(EWL_CONTAINER(menu), menu_item); + return menu_item; +} + +static Ewl_Widget * +_entropy_ewl_menu_check_item_new(const char *label, Ewl_Widget *menu) +{ + Ewl_Widget *menu_item; + + if (!menu) return NULL; + + menu_item = ewl_checkbutton_new(); + ewl_button_label_set(EWL_BUTTON(menu_item), label); + ewl_container_child_append(EWL_CONTAINER(menu), menu_item); + return menu_item; } +static Ewl_Widget * +_entropy_ewl_menu_radio_item_new(const char *label, Ewl_Widget *group_radio, + Ewl_Widget *menu) +{ + Ewl_Widget *menu_item; + + if (!menu) return NULL; + + menu_item = ewl_radiobutton_new(); + ewl_button_label_set(EWL_BUTTON(menu_item), label); + ewl_radiobutton_chain_set(EWL_RADIOBUTTON(group_radio), EWL_RADIOBUTTON(menu_item)); + ewl_container_child_append(EWL_CONTAINER(menu), menu_item); + + return menu_item; +} + Entropy_Plugin * entropy_plugin_init(entropy_core *core) { @@ -241,11 +295,24 @@ vbox = ewl_vbox_new(); ewl_container_child_append(EWL_CONTAINER(win), vbox); + ewl_object_fill_policy_set(EWL_OBJECT(vbox), EWL_FLAG_FILL_ALL); + + menubar = ewl_menubar_new(); + ewl_container_child_append(EWL_CONTAINER(vbox), menubar); + ewl_object_fill_policy_set(EWL_OBJECT(menubar), EWL_FLAG_FILL_HFILL); + ewl_widget_show(menubar); + + menu = ewl_menu_new(); + ewl_button_label_set(EWL_BUTTON(menu), "File"); + ewl_container_child_append(EWL_CONTAINER(menubar), menu); + ewl_object_fill_policy_set(EWL_OBJECT(menu), EWL_FLAG_FILL_NONE); + ewl_widget_show(menu); + menu_item = _entropy_ewl_menu_item_new(EWL_MENU_ITEM_NORMAL, "Exit", NULL, menu, NULL); + ewl_widget_show(menu_item); + gui->paned = ewl_hpaned_new(); - - /*FIXME - we need an horiz-container to add a menu/statusbar*/ - ewl_container_child_append(EWL_CONTAINER(win), gui->paned); + ewl_container_child_append(EWL_CONTAINER(vbox), gui->paned); gui->tree = ewl_tree_new(1); ewl_container_child_append(EWL_CONTAINER(gui->paned), gui->tree); ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs