Esempio n. 1
0
static inline int
_smart_slider_value_flush(Evas_Object *o)
{
	smart_slider_t *priv = evas_object_smart_data_get(o);

	// calculate exact value
	float new_value = priv->min + priv->drag * priv->diff;

	double drag_x;
	if(priv->integer)
	{
		new_value = round(new_value);
		drag_x = (new_value - priv->min) * priv->scale;
	}
	else
		drag_x = priv->drag;

	// has value changed?
	if(new_value != priv->value)
	{
		priv->value = new_value;

		edje_object_part_drag_size_set(priv->theme, "drag", drag_x, 1.f);

		char label [64];
		sprintf(label, priv->format, priv->value, priv->unit);
		edje_object_part_text_set(priv->theme, "label", label);

		return 1;
	}

	return 0;
}
static void
_mouse_down(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
	UI *ui = data;
	Evas_Event_Mouse_Down *ev = event_info;
	float x, z, w;

	_get_pos(ui, &ev->canvas, &x, &z, &w);

	Evas_Object *edj = elm_layout_edje_get(ui->theme);
	edje_object_part_drag_value_set(edj, "magnet", x, 0.0);
	edje_object_part_drag_size_set(edj, "magnet", w, z);

	chimaera_event_t *cev = &ui->cev;

	cev->state = CHIMAERA_STATE_ON;
	cev->sid += 1;
	cev->gid = 0;
	cev->pid = ev->button == 1 ? 128 : 256;
	cev->x = x;
	cev->z = z;
	cev->X = 0.f;
	cev->Z = 0.f;

	_write_event(ui, cev);
	
	cev->state = CHIMAERA_STATE_SET;
}
Esempio n. 3
0
void _resize_cb(Ecore_Evas * ee) {

	int w, h;
	evas_output_size_get(evas, &w, &h);

	evas_object_move(preview, barwidth, 0);
	evas_object_resize(preview, w - barwidth , h );
	evas_object_show(preview);

	evas_object_resize(preview_clip, w - barwidth , h );

	evas_object_move(background, 0, 0);
	evas_object_resize(background, barwidth, h);
	evas_object_show(background);
		
	evas_object_resize(container_outer, barwidth, h - 100);

	int length = (int) esmart_container_elements_length_get(container);

	double size;
	size = (double)(h - 100) / (double)length;

	edje_object_part_drag_size_set(container_outer, "vbar_bar", 1.0, size);

	if (length > h - 100)
		edje_object_signal_emit(container_outer, "vbar", "show");
	else
		edje_object_signal_emit(container_outer, "vbar", "hide");

	evas_object_move(b_default, 0, h - 100 + 10);
	evas_object_move(b_apply, 0, h - 100 + 40);
	evas_object_move(b_exit, 0, h - 100 + 60);

	
}
Esempio n. 4
0
static inline void
_smart_toggle_value_flush(Evas_Object *o)
{
	smart_toggle_t *priv = evas_object_smart_data_get(o);

	float size_x = priv->value;
	edje_object_part_drag_size_set(priv->theme, "drag", size_x, 1.f);
}
Esempio n. 5
0
static void
_smart_toggle_smart_init(Evas_Object *o)
{
	smart_toggle_t *priv = evas_object_smart_data_get(o);

	priv->value = 0;
	priv->disabled = 0;
	
	edje_object_part_drag_size_set(priv->theme, "drag", 0.f, 1.f);
	edje_object_part_drag_value_set(priv->theme, "drag", 0.f, 0.f);
}
Esempio n. 6
0
/* Progressbar: render() */
static Etk_Bool _progress_bar_render(Etk_Tree_Model *model, Etk_Tree_Row *row, Etk_Geometry geometry, void *cell_data, Evas_Object *cell_objects[ETK_TREE_MAX_OBJECTS_PER_MODEL], Evas *evas)
{
   Etk_Tree_Model_Progressbar_Data *pbar_data;
   int w, h;

   if (!(pbar_data = cell_data) || !cell_objects[0])
      return ETK_FALSE;

   edje_object_part_text_set(cell_objects[0], "etk.text.text", pbar_data->text ? pbar_data->text : "");

   evas_object_data_set(cell_objects[0], "_Etk_Tree_Model_Progressbar::Row", row);
   edje_object_size_min_get(cell_objects[0], &w, &h);
   evas_object_move(cell_objects[0], geometry.x, geometry.y + ((geometry.h - h) / 2));
   evas_object_resize(cell_objects[0], w > geometry.w ? w : geometry.w, h);

   edje_object_part_drag_value_set(cell_objects[0], "etk.dragable.filler", 0.0, 0.0);
   edje_object_part_drag_size_set(cell_objects[0], "etk.dragable.filler", pbar_data->fraction, 0.0);

   evas_object_show(cell_objects[0]);

   return ETK_FALSE;
}
static void
_mouse_move(void *data, Evas *e, Evas_Object *obj, void *event_info)
{
	UI *ui = data;
	Evas_Event_Mouse_Move *ev = event_info;
	float x, z, w;

	_get_pos(ui, &ev->cur.canvas, &x, &z, &w);

	Evas_Object *edj = elm_layout_edje_get(ui->theme);
	edje_object_part_drag_value_set(edj, "magnet", x, 0.0);
	edje_object_part_drag_size_set(edj, "magnet", w, z);
	
	chimaera_event_t *cev = &ui->cev;

	if(cev->state == CHIMAERA_STATE_SET)
	{
		cev->x = x;
		cev->z = z;
		
		_write_event(ui, cev);
	}
}
Esempio n. 8
0
static void
_opinfo_op_registry_listener(void *data, const E_Fm2_Op_Registry_Entry *ere)
{
   Evas_Object *o = data;
   char *total, buf[4096];
   Edje_Message_Float msg;
   int mw, mh;

   if (!o || !ere) return;

   // Don't show if the operation keep less than 1 second
   if (!ere->needs_attention && (ere->start_time + 1.0 > ecore_loop_time_get()))
     return;
   
   // Update icon
   switch (ere->op)
   {
      case E_FM_OP_COPY:
        edje_object_signal_emit(o, "e,action,icon,copy", "e");
        break;

      case E_FM_OP_MOVE:
        edje_object_signal_emit(o, "e,action,icon,move", "e");
        break;

      case E_FM_OP_REMOVE:
        edje_object_signal_emit(o, "e,action,icon,delete", "e");
        break;

      case E_FM_OP_SECURE_REMOVE:
        edje_object_signal_emit(o, "e,action,icon,secure_delete", "e");
        break;

      default:
        edje_object_signal_emit(o, "e,action,icon,unknown", "e");
   }

   // Update information text
   switch (ere->status)
     {
      case E_FM2_OP_STATUS_ABORTED:
        switch (ere->op)
          {
           case E_FM_OP_COPY:
             snprintf(buf, sizeof(buf), _("Copying is aborted"));
             break;

           case E_FM_OP_MOVE:
             snprintf(buf, sizeof(buf), _("Moving is aborted"));
             break;

           case E_FM_OP_REMOVE:
             snprintf(buf, sizeof(buf), _("Deleting is aborted"));
             break;

           case E_FM_OP_SECURE_REMOVE:
             snprintf(buf, sizeof(buf), _("Secure deletion is aborted"));
             break;

           default:
             snprintf(buf, sizeof(buf), _("Unknown operation from slave is aborted"));
          }
        break;

      default:
        total = e_util_size_string_get(ere->total);
        switch (ere->op)
          {
           case E_FM_OP_COPY:
             if (ere->finished)
               snprintf(buf, sizeof(buf), _("Copy of %s done"), total);
             else
               snprintf(buf, sizeof(buf), _("Copying %s (eta: %s)"),
                             total, e_util_time_str_get(ere->eta));
             break;

           case E_FM_OP_MOVE:
             if (ere->finished)
               snprintf(buf, sizeof(buf), _("Move of %s done"), total);
             else
               snprintf(buf, sizeof(buf), _("Moving %s (eta: %s)"),
                             total, e_util_time_str_get(ere->eta));
             break;

           case E_FM_OP_REMOVE:
             if (ere->finished)
               snprintf(buf, sizeof(buf), _("Delete done"));
             else
               snprintf(buf, sizeof(buf), _("Deleting files..."));
             break;

           case E_FM_OP_SECURE_REMOVE:
             if (ere->finished)
               snprintf(buf, sizeof(buf), _("Secure delete done"));
             else
               snprintf(buf, sizeof(buf), _("Securely deleting files..."));
             break;

           default:
             snprintf(buf, sizeof(buf), _("Unknown operation from slave %d"), ere->id);
          }
        E_FREE(total);
     }
   edje_object_part_text_set(o, "e.text.info", buf);

   // Update spinner wheel
   if ((ere->finished) || (ere->status == E_FM2_OP_STATUS_ABORTED))
     {
        if (!evas_object_data_get(o, "stopped"))
          {
             evas_object_data_set(o, "stopped", o);
             edje_object_signal_emit(o, "e,state,busy,stop", "e");
          }
     }
   if (ere->percent > 0)
     {
        if (!evas_object_data_get(o, "started"))
          {
             evas_object_data_set(o, "started", o);
             edje_object_signal_emit(o, "e,state,busy,start", "e");
          }
     }

   // Show/hide the red attention led
   if (ere->needs_attention)
     {
        if (!evas_object_data_get(o, "attention_started"))
          {
             evas_object_data_set(o, "attention_started", o);
             edje_object_signal_emit(o, "e,state,attention,start", "e");
             if (evas_object_data_get(o, "attention_stopped"))
               evas_object_data_del(o, "attention_stopped");
          }
     }
   else
     {
        if (!evas_object_data_get(o, "attention_stopped"))
          {
             evas_object_data_set(o, "attention_stopped", o);
             edje_object_signal_emit(o, "e,state,attention,stop", "e");
             if (evas_object_data_get(o, "attention_started"))
               evas_object_data_del(o, "attention_started");
          }
     }

   // Update gauge
   edje_object_part_drag_size_set(o, "e.gauge.bar",
                                  ((double)(ere->percent)) / 100.0, 1.0);
   msg.val = ((double)(ere->percent)) / 100.0;
   edje_object_message_send(o, EDJE_MESSAGE_FLOAT, 1, &msg);

   // resize element to fit the box
   edje_object_size_min_calc(o, &mw, &mh);
   e_box_pack_options_set(o, 1, 0, 1, 0, 0.0, 0.0, mw, mh, 9999, mh);
   evas_object_show(o);
}