it dont work like that, all the icon are together and move together,
navX is the current selection on the x axis grid
#include <stdio.h>
#include <stdlib.h>
#include <SDL/SDL.h>
#include <SDL/SDL_image.h>
#include "functions.h"
#include "controls.h"
extern SDL_Surface *screen;
extern navX,navY;
SDL_Surface *themeRes[11];
void interfaceTheme(void)
{
themeRes[0] = IMG_Load("Resource/theme/basic/icon_user.png"); // user icon
themeRes[1] = IMG_Load("Resource/theme/basic/icon_player.png"); // player/user sub icon
themeRes[2] = IMG_Load("Resource/theme/basic/icon_newuser.png"); // new user icon
themeRes[3] = IMG_Load("Resource/theme/basic/icon_music.png"); // main music icon
themeRes[4] = IMG_Load("Resource/theme/basic/icon_music_album_default.png"); // group music icon
themeRes[5] = IMG_Load("Resource/theme/basic/icon_music_default.png"); // default song icon
themeRes[6] = IMG_Load("Resource/theme/basic/icon_usb.png"); // default usb icon
themeRes[7] = IMG_Load("Resource/theme/basic/icon_network.png"); // default network icon
themeRes[8] = IMG_Load("Resource/theme/basic/icon_setting.png"); // settings icon
themeRes[9] = IMG_Load("Resource/theme/basic/icon_update.png"); // update icon
themeRes[10] = IMG_Load("Resource/theme/basic/icon_poweroff.png"); // poweroff icon
}
void OrbisInterface(void)
{
SDL_FillRect(screen,NULL,0x000000);
blit(166 + ((4 - navX) * 150),125,themeRes[0],screen);
blit(166 + ((4 - navX) * 150),125,themeRes[2],screen);
blit(166 + ((4 - navX) * 150),125,themeRes[8],screen);
blit(166 + ((4 - navX) * 150),125,themeRes[7],screen);
SDL_Flip(screen);
}