Exemplo n.º 1
0
void
e_entry_lower(E_Entry *entry)
{
   evas_object_lower(entry->event_box);
   if (entry->obj_cursor) ebits_lower(entry->obj_cursor);
   if (entry->obj_selection) ebits_lower(entry->obj_selection);
   evas_object_lower(entry->text);
   evas_object_lower(entry->clip_box);
   if (entry->obj_base) ebits_lower(entry->obj_base);
}
Exemplo n.º 2
0
void
_engage_element_object_lower(Evas_Object * o)
{
  Engage_Element *data;

  if ((data = evas_object_smart_data_get(o))) {
    evas_object_lower(data->behavior);
    evas_object_lower(data->icon);
    evas_object_lower(data->clip);
  }
}
Exemplo n.º 3
0
EAPI void
e_layout_child_lower(Evas_Object *obj)
{
   E_Layout_Item *li;
   
   li = evas_object_data_get(obj, "e_layout_data");
   if (!li) return;
   if (!eina_list_data_find(li->sd->items, obj)) return;
   if ((li->sd->items) && eina_list_next(li->sd->items))
     {
	li->sd->items = eina_list_remove(li->sd->items, obj);
	evas_object_lower(obj);
	li->sd->items = eina_list_prepend(li->sd->items, obj);
     }
}
Exemplo n.º 4
0
void Object::lower()
{
  Dout( dc::notice, *this << " lower" );
  evas_object_lower( o );
}
Exemplo n.º 5
0
EAPI void
evas_object_stack_below(Evas_Object *obj, Evas_Object *below)
{
   MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
   return;
   MAGIC_CHECK_END();
   MAGIC_CHECK(below, Evas_Object, MAGIC_OBJ);
   return;
   MAGIC_CHECK_END();
   if (obj == below) return;
   if (evas_object_intercept_call_stack_below(obj, below)) return;
   if (!below)
     {
	evas_object_lower(obj);
	return;
     }
   if ((EINA_INLIST_GET(obj))->next == EINA_INLIST_GET(below))
     {
	evas_object_inform_call_restack(obj);
	return;
     }
   if (obj->smart.parent)
     {
	if (obj->smart.parent != below->smart.parent)
	  {
	     ERR("BITCH! evas_object_stack_below(), %p not inside same smart as %p!", obj, below);
	     return;
	  }
	evas_object_smart_member_stack_below(obj, below);
     }
   else
     {
	if (below->smart.parent)
          {
             ERR("BITCH! evas_object_stack_below(), %p stack below %p, but below has smart parent, obj does not", obj, below);
             return;
          }
	if (obj->layer != below->layer)
	  {
             ERR("BITCH! evas_object_stack_below(), %p stack below %p, not matching layers", obj, below);
	     return;
	  }
	if (obj->in_layer)
	  {
	     obj->layer->objects = (Evas_Object *)eina_inlist_remove(EINA_INLIST_GET(obj->layer->objects),
								     EINA_INLIST_GET(obj));
	     obj->layer->objects = (Evas_Object *)eina_inlist_prepend_relative(EINA_INLIST_GET(obj->layer->objects),
									       EINA_INLIST_GET(obj),
									       EINA_INLIST_GET(below));
	  }
     }
   if (obj->clip.clipees)
     {
	evas_object_inform_call_restack(obj);
	return;
     }
   if (obj->layer) evas_render_invalidate(obj->layer->evas);
   obj->restack = 1;
   evas_object_change(obj);
   evas_object_inform_call_restack(obj);
   if (obj->layer->evas->events_frozen <= 0)
     {
	if (!evas_event_passes_through(obj))
	  {
	     if (!obj->smart.smart)
	       {
		  if (evas_object_is_in_output_rect(obj,
						    obj->layer->evas->pointer.x,
						    obj->layer->evas->pointer.y, 1, 1) &&
		      obj->cur.visible)
		    evas_event_feed_mouse_move(obj->layer->evas,
					       obj->layer->evas->pointer.x,
					       obj->layer->evas->pointer.y,
					       obj->layer->evas->last_timestamp,
					       NULL);
	       }
	  }
     }
}
Exemplo n.º 6
0
int elitaire_object_file_set(Evas_Object * elitaire, const char * file)
{
    int i, number;
    Evas_Object * card;
    Elitaire * eli;
    vector<stackLook>::const_iterator iord, iend;
    Eina_Bool change_file;
    card_iterator it, it_end;
    int num_decks;

    eli = (Elitaire *) evas_object_smart_data_get(elitaire);
    if (!eli) return 0;

    /* for the stack images */
    iord = eli->game->getStackLooksBegin();
    iend = eli->game->getStackLooksEnd();

    if (eli->file) change_file = true;
    else change_file = false;

    if (eli->file) {
        free(eli->file);
        eli->file = NULL;
    }

    if (!file) return 0;
    else eli->file = strdup(file);

    /* get the maximal and minimal size of the cards via edje */
    /* I expect that every card in the game has the same size */
    card = edje_object_add(eli->evas);
    if (!edje_object_file_set(card, eli->file, "elitaire/card/00")) return 0;
        
    edje_object_size_max_get(card, &eli->card_max_w, &eli->card_max_h);
    edje_object_size_min_get(card, &eli->card_min_w, &eli->card_min_h);
    evas_object_del(card);

    /*connect the playingCards with elitaire_cards and set the callbacks */
    if (change_file) elitaire_cards_del(eli);

    num_decks = eli->game->getNumDecks();

    for (i = 0; i < num_decks; i++) {
        it = eli->game->getDeckBegin(i);
        it_end = eli->game->getDeckEnd(i);

        while (it != it_end) {
            card = elitaire_card_new(eli, *it);
            evas_object_smart_member_add(card, elitaire);
            evas_object_clip_set(card, eli->clip);
            evas_object_show(card);
            (*it)->data = (void *) card;
            elitaire_card_callback_add(card, EVAS_CALLBACK_MOUSE_DOWN,
                                       elitaire_mouse_down_cb);
            elitaire_card_callback_add(card, EVAS_CALLBACK_MOUSE_UP,
                                       elitaire_mouse_up_cb);
            //evas_object_layer_set(card, 1);
            if (evas_alloc_error() != EVAS_ALLOC_ERROR_NONE) {
                fprintf(stderr,
                        _("Elitaire Error: Callback registering failed!\n"));
                return 0;
            }
            it++;
        }
    }

    /* give the stacks an pic */
    if (change_file)
        elitaire_stacks_del(eli);

    eli->stacks =
        (Evas_Object **) calloc(eli->num_stacks, sizeof(Elitaire*));
    number = 0;

    while (iord != iend) {
        switch (*iord) {
        case STACK:
        case LAST:
            eli->stacks[number] = edje_object_add(eli->evas);
            evas_object_smart_member_add(eli->stacks[number], elitaire);
            edje_object_file_set(eli->stacks[number], eli->file, "elitaire/stack/last");
            evas_object_event_callback_add(eli->stacks[number],
                                           EVAS_CALLBACK_MOUSE_UP,
                                           _elitaire_stack_mouse_up_cb, eli);
            evas_object_show(eli->stacks[number]);
            evas_object_lower(eli->stacks[number]);
            number++;
            break;

        case ALL:
            eli->stacks[number] = edje_object_add(eli->evas);
            evas_object_smart_member_add(eli->stacks[number], elitaire);
            edje_object_file_set(eli->stacks[number], eli->file, "elitaire/stack/all");
            evas_object_event_callback_add(eli->stacks[number],
                                           EVAS_CALLBACK_MOUSE_UP,
                                           _elitaire_stack_mouse_up_cb, eli);
            evas_object_show(eli->stacks[number]);
            evas_object_lower(eli->stacks[number]);
            number++;
            break;
        
        default:
            break;
        }
        iord++;
    }

    if (change_file) {
        elitaire_force_resize(eli);
        elitaire_reinit(eli);
    }
    return 1;
}