Example #1
0
static void
set_api_state(api_data *api)
{
   Evas_Object *icon;

   const Eina_List *items = elm_box_children_get(api->box);
   if (!eina_list_count(items))
     return;

   /* use elm_box_children_get() to get list of children */
   switch(api->state)
     { /* Put all api-changes under switch */
      case HOVERSEL_HORIZ:  /* Make first hover horiz (0) */
         elm_hoversel_horizontal_set(eina_list_nth(items, 0), EINA_TRUE);
         elm_hoversel_hover_begin(eina_list_nth(items, 0));
         break;

      case HOVERSEL_END:  /* Make first hover horiz (1) */
         elm_hoversel_hover_begin(eina_list_nth(items, 1));
         elm_hoversel_hover_end(eina_list_nth(items, 1));
         break;

      case HOVERSEL_LABAL_SET: /* set second hover label (2) */
         elm_object_text_set(eina_list_nth(items, 1), "Label from API");
         break;

      case HOVERSEL_ICON_UNSET: /* 3 */
         elm_object_text_set(eina_list_nth(items, 5), "Label only");
         icon = elm_object_part_content_unset(eina_list_nth(items, 5), "icon");
         evas_object_del(icon);
         break;

      case HOVERSEL_CLEAR_OPEN: /* 4 */
         elm_hoversel_hover_begin(eina_list_nth(items, 1));
         elm_hoversel_clear(eina_list_nth(items, 1));
         break;

      case HOVERSEL_CLEAR: /* 5 */
         elm_hoversel_clear(eina_list_nth(items, 0));
         break;

      case API_STATE_LAST:
         break;

      default:
         return;
     }
}
Example #2
0
EAPI_MAIN int
elm_main(int argc, char **argv)
{
   Evas_Object *win, *bg, *rect, *hoversel;
   Elm_Object_Item *hoversel_it;

   win = elm_win_add(NULL, "hoversel", ELM_WIN_BASIC);
   elm_win_title_set(win, "Hoversel");
   elm_win_autodel_set(win, EINA_TRUE);
   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

   bg = elm_bg_add(win);
   elm_win_resize_object_add(win, bg);
   evas_object_show(bg);

   rect = evas_object_rectangle_add(evas_object_evas_get(win));
   evas_object_color_set(rect, 255, 0, 0, 255);
   evas_object_show(rect);

   hoversel = elm_hoversel_add(win);
   elm_hoversel_hover_parent_set(hoversel, win);
   elm_hoversel_horizontal_set(hoversel, EINA_FALSE);
   elm_object_text_set(hoversel, "Hoversel");
   elm_object_part_content_set(hoversel, "icon", rect);
   elm_hoversel_item_add(hoversel, "Print items", NULL, ELM_ICON_NONE,
                         _print_items, NULL);
   elm_hoversel_item_add(hoversel, "Option 2", "home", ELM_ICON_STANDARD, NULL,
                         NULL);
   hoversel_it = elm_hoversel_item_add(hoversel, "Clear all items", "close",
                                       ELM_ICON_STANDARD, _rm_items, NULL);
   evas_object_smart_callback_add(hoversel, "selected", _sel, hoversel_it);
   evas_object_smart_callback_add(hoversel, "clicked", _add_item, NULL);

   evas_object_resize(hoversel, 180, 30);
   evas_object_move(hoversel, 10, 10);
   evas_object_show(hoversel);

   evas_object_resize(win, 200, 300);
   evas_object_show(win);

   elm_run();

   return 0;
}
Example #3
0
static Evas_Object *
_add_user_list (
        Evas_Object *win)
{
    Evas_Object *box = NULL, *main_box, *label, *users_list, *cb;
    box = elm_box_add (win);
    evas_object_size_hint_weight_set (box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_show (box);
    elm_win_resize_object_add (win, box);
    evas_object_size_hint_align_set (box, 0.1, 0.1);

    label = elm_label_add(win);
    elm_object_text_set(label, "Switch User");
    elm_box_pack_end (box, label);
    evas_object_show(label);

    users_list = elm_hoversel_add(win);
    elm_hoversel_horizontal_set(users_list, EINA_FALSE);
    elm_object_text_set(users_list, "Select User From the List");

    _populate_users (users_list);

    evas_object_smart_callback_add(users_list, "selected",
            _on_switch_user_clicked, NULL);
    elm_box_pack_end (box, users_list);

    evas_object_show(users_list);

    main_box = elm_box_add (win);
    evas_object_size_hint_weight_set (main_box, EVAS_HINT_EXPAND,
            EVAS_HINT_EXPAND);
    evas_object_show (main_box);
    elm_box_horizontal_set (main_box, EINA_TRUE);
    elm_win_resize_object_add (win, main_box);

    elm_box_pack_end (main_box, box);

    cb = _add_checkbox (win);
    elm_box_pack_end (main_box, cb);

    return box;
}
Example #4
0
PREFIX value ml_elm_hoversel_horizontal_set(value v_box, value v_flag)
{
        elm_hoversel_horizontal_set((Evas_Object*) v_box, Bool_val(v_flag));
        return Val_unit;
}