#include "GUI.h"
#include "PROGBAR.h"
#include
/*********************************************************************
*
* Defines
*
**********************************************************************
*/
//
// Recommended memory to run the sample with adequate performance
//
#define RECOMMENDED_MEMORY (1024L * 5)
/*******************************************************************
*
* static code
*
********************************************************************
*/
/*******************************************************************
*
* _DemoProgBar
*/
static void _DemoProgBar(void) {
int i;
PROGBAR_Handle ahProgBar[2];
GUI_SetBkColor(GUI_BLACK);
GUI_Clear();
GUI_SetColor(GUI_WHITE);
GUI_SetFont(&GUI_Font24_ASCII);
GUI_DispStringHCenterAt("WIDGET_Progbar - Sample", 160, 5);
GUI_SetFont(&GUI_Font8x16);
GUI_DispStringAt("Progress bar", 100,80);
//
// Create the progbars
//
ahProgBar[0] = PROGBAR_Create(100,100,100,20, WM_CF_SHOW); //--------------(1)
ahProgBar[1] = PROGBAR_Create( 80,150,140,10, WM_CF_SHOW);
//
// Use memory device (optional, for better looks)
//
WM_EnableMemdev(ahProgBar[0]);
WM_EnableMemdev(ahProgBar[1]);
PROGBAR_SetMinMax(ahProgBar[1], 0, 500); //--------------(2)
PROGBAR_SetFont(ahProgBar[0], &GUI_Font8x16); //--------------(3)
GUI_Delay(500);
while(1) {
PROGBAR_SetFont(ahProgBar[0], &GUI_Font8x16);
if (LCD_GetDevCap(LCD_DEVCAP_BITSPERPIXEL) <= 4) { //--------------(4)
PROGBAR_SetBarColor(ahProgBar[0], 0, GUI_DARKGRAY); //--------------(5)
PROGBAR_SetBarColor(ahProgBar[0], 1, GUI_LIGHTGRAY);
} else {
PROGBAR_SetBarColor(ahProgBar[0], 0, GUI_GREEN);
PROGBAR_SetBarColor(ahProgBar[0], 1, GUI_RED);
}
PROGBAR_SetTextAlign(ahProgBar[0], GUI_TA_HCENTER); //--------------(6)
PROGBAR_SetText(ahProgBar[0], NULL); //--------------(7)
for (i=0; i<=100; i++) { //--------------(8)
PROGBAR_SetValue(ahProgBar[0], i); //--------------(9)
PROGBAR_SetValue(ahProgBar[1], i);
GUI_Delay(5);
}
PROGBAR_SetText(ahProgBar[0], "Tank empty"); //--------------(10)
for (; i>=0; i--) {
PROGBAR_SetValue(ahProgBar[0], i);
PROGBAR_SetValue(ahProgBar[1], 200-i);
GUI_Delay(5);
}
PROGBAR_SetText(ahProgBar[0], "Any text..."); //--------------(11)
PROGBAR_SetTextAlign(ahProgBar[0], GUI_TA_LEFT);
for (; i<=100; i++) {
PROGBAR_SetValue(ahProgBar[0], i);
PROGBAR_SetValue(ahProgBar[1], 200+i);
GUI_Delay(5);
}
PROGBAR_SetTextAlign(ahProgBar[0], GUI_TA_RIGHT); //--------------(12)
for (; i>=0; i--) {
PROGBAR_SetValue(ahProgBar[0], i);
PROGBAR_SetValue(ahProgBar[1], 400-i);
GUI_Delay(5);
}
PROGBAR_SetFont(ahProgBar[0], &GUI_FontComic18B_1); //--------------(13)
PROGBAR_SetText(ahProgBar[0], "Any font...");
for (; i<=100; i++) {
PROGBAR_SetValue(ahProgBar[0], i);
PROGBAR_SetValue(ahProgBar[1], 400+i);
GUI_Delay(5);
}
GUI_Delay(500);
}
}
/*********************************************************************
*
* Public code
*
**********************************************************************
*/
/*********************************************************************
*
* MainTask
*/
void MainTask(void) {
GUI_Init();
//
// Check if recommended memory for the sample is available
//
if (GUI_ALLOC_GetNumFreeBytes() < RECOMMENDED_MEMORY) {
GUI_ErrorOut("Not enough memory available.");
return;
}
while (1) {
_DemoProgBar();
}
} |