Beispiel #1
0
void animator_setup(animator_callback_gui_shared_info_s* common_data)
{
	debug_only("%s","animator_setup");
	ecore_animator_frametime_set(REFRESH_SPEED);
	common_data->dash_animator = ecore_animator_add(animator_rotate_dashes, common_data);
	common_data->balls_animator = ecore_animator_add(animator_spawns_balls, common_data);
	ecore_animator_freeze(common_data->dash_animator);
	ecore_animator_freeze(common_data->balls_animator);
}
Beispiel #2
0
Eina_Bool animator_rotate_dashes(animator_callback_gui_shared_info_s *common_data)
{
	int i;
	static int curr_step = 1;
	if (common_data->rotation.direction == LEFT){
		curr_step--;
	} else {
		curr_step++;
	}
	double angle = curr_step * common_data->game.rotation_degree * common_data->game.turning_speed * REFRESH_SPEED;
	Evas_Coord x,y,w,h;
	Evas_Object **dashes = common_data->gui.dashes; /* array! */
	Evas_Map *dashes_maps[DASHES_COUNT];
	for (i=0;i<DASHES_COUNT;i++)
	{
		dashes_maps[i] = evas_map_new(4);
		evas_object_geometry_get(dashes[i], &x, &y, &w, &h);
		evas_map_util_points_populate_from_object(dashes_maps[i], dashes[i]);
		evas_map_util_rotate(dashes_maps[i], DASHES_INIT[i].rotation, x + DASH_LEN/2, y + DASH_LEN/2);
		evas_map_util_rotate(dashes_maps[i], angle, CENTER_X, CENTER_Y);
		evas_object_map_set(dashes[i], dashes_maps[i]);
		evas_object_map_enable_set(dashes[i], EINA_TRUE);
		evas_map_free(dashes_maps[i]);
	}

	#ifdef does_not_want_inertion
		if (--common_data->steps == 0)
	#endif
			ecore_animator_freeze(common_data->dash_animator);

	return ECORE_CALLBACK_RENEW;
}
static void app_pause(void *data)
{
    /* Take necessary actions when application becomes invisible. */
    if(!data)
    {
        return;
    }
    pauseAccelerometerSensor();

    Application* app = ((Application *)data);
    app->applicationDidEnterBackground();

    ecore_animator_freeze(app->_ani);
    app->setPauseFlag(true);
}
Beispiel #4
0
static void
compiz_damage(void)
{
   CompDisplay *d;
   CompScreen *s;
   CompWindow *w;
   Eina_Bool thaw = EINA_FALSE;

   for (d = core.displays; d; d = d->next)
     for (s = d->screens; s; s = s->next)
       {
          if (!s->damageMask)
            for (w = s->windows; w; w = w->next)
              {
                 E_Client *ec;

                 ec = compiz_win_to_client(w);
                 if (w->grabbed && ((!ec->moving) && (!e_client_util_resizing_get(ec))))
                   w->screen->windowUngrabNotify(w);
                 if ((w->attrib.x == ec->client.x) && (w->attrib.y == ec->client.y))
                   continue;
                 moveWindow(w, ec->client.x - w->attrib.x, ec->client.y - w->attrib.y, TRUE, TRUE);
                 syncWindowPosition(w);
                 compiz_texture_clear(w->texture);
              }
          if (s->damageMask)
            {
               evas_damage_rectangle_add(e_comp->evas, 0, 0, 1, 1);
               thaw = EINA_TRUE;
            }
       }
   if (eina_array_count(events) || thaw)
     ecore_animator_thaw(compiz_anim);
   else
     ecore_animator_freeze(compiz_anim);
}
Beispiel #5
0
static void app_pause(void *data)
{
	appdata_s *ad = data;
	ecore_animator_freeze(ad->ani);
}
Beispiel #6
0
void Animator::stop()
{
	ecore_animator_freeze( m_Animator );
}
Beispiel #7
0
void Animator::init()
{
	m_Animator = ecore_animator_add( timer_func, this );
	ecore_animator_freeze( m_Animator );
}
Beispiel #8
0
Eina_Bool animator_spawns_balls(animator_callback_gui_shared_info_s *common_data){
	create_ball(common_data);
	ecore_animator_freeze(common_data->balls_animator); //spawn single ball and stop
	return ECORE_CALLBACK_RENEW;
}