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

virtual void Impala::Application::VideoExcel::GridWindow::DisplayFunc (  )  [inline, virtual]

Reimplemented from OglGui::Window.

Definition at line 421 of file GridWindow.h.

References OglGui::Window::DisplayFunc(), Impala::Application::VideoExcel::TableDataSource::GetEndRow(), Impala::Application::VideoExcel::TableDataSource::GetMark(), Impala::Application::VideoExcel::TableDataSource::GetStartRow(), GetXYForRow(), Impala::Application::VideoExcel::TableDataSource::MarkAllRows(), Impala::Application::VideoExcel::TableDataSource::MarkRow(), MarkToColor(), mCache, mGridHeight, mGridWidth, mMouseXE, mMouseXS, mMouseYE, mMouseYS, mSelecting, mSource, Impala::Application::VideoExcel::TableViewCache::ProcessDelayLoad(), UpdateGrid(), and OglGui::OglWindow::UpdateScene().

00422     {
00423         OGC     myOGC;
00424         OGCSave(&myOGC);
00425 
00426         UpdateGrid();
00427 
00428         if (mCache && mCache->ProcessDelayLoad())
00429             UpdateScene();
00430         
00431         int mcx, mcy, mcw, mch;
00432         if (mSelecting)
00433         {
00434             mcx = (mMouseXS < mMouseXE) ? mMouseXS : mMouseXE;
00435             mcw = (mMouseXS < mMouseXE) ? mMouseXE-mMouseXS : mMouseXS-mMouseXE;
00436             mcy = (mMouseYS < mMouseYE) ? mMouseYS : mMouseYE;
00437             mch = (mMouseYS < mMouseYE) ? mMouseYE-mMouseYS : mMouseYS-mMouseYE;
00438             mSource->MarkAllRows(1, false);
00439         }
00440 
00441         for (int row = mSource->GetStartRow(); row < mSource->GetEndRow(); row++)
00442         {
00443             int px=0, py=0;
00444             GetXYForRow(row, px, py);
00445 
00446             if (mSelecting && mcy < py && py+mGridHeight < mcy + mch &&
00447                 mcx < px && px+mGridWidth < mcx + mcw)
00448             {
00449                     mSource->MarkRow(row, 1);
00450             }
00451 
00452             int mark = mSource->GetMark(row);
00453             if (mark)
00454             {
00455                 SetSolidFillColor(MarkToColor(mark));
00456                 FillRectangle(px-1, py-1, mGridWidth+2, mGridHeight+2);
00457             }
00458         }
00459 
00460         if (mSelecting)
00461         {
00462             // draw the current mouse selection:
00463             SetStipple((short)oglSolid);
00464             SetLineWidth(2.0f);
00465             SetSolidLineColor(0xff444466);
00466             DrawRectangle(mcx,mcy,mcw,mch);
00467         }
00468 
00469         OGCRestore(&myOGC);
00470         Window::DisplayFunc();
00471     }

Here is the call graph for this function:


Generated on Fri Mar 19 10:52:57 2010 for ImpalaSrc by  doxygen 1.5.1