Function: void ShowScreenGeneric( void ) Description: This function erases the currently displayed screen and replaces it with a screen of a generic format. The screen consists of: * the Microchip icon * a one line title * four buttons * one line of instructions The information for the screen contents is obtained from the global pageInformation structure. Precondition: None Parameters: None Returns: None Remarks: The global list of graphics objects is destroyed and replaced. Therefore, this function cannot be called during the message processing of GOLMsgCallback(). It must be called during GOLDrawCallback() processing. ***************************************************************************/ void ShowScreenGeneric( void ) { InitializeScreen(); BtnCreate( ID_TOP_LEFT, // ID 0,LOCATION_MIN_Y,62,30,2, // dimension and radius BTN_DRAW|BTN_PRESSED, // will be displayed after creation pageInformation.buttonBitmapTopLeft, // bitmap pageInformation.buttonTextTopLeft, // text NULL ); // Default scheme BtnCreate( ID_BOTTOM_LEFT, // ID 0,32,62,46,2, // dimension and radius BTN_DRAW, // will be displayed after creation pageInformation.buttonBitmapBottomLeft, // bitmap pageInformation.buttonTextBottomLeft, // text NULL ); // Default scheme BtnCreate( ID_TOP_RIGHT, // ID 64,LOCATION_MIN_Y,125,30,2, // dimension and radius BTN_DRAW, // will be displayed after creation pageInformation.buttonBitmapTopRight, // bitmap pageInformation.buttonTextTopRight, // text NULL ); // Default scheme BtnCreate( ID_BOTTOM_RIGHT, // ID 64,32,125,46,2, // dimension and radius BTN_DRAW, // will be displayed after creation pageInformation.buttonBitmapBottomRight, pageInformation.buttonTextBottomRight, NULL ); // Default scheme if(!strcmp(pageInformation.buttonTextThirdrow,"Cap Touch")) BtnCreate( ID_THIRDROW, 0,48,62,62,2, BTN_DRAW, pageInformation.buttonBitmapThirdrow, pageInformation.buttonTextThirdrow, NULL ); else StCreate( ID_INSTRUCTIONS, 0, 47, 127, 47+GetTextHeight( (void *)&FONTDEFAULT )-1, ST_DRAW, pageInformation.instructions, NULL ); }
/************************************************************************ Function: void CreateMultiFontsDemo(void) Overview: Creates the Multi-Font demo screen. Input: none Output: none ************************************************************************/ void CreateMultiFontsDemo(void) { SHORT i, j; // we need this since Static cannot have an uninitialized pointer to text // plus we need the static text area but we are only using it as a place // holder for the text that we will overwrite on the static text area static XCHAR spaceChar[2] = {0x20,0}; GOLFree(); // free memory for the objects in the previous linked list and start new list SetColor(SCREEN_BACKGROUND_COLOR); ClearDevice(); // draw the small squares SetColor(RGB565CONVERT(0x4C, 0x8E, 0xFF)); for(j = 5; j <= GetMaxY(); j += 16) { for(i = 5; i <= GetMaxX(); i += 16) { WAIT_UNTIL_FINISH(Bar(i, j, i + 3, j + 3)); } } InitHWData(); FontScheme2 = GOLCreateScheme(); // create alternative style scheme FontScheme2->pFont = pHWData->pHWFont; FontScheme2->Color0 = RGB565CONVERT(0xFF, 0xBB, 0x4C); FontScheme2->Color1 = RGB565CONVERT(0xFF, 0xBB, 0x4C); StCreate ( ID_STXT, STXXPOS, STXYPOS, STXXPOS + STXWIDTH, STXYPOS + STXHEIGHT, ST_DRAW | ST_FRAME, (void *) &spaceChar, FontScheme2 ); CreateCtrlButtons(ExitStr, LeftArrowStr, NULL, RightArrowStr); }
void ShowScreenCTMU( void ) { strcpy( pageInformation.title, "Calibrate Touchpads" ); pageInformation.instructions[0] = 0; InitializeScreen(); StCreate( ID_INSTRUCTIONS, 0, 30, 127, 30+GetTextHeight( (void *)&FONTDEFAULT )-1, ST_DRAW, pageInformation.instructions, NULL ); // Initialize calibration variables. calibrationState = CTMU_INITIALIZE; currentTouchpad = 0; }
STATICTEXT *InitStartTerminal(void) { SHORT left = 0, top = 0, right = 299, bottom = 199; int state = ST_DRAW | ST_FRAME | ST_CENTER_ALIGN; STATICTEXT* retval; retval = StCreate(ID_START_TEXT, left, top, right, bottom, state, TextLabel, _pDefaultGolScheme); return retval; /* if (retval) { if (StDraw(retval)) { // START_TERMINAL_AVE[2] = IDENT[0] + 0x020; StSetText(retval, START_TERMINAL_AVE); StDraw(retval); } return retval; }; return NULL;*/ };
void InitializeScreen( void ) { GOLFree(); SetColor(BLACK); // set color to BLACK ClearDevice(); // set screen to all BLACK PictCreate( ID_ICON, // ID 0,0,15,15, // dimension PICT_DRAW, // will be dislayed, has frame 1, // scale factor is x1 &iconMicrochip, // bitmap NULL ); // default GOL scheme StCreate( ID_TITLE, 16, 0, GetMaxX()-11, GetTextHeight( (void *)&FONTDEFAULT )-1, ST_DRAW, pageInformation.title, NULL ); previousTick = tick; }
void CreateSetprog(void) { GOLFree(); SetColor(BLUE_LIGHT); ClearDevice(); BtnCreate(Setprog_OBJ_BUTTON_0,7,46,116,117,10,BTN_DRAW,(void*)prog_images[0],NULL,defscheme); BtnCreate(Setprog_OBJ_BUTTON_1,125,46,234,117,10,BTN_DRAW,(void*)prog_images[1],NULL,defscheme); BtnCreate(Setprog_OBJ_BUTTON_2,7,124,116,195,10,BTN_DRAW,(void*)prog_images[2],NULL,defscheme); BtnCreate(Setprog_OBJ_BUTTON_3,125,124,234,195,10,BTN_DRAW,(void*)prog_images[3],NULL,defscheme); BtnCreate(Setprog_OBJ_BUTTON_4,7,201,116,272,10,BTN_DRAW,(void*)prog_images[4],NULL,defscheme); BtnCreate(Setprog_OBJ_BUTTON_5,125,201,234,272,10,BTN_DRAW,(void*)prog_images[5],NULL,defscheme); BtnCreate(Setprog_OBJ_BUTTON_7,5,277,66,313,5,BTN_DRAW,NULL,(XCHAR*)EXIT_OBJ_BUTTON_text,botbar); // BtnCreate(Setprog_OBJ_BUTTON_8,92,277,152,313,5,BTN_DRAW,NULL,(XCHAR*)Setprog_OBJ_BUTTON_8_text,botbar); // BtnCreate(Setprog_OBJ_BUTTON_9,170,277,230,313,5,BTN_DRAW,NULL,(XCHAR*)Setprog_OBJ_BUTTON_9_text,botbar); StCreate(Setprog_OBJ_STATICTEXT_0,1,0,238,30,ST_DRAW|ST_CENTER_ALIGN,(XCHAR*)Setprog_OBJ_STATICTEXT_0_text,topbar); }
/******************************************************************************* * FUNCTION: vCreateNumericKeypadPage * * PARAMETERS: * ~ void * * RETURN: * ~ void * * DESCRIPTIONS: * Create the numeric keypad page. * *******************************************************************************/ void vCreateNumericKeypadPage(void) { // Determine the text based on the current page. char *szPageTitle = ""; char *szReadButton = ""; char *szTitle2 = ""; char *szRange = ""; unsigned short usEditBox2Length = 0; switch (eGetGuiPage()) { case PAGE_SET_ID: szPageTitle = "SET ID"; szReadButton = "Read ID"; szTitle2 = "Set ID to :"; szRange = "( 0 - 253 )"; usEditBox2Length = 3; break; case PAGE_SET_BT_PIN: szPageTitle = "SET BLUETOOTH PIN (EDR)"; szReadButton = "Read PIN"; szTitle2 = "Set PIN to :"; szRange = "( 0000 - 9999 )"; usEditBox2Length = 4; break; } GOLFree(); vCreatePageWindow(szPageTitle); // Create text "Message :". StCreate( GID_KEYPAD_TXT_TITLE1, TXT_TITLE1_L, TXT_TITLE1_T, TXT_TITLE1_R, TXT_TITLE1_B, ST_DRAW, "Message :", pxDefaultScheme ); // Create editbox for current value or message. EbCreate( GID_KEYPAD_EB_VALUE1, EB_VALUE1_L, EB_VALUE1_T, EB_VALUE1_R, EB_VALUE1_B, EB_DRAW | EB_CENTER_ALIGN, NULL, 15, pxEditboxScheme ); // Create the read value button. BtnCreate( GID_KEYPAD_BTN_READ, BTN_READ_L, BTN_READ_T, BTN_READ_R, BTN_READ_B, 1, BTN_DRAW, NULL, szReadButton, pxBtnScheme ); // Create title 2. StCreate( GID_KEYPAD_TXT_TITLE2, TXT_TITLE2_L, TXT_TITLE2_T, TXT_TITLE2_R, TXT_TITLE2_B, ST_DRAW, szTitle2, pxDefaultScheme ); // Create editbox for new value. EbCreate( GID_KEYPAD_EB_VALUE2, EB_VALUE2_L, EB_VALUE2_T, EB_VALUE2_R, EB_VALUE2_B, EB_DRAW | EB_CENTER_ALIGN, NULL, usEditBox2Length, pxEditboxScheme ); // Create text for new ID range. StCreate( GID_KEYPAD_TXT_RANGE, TXT_RANGE_L, TXT_RANGE_T, TXT_RANGE_R, TXT_RANGE_B, ST_DRAW | ST_CENTER_ALIGN, szRange, pxDefaultScheme ); // Create keypad. prv_vCreateKeypad(); }
/************************************************************************ Function: CreateCommonObjects() Overview: Creates the common objects present in all screens Input: none Output: none ************************************************************************/ void CreateCommonObjects(void) { WORD timeStartX; WORD timeWidth, textHeight; SetColor(BACKGROUND_COLOR); ClearDevice(); BtnCreate ( ID_MCHPICON, MCHP_LOGO_STARTX, MCHP_LOGO_STARTY, MCHP_LOGO_STARTX + (MCHP_LOGO_WIDTH - 5), MCHP_LOGO_STARTY + (MCHP_LOGO_HEIGHT - 5), 0, BTN_DRAW, (void *) &MICROCHIP_LOGO, NULL, pBatStyleScheme ); PbCreate ( ID_BATLEVEL, BAT_STARTX, BAT_STARTY, BAT_STARTX + BAT_WIDTH, BAT_STARTY + BAT_HEIGHT, PB_DRAW | PB_NOPROGRESS, GetBatteryLevel(), GetBatteryRange(), pBatStyleScheme ); // calculate the positions of the date and time info strcpy(CurrentTimeStr, "Mon 10:10 AM "); timeWidth = GetTextWidth(CurrentTimeStr, (void *)&TIMEDATEFONT); textHeight = GetTextHeight((void *)&TIMEDATEFONT); timeStartX = BAT_STARTX - timeWidth - 5; StCreate ( ID_TIME, timeStartX, DATE_TIME_STARTY, timeStartX + timeWidth, DATE_TIME_STARTY + textHeight, ST_DRAW, CurrentTimeStr, pTimeDateStyleScheme ); // This is the battery primitives SetColor(TEXTCOLOR_UNPRESSED); // draw the outline first while(!Bar( BAT_STARTX - 1, BAT_STARTY - 1, BAT_STARTX + BAT_WIDTH + 1, BAT_STARTY + BAT_HEIGHT + 1)); // draw the battery head while(!Bar( BAT_STARTX - 3, BAT_STARTY + ((BAT_HEIGHT>>1)-1), BAT_STARTX - 2, BAT_STARTY + ((BAT_HEIGHT>>1)+1))); UpdateTime(FORCE_UPDATE); }