Reimplemented from OglGui::Window. Definition at line 423 of file GridWindow.h. References OglGui::Window::DisplayFunc(), Impala::Application::MediaTable::TableDataView::GetEndRow(), Impala::Application::MediaTable::TableDataView::GetMark(), Impala::Application::MediaTable::TableDataViewController::GetTableDataView(), GetXYForRow(), Impala::Application::MediaTable::TableDataView::MarkAllRows(), Impala::Application::MediaTable::TableDataView::MarkRow(), Impala::Application::MediaTable::TableDataViewController::MarkToColor(), mCache, mGridHeight, mGridWidth, mMouseXE, mMouseXS, mMouseYE, mMouseYS, mSelecting, Impala::Application::MediaTable::TableViewCache::ProcessDelayLoad(), UpdateGrid(), and OglGui::OglWindow::UpdateScene(). 00424 { 00425 OGC myOGC; 00426 OGCSave(&myOGC); 00427 00428 UpdateGrid(); 00429 00430 if (mCache && mCache->ProcessDelayLoad()) 00431 UpdateScene(); 00432 00433 int mcx, mcy, mcw, mch; 00434 if (mSelecting) 00435 { 00436 mcx = (mMouseXS < mMouseXE) ? mMouseXS : mMouseXE; 00437 mcw = (mMouseXS < mMouseXE) ? mMouseXE-mMouseXS : mMouseXS-mMouseXE; 00438 mcy = (mMouseYS < mMouseYE) ? mMouseYS : mMouseYE; 00439 mch = (mMouseYS < mMouseYE) ? mMouseYE-mMouseYS : mMouseYS-mMouseYE; 00440 GetTableDataView()->MarkAllRows(1, false); 00441 } 00442 00443 for (int row = GetTableDataView()->GetStartRow(); row < GetTableDataView()->GetEndRow(); row++) 00444 { 00445 int px=0, py=0; 00446 GetXYForRow(row, px, py); 00447 00448 if (mSelecting && mcy < py+mGridHeight && py < mcy + mch && 00449 mcx < px+mGridWidth && px < mcx + mcw) 00450 { 00451 GetTableDataView()->MarkRow(row, 1); 00452 } 00453 00454 int mark = GetTableDataView()->GetMark(row); 00455 if (mark) 00456 { 00457 SetSolidFillColor(MarkToColor(mark)); 00458 FillRectangle(px-1, py-1, mGridWidth+2, mGridHeight+2); 00459 } 00460 } 00461 00462 if (mSelecting) 00463 { 00464 // draw the current mouse selection: 00465 SetStipple((short)oglSolid); 00466 SetLineWidth(2.0f); 00467 SetSolidLineColor(0xff444466); 00468 DrawRectangle(mcx,mcy,mcw,mch); 00469 } 00470 00471 OGCRestore(&myOGC); 00472 Window::DisplayFunc(); 00473 }
Here is the call graph for this function:
|