Esempio n. 1
0
/*--------------------------------------------------------------------------*/
void PegAppInitialize(PegPresentationManager *pPresent)
{
	printf("err0\n");
	pPresent->Screen()->SetPalette(0, 255, PegCustomPalette); /* use custom palette */
	pPresent->SetColor(PCI_NORMAL, NEWMENU_BACKGRANOUD_COLOR);
	printf("error1\n");
	pPresent->Draw();
	printf("error2\n");
	
	/*Set default font size (only English)*/
	PegTextThing::SetDefaultFont(PEG_PROMPT_FONT,&Arial14);
	PegTextThing::SetDefaultFont(PEG_TBUTTON_FONT,&Arial12);

	//gbCurrentLanguage = 1;
	/*
	if(0 == gbCurrentLanguage)
	{
		PegTextThing::SetDefaultFont(PEG_PROMPT_FONT,&Arial14);
		PegTextThing::SetDefaultFont(PEG_TBUTTON_FONT,&Arial12);
	}
	else if(1 == gbCurrentLanguage)
	{
		PegTextThing::SetDefaultFont(PEG_PROMPT_FONT,&heiti14);
		PegTextThing::SetDefaultFont(PEG_TBUTTON_FONT,&heiti12);
	}
	*/

	printf("error3\n");
    MainMenu *pWin = new MainMenu(20, 20);

	printf("error4\n");
	ToolTip * pToolTip = new ToolTip(0, 0, NULL);
	pWin->SetToolTipWnd(pToolTip);

	printf("err111\n");
	TVHelpWnd * pTVHelpWnd = new TVHelpWnd(pWin->mReal.wLeft + 400, pWin->mReal.wTop);
	pWin->SetHelpWnd(pTVHelpWnd);

	/*set translucency*/

	pPresent->Add(pTVHelpWnd);
	pPresent->Add(pToolTip, FALSE);
	pPresent->Add(pWin);
	
	pWin->ProcessUpDownKey();

	PegMessage tmpMsg;
	tmpMsg.pTarget = pToolTip;
	tmpMsg.pSource = pPresent;
	tmpMsg.wType = PM_SHOW;
	pPresent->Message(tmpMsg);
}
Esempio n. 2
0
/*--------------------------------------------------------------------------*/
SIGNED PictureMenu::Message(const PegMessage &Mesg)
{
	TVProgressWindowClass * pTVProgressWindow = NULL;
	PegThing *ptDisplayedWindow[MaxNumberOfWindow];
	PegThing *SomeThing = NULL;
	PegThing *pTest;
	int iIndex;

    switch (Mesg.wType)
    {
    case SIGNAL(ID_PictureMenu_Button_ColorTemp, PSF_CLICKED):
        // Enter your code here:
        break;

    case SIGNAL(ID_PictureMenu_Button_Color, PSF_CLICKED):
        // Enter your code here:
        break;

    case SIGNAL(ID_PictureMenu_Button_Sharp, PSF_CLICKED):
        // Enter your code here:
        break;

    case SIGNAL(ID_PictureMenu_Button_Tint, PSF_CLICKED):
        // Enter your code here:
        break;

    case SIGNAL(ID_PictureMenu_Button_Contrast, PSF_CLICKED):
        // Enter your code here:
        break;

    case SIGNAL(ID_PictureMenu_Button_Brightness, PSF_CLICKED):
        // Enter your code here:
        break;
	case PM_KEYUP:
		{			
			m_nCurrentSubWndID = Mesg.iData;
			if(ID_PictureMenu_Button_Brightness > m_nCurrentSubWndID)
			{
				m_nCurrentSubWndID++;
			}	
			else
			{
				m_nCurrentSubWndID = (int)ID_PictureMenu_Button_ColorTemp;
				Presentation()->MoveFocusTree(m_pPictureMenuButtonColorTemp);
			}
			ProcessUpDownKey();
			break;
		}
	case PM_KEYDOWN:
		{
			m_nCurrentSubWndID = Mesg.iData;
			if(ID_PictureMenu_Button_ColorTemp < m_nCurrentSubWndID)
			{
				m_nCurrentSubWndID--;
			}
			else
			{
				m_nCurrentSubWndID = (int)ID_PictureMenu_Button_Brightness;
				Presentation()->MoveFocusTree(m_pPictuerMenuButtonBright);
			}
			ProcessUpDownKey();
			break;
		}
	case PM_KEYLEFT:
		{
			Destroy(this);
			MainMenu * pMainMenu = (MainMenu *)Presentation()->Find(MAIN_MENU_ID);
			pMainMenu->ProcessUpDownKey();
			break;
		}
	case PM_KEYRIGHT:
		{
			if(ID_PictureMenu_Button_ColorTemp == Mesg.iData || \
			   ID_PictureMenu_Button_Color == Mesg.iData || \
			   ID_PictureMenu_Button_Tint == Mesg.iData || \
			   ID_PictureMenu_Button_Contrast == Mesg.iData || \
			   ID_PictureMenu_Button_Sharp == Mesg.iData || \
			   ID_PictureMenu_Button_Brightness == Mesg.iData)
			{
				/* right key equals OK, so enter next menu level */
				BeginDraw();
				/* Delete all pop up already displayed to clean the screen */
				for(iIndex = FIRST_POPUP_ID; iIndex < LAST_USER_ID; iIndex++)
				{
					SomeThing = PegThing::Presentation()->Find(iIndex);
					if(SomeThing!=NULL)
					{
						PegThing::Presentation()->Destroy(SomeThing);
					}
				}
				/*hide all the menus displayed on screen except the help window*/
				pTest = PegPresentationManager::Presentation()->First();
				iIndex = 0;
				while(pTest) /* construct the current displayed window pointer table */
				{
					if(HELP_ID == pTest->Id())
					{					
						pTest = PegPresentationManager::Presentation()->Next();
						continue;
					}
					else
					{
						ptDisplayedWindow[iIndex++] = pTest;
						PegPresentationManager::Presentation()->Remove(pTest);
						pTest = PegPresentationManager::Presentation()->First();
					}
				}
				ptDisplayedWindow[iIndex] = NULL; /* reset last pointer */
				
				switch(Mesg.iData)
				{
				case ID_PictureMenu_Button_Brightness:
					{
						pTVProgressWindow = new TVProgressWindowClass(100, 400, m_pPictuerMenuButtonBright, \
							Ssb_BrightnessChange, kPegMenuPicture, \
							LS(SID_PictureMenu_Prompt_Brightness), RED, FF_RAISED | PS_SHOW_VAL, 0, \
							100, 30, ptDisplayedWindow);
						Presentation()->Add(pTVProgressWindow);
						m_pTVHelpWnd->ShowHelpString(LS(SID_PictureMenu_Prompt_Brightness), NEWMENU_BAR_TYPE);
						break;
					}
				case ID_PictureMenu_Button_Contrast:
					{
						pTVProgressWindow = new TVProgressWindowClass(100, 400, m_pPictureMenuButtonContrast, \
							Ssb_ContrastChange, kPegMenuPicture, \
							LS(SID_PictureMenu_Prompt_Contrast), RED, FF_RAISED|PS_SHOW_VAL, 0, \
							100, 30, ptDisplayedWindow);
						Presentation()->Add(pTVProgressWindow);
						m_pTVHelpWnd->ShowHelpString(LS(SID_PictureMenu_Prompt_Contrast), NEWMENU_BAR_TYPE);
						break;
					}

				case ID_PictureMenu_Button_Tint:
					{
						pTVProgressWindow = new TVProgressWindowClass(100, 400, m_pPictureMenuButtonTint, \
							Ssb_TintChange, kPegMenuPicture, \
							LS(SID_PictureMenu_Prompt_Tint), RED, FF_RAISED|PS_SHOW_VAL, 0, \
							100, 30, ptDisplayedWindow);
						Presentation()->Add(pTVProgressWindow);
						m_pTVHelpWnd->ShowHelpString(LS(SID_PictureMenu_Prompt_Tint), NEWMENU_BAR_TYPE);
						break;
					}
				case ID_PictureMenu_Button_ColorTemp:
					{
						pTVProgressWindow = new TVProgressWindowClass(100, 400, m_pPictureMenuButtonColorTemp, \
							Ssb_ColorTemperatureChange, kPegMenuPicture, \
							LS(SID_PictureMenu_Prompt_ColorTemp), RED, FF_RAISED|PS_SHOW_VAL, 0, \
							100, 30, ptDisplayedWindow);
						Presentation()->Add(pTVProgressWindow);
						m_pTVHelpWnd->ShowHelpString(LS(SID_PictureMenu_Prompt_ColorTemp), NEWMENU_BAR_TYPE);
						break;
					}
				case ID_PictureMenu_Button_Color:
					{
						pTVProgressWindow = new TVProgressWindowClass(100, 400, m_pPictureMenuButtonColor, \
							Ssb_ColorChange, kPegMenuPicture, \
							LS(SID_PictureMenu_Prompt_Color), RED, FF_RAISED|PS_SHOW_VAL, 0, \
							100, 20, ptDisplayedWindow);
						Presentation()->Add(pTVProgressWindow);
						m_pTVHelpWnd->ShowHelpString(LS(SID_PictureMenu_Prompt_Color), NEWMENU_BAR_TYPE);
						break;
					  }
				case ID_PictureMenu_Button_Sharp:
					{
						pTVProgressWindow = new TVProgressWindowClass(100, 400, m_pPictureMenuButtonSharp, \
							Ssb_SharpnessChange, kPegMenuPicture, \
							LS(SID_PictureMenu_Prompt_Sharpness), RED, FF_RAISED|PS_SHOW_VAL, 0, \
							100, 20, ptDisplayedWindow);
						Presentation()->Add(pTVProgressWindow);
						m_pTVHelpWnd->ShowHelpString(LS(SID_PictureMenu_Prompt_Sharpness), NEWMENU_BAR_TYPE);
						break;
					 }

				default:
					break;
				}
				EndDraw();
			}
			break;
		}

	case PM_REFRESHHELPWND:
		{
			ProcessUpDownKey();
			break;
		}
    default:
        return PegWindow::Message(Mesg);
    }
    return 0;
}