コード例 #1
0
ファイル: YesNoBox.c プロジェクト: BackupTheBerlios/tap-svn
//-----------------------------------------------------------------------
//
void DisplayYesNoWindow(char* title, char* line1, char* line2, char* button1, char* button2, int defaultOption, void (*ReturningProcedure)( bool ) )
{
	YesNoCallback = ReturningProcedure;

    yesnoWindowShowing = TRUE;
    YesNoOption = defaultOption;

	// Store the currently displayed screen area where we're about to put our pop-up window on.
    YesNoWindowCopy = TAP_Osd_SaveBox(rgn, YESNO_WINDOW_X, YESNO_WINDOW_Y, YESNO_WINDOW_W, YESNO_WINDOW_H);

    #ifdef WIN32  // If testing on WIN32 platform 
    TAP_Osd_FillBox( rgn,YESNO_WINDOW_X, YESNO_WINDOW_Y, YESNO_WINDOW_W, YESNO_WINDOW_H, FILL_COLOUR );				// clear the screen
    #endif          

    // Display the pop-up window.
    TAP_Osd_PutGd( rgn, YESNO_WINDOW_X, YESNO_WINDOW_Y, &_popup360x180Gd, TRUE );
	
    // Display Title and information in pop-up window
	PrintCenter( rgn, YESNO_WINDOW_X+5, YESNO_WINDOW_Y +  13, YESNO_WINDOW_X+YESNO_WINDOW_W-5, title, MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );
	PrintCenter( rgn, YESNO_WINDOW_X+5, YESNO_WINDOW_Y +  56, YESNO_WINDOW_X+YESNO_WINDOW_W-5, line1, MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );
	PrintCenter( rgn, YESNO_WINDOW_X+5, YESNO_WINDOW_Y +  89, YESNO_WINDOW_X+YESNO_WINDOW_W-5, line2, MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );
    
    strcpy(YesNoButton1,button1);
    strcpy(YesNoButton2,button2);
    
    DisplayYesNoLine();
}
コード例 #2
0
ファイル: Menu.c プロジェクト: BackupTheBerlios/tap-svn
void DisplayMenu( menu_Struct *menu )
{
	int i;
	word h1, v1, x1, x2, y1, y2;
	char str[256];

    TAP_Osd_FillBox( rgn, 0, 0, 720, 576, FILL_COLOUR );				// Clear the screen
    TAP_Osd_PutGd( rgn, (MENU_X - 11), MENU_Y - 8, &_menu_titleGd, TRUE );

																		// Draw boarders - calculate coords first:
	h1 = MENU_ROW_W + 16;												// horizontal width
	v1 = ((MAX_NUMBER_OF_MENU_ITEMS+1) * MENU_STEP) + 8;				// vertical width - num of items + extended text line

	x1 = MENU_X - 10;													// top right
	y1 = MENU_Y + MENU_STEP - 12;

	x2 = x1 + h1;														// bottom left
	y2 = y1 + v1;

	
    TAP_Osd_FillBox( rgn, x1, y1, 4, v1, TITLE_COLOUR );				// left boarder line
    TAP_Osd_FillBox( rgn, x2, y1, 4, v1, TITLE_COLOUR );				// right boarder line
    TAP_Osd_FillBox( rgn, x1, y2, h1+4, 4, TITLE_COLOUR );				// bottom boarder line

	TAP_Osd_PutStringAf1926( rgn, MENU_X+20, MENU_Y+2, MENU_X + 100, menu->title, TITLE_COLOUR, 0 );	// Print the title

	for ( i=1 ; i <= (menu->count) ; i++ )								// for each row on the menu
	{
		DisplayMenuLine( menu, i );										// display the text
	}
}
コード例 #3
0
ファイル: Menu.c プロジェクト: BackupTheBerlios/tap-svn
//------------------
//
void DisplayMenuLine( menu_Struct *menu, int lineNumber )
{
    char	str[80];
	dword	width, x_coord, exTextX, exTextY;
	int 	i;
	int 	currentMenuLine;
    menuItem_Struct	*currentItem;

	currentMenuLine = menu->currentLine;

	if ( lineNumber > menu->count ) return;								// bounds check
	if ( lineNumber == 0 ) return;										// bounds check

	if ( currentMenuLine == lineNumber )								// highlight the current cursor line
	    TAP_Osd_PutGd( rgn, MENU_X, (lineNumber * MENU_STEP) + MENU_Y - 8, &_menurow_highlightGd, FALSE );
	else
	    TAP_Osd_PutGd( rgn, MENU_X, (lineNumber * MENU_STEP) + MENU_Y - 8, &_menurowGd, FALSE );


	currentItem = menu->items[ lineNumber ];
	strcpy( str, currentItem->title );

	width = TAP_Osd_GetW( str, 0, FNT_Size_1622 );

	if ( width <= MENU_ROW_W ) x_coord = MENU_X + ((MENU_ROW_W)/2) - (width/2);	// centralise text
	else x_coord = MENU_X;														// too wide - fill width
	
																				// print the text
	TAP_Osd_PutStringAf1622( rgn, x_coord, (lineNumber * MENU_STEP) + MENU_Y, (MENU_X + MENU_ROW_W), str, MAIN_TEXT_COLOUR, 0 );

	
	exTextX = MENU_X;
	exTextY = ((MAX_NUMBER_OF_MENU_ITEMS+1) * MENU_STEP) + MENU_Y;
	
	if ( lineNumber == currentMenuLine )
	{
		strcpy( str, currentItem->description );
																				// blank the extended text area before redrawing
		TAP_Osd_FillBox( rgn, exTextX, (exTextY-8), MENU_ROW_W, MENU_STEP, FILL_COLOUR );
		TAP_Osd_PutStringAf1419( rgn, exTextX, (exTextY+15), (exTextX + MENU_ROW_W), str, INFO_COLOUR, 0 );
	}
}
コード例 #4
0
//------------------------------------------------------------------
//
void DisplayMoveLine(void)
{
	TAP_Osd_PutGd( rgn, MOVE_OPTION_X+(0*MOVE_OPTION_X_SPACE), MOVE_OPTION_Y,   &_keyblue82x43Gd, FALSE );
    PrintCenter(rgn,    MOVE_OPTION_X+(0*MOVE_OPTION_X_SPACE), MOVE_OPTION_Y+9, MOVE_OPTION_X+(0*MOVE_OPTION_X_SPACE)+MOVE_OPTION_W, "Move", MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );

	TAP_Osd_PutGd( rgn, MOVE_OPTION_X+(1*MOVE_OPTION_X_SPACE), MOVE_OPTION_Y,   &_keyblue82x43Gd, FALSE );
	PrintCenter(rgn,    MOVE_OPTION_X+(1*MOVE_OPTION_X_SPACE), MOVE_OPTION_Y+9, MOVE_OPTION_X+(1*MOVE_OPTION_X_SPACE)+MOVE_OPTION_W, "Cancel", MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );

	switch ( moveCommandOption )
	{
		case 0 :
					TAP_Osd_PutGd( rgn, MOVE_OPTION_X+(0*MOVE_OPTION_X_SPACE), MOVE_OPTION_Y,   &_keygreen82x43Gd, FALSE );
				    PrintCenter(rgn,    MOVE_OPTION_X+(0*MOVE_OPTION_X_SPACE), MOVE_OPTION_Y+9, MOVE_OPTION_X+(0*MOVE_OPTION_X_SPACE)+MOVE_OPTION_W, "Move", COLOR_Yellow, 0, FNT_Size_1926 );
                    break;
					
		case 1 :
					TAP_Osd_PutGd( rgn, MOVE_OPTION_X+(1*MOVE_OPTION_X_SPACE), MOVE_OPTION_Y,   &_keygreen82x43Gd, FALSE );
					PrintCenter(rgn,    MOVE_OPTION_X+(1*MOVE_OPTION_X_SPACE), MOVE_OPTION_Y+9, MOVE_OPTION_X+(1*MOVE_OPTION_X_SPACE)+MOVE_OPTION_W, "Cancel", COLOR_Yellow, 0, FNT_Size_1926 );
                    break;
	}
}
コード例 #5
0
void BitmapPage::OnOpen()
{
	int x = (MAX_SCREEN_X - width) / 2;
	int y = (MAX_SCREEN_Y - height) / 2;

	// Store the currently displayed screen area where we're about to put our pop-up window on.
	windowCopy = TAP_Osd_SaveBox(GetTAPScreenRegion(), x,y, width, height);
	// Display the pop-up window.
	if ( gd )
		TAP_Osd_PutGd( GetTAPScreenRegion(), x,y, gd, TRUE );
	else if ( pixmapData )
		TAP_Osd_DrawPixmap( GetTAPScreenRegion(), x,y, width,height, pixmapData, TRUE, OSD_1555 );
}
コード例 #6
0
ファイル: YesNoBox.cpp プロジェクト: BackupTheBerlios/tap-svn
//------------------------------------------------------------------
//
void YesNoBox::DisplayLine()
{
	TAP_Osd_PutGd( GetTAPScreenRegion(), YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y, &_bigkeyblueGd, FALSE );
    PrintCenter(GetTAPScreenRegion(), YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y+8, YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE)+YESNO_OPTION_W, button1, MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );

	TAP_Osd_PutGd( GetTAPScreenRegion(), YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y, &_bigkeyblueGd, FALSE );
	PrintCenter(GetTAPScreenRegion(), YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y+8, YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE)+YESNO_OPTION_W, button2, MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );

	switch ( option )
	{

		case 0 :
					TAP_Osd_PutGd( GetTAPScreenRegion(), YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y, &_bigkeygreenGd, FALSE );
				    PrintCenter(GetTAPScreenRegion(), YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y+8, YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE)+YESNO_OPTION_W, button1, COLOR_Yellow, 0, FNT_Size_1926 );
                    break;

		case 1 :
					TAP_Osd_PutGd( GetTAPScreenRegion(), YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y, &_bigkeygreenGd, FALSE );
					PrintCenter(GetTAPScreenRegion(), YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y+8, YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE)+YESNO_OPTION_W, button2, COLOR_Yellow, 0, FNT_Size_1926 );
                    break;

	}
}
コード例 #7
0
ファイル: YesNoBox.c プロジェクト: BackupTheBerlios/tap-svn
//------------------------------------------------------------------
//
void DisplayYesNoLine(void)
{
	TAP_Osd_PutGd( rgn, YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y, &_bigbluebuttonGd, FALSE );
    PrintCenter(rgn, YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y+8, YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE)+YESNO_OPTION_W, YesNoButton1, MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );

	TAP_Osd_PutGd( rgn, YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y, &_bigbluebuttonGd, FALSE );
	PrintCenter(rgn, YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y+8, YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE)+YESNO_OPTION_W, YesNoButton2, MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );

	switch ( YesNoOption )
	{

		case 0 :
					TAP_Osd_PutGd( rgn, YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y, &_biggreenbuttonGd, FALSE );
				    PrintCenter(rgn, YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y+8, YESNO_OPTION_X+(0*YESNO_OPTION_X_SPACE)+YESNO_OPTION_W, YesNoButton1, COLOR_Yellow, 0, FNT_Size_1926 );
                    break;
					
		case 1 :
					TAP_Osd_PutGd( rgn, YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y, &_biggreenbuttonGd, FALSE );
					PrintCenter(rgn, YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE), YESNO_OPTION_Y+8, YESNO_OPTION_X+(1*YESNO_OPTION_X_SPACE)+YESNO_OPTION_W, YesNoButton2, COLOR_Yellow, 0, FNT_Size_1926 );
                    break;
					
	}
}
コード例 #8
0
ファイル: YesNoBox.cpp プロジェクト: BackupTheBerlios/tap-svn
void YesNoBox::OnOpen()
{
	// Store the currently displayed screen area where we're about to put our pop-up window on.
    windowCopy = TAP_Osd_SaveBox(GetTAPScreenRegion(), YESNO_WINDOW_X, YESNO_WINDOW_Y, YESNO_WINDOW_W, YESNO_WINDOW_H);

    // Display the pop-up window.
    TAP_Osd_PutGd( GetTAPScreenRegion(), YESNO_WINDOW_X, YESNO_WINDOW_Y, &_popup360x180Gd, TRUE );

    // Display Title and information in pop-up window
	PrintCenter( GetTAPScreenRegion(), YESNO_WINDOW_X+5, YESNO_WINDOW_Y +  13, YESNO_WINDOW_X+YESNO_WINDOW_W-5, title, MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );
	PrintCenter( GetTAPScreenRegion(), YESNO_WINDOW_X+5, YESNO_WINDOW_Y +  56, YESNO_WINDOW_X+YESNO_WINDOW_W-5, line1, MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );
	PrintCenter( GetTAPScreenRegion(), YESNO_WINDOW_X+5, YESNO_WINDOW_Y +  89, YESNO_WINDOW_X+YESNO_WINDOW_W-5, line2, MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

    DisplayLine();
}
コード例 #9
0
//-----------------------------------------------------------------------
//
void DisplayArchiveMoveWindow()
{
    char title[50];

    appendToLogfile("DisplayArchiveMoveWindow: Started.", INFO);
 
    // Display the pop-up window - will also clear any old text if we are doing a refresh.
    TAP_Osd_PutGd( rgn, MOVE_WINDOW_X, MOVE_WINDOW_Y, &_popup476x416Gd, TRUE );
//	TAP_Osd_FillBox( moveRgn, 0, 0, 720, 576, POPUP_FILL_COLOUR );		// clear the memory region with FILL COLOUR

    // Format and display the title for the Move Window.
    TAP_SPrint(title, "Select Destination Folder");
    PrintCenter( rgn, MOVE_WINDOW_X, MOVE_WINDOW_Y +  14, MOVE_WINDOW_X+MOVE_WINDOW_W, title, MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );
	
    DisplayMoveLine();
    appendToLogfile("DisplayArchiveMoveWindow: Finised.", INFO);
}
コード例 #10
0
void OSDMenuWaitSpinnerInit(void)
{
  TRACEENTER();

  if(InfoBoxOSDRgn && WaitSpinnerRgn == 0)
  {
    WaitSpinnerRgn = TAP_Osd_Create(0, 0, _WaitSpinner_All_Gd.width, _WaitSpinner_All_Gd.height, 0, OSD_Flag_MemRgn);
    if(WaitSpinnerRgn)
    {
      TAP_Osd_PutGd(WaitSpinnerRgn, 0, 0, &_WaitSpinner_All_Gd, FALSE);
      TAP_Osd_Copy(WaitSpinnerRgn, InfoBoxOSDRgn, 0, 0, 50, 50, 15, 130, FALSE);
      WaitSpinnerIndex = 0;
      WaitSpinnerTimeout = TAP_GetTick() + 10;
      TAP_Osd_Sync();
    }
  }

  TRACEEXIT();
}
コード例 #11
0
//-----------------------------------------------------------------------
//
void DisplayArchiveMoveFolderList()
{
    int printLine, index, lineHeight;

    appendToLogfile("DisplayArchiveMoveFolderList: Started.", WARNING);

    // Vertical spacing for each of the rows to display the list of target folders.
    lineHeight = 30;

    // Where in the list should we start the printing from.
    index     = printMoveFolderLine;
    
    // Start the printing on the first row.
    printLine = 1;
    
    // Build the folder list in a memory screen region.
    TAP_Osd_PutGd( moveRgn, MOVE_WINDOW_X, MOVE_WINDOW_Y, &_popup476x416Gd, TRUE );             // Redisplay blank popup window to clear out old list.
    while ((index<=numberOfDestinationFolders) && (printLine<=MAX_MOVE_FOLDERS_SHOWN))
	{
         if (index == chosenFolderLine)  // If we're about to print the selected folder, print it with a different background.
              PrintLeft (moveRgn, MOVE_WINDOW_X+20, MOVE_WINDOW_Y+ 50 + (printLine * lineHeight), MOVE_WINDOW_X+MOVE_WINDOW_W-8, moveFiles[index]->name, MAIN_TEXT_COLOUR, HEADING_TEXT_COLOUR, FNT_Size_1926 );
         else                            // If we're about to print a normal folder, print it with a normal background
              PrintLeft (moveRgn, MOVE_WINDOW_X+20, MOVE_WINDOW_Y+ 50 + (printLine * lineHeight), MOVE_WINDOW_X+MOVE_WINDOW_W-8, moveFiles[index]->name, MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );
         index++;      // Increment the counter for the list.
         printLine++;  // Increment the row counter.
    }     
    
    // Print "+" indicators and top and/or bottom of the list to indicate if there are more files above/below in the list.
    // Check if there are some folders not shown at TOP of the list.
    if (printMoveFolderLine > 1)  
        PrintLeft (moveRgn, MOVE_WINDOW_X+MOVE_WINDOW_W-30, MOVE_WINDOW_Y+ 50 + ((1) * lineHeight),           MOVE_WINDOW_X+MOVE_WINDOW_W-8, "+", MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );
    // Check if there are some folders not shown at BOTTOM of the list.
    if (index <= numberOfDestinationFolders)  // We've have't printed all of our list entries.
        PrintLeft (moveRgn, MOVE_WINDOW_X+MOVE_WINDOW_W-30, MOVE_WINDOW_Y+ 50 + ((printLine-1) * lineHeight), MOVE_WINDOW_X+MOVE_WINDOW_W-8, "+", MAIN_TEXT_COLOUR, 0, FNT_Size_1926 );
    
    // Copy the screen region from memory to the real screen.  This reduces any flicker when moving between rows.
    TAP_Osd_Copy( moveRgn, rgn, MOVE_WINDOW_X+20, MOVE_WINDOW_Y+50+(1*lineHeight), MOVE_WINDOW_W-20-8, (MAX_MOVE_FOLDERS_SHOWN*lineHeight), MOVE_WINDOW_X+20, MOVE_WINDOW_Y+50+(1*lineHeight), FALSE );
    
    appendToLogfile("DisplayArchiveMoveFolderList: Finised.", WARNING);

}
コード例 #12
0
ファイル: Tools.c プロジェクト: BackupTheBerlios/tap-svn
void    ShowMessageBox( word msgRgn, char* msg1, char* msg2, char* msg3)
{
    word   width, msgY;
    int    msgScrWidth;
    
    msgScrWidth = MSG_SCREEN_W-10;
    msgY = MSG_SCREEN_Y+12;
      
    //  Calculate width of message window
    width = TAP_Osd_GetW( msg1, 0, FNT_Size_1926 );     
    if ( TAP_Osd_GetW( msg2, 0, FNT_Size_1622 ) + 10 > width ) width = TAP_Osd_GetW( msg2, 0, FNT_Size_1622 );
    if ( TAP_Osd_GetW( msg3, 0, FNT_Size_1622 ) + 10 > width ) width = TAP_Osd_GetW( msg3, 0, FNT_Size_1622 );

    if ( width > msgScrWidth ) width = msgScrWidth;

#ifdef WIN32  // If testing on WIN32 platform 
TAP_Osd_FillBox( msgRgn,MSG_SCREEN_X, MSG_SCREEN_Y, MSG_SCREEN_W, MSG_SCREEN_H, FILL_COLOUR );				// clear the screen
#endif          

    // Display the pop-up window.
    TAP_Osd_PutGd( msgRgn, MSG_SCREEN_X, MSG_SCREEN_Y, &_msgpopup360x130Gd, TRUE );

		
	TAP_Osd_PutS(msgRgn, MSG_SCREEN_X+(msgScrWidth-width)/2, msgY, MSG_SCREEN_X+(msgScrWidth+width)/2, msg1,		
		MSG_TITLE_COLOUR, 0, 0, FNT_Size_1926,
		FALSE, ALIGN_CENTER);											// show 1. message
		
	TAP_Osd_PutS(msgRgn, MSG_SCREEN_X+(msgScrWidth-width)/2, msgY+50, MSG_SCREEN_X+(msgScrWidth+width)/2, msg2,	
		MSG_TEXT_COLOUR, 0, 0, FNT_Size_1622,
		FALSE, ALIGN_CENTER);											// show 2. message

	TAP_Osd_PutS(msgRgn, MSG_SCREEN_X+(msgScrWidth-width)/2, msgY+80, MSG_SCREEN_X+(msgScrWidth+width)/2, msg3,	
		MSG_TEXT_COLOUR, 0, 0, FNT_Size_1622,
		FALSE, ALIGN_CENTER);											// show 3. message


}
コード例 #13
0
ファイル: OSDDrawList.c プロジェクト: bulletmark/FireBirdLib
void OSDDrawList(void)
{
    TRACEENTER();

    int                   i;
    dword                 XStart, XEnd, Y;
    tMenu                *pMenu;
    tItem                *pItem;
    dword                 ItemColor;
    char                  s[4];
    dword                 MaxNameIconWidth, MaxValueIconWidth;

    pMenu = &Menu[CurrentMenuLevel];

    //Get maximum width of icons
    MaxNameIconWidth = 0;
    MaxValueIconWidth = 0;
    for(i = 0; i < pMenu->NrItems; i++)
    {
        if(pMenu->Item[i].pNameIconGd && (pMenu->Item[i].pNameIconGd->width > MaxNameIconWidth)) MaxNameIconWidth = pMenu->Item[i].pNameIconGd->width;
        if(pMenu->Item[i].pValueIconGd && (pMenu->Item[i].pValueIconGd->width > MaxValueIconWidth)) MaxValueIconWidth = pMenu->Item[i].pValueIconGd->width;
        if(pMenu->Item[i].ColorPatch && (MaxValueIconWidth < 50)) MaxValueIconWidth = 50;
    }

    if(MaxNameIconWidth) MaxNameIconWidth += 8;
    if(MaxValueIconWidth) MaxValueIconWidth += 8;

    //The background
    TAP_Osd_Draw3dBoxFill(OSDRgn, 60, 96, 600, 367, RGB(30, 30, 30), RGB(30, 30, 30), RGB(30, 30, 30));

    for(i = 0; i < 10; i++)
    {
        pItem = &pMenu->Item[i + pMenu->CurrentTopIndex];

        //Draw the background or selection bar and the optional value arrows
        if((i + pMenu->CurrentTopIndex) == pMenu->CurrentSelection)
        {
            OSDMenuDrawCursor(60, 95 + (i * 37), 600);

            if(pMenu->HasValueColumn && pItem->ValueArrows)
            {
                TAP_Osd_PutGd(OSDRgn, pMenu->ValueXPos + 20 , 95 + 10 +(i * 37), (MenuCursorType == CT_Standard ? &_pfeil_l_Gd : &_pfeil_l_bright_Gd), TRUE);
                TAP_Osd_PutGd(OSDRgn, 640 , 95 + 10 +(i * 37), (MenuCursorType == CT_Standard ? &_pfeil_r_Gd : &_pfeil_r_bright_Gd), TRUE);
            }
        }
        else
        {
            TAP_Osd_DrawRectangle(OSDRgn, 60, 130 + (i * 37), 600, 2, 1, RGB(16, 16, 16));
        }

        XEnd = (pMenu->HasValueColumn ? pMenu->ValueXPos : 645);
        Y = 99 + (i * 37);

        if(pItem->Selectable)
            ItemColor = pItem->TextColor;
        else
            ItemColor = RGB(128, 128, 140);

        //Line numbers
        if(pMenu->NumberedItems)
        {
            int MaxX = 100;

            XStart = 101;

            if(pItem->CustomIndex >= 0)
            {
                TAP_SPrint(s, "%2.2d", pItem->CustomIndex);

                if(pItem->CustomIndex > 99)
                {
                    XStart += 10;
                    MaxX += 10;
                }

                if(pItem->CustomIndex > 999)
                {
                    XStart += 10;
                    MaxX += 10;
                }
            }
            else
            {
                TAP_SPrint(s, "%2.2d", i + pMenu->CurrentTopIndex + 1);

                if(i + pMenu->CurrentTopIndex + 1 > 99)
                {
                    XStart += 10;
                    MaxX += 10;
                }

                if(i + pMenu->CurrentTopIndex + 1 > 999)
                {
                    XStart += 10;
                    MaxX += 10;
                }
            }

            FMUC_PutStringAA(OSDRgn, 71, Y + 5 + FONTYOFFSET, MaxX, s, ItemColor, COLOR_None, pMenu->FontListLineNumber, FALSE, ALIGN_LEFT, 1);
        }
        else
        {
            XStart = 76;
        }

        //Icons on the left column
        if(pItem->pNameIconGd)
            TAP_Osd_PutGd(OSDRgn, XStart, Y + 13 - (pItem->pNameIconGd->height >> 1), pItem->pNameIconGd, TRUE);

        //The text of the left column
        FMUC_PutStringAA(OSDRgn, XStart + MaxNameIconWidth, Y + 5 + FONTYOFFSET, XEnd, pItem->Name, ItemColor, COLOR_None, pMenu->FontListNameColumn, TRUE, ALIGN_LEFT, 1);

        if(pMenu->HasValueColumn)
        {
            //The text of the right column
            FMUC_PutStringAA(OSDRgn, pMenu->ValueXPos + 45 + MaxValueIconWidth, Y + 5 + FONTYOFFSET, 645, pItem->Value, ItemColor, COLOR_None, pMenu->FontListValueColumn, TRUE, ALIGN_LEFT, 1);

            //The color patch or icon of the right column. The former has priority
            if(pItem->ColorPatch)
            {
                TAP_Osd_FillBox(OSDRgn, pMenu->ValueXPos + 45, Y + 5, 50, 18, (pItem->ColorPatch & 0x00ffffff) | 0xff000000);
                TAP_Osd_DrawRectangle(OSDRgn, pMenu->ValueXPos + 45, Y + 5, 50, 18, 1, RGB(192,192,192));
            }
            else
            {
                if(pItem->pValueIconGd)
                    TAP_Osd_PutGd(OSDRgn, pMenu->ValueXPos + 45 , Y + 13 - (pItem->pValueIconGd->height >> 1), pItem->pValueIconGd, TRUE);
            }
        }
    }
コード例 #14
0
ファイル: ConfigMenu.c プロジェクト: BackupTheBerlios/tap-svn
//--------------
//
void DisplayConfigLine(char lineNumber)
{
    char	str[80], str2[80];
	char	*text;
	int     optionNumber, page;


	if (( lineNumber < 1 ) || ( lineNumber > CONFIG_LINES )) return;		// bound check

    optionNumber = lineNumber;
    page = ((optionNumber-1)/LINES_PER_PAGE)+1;
    lineNumber = lineNumber % LINES_PER_PAGE;
    if (lineNumber == 0) lineNumber = 10;  // Put the Save/Cancel options always on line 10.	

	if (( chosenConfigLine == optionNumber ) && ( optionNumber != 10 ))		// highlight the current cursor line
    {																	// save, cancel, delete looks after itself
		TAP_Osd_PutGd( rgn, 53, lineNumber*CONFIG_Y_STEP+CONFIG_Y_OFFSET-8, &_highlightGd, FALSE );
	}
	else
	{
		TAP_Osd_PutGd( rgn, 53, lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET - 8, &_rowaGd, FALSE );
	}
	TAP_SPrint(str,"%d.",optionNumber);
	TAP_Osd_PutStringAf1622(rgn, 75, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), 700, str, MAIN_TEXT_COLOUR, 0 );
	

	switch ( optionNumber )
	{
		case 1 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Model Type", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );


				if ( currentModelType == TF5800 ) TAP_SPrint(str,"TF5800  (UK)");
				else TAP_SPrint(str,"TF5000  (International)");
				
				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;


		case 2 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Language", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				TAP_SPrint(str, "English");
				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, COLOR_DarkGray, 0 );
			    break;

				
		case 3 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1,  "Activation Key", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( keyStage )
				{
				    case 0 : 	text = GetButtonText( &localKeyCodes, CurrentActivationKey );
								strcpy( str, text );
								break;
								
					case 1 : 	TAP_SPrint( str, "Press new key now" );
								break;

					case 2 : 	TAP_SPrint( str, "Invalid choice" );
						    	break;

					default : 	TAP_SPrint( str, "eh?" );
								break;
				}
				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
			    break;


		case 4 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Highlight", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );


				TAP_SPrint(str,"%d", currentHighlight );
				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

				
		case 5 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Selection Style", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( displayOption )
				{
				    case 0 : 	TAP_SPrint( str, "Carousel" );
								break;
								
					case 1 : 	TAP_SPrint( str, "Linear" );
								break;

					default : 	TAP_SPrint( str, "BAD" );
								break;
				}
				
				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

		case 6 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Now/Next Tag", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentNowNextTag )
				{
				    case 0 : 	TAP_SPrint( str, "Off" );
								break;
								
					case 1 : 	TAP_SPrint( str, "On" );
								break;

					default : 	TAP_SPrint( str, "BAD" );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

				
				
		case 7 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Progress Info", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentProgressInfo )
				{
				    case 0 : 	TAP_SPrint( str, "Off" );
								break;
								
					case 1 : 	TAP_SPrint( str, "Text" );
								break;

					default : 	TAP_SPrint( str, "BAD" );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

				
				
		case 8 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Recall/PiP-Swap Key", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentRecallKey )
				{
				    case 0 : 	TAP_SPrint( str, "First Channel" );
								break;
								
					case 1 : 	TAP_SPrint( str, "Swap Channels" );
								break;

					default : 	TAP_SPrint( str, "BAD" );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

				
				
		case 9 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Screen Fading", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentScreenFade)
				{
				    case 0 : 	TAP_SPrint( str, "Off - no screen fading" );
								break;
								
					case 1 : 	TAP_SPrint( str, "Manual - use Blue key" );
								break;

					default : 	TAP_SPrint( str, "Automatic after %d seconds", currentScreenFade  );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

				
		case 11 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Start Channel", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentStartChannel)
				{
				    case 0 : 	TAP_SPrint( str, "Channel Last Highlighted" );
								break;
								
					case 1 : 	TAP_SPrint( str, "Current Channel" );
								break;

					default : 	TAP_SPrint( str, "BAD"  );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

		case 12 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Timer Start Offset", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentStartOffset)
				{
				    default : 	TAP_SPrint( str, "%d minutes",currentStartOffset );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

		case 13 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Timer End Offset", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentEndOffset)
				{
				    default : 	TAP_SPrint( str, "%d minutes",currentEndOffset );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;


		case 14 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Guide At Startup", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentGuideStart )
				{
				    case 0 : 	TAP_SPrint( str, "Start hidden" );
								break;
								
					case 1 : 	TAP_SPrint( str, "Start displayed" );
								break;

					case 2 : 	TAP_SPrint( str, "Start as it was when last exited" );
								break;

					default : 	TAP_SPrint( str, "BAD"  );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

				
				
		case 15 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "TV Screen Ratio", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentTvRatio)
				{
				    case 0 : 	TAP_SPrint( str, "4:3 Standard" );
								break;
								
					case 1 : 	TAP_SPrint( str, "16:9 Widescreen" );
								break;

					default : 	TAP_SPrint( str, "BAD"  );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

				
				
		case 16 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1, "Main/Guide window", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				switch ( currentGuideWindowOption)
				{
				    case 0 : 	TAP_SPrint( str, "Normal size" );
								break;
								
					case 1 : 	TAP_SPrint( str, "Shrink to fit" );
								break;

					default : 	TAP_SPrint( str, "BAD"  );
								break;
				}

				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
				break;

				
		case 17 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1,  "Progress Bars", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );
				switch ( currentProgressBarOption )
				{
				    case 0 : 	TAP_SPrint( str, "Multi Coloured" );
								break;
								
					case 1 : 	sprintf( str, "Single colour, %% filled" );
						    	break;

					case 2 : 	TAP_SPrint( str, "Single colour, all filled" );
								break;

					case 3 : 	sprintf( str, "White colour, %% filled" );
								break;

					default : 	TAP_SPrint( str, "[Invalid value]" );
								break;
				}
				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
			    break;
				
		case 18 :
				PrintCenter(rgn, CONFIG_E0, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E1,  "Channel Numbers", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );
				switch ( currentChannelNumberOption )
				{
				    case 0 : 	TAP_SPrint( str, "LCN" );
								break;
								
					case 1 : 	sprintf( str, "Topfield" );
						    	break;

					default : 	TAP_SPrint( str, "[Invalid value]" );
								break;
				}
				TAP_Osd_PutStringAf1622(rgn, CONFIG_X2, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), CONFIG_E2, str, MAIN_TEXT_COLOUR, 0 );
			    break;	

		case 10 :		
		case 20 :
				TAP_Osd_PutGd( rgn, 53, lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET - 8, &_rowaGd, FALSE );		// No highlight for us
	            TAP_SPrint(str,"%d.",optionNumber);
                TAP_Osd_PutStringAf1622(rgn, 75, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), 700, str, MAIN_TEXT_COLOUR, 0 );

				if (( configOption == 0 ) && ( chosenConfigLine%10 == 0 ))
				{
					TAP_Osd_PutGd( rgn, 116, lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET - 8, &_smallgreenbarGd, FALSE );
				    PrintCenter(rgn, 144, lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET, 244, "Save", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );
				}
				else PrintCenter(rgn, 144, lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET, 244, "Save", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

				if (( configOption == 1 ) && ( chosenConfigLine%10 == 0 ))
				{
					TAP_Osd_PutGd( rgn, 278, lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET - 8, &_smallgreenbarGd, FALSE );
					PrintCenter(rgn, 306, lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET, 406, "Cancel", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );
				}
				else PrintCenter(rgn, 306, lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET, 406, "Cancel", MAIN_TEXT_COLOUR, 0, FNT_Size_1622 );

			    TAP_Osd_FillBox( rgn, 437, lineNumber*CONFIG_Y_STEP+CONFIG_Y_OFFSET-8, 3, CONFIG_Y_STEP, FILL_COLOUR );		// one extra column seperator for us
			    
	            TAP_SPrint(str,"Page %d of %d",page,TOTAL_PAGES);
	            TAP_Osd_PutStringAf1622(rgn, 470, (lineNumber * CONFIG_Y_STEP + CONFIG_Y_OFFSET), 700, str, MAIN_TEXT_COLOUR, 0 );
			    
				break;


		default :
			break;
	}


    TAP_Osd_FillBox( rgn, CONFIG_E0, lineNumber*CONFIG_Y_STEP+CONFIG_Y_OFFSET-8, 3, CONFIG_Y_STEP, FILL_COLOUR );		// draw the column seperators
    TAP_Osd_FillBox( rgn, CONFIG_E1, lineNumber*CONFIG_Y_STEP+CONFIG_Y_OFFSET-8, 3, CONFIG_Y_STEP, FILL_COLOUR );

}
コード例 #15
0
void DisplayScreenConfigWindow(int window)
{
    dword startX;
    char str[10];

	TAP_Osd_FillBox( rgn, EVENT_X-1, EVENT_Y-1, OSD_MAX_X-EVENT_X+1, OSD_MAX_Y-EVENT_Y+1, 0 );	// clear the bottom portion of the screen
	TAP_Osd_PutGd( rgn, EVENT_X, EVENT_Y, &_narrowhighlightGd, TRUE );	// draw the green bar
    startX = EVENT_X+3;   // Set the initial x-coord for the Event Name.

    //
    // Clear the Event Information box.
    // 
	TAP_Osd_FillBox( rgn, EVENT_X, EVENT_Y+35, EVENT_W, EVENT_H-35, EVENT_FILL_COLOUR );	// Fill the event window

    if (window != OVERSCAN_WINDOW) TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+40, MAX_X, "OK - Switches to other windows.", MAIN_TEXT_COLOUR, 0 );
    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+62, MAX_X, "Record - Saves window positions.", MAIN_TEXT_COLOUR, 0 );
    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+84, MAX_X, "Exit - Quits without saving positions.", MAIN_TEXT_COLOUR, 0 );
    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+106, MAX_X, "Recall - Reset to starting positions.", MAIN_TEXT_COLOUR, 0 );
    if (window != OVERSCAN_WINDOW) TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+128, MAX_X, "<< / >> - Decrease/Increase Size.", MAIN_TEXT_COLOUR, 0 );
    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+150, MAX_X, "Vol -/+  - Move Window Left/Right.", MAIN_TEXT_COLOUR, 0 );
    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+172, MAX_X, "Ch -/+  - Move Window Down/Up.", MAIN_TEXT_COLOUR, 0 );
    if (window == OVERSCAN_WINDOW) 
    {
       switch (axis)
       {
            case 0: // Top/Bottom
                    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+40, MAX_X, "OK - Switches to Left/Right setting.", MAIN_TEXT_COLOUR, 0 );
                    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+128, MAX_X, "<< / >> - Decrease/Increase Top/Bottom Size.", MAIN_TEXT_COLOUR, 0 );
                    break;
                    
            case 1: // Left/Right
                    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+40, MAX_X, "OK - Switches to Top/Bottom setting.", MAIN_TEXT_COLOUR, 0 );
                    TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+128, MAX_X, "<< / >> - Decrease/Increase Left/Right Size.", MAIN_TEXT_COLOUR, 0 );
                    break;
       }             
    }
       
    switch (window)
    {
           case 1:    
                      strcpy( str, "Main");
                      break;
           case 2:    
                      strcpy( str, "PiP");
                      break;
           case 3:    
                      strcpy( str, "Logo");
                      break;
           case 4:    
                      strcpy( str, "Event");
                      break;
           case 5:    
                      strcpy( str, "Clock");
                      break;
           case 6:    
                      strcpy( str, "Main/Guide");
                      break;
           case OVERSCAN_WINDOW:    
                      strcpy( str, "Quick");
                      break;
    }
    sprintf(gstr,"%s Window Size & Position Settings.",str);
	TAP_Osd_PutStringAf1622( rgn, startX, EVENT_Y+7, MAX_X, gstr, MAIN_TEXT_COLOUR, 0 );
    
}