Download MiniGUI Programming Guide

Transcript
MiniGUI Programming Guide V2.0-4
#include
#include
#include
#include
#include
#define
#define
#define
#define
#define
#define
#define
#define
#define
<minigui/gdi.h>
<minigui/window.h>
<minigui/control.h>
<minigui/mgext.h>
<minigui/skin.h>
SIID_TITLE
SIID_PLAY
SIID_PAUSE
SIID_STOP
SIID_PROGRESS
SIID_SYSMENU
SIID_CLOSE
SIID_VOLUME
SIID_TIMER
#define DEF_WIDTH
#define DEF_HEIGHT
#define ID_TIME
1
2
3
4
5
6
7
8
9
284
135
100
/* Define special properties of skin item */
static si_nrmslider_t progress
= { {0, 180, 0 }, 5 };
static si_nrmslider_t volume
= { {1, 100, 50}, 9 };
static si_bmplabel_t timer
= { "00:00", "0123456789:-" };
/* Defien skin item array */
static skin_item_t skin_main_items [] =
{
{SIID_PLAY, SI_TYPE_CHKBUTTON
| SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,
205, 106, {}, 1, "Play"},
{SIID_PAUSE, SI_TYPE_CHKBUTTON
| SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,
230, 106, {}, 2, "Pause"},
{SIID_STOP, SI_TYPE_CHKBUTTON
| SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,
254, 106, {}, 3, "Stop"},
{SIID_PROGRESS, SI_TYPE_NRMSLIDER| SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE
| SI_NRMSLIDER_HORZ, 8, 91, {}, 4, "Progress" , 0, &progress},
{SIID_SYSMENU, SI_TYPE_CMDBUTTON | SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,
9, 2, {}, 6},
{SIID_CLOSE, SI_TYPE_CMDBUTTON
| SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,
263, 2, {}, 7, "Close"},
{SIID_VOLUME, SI_TYPE_NRMSLIDER | SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE
| SI_NRMSLIDER_HORZ, 102, 55, {}, 8, "Volume" , 0, &volume},
{SIID_TIMER,
SI_TYPE_BMPLABEL | SI_TEST_SHAPE_RECT | SI_STATUS_VISIBLE,
20, 67, {}, 10, "Time", 0, &timer}
};
/* Define skin */
skin_head_t main_skin =
{
"Skin Window",
SKIN_STYLE_TOOLTIP, NULL, NULL,
0, 8, skin_main_items, FALSE
};
/* Bitmap array */
const char *bmp_name[] = {
"main.png", "play.png", "pause.png", "stop.png", "progress-bk.png", "progress.png",
"sysmenu.png", "close.png", "volume-bk.png", "volume.png", "timer.png"
};
static int cur_pos = 0;
/* Bitmap resource load/unload function */
void load_skin_bmps ( skin_head_t *skin, BOOL load )
{
int i, bmp_num = sizeof(bmp_name)/sizeof(char *);
/*
* If load is true, load bitmap to bmps array of skin, else unload bitmap in
* bmps array code is omitted.
*/
}
/* Skin event callback function */
static int main_event_cb (HWND hwnd, skin_item_t* item, int event, void* data)
{
171