예제 #1
0
static void lakka_open_submenu(void)
{
   int i, j, k;
    
   add_tween(LAKKA_DELAY, -hspacing * (menu_active_category+1),
         &all_categories_x, &inOutQuad, NULL);
   add_tween(LAKKA_DELAY, 1.0, &arrow_alpha, &inOutQuad, NULL);

   /* Reset contextual menu style */
   lakka_reset_submenu();
   
   for (i = 0; i < num_categories; i++)
   {
      menu_category_t *category = (menu_category_t*)&categories[i];

      if (!category)
         continue;

      if (i != menu_active_category)
         add_tween(LAKKA_DELAY, 0,
               &category->alpha, &inOutQuad, NULL);
      else
      {
         add_tween(LAKKA_DELAY, 1.0,
               &category->alpha, &inOutQuad, NULL);

         for (j = 0; j < category->num_items; j++)
         {
            if (j == category->active_item)
            {
               for (k = 0; k < category->items[j].num_subitems; k++)
               {
                  menu_subitem_t *subitem = (menu_subitem_t*)
                     &category->items[j].subitems[k];

                  if (k == category->items[j].active_subitem)
                  {
                     add_tween(LAKKA_DELAY, 1.0,
                           &subitem->alpha, &inOutQuad, NULL);
                     add_tween(LAKKA_DELAY, i_active_zoom,
                           &subitem->zoom, &inOutQuad, NULL);
                  }
                  else
                  {
                     add_tween(LAKKA_DELAY, 0.5,
                           &subitem->alpha, &inOutQuad, NULL);
                     add_tween(LAKKA_DELAY, i_passive_zoom,
                           &subitem->zoom, &inOutQuad, NULL);
                  }
               }
            }
            else
               add_tween(LAKKA_DELAY, 0,
                     &category->items[j].alpha, &inOutQuad, NULL);
         }
      }
   }
}
예제 #2
0
static void lakka_open_submenu(void)
{
   int i, j, k;
   add_tween(DELAY, -HSPACING * (menu_active_category+1), &all_categories_x, &inOutQuad, NULL);

   // Reset contextual menu style
   lakka_reset_submenu();
   
   for (i = 0; i < num_categories; i++)
   {
      menu_category_t *category = (menu_category_t*)&categories[i];

      if (!category)
         continue;

      if (i != menu_active_category)
         add_tween(DELAY, 0, &category->alpha, &inOutQuad, NULL);
      else
      {
         add_tween(DELAY, 1.0, &category->alpha, &inOutQuad, NULL);

         for (j = 0; j < category->num_items; j++)
         {
            if (j == category->active_item)
            {
               for (k = 0; k < category->items[j].num_subitems; k++)
               {
                  menu_subitem_t *subitem = (menu_subitem_t*)&category->items[j].subitems[k];

                  if (k == category->items[j].active_subitem)
                  {
                     add_tween(DELAY, 1.0, &subitem->alpha, &inOutQuad, NULL);
                     add_tween(DELAY, I_ACTIVE_ZOOM, &subitem->zoom, &inOutQuad, NULL);
                  }
                  else
                  {
                     add_tween(DELAY, 0.5, &subitem->alpha, &inOutQuad, NULL);
                     add_tween(DELAY, I_PASSIVE_ZOOM, &subitem->zoom, &inOutQuad, NULL);
                  }
               }
            }
            else
               add_tween(DELAY, 0, &category->items[j].alpha, &inOutQuad, NULL);
         }
      }
   }
}