#include <Elementary.h>
static void
btn_extension_click_cb(void *data, Evas_Object *btn, void *ev)
{
   const char *lbl = elm_object_text_get(btn);
   if (!strncmp(lbl, "Load", 4))
     {
        elm_object_text_set(btn, "Unload extension");
     }
   else if (!strncmp(lbl, "Unload", 6))
     {
        elm_object_text_set(btn, "Load extension");
     }
}
static void
btn_style_click_cb(void *data, Evas_Object *btn, void *ev)
{
   const char *styles[] = {
        "chucknorris",
        "default",
        "anchor"
   };
   static int sel_style = 0;
   sel_style = (sel_style + 1) % 3;
}
EAPI_MAIN int
elm_main(int argc, char *argv[])
{
   Evas_Object *win, *box, *btn;
   evas_object_size_hint_weight_set(box, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   evas_object_show(box);
   elm_object_text_set(btn, "Unload extension");
   evas_object_show(btn);
   evas_object_smart_callback_add(btn, "clicked", btn_extension_click_cb, NULL);
   elm_object_text_set(btn, "Switch style");
   evas_object_show(btn);
   evas_object_smart_callback_add(btn, "clicked", btn_style_click_cb, NULL);
   evas_object_resize(win, 300, 320);
   evas_object_show(win);
   return 0;
}