Home || Architecture || Video Search || Visual Search || Scripts || Applications || Important Messages || OGL || Src

virtual void Impala::Application::DemoCamera2d::WindowCamera2d::MouseFunc ( INT  msg,
INT  but,
INT  state,
INT  x,
INT  y 
) [inline, virtual]

Definition at line 535 of file mainDemoCamera2d.cpp.

References Impala::Application::DemoCamera2d::basicInvs, Impala::Application::DemoCamera2d::compoundInvs, Impala::Application::DemoCamera2d::curDemo, Impala::Application::DemoCamera2d::curInvList, Impala::Application::DemoCamera2d::demo, Impala::Visualization::AppControlSrc::FpsReset(), Impala::Application::DemoCamera2d::InvInfo::mName, OglGui::OglWindow::mOglWnd, OglGui::Window::MouseFunc(), Impala::Application::DemoCamera2d::nrBasicInvs, Impala::Application::DemoCamera2d::nrCompoundInvs, Impala::Application::DemoCamera2d::nrDemo, and Impala::Application::DemoCamera2d::SetCurDemo().

00536     {
00537         Window::MouseFunc(msg, but, state, x, y);
00538 
00539         if ((msg == oglMouseDown) && (but == oglRightButton))
00540         {
00541             OGLMENU menu, subMenu1, subMenu2, subMenu3;
00542             int     choice, i;
00543             menu = oglSys.MenuCreate();
00544             subMenu1 = oglSys.MenuCreate();
00545             oglSys.MenuAdd(menu, "demo preset", subMenu1, 0);
00546             for (i=0 ; i<nrDemo ; i++)
00547             {
00548                 oglSys.MenuAdd(subMenu1, (char *) demo[i].c_str(), 0, 1000+i);
00549                 if (curDemo == i)
00550                     oglSys.MenuCheck(menu, 1000+i, 1);
00551             }
00552             subMenu2 = oglSys.MenuCreate();
00553             oglSys.MenuAdd(menu, "add basic", subMenu2, 0);
00554             for (i=0 ; i<nrBasicInvs ; i++)
00555             {
00556                 oglSys.MenuAdd(subMenu2, (char *) basicInvs[i].mName.c_str(), 0,
00557                                2000+i);
00558             }
00559             subMenu3 = oglSys.MenuCreate();
00560             oglSys.MenuAdd(menu, "add compound", subMenu3, 0);
00561             for (i=0 ; i<nrCompoundInvs ; i++)
00562             {
00563                 oglSys.MenuAdd(subMenu3, (char *) compoundInvs[i].mName.c_str(), 0,
00564                                3000+i);
00565             }
00566             oglSys.MenuAdd(menu, NULL, 0, 0); // separator
00567             oglSys.MenuAdd(menu, "fps reset", 0, 2);
00568 
00569             choice = oglSys.MenuPopUp(mOglWnd, menu);
00570 
00571             if (choice >= 3000)
00572             {
00573                 int cInv = choice - 3000;
00574                 curInvList.push_back(compoundInvs[cInv]);
00575             }
00576             else if (choice >= 2000)
00577             {
00578                 int bInv = choice - 2000;
00579                 curInvList.push_back(basicInvs[bInv]);
00580             }
00581             else if (choice >= 1000)
00582             {
00583                 curDemo = choice - 1000;
00584                 SetCurDemo(demo[curDemo]);
00585             }
00586             else
00587             {
00588                 switch (choice)
00589                 {
00590                 case 2: 
00591                     FpsReset();
00592                     break;
00593                 }
00594             }
00595             //SetDoReprocess(true);
00596 
00597             oglSys.MenuDestroy(menu);
00598             oglSys.MenuDestroy(subMenu1);
00599             oglSys.MenuDestroy(subMenu2);
00600             oglSys.MenuDestroy(subMenu3);
00601             oglSys.UpdateSceneFlag(mOglWnd, 1);
00602         }
00603     }

Here is the call graph for this function:


Generated on Fri Mar 19 10:39:15 2010 for ImpalaSrc by  doxygen 1.5.1