Ejemplo n.º 1
0
static void
_smart_add(Evas_Object *obj)
{
    Smart_Data *sd;

    /* Initialize smart data and clipping */
    sd = calloc(1, sizeof(Smart_Data));
    if (!sd) return;
    sd->obj = obj;
    sd->parent = NULL;
    sd->clip = evas_object_rectangle_add(evas_object_evas_get(obj));
    evas_object_smart_member_add(sd->clip, obj);
   
    /* Set up edje object and canvas */
    sd->edje = edje_object_add(evas_object_evas_get(obj));
    edje_object_file_set(sd->edje, enscribi_theme_find("enscribi"), "enscribi/input");
    evas_object_move(sd->edje, 0, 0);
    evas_object_show(sd->edje);
    sd->canvas = enscribi_canvas_add(evas_object_evas_get(obj));
    edje_object_part_swallow(sd->edje, "canvas", sd->canvas);

    /* Set up callbacks */
    edje_object_signal_callback_add(sd->edje, "canvas,matches,updated", "canvas",
            _enscribi_input_frame_cb_matches, sd);
    edje_object_signal_callback_add(sd->edje, "result,finished", "result",
            _enscribi_input_frame_cb_finished, sd);

    evas_object_smart_data_set(obj, sd);
}
Ejemplo n.º 2
0
Evas_Object *clk_widget_create_button(Evas_Object * parent,
				      const char *file, const char *group,
				      Edje_Color_Class * color_class,
				      Edje_Signal_Cb clicked_cb, void *data)
{
	retvm_if(NULL_CHECK(parent), NULL, "parent null");
	retvm_if(NULL_CHECK(file), NULL, "file null");
	retvm_if(NULL_CHECK(group), NULL, "group null");
	retvm_if(NULL_CHECK(color_class), NULL, "color_class null");
	CLK_FUN_BEG();
	Evas_Object *ret = NULL;
	ret = load_edj(parent, file, group);
	retvm_if(NULL_CHECK(ret), NULL, "ret null");
	edje_object_signal_callback_add(_EDJ(ret), "mouse,down", "rect",
					_clk_btn_mouse_down_cb,
					(void *)color_class);
	edje_object_signal_callback_add(_EDJ(ret), "mouse,up", "rect",
					_clk_btn_mouse_up_cb,
					(void *)color_class);
	if (clicked_cb) {
		edje_object_signal_callback_add(_EDJ(ret), "mouse,clicked",
						"rect", clicked_cb, data);
	}
	CLK_FUN_END();
	return ret;
}
Ejemplo n.º 3
0
void eyelight_viewer_slideshow_start(Eyelight_Viewer* pres,int select)
{
    Evas_Object *o;
    int w_win, h_win;
    const char* data;

    evas_output_viewport_get(pres->evas, NULL, NULL, &w_win, &h_win);

    pres->state = EYELIGHT_VIEWER_STATE_SLIDESHOW;
    pres->slideshow_current = select;

    o = edje_object_add(pres->evas);
    pres->slideshow_background = o;
    if(edje_object_file_set(o, pres->theme, "eyelight/slideshow") ==  0)
        WARN("eyelight_viewer_slideshow_start(), edje_object_file_set() erreur!");

    data = edje_object_data_get(o, "nb_slides");
    pres->slideshow_nb_slides = atoi(data);
    evas_object_show(o);
    evas_object_resize(o, pres->current_size_w, pres->current_size_h);
    edje_object_scale_set(o, pres->current_scale);
    evas_object_smart_member_add(o, pres->smart_obj);
    evas_object_move(o, pres->current_pos_x, pres->current_pos_y);
    evas_object_clip_set(o, pres->current_clip);

    edje_object_signal_callback_add(o,"slideshow,slide,next","eyelight",_eyelight_viewer_slideshow_next_cb,pres);
    edje_object_signal_callback_add(o,"slideshow,slide,previous","eyelight",_eyelight_viewer_slideshow_previous_cb,pres);
    edje_object_signal_callback_add(o,"slideshow,next,end","eyelight",_eyelight_viewer_slideshow_next_end_cb,pres);
    edje_object_signal_callback_add(o,"slideshow,previous,end","eyelight",_eyelight_viewer_slideshow_previous_end_cb,pres);

    _eyelight_viewer_slideshow_slides_load(pres);
    edje_object_signal_emit(pres->slideshow_background,
           "show","eyelight");
}
Ejemplo n.º 4
0
int
elicit_cslider_theme_set(Evas_Object *o, const char *file, const char *group)
{
  Elicit_Cslider *cs;

  cs = evas_object_smart_data_get(o);

  if (cs->gui && cs->spectrum)
    edje_object_part_unswallow(cs->gui, cs->spectrum);

  if(!edje_object_file_set(cs->gui, file, group))
  {
    fprintf(stderr, "[Elicit] Error setting cslider theme (%s, %s)\n", file, group);
    return 0;
  }

  edje_object_signal_callback_add(cs->gui, "drag", "slider", cb_drag, cs);
  edje_object_signal_callback_add(cs->gui, "elicit,scroll,*", "*", cb_scroll, cs);

  if (edje_object_part_exists(cs->gui, "spectrum"))
  {
    if (!cs->spectrum)
    {
      //cs->spectrum = evas_object_gradient_add(evas_object_evas_get(o));
      //evas_object_gradient_angle_set(cs->spectrum, 270);
    }

    edje_object_part_swallow(cs->gui, "spectrum", cs->spectrum);
  }
  return 1;
}
Ejemplo n.º 5
0
static E_Gadcon_Client *
_gc_init (E_Gadcon * gc, const char *name, const char *id, const char *style)
{
   Evas_Object *o;
   E_Gadcon_Client *gcc;
   Evas *evas;
   Instance *inst;
   char buf[4096];

   inst = E_NEW (Instance, 1);

   inst->ci = _empris_config_item_get (id);
   if (!inst->ci->id)
     inst->ci->id = eina_stringshare_add (id);

   o = edje_object_add (gc->evas);
   snprintf (buf, sizeof (buf), "%s/empris.edj",
	     e_module_dir_get (empris_config->module));
   if (!e_theme_edje_object_set
       (o, "base/theme/modules/empris", "modules/empris/main"))
     edje_object_file_set (o, buf, "modules/empris/main");
   evas_object_show (o);

   gcc = e_gadcon_client_new (gc, name, id, style, o);
   gcc->data = inst;
   inst->gcc = gcc;
   inst->empris = o;

   _empris_popup_create(inst, buf);

   evas_object_event_callback_add (o, EVAS_CALLBACK_MOUSE_DOWN,
				   _empris_cb_mouse_down, inst);
   evas_object_event_callback_add (inst->empris, EVAS_CALLBACK_MOUSE_IN,
				   _empris_cb_mouse_in, inst);
   evas_object_event_callback_add (inst->empris, EVAS_CALLBACK_MOUSE_OUT,
				   _empris_cb_mouse_out, inst);
   edje_object_signal_callback_add (o, "empris,play", "", _empris_cb_play,
				    inst);
   edje_object_signal_callback_add (o, "empris,stop", "", _empris_cb_stop,
				    inst);
   edje_object_signal_callback_add (o, "empris,pause", "", _empris_cb_pause,
				    inst);
   edje_object_signal_callback_add (o, "empris,next", "", _empris_cb_next,
				    inst);
   edje_object_signal_callback_add (o, "empris,previous", "",
				    _empris_cb_previous, inst);

   inst->cb_player_track_change = e_dbus_signal_handler_add
     (conn, bus_name, "/Player", mpris_interface, "TrackChange",
      _dbus_cb_track_change, inst);

   inst->cb_player_status_change = e_dbus_signal_handler_add
     (conn, bus_name, "/Player", mpris_interface, "StatusChange",
      _dbus_cb_status_change, inst);

   _dbus_send_msg("/TrackList", "GetCurrentTrack", _dbus_cb_current_track, inst);
  
   empris_config->instances = eina_list_append (empris_config->instances, inst);
   return gcc;
}
Ejemplo n.º 6
0
static E_Gadcon_Client *
_gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style)
{
   Evas_Object *o;
   E_Gadcon_Client *gcc;
   Instance *inst;
   
   inst = E_NEW(Instance, 1);
   
   o = edje_object_add(gc->evas);

   if (alarm_config->theme)
     {
        char buf[4096];
        snprintf(buf, sizeof(buf), "%s/alarm.edj", e_module_dir_get(alarm_config->module));
        edje_object_file_set(o, buf, THEME_MAIN);
     }
   else
     e_theme_edje_object_set(o, THEME_IN_E, THEME_MAIN);

   edje_object_signal_callback_add(o, EDJE_SIG_RECV_ALARM_STATE_ON,
				   _cb_edje_alarm_state_on, NULL);
   edje_object_signal_callback_add(o, EDJE_SIG_RECV_ALARM_STATE_OFF,
				   _cb_edje_alarm_state_off, NULL);
   edje_object_signal_callback_add(o, EDJE_SIG_RECV_ALARM_RING_STOP,
				   _cb_edje_alarm_ring_stop, NULL);

   gcc = e_gadcon_client_new(gc, name, id, style, o);
   gcc->data = inst;
   
   inst->gcc = gcc;
   inst->obj = o;
   inst->orient = E_GADCON_ORIENT_HORIZ;

   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN,
				  _button_cb_mouse_down, inst);

   alarm_config->instances = eina_list_append(alarm_config->instances, inst);

   alarm_details_change();

   switch (alarm_config->alarms_state)
     {
     case ALARM_STATE_ON:
        edje_object_signal_emit(o, EDJE_SIG_SEND_ALARM_STATE_ON);
        break;
     case ALARM_STATE_OFF:
        edje_object_signal_emit(o, EDJE_SIG_SEND_ALARM_STATE_OFF);
        break;
     case ALARM_STATE_RINGING:
        edje_object_signal_emit(o, EDJE_SIG_SEND_ALARM_RING_START);
        break;
     }

   e_config_save_queue();

   return gcc;
}
void item_event_register(Evas_Object *item)
{
	Evas_Object *item_edje;
	item_edje = _EDJ(item);
	evas_object_data_set(item_edje, "item", item);

	edje_object_signal_callback_add(item_edje, "item,down", "menu", _item_down_cb, NULL);
	edje_object_signal_callback_add(item_edje, "item,up", "menu", _item_up_cb, NULL);
}
Ejemplo n.º 8
0
static E_Gadcon_Client *
_gc_init (E_Gadcon * gc, const char *name, const char *id, const char *style)
{
  Evas_Object *o;
  E_Gadcon_Client *gcc;
  Evas *evas;
  Instance *inst;
  char buf[4096];

  inst = E_NEW (Instance, 1);

  inst->ci = _mpdule_config_item_get (id);
  if (!inst->ci->id)
    inst->ci->id = eina_stringshare_add (id);

  o = edje_object_add (gc->evas);
  snprintf (buf, sizeof (buf), "%s/mpdule.edj",
	    e_module_dir_get (mpdule_config->module));
  if (!e_theme_edje_object_set
      (o, "base/theme/modules/mpdule", "modules/mpdule/main"))
    edje_object_file_set (o, buf, "modules/mpdule/main");
  evas_object_show (o);

  gcc = e_gadcon_client_new (gc, name, id, style, o);
  gcc->data = inst;
  inst->gcc = gcc;
  inst->mpdule = o;

  _mpdule_popup_create(inst, buf);

  evas_object_event_callback_add (o, EVAS_CALLBACK_MOUSE_DOWN,
				  _mpdule_cb_mouse_down, inst);
  evas_object_event_callback_add (inst->mpdule, EVAS_CALLBACK_MOUSE_IN,
				  _mpdule_cb_mouse_in, inst);
  evas_object_event_callback_add (inst->mpdule, EVAS_CALLBACK_MOUSE_OUT,
				  _mpdule_cb_mouse_out, inst);
  edje_object_signal_callback_add (o, "mpdule,play", "", _mpdule_cb_play,
				   inst);
  edje_object_signal_callback_add (o, "mpdule,stop", "", _mpdule_cb_stop,
				   inst);
  edje_object_signal_callback_add (o, "mpdule,pause", "", _mpdule_cb_pause,
				   inst);
  edje_object_signal_callback_add (o, "mpdule,next", "", _mpdule_cb_next,
				   inst);
  edje_object_signal_callback_add (o, "mpdule,previous", "",
				   _mpdule_cb_previous, inst);
  _mpdule_connect (inst);
  _mpdule_update_song (inst);
  inst->update_timer = ecore_timer_add (inst->ci->poll_time,
					_mpdule_update_song_cb, inst);

  mpdule_config->instances =
    eina_list_append (mpdule_config->instances, inst);
  return gcc;
}
Ejemplo n.º 9
0
/* Called when the spinner is realized */
static Etk_Bool _etk_spinner_realized_cb(Etk_Object *object, void *data)
{
   Etk_Spinner *spinner;
   Evas_Object *theme_object;
   Evas *evas;

   if (!(spinner = ETK_SPINNER(object)) || !(evas = etk_widget_toplevel_evas_get(ETK_WIDGET(spinner))))
      return ETK_TRUE;
   if (!(theme_object = ETK_WIDGET(spinner)->theme_object))
      return ETK_TRUE;

   /* Create the editable object */
   spinner->editable_object = etk_editable_add(evas);
   evas_object_show(spinner->editable_object);
   etk_widget_member_object_add(ETK_WIDGET(spinner), spinner->editable_object);

   etk_editable_theme_set(spinner->editable_object, etk_widget_theme_file_get(ETK_WIDGET(spinner)),
         etk_widget_theme_group_get(ETK_WIDGET(spinner)));
   etk_editable_align_set(spinner->editable_object, 1.0);

   if (!etk_widget_is_focused(ETK_WIDGET(spinner)))
   {
      etk_editable_cursor_hide(spinner->editable_object);
      etk_editable_selection_hide(spinner->editable_object);
   }
   if (etk_widget_disabled_get(ETK_WIDGET(spinner)))
      etk_editable_disabled_set(spinner->editable_object, ETK_TRUE);


   evas_object_event_callback_add(spinner->editable_object, EVAS_CALLBACK_MOUSE_IN,
      _etk_spinner_editable_mouse_in_cb, spinner);
   evas_object_event_callback_add(spinner->editable_object, EVAS_CALLBACK_MOUSE_OUT,
      _etk_spinner_editable_mouse_out_cb, spinner);
   evas_object_event_callback_add(spinner->editable_object, EVAS_CALLBACK_MOUSE_DOWN,
      _etk_spinner_editable_mouse_down_cb, spinner);
   evas_object_event_callback_add(spinner->editable_object, EVAS_CALLBACK_MOUSE_UP,
      _etk_spinner_editable_mouse_up_cb, spinner);
   evas_object_event_callback_add(spinner->editable_object, EVAS_CALLBACK_MOUSE_MOVE,
      _etk_spinner_editable_mouse_move_cb, spinner);

   /* Connect the "decrement"/"increment" edje signals to callbacks */
   edje_object_signal_callback_add(theme_object, "etk,action,decrement,start", "", _etk_spinner_step_start_cb, spinner);
   edje_object_signal_callback_add(theme_object, "etk,action,increment,start", "", _etk_spinner_step_start_cb, spinner);
   edje_object_signal_callback_add(theme_object, "etk,action,decrement,stop", "", _etk_spinner_step_stop_cb, spinner);
   edje_object_signal_callback_add(theme_object, "etk,action,increment,stop", "", _etk_spinner_step_stop_cb, spinner);

   /* Update the text of the editable object */
   _etk_spinner_update_text_from_value(spinner);

   return ETK_TRUE;
}
Ejemplo n.º 10
0
Archivo: tut22.c Proyecto: Limsik/e17
static void
_edje_signal_cb(void *data, Evas_Object *obj, const char *emission, const char *source)
{
    //printf("Emission : %s - Source : %s\n", emission, source);

   if (!strcmp(emission, "info,clicked"))
     {
	Evas_Object *textblock;

	Evas_Object *edje;

	printf("info clicked \n");

	textblock = elm_layout_add(win);
	elm_layout_file_set(textblock, "tut22.edj", "infos_panel");
	evas_object_show(textblock);
	evas_object_size_hint_weight_set(textblock, 1, 1);
	elm_object_part_content_set(layout, "panel_swallow", textblock);
	evas_object_show(textblock);
	elm_object_part_text_set(textblock, "textblock", "<h1>What is Enlightenment?</h1><br>"
				 "<tab><h4>Enlightenment is not just a window manager for <hilight>Linux/X11</hilight> and others, but also a whole suite of libraries to help you create beautiful user interfaces with much less work than doing it the old fashioned way and fighting with traditional toolkits, not to mention a traditional window manager. It covers uses from small mobile devices like phones all the way to powerful multi-core desktops (which are the primary development environment). </h4><br>"
				 "<br><h1>Enlightenment Foundation Libraries (EFL)</h1> <br>"
				 "<tab>These provide both a semi-traditional toolkit set in <rhinoceros>Elementary</rhinoceros> as well as the object canvas <h2>(Evas)</h2> and powerful abstracted objects (Edje) that you can combine, mix and match, even layer on top of each other with alpha channels and events in-tact. It has <link><a href=\"evas_map\">3D transformations</a></link> for all objects and more. )");

	edje = elm_layout_edje_get(textblock);

	edje_object_signal_callback_add(edje, "*", "*", _edje_signal_textblock_cb, NULL);

        edje = elm_layout_edje_get(layout);
        edje_object_signal_emit(edje, "hide,table,anim", "tuto");

     }

}
Ejemplo n.º 11
0
Archivo: tut22.c Proyecto: Limsik/e17
int main(int argc, char **argv)
{

   Evas_Object *edje;

   elm_init(argc, argv);

   win = elm_win_add(NULL, "tuto", ELM_WIN_BASIC);
   elm_win_title_set(win, "Edje Tutorial");
   evas_object_smart_callback_add(win, "delete,request", _win_del, NULL);


   layout = elm_layout_add(win);
   elm_layout_file_set(layout, "tut22.edj", "interface");
   evas_object_show(layout);
   elm_win_resize_object_add(win, layout);

   table = elm_layout_add(layout);
   elm_layout_file_set(table, "tut22.edj", "table");
   evas_object_show(table);

   evas_object_size_hint_weight_set(layout, 1, 1);

   elm_object_part_content_set(layout, "table_swallow", table);

   edje = elm_layout_edje_get(table);
   edje_object_signal_callback_add(edje, "*", "*", _edje_signal_cb, NULL);

   evas_object_resize(win, 800, 480);
   evas_object_show(win);

   elm_run();
   elm_shutdown();
}
Ejemplo n.º 12
0
static void
_empris_popup_create (Instance * inst, const char *dir)
{
   Evas *evas;
   Evas_Object *o_popup;
   char buf[4096];
  
   if (inst->ci->show_popup)
     {
	inst->popup = e_gadcon_popup_new (inst->gcc);
	evas = inst->popup->win->evas;
	o_popup = edje_object_add (evas);
	if (!e_theme_edje_object_set
	    (o_popup, "base/theme/modules/empris", "modules/empris/popup"))
	  {
	     if (dir)
	       {
		  edje_object_file_set (o_popup, dir, "modules/empris/popup");
	       }
	     else
	       {
		  snprintf(buf, sizeof(buf), "%s/empris.edj",
			   e_module_dir_get(empris_config->module));
		  edje_object_file_set(o_popup, buf, "modules/empris/popup");
	       }
	  }
	evas_object_show (o_popup);
	e_gadcon_popup_content_set (inst->popup, o_popup);
	edje_object_size_min_calc (o_popup, NULL, NULL);
	inst->o_popup = o_popup;
	edje_object_signal_callback_add (o_popup, "empris,play", "",
					 _empris_cb_play, inst);
	edje_object_signal_callback_add (o_popup, "empris,stop", "",
					 _empris_cb_stop, inst);
	edje_object_signal_callback_add (o_popup, "empris,pause", "",
					 _empris_cb_pause, inst);
	edje_object_signal_callback_add (o_popup, "empris,next", "",
					 _empris_cb_next, inst);
	edje_object_signal_callback_add (o_popup, "empris,previous", "",
					 _empris_cb_previous, inst);
     }
   else
     {
	inst->popup = NULL;
	inst->o_popup = NULL;
     }
}
Ejemplo n.º 13
0
void Object::connect (const std::string &emission, const std::string &source, const SignalSlot& slot)
{
  SignalSignal* signal = new SignalSignal();
	mSignalList[std::pair <std::string, std::string> (emission, source)] = signal;
  AllocTag( signal, emission );
  signal->connect( slot );
  edje_object_signal_callback_add( o, emission.c_str (), source.c_str (), &_edje_signal_handler_callback, static_cast<void*>( signal ) );
}
Ejemplo n.º 14
0
static void register_callbacks(ePlayer *player) {
	Evas_Object *e = player->gui.edje;
	int i;
	EdjeCallback cb[] = {
		{"QUIT", "*",
		 (EdjeCb) cb_eplayer_quit},
		{"PLAY_PREVIOUS", "*",
		 (EdjeCb) cb_track_prev},
		{"PLAY_NEXT", "*",
		 (EdjeCb) cb_track_next},
		{"SEEK_BACK", "*",
		 (EdjeCb) cb_seek_backward},
		{"SEEK_FORWARD", "*",
		 (EdjeCb) cb_seek_forward},
		{"SEEK_BACK_START", "*",
		 (EdjeCb) cb_seek_backward_start},
		{"SEEK_BACK_STOP", "*",
		 (EdjeCb) cb_seek_backward_stop},
		{"SEEK_FORWARD_START", "*",
		 (EdjeCb) cb_seek_forward_start},
		{"SEEK_FORWARD_STOP", "*",
		 (EdjeCb) cb_seek_forward_stop},
		{"PLAY", "*",
		 (EdjeCb) cb_play},
		{"PAUSE", "*",
		 (EdjeCb) cb_pause},
		{"STOP", "*",
		 (EdjeCb) cb_stop},
		{"VOL_INCR", "*",
		 (EdjeCb) cb_volume_raise},
		{"VOL_DECR", "*",
		 (EdjeCb) cb_volume_lower},
		{"TOGGLE_TIME_DISPLAY_MODE", "*",
		 (EdjeCb) cb_time_display_toggle},
		{"TOGGLE_REPEAT_MODE", "*",
		 (EdjeCb) cb_repeat_mode_toggle},
		{"SWITCH_GROUP", "*",
		 (EdjeCb) cb_switch_group},
		{"SEEKER*", "*",
		 (EdjeCb) cb_update_seeker},
		{"PLAYLIST_ADD", "*",
		 (EdjeCb) cb_playlist_add},
		{"PLAYLIST_DEL", "*",
		 (EdjeCb) cb_playlist_del}};

	for (i = 0; i < sizeof (cb) / sizeof (EdjeCallback); i++)
		edje_object_signal_callback_add(e, cb[i].name, cb[i].src,
		                                cb[i].func, player);

	/* Setup Key Binds */
	evas_object_focus_set(e, 1);
	evas_object_event_callback_add(e, EVAS_CALLBACK_KEY_DOWN, cb_key_press, player);	
	/* This is for a later time and place, see notes with cb_key_release() */
	//evas_object_event_callback_add(e, EVAS_CALLBACK_KEY_UP, cb_key_release, player);	
	
}
Ejemplo n.º 15
0
/* externally accessible functions */
EAPI Evas_Object *
e_widget_button_add(Evas *evas, const char *label, const char *icon, void (*func) (void *data, void *data2), void *data, void *data2)
{
   Evas_Object *obj, *o;
   E_Widget_Data *wd;
   Evas_Coord mw, mh;

   obj = e_widget_add(evas);

   e_widget_del_hook_set(obj, _e_wid_del_hook);
   e_widget_focus_hook_set(obj, _e_wid_focus_hook);
   e_widget_activate_hook_set(obj, _e_wid_activate_hook);
   e_widget_disable_hook_set(obj, _e_wid_disable_hook);
   wd = calloc(1, sizeof(E_Widget_Data));
   wd->func = func;
   wd->data = data;
   wd->data2 = data2;
   e_widget_data_set(obj, wd);

   o = edje_object_add(evas);
   wd->o_button = o;
   e_theme_edje_object_set(o, "base/theme/widgets",
			   "e/widgets/button");
   edje_object_signal_callback_add(o, "e,action,click", "", 
				   _e_wid_signal_cb1, obj);
   if ((label) && (label[0] != 0))
     {
	edje_object_part_text_set(o, "e.text.label", label);
	wd->type |= E_WIDGET_BUTTON_TEXT;
     }

   e_widget_sub_object_add(obj, o);
   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, 
				  _e_wid_focus_steal, obj);
   e_widget_resize_object_set(obj, o);
   evas_object_show(o);

   if (icon)
     {
	o = e_icon_add(evas);
	wd->o_icon = o;
	e_util_icon_theme_set(o, icon);
	edje_object_part_swallow(wd->o_button, "e.swallow.icon", o);
	e_widget_sub_object_add(obj, o);
	evas_object_show(o);
	wd->type |= E_WIDGET_BUTTON_ICON;
     }

   _e_wid_button_state_send(wd);
   edje_object_size_min_calc(wd->o_button, &mw, &mh);
   e_widget_size_min_set(obj, mw, mh);

   return obj;
}
Ejemplo n.º 16
0
EAPI void
e_obj_dialog_obj_theme_set(E_Obj_Dialog *od, char *theme_cat, char *theme_obj)
{
   E_OBJECT_CHECK(od);
   E_OBJECT_TYPE_CHECK(od, E_OBJ_DIALOG_TYPE);
   
   e_theme_edje_object_set(od->bg_object, theme_cat, theme_obj);
   evas_object_move(od->bg_object, 0, 0);
   evas_object_show(od->bg_object);
   edje_object_signal_callback_add(od->bg_object, "e,action,close", "",
				   _e_obj_dialog_cb_close, od);
}
Ejemplo n.º 17
0
void create_buttons() {

	
	container_outer = edje_object_add(evas);
	edje_object_file_set(container_outer, default_theme, "widgets/scrollframe");
	evas_object_move(container_outer, 0, 0);
	edje_object_signal_emit(container_outer, "hbar", "hide");
	evas_object_resize(container_outer, barwidth - 19, container_height);
	evas_object_show(container_outer);

	edje_object_signal_callback_add(container_outer, "drag*", "vbar_bar", _scrolldrag, NULL);
	
	container = esmart_container_new(evas);
	edje_object_part_swallow(container_outer, "item", container);
	esmart_container_direction_set(container, CONTAINER_DIRECTION_VERTICAL);
	
	get_theme_list();

#define ADD_BUTTON(A, B, C)\
	A = edje_object_add(evas);\
	edje_object_file_set(A, default_theme, "widgets/button");\
	evas_object_resize(A, 120, 24);\
	edje_object_part_text_set(A, "label", C);\
	evas_object_show(A);
	
	ADD_BUTTON(b_default, 40, "Default Theme");
	evas_object_move(b_default, 5, container_height + 10);
	edje_object_signal_callback_add(b_default, "click", "", _preview_theme, NULL);
	 
	ADD_BUTTON(b_apply, 60, "Apply");
	evas_object_move(b_apply, 5, container_height + 40);
	edje_object_signal_callback_add(b_apply, "click", "", _set_theme, NULL);
	
	ADD_BUTTON(b_exit, 80, "Exit");
	evas_object_move(b_exit, 5, container_height + 60);
	edje_object_signal_callback_add(b_exit, "click", "", _ethemes_exit, NULL);
	

#undef ADD_BUTTON
}
Ejemplo n.º 18
0
Object::Object( Evasxx::Canvas &canvas )
{
  // Initialize the Edje library
  Base::init ();
  
  o = edje_object_add( canvas.obj() );
  init();

#ifdef CWDEBUG
  edje_object_message_handler_set( o, &_edje_message_handler_callback, 0 );
  edje_object_signal_callback_add( o, "*", "*", &_edje_signal_handler_callback, 0 );
#endif
}
Ejemplo n.º 19
0
Evas_Object *
elm_keypad_add(Evas_Object * parent)
{
	// Evas_Object *obj; Instead I'm using the wd->widget variable
	Evas *e;
	Widget_Data *wd;

	wd = ELM_NEW(Widget_Data);
	e = evas_object_evas_get(parent);
	wd->widget = elm_widget_add(e);
	elm_widget_data_set(wd->widget, wd);
	elm_widget_del_hook_set(wd->widget, _del_hook);

	wd->keypad = edje_object_add(e);
	g_debug("keypad evas object: %d", wd->keypad);
	edje_object_file_set(wd->keypad, KEYPAD_FILE, "keypad");
	edje_object_signal_callback_add(wd->keypad, "*", "input",
					_signal_clicked, wd->widget);
	edje_object_signal_callback_add(wd->keypad, "0", "mouse_up",
					_zero_mouse_up, wd->widget);
	edje_object_signal_callback_add(wd->keypad, "0", "mouse_down",
					_zero_mouse_down, wd->widget);

	edje_object_part_text_set(wd->keypad, "text2_desc", D_("ABC"));
	edje_object_part_text_set(wd->keypad, "text3_desc", D_("DEF"));
	edje_object_part_text_set(wd->keypad, "text4_desc", D_("GHI"));
	edje_object_part_text_set(wd->keypad, "text5_desc", D_("JKL"));
	edje_object_part_text_set(wd->keypad, "text6_desc", D_("MNO"));
	edje_object_part_text_set(wd->keypad, "text7_desc", D_("PQRS"));
	edje_object_part_text_set(wd->keypad, "text8_desc", D_("TUV"));
	edje_object_part_text_set(wd->keypad, "text9_desc", D_("XYZ"));

	elm_widget_resize_object_set(wd->widget, wd->keypad);
	//evas_object_smart_callback_add(wd->widget, "sub-object-del", _sub_del, wd->widget);

	_sizing_eval(wd->widget);
	return wd->widget;
}
Ejemplo n.º 20
0
void eyelight_viewer_tableofcontents_start(Eyelight_Viewer* pres,int select)
{
    Evas_Object *o;
    int w_win, h_win;
    const char* data;

    evas_output_viewport_get(pres->evas, NULL, NULL, &w_win, &h_win);

    pres->state = EYELIGHT_VIEWER_STATE_TABLEOFCONTENTS;
    pres->tableofcontents_current = select;

    o = edje_object_add(pres->evas);
    pres->tableofcontents_background = o;
    if(edje_object_file_set(o, pres->theme, "eyelight/tableofcontents") ==  0)
    {
        WARN("table of contents is not supported by the theme");
        return ;
    }

    data = edje_object_data_get(o, "nb_slides");
    pres->tableofcontents_nb_slides = atoi(data);
    evas_object_show(o);
    evas_object_resize(o, pres->current_size_w, pres->current_size_h);
    edje_object_scale_set(o, pres->current_scale);
    evas_object_move(o, pres->current_pos_x, pres->current_pos_y);
    evas_object_smart_member_add(o,pres->smart_obj);
    evas_object_clip_set(o, pres->current_clip);

    edje_object_signal_callback_add(o,"tableofcontents,slide,next","eyelight",_eyelight_viewer_tableofcontents_next_cb,pres);
    edje_object_signal_callback_add(o,"tableofcontents,slide,previous","eyelight",_eyelight_viewer_tableofcontents_previous_cb,pres);
    edje_object_signal_callback_add(o,"tableofcontents,next,end","eyelight",_eyelight_viewer_tableofcontents_next_end_cb,pres);
    edje_object_signal_callback_add(o,"tableofcontents,previous,end","eyelight",_eyelight_viewer_tableofcontents_previous_end_cb,pres);

    _eyelight_viewer_tableofcontents_slides_load(pres);

    edje_object_signal_emit(pres->tableofcontents_background,
           "show","eyelight");
}
Ejemplo n.º 21
0
static E_Gadcon_Client *
_gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style) 
{
   Instance *inst;
   E_Gadcon_Client *gcc;
   char buf[PATH_MAX];

   snprintf(buf, sizeof(buf), "%s/net.edj", e_module_dir_get(net_cfg->mod));

   inst = E_NEW(Instance, 1);
   inst->ci = _net_config_item_get(id);
 
   inst->o_net = edje_object_add(gc->evas);
   if (!e_theme_edje_object_set(inst->o_net, "base/theme/modules/net",
				"modules/net/main"))
     edje_object_file_set(inst->o_net, buf, "modules/net/main");
   edje_object_signal_callback_add(inst->o_net, "e,action,mouse,in", "",
				   _net_cb_mouse_in, inst);
   edje_object_signal_callback_add(inst->o_net, "e,action,mouse,out", "",
				   _net_cb_mouse_out, inst);
   evas_object_show(inst->o_net);

   if (!inst->ci->show_text)
     edje_object_signal_emit(inst->o_net, "e,state,text,hide", "e");
   else
     edje_object_signal_emit(inst->o_net, "e,state,text,show", "e");
   
   gcc = e_gadcon_client_new(gc, name, id, style, inst->o_net);
   gcc->data = inst;
   inst->gcc = gcc;
   inst->timer = ecore_timer_add(0.5, _net_cb_poll, inst);

   evas_object_event_callback_add(inst->o_net, EVAS_CALLBACK_MOUSE_DOWN, 
				  _net_cb_mouse_down, inst);

   net_cfg->instances = eina_list_append(net_cfg->instances, inst);
   return gcc;
}
Ejemplo n.º 22
0
Object::Object( Evasxx::Canvas &canvas, const std::string &filename, const std::string &groupname )
{
  // Initialize the Edje library
  Base::init ();
  
  o = edje_object_add( canvas.obj() );
  init();

#ifdef CWDEBUG
  edje_object_message_handler_set( o, &_edje_message_handler_callback, 0 );
  edje_object_signal_callback_add( o, "*", "*", &_edje_signal_handler_callback, 0 );
#endif
  setFile( filename, groupname );
}
Ejemplo n.º 23
0
void _eli_edje_frontend_menu_container_fill(Eli_App * eap, 
		                             Evas_Object * container)
{
    const char ** games;
    char * file;

    file = ecore_config_theme_with_path_from_name_get(eap->theme.gui.current);
    games = elitaire_available_games_get();

    for (int i = 0; games[i][0]; i++) {
        Evas_Object * item;

        item = edje_object_add(evas_object_evas_get(container));

        if (edje_object_file_set(item, file, "elitaire/element")) {
            Evas_Coord w, h;

            edje_object_size_min_get(item, NULL, &h);
            evas_object_geometry_get(container, NULL, NULL, &w, NULL);
            evas_object_resize(item, w, h);

            if (edje_object_part_exists(item, "elitaire_element_value")) {
                edje_object_part_text_set(item, "elitaire_element_value",
                                          games[i]);
                evas_object_show(item);

                edje_object_signal_callback_add(item, "item_selected",
                                                "item_selected",
                                                _eli_edje_frontend_new_game_cb,
						eap);

                esmart_container_element_append(container, item);
            }
            else {
                fprintf(stderr, _("Elitaire Error in %s: "
                                  "missing element_value part!\n"), file);
                evas_object_del(item);
            }
        }
        else {
            fprintf(stderr,
                    _("Elitaire Error in %s: missing element group!\n"),
                    file);
            evas_object_del(item);
        }
    }
}
Ejemplo n.º 24
0
int
idle_screen_view_init()
{
	Evas_Object *win;
	int ret;

	ret = ui_utils_view_init(VIEW_PTR(view), ELM_WIN_BASIC, D_("Idle_Screen"),
				NULL, NULL, NULL);
	if (ret) {
		g_critical("Failed to init idle screen");
		return ret;
	}

	ui_utils_view_delete_callback_set(VIEW_PTR(view), _delete_cb);
	ui_utils_view_layout_set(VIEW_PTR(view), IDLE_SCREEN_THEME,
				"phoneui/idle_screen/idle_screen");

	edje_object_signal_emit(ui_utils_view_layout_get(VIEW_PTR(view)),
				"clock_init", "");

	win = ui_utils_view_window_get(VIEW_PTR(view));

	_set_edje_size();

	elm_win_fullscreen_set(win, 1);
	elm_win_layer_set(win, 200);
	elm_win_keyboard_mode_set(win, ELM_WIN_KEYBOARD_OFF);
	evas_object_show(view.wallpaper);

	edje_object_signal_callback_add(ui_utils_view_layout_get(VIEW_PTR(view)), "unlockScreen",
					"slider", idle_screen_view_hide,
					NULL);

	phoneui_info_register_and_request_resource_status(_resource_status, NULL);
	phoneui_info_register_and_request_network_status(_network_status, NULL);
	phoneui_info_register_and_request_signal_strength(_signal_strength, NULL);
	phoneui_info_register_backlight_power(_backlight_power, NULL);
	phoneui_info_register_and_request_pdp_context_status(_pdp_context_status, NULL);
	phoneui_info_register_and_request_profile_changes(_profile_change, NULL);
	phoneui_info_register_and_request_capacity_changes(_capacity_change, NULL);
	phoneui_info_register_and_request_missed_calls(_missed_calls, NULL);
	phoneui_info_register_and_request_unread_messages(_unread_messages, NULL);
	phoneui_info_register_and_request_unfinished_tasks(_unfinished_tasks, NULL);

	return 0;
}
Ejemplo n.º 25
0
static void
_item_refresh_mode_one(News_Item *ni, int changed_order, int changed_state)
{
   Evas_Object *box;
   Evas_Object *obj;

   box = ni->view.box;
   obj = ni->view.obj_mode_one;

   /* create obj */

   if (!obj)
     {
        obj = edje_object_add(ni->gcc->gadcon->evas);
        news_theme_edje_set(obj, NEWS_THEME_FEEDONE);
        edje_object_signal_callback_add(obj, "e,action,open", "e",
                                        _cb_item_open, ni);
     }

   if (!ni->view.obj_mode_one || changed_order)
     {
        e_box_pack_end(box, obj);
        e_box_pack_options_set(obj,
                               1, 1, /* fill */
                               1, 1, /* expand */
                               0, 0, /* align */
                               0, 0,
                               -1, -1
                               );
        evas_object_show(obj);
     }

   /* state */

   if (!ni->view.obj_mode_one || changed_state)
     {
        if (ni->unread_count)
          edje_object_signal_emit(obj, "e,state,new,set", "e");
        else
          edje_object_signal_emit(obj, "e,state,new,unset", "e");
     }

   ni->view.obj_mode_one = obj;
}
Ejemplo n.º 26
0
Etheme_Object * etheme_new(const char * t) {

	Etheme_Object * o;
	o = (Etheme_Object *) malloc(sizeof(Etheme_Object));

	o->theme = (char *) strdup(t);
	o->thumbpath = e_preview_thumb_file_get(t);


	int size = strlen(t) - 4; /* without .edj */

	o->label = malloc(sizeof(char) * size);
	o->label = strncpy(o->label, t, size);
	o->label[size] = 0;
		
	o->button = edje_object_add(evas);

	edje_object_file_set(o->button, default_theme, "fileman/icon_normal");
	evas_object_resize(o->button, 100, 120);
	edje_object_part_text_set(o->button, "icon_title" , o->label);
		
	esmart_container_element_append(container, o->button);
	
	if (e_preview_thumb_check(t))
		e_preview_thumb_generate(t);
		
	o->thumb = evas_object_image_add(evas);
	evas_object_image_size_set(o->thumb, 640, 480);
	evas_object_image_fill_set(o->thumb, 0, 0, 85, 85);
	e_preview_thumb_image(o->thumbpath, o->thumb);

	edje_object_part_swallow(o->button, "icon_swallow", o->thumb);

	evas_object_show(o->button);

	edje_object_signal_callback_add(o->button, "mouse,up,1", "icon_event",
				_preview_theme, o);
		
	
	return o;

}
Ejemplo n.º 27
0
void
theme_init(const char *theme)
{
   Evas_Object *o;
   char buf[4096];
   
   if (!theme) theme = "default";
   o = edje_object_add(evas);
   if ((theme) && 
       (theme[0] != '/') && 
       (!!strncmp(theme, "./", 2)) &&
	(!!strncmp(theme, "../", 3)))
     snprintf(buf, sizeof(buf), THEMES"/%s.edj", theme);
   else
     snprintf(buf, sizeof(buf), "%s", theme);
   edje_object_file_set(o, buf, "exquisite/theme");
   evas_object_move(o, 0, 0);
   evas_object_resize(o, scr_w, scr_h);
   edje_object_signal_callback_add(o, "exquisite", "done", _theme_cb_exit_done, NULL);
   evas_object_show(o);
   o_bg = o;
}
Ejemplo n.º 28
0
static E_Gadcon_Client *
_gc_init(E_Gadcon *gc, const char *name, const char *id, const char *style)
{
   Instance *inst;

   inst = E_NEW(Instance, 1);
   inst->o_toggle = edje_object_add(gc->evas);
   e_theme_edje_object_set(inst->o_toggle,
                           "base/theme/modules/conf",
                           "e/modules/conf/main");

   inst->gcc = e_gadcon_client_new(gc, name, id, style, inst->o_toggle);
   inst->gcc->data = inst;

   edje_object_signal_callback_add(inst->o_toggle, "e,action,conf", "",
                                   _cb_action_conf, inst);

   instances = eina_list_append(instances, inst);
   e_gadcon_client_util_menu_attach(inst->gcc);

   return inst->gcc;
}
Ejemplo n.º 29
0
/* Called when the statusbar is realized */
static Etk_Bool _etk_statusbar_realized_cb(Etk_Object *object, void *data)
{
   Etk_Statusbar *statusbar;
   Etk_Widget *statusbar_widget;

   if (!(statusbar = ETK_STATUSBAR(object)))
      return ETK_TRUE;
   statusbar_widget = ETK_WIDGET(statusbar);

   if (statusbar->has_resize_grip)
      etk_widget_theme_signal_emit(statusbar_widget, "etk,action,show,resize_grip", ETK_TRUE);
   else
      etk_widget_theme_signal_emit(statusbar_widget, "etk,action,hide,resize_grip", ETK_TRUE);
   _etk_statusbar_update(statusbar);

   if (statusbar_widget->theme_object)
   {
      edje_object_signal_callback_add(statusbar_widget->theme_object, "*", "etk.event.resize",
         _etk_statusbar_resize_grip_cb, object);
   }

   return ETK_TRUE;
}
Ejemplo n.º 30
0
/**  
 * Creates a check box widget
 *
 * @param evas pointer
 * @param label the text to asign to check widget
 * @param val pointer to int where changes are stored
 * @return the newly created evas object
 */
EAPI Evas_Object *
e_widget_check_add(Evas *evas, const char *label, int *val)
{
   Evas_Object *obj, *o;
   E_Widget_Data *wd;
   Evas_Coord mw, mh;

   obj = e_widget_add(evas);

   e_widget_del_hook_set(obj, _e_wid_del_hook);
   e_widget_focus_hook_set(obj, _e_wid_focus_hook);
   e_widget_activate_hook_set(obj, _e_wid_activate_hook);
   e_widget_disable_hook_set(obj, _e_wid_disable_hook);
   wd = calloc(1, sizeof(E_Widget_Data));
   wd->valptr = val;
   e_widget_data_set(obj, wd);

   o = edje_object_add(evas);
   wd->o_check = o;
   e_theme_edje_object_set(o, "base/theme/widgets",
                           "e/widgets/check");
   edje_object_signal_callback_add(o, "e,action,toggle", "*", _e_wid_signal_cb1, obj);
   edje_object_part_text_set(o, "e.text.label", label);
   evas_object_show(o);
   edje_object_size_min_calc(o, &mw, &mh);
   e_widget_size_min_set(obj, mw, mh);
   if (wd->valptr)
     {
        if (*(wd->valptr)) edje_object_signal_emit(o, "e,state,checked", "e");
     }

   e_widget_sub_object_add(obj, o);
   evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, _e_wid_focus_steal, obj);
   e_widget_resize_object_set(obj, o);

   return obj;
}