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

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

Reimplemented from OglGui::Window.

Definition at line 114 of file VideoExcelNode.h.

References OglGui::Window::DisplayFunc(), OglGui::OglWindow::GetDimensions(), OglGui::OglWindow::GetOGLWND(), mChildNodes, mClosedHeight, OglGui::Window::mForeGroundColor, mHeaderHeight, mHeaderWindow, mIsDropped, mLinePattern, mShowLines, mSpacing, OglGui::OglWindow::SetDimensions(), OglGui::OglWindow::WndHeight(), OglGui::OglWindow::WndX(), and OglGui::OglWindow::WndY().

00115     {
00116         OGC     myOGC;
00117         int     curY = WndHeight();
00118         int     nY = curY-mHeaderHeight-2, nW = 0, nH = 0;
00119         int     lineX, topLineY = nY;
00120         bool    itemLines = (mShowLines && mIsDropped);
00121 
00122         mHeaderWindow->SetDimensions(RETAIN, nY, RETAIN, mHeaderHeight);
00123 
00124         if (mShowLines)
00125         {
00126             OGCSave(&myOGC);
00127             SetStipple(mLinePattern);
00128             SetSolidLineColor(mForeGroundColor);
00129             lineX = mHeaderWindow->WndX();
00130             DrawLine(lineX, nY+7, 0, nY+7);
00131             lineX += 6;
00132         }
00133 
00134         for (int i=0 ; i < mChildNodes.size() ; i++)
00135         {
00136             int     cX, cY, cW, cH;
00137             Window*  child = mChildNodes[i];
00138 
00139             if (!HasTags((TAGABLE*)child->GetOGLWND(), visibleTag))
00140                 continue;
00141 
00142             child->GetDimensions(cX,cY,cW,cH);
00143             
00144             nH   += cH + ((i==0) ? 4 : mSpacing);
00145             curY -= cH + ((i==0) ? 4 : mSpacing);
00146 
00147             child->SetDimensions(RETAIN, curY, RETAIN, RETAIN);
00148 
00149             if ((i>0) && itemLines)
00150             {
00151                 if (lineX < cX )
00152                     DrawLine(lineX, curY+cH-11, cX-2, curY+cH-11);
00153                 if (lineX > cX+cW)
00154                     DrawLine(lineX, curY+cH-11, cX+cW+2, curY+cH-11);
00155                 nY = curY+cH-9;
00156             }
00157 
00158             if ((i<1) || (mIsDropped && (nW < cX+cW)))
00159                 nW = cX+cW;
00160         }
00161         if (itemLines)
00162             DrawLine(lineX, nY, lineX, topLineY);
00163 
00164         nY = WndY() + WndHeight() - (mIsDropped ? nH : mClosedHeight);
00165         nH = mIsDropped ? nH : mClosedHeight;
00166 
00167         SetDimensions(WndX(), nY, nW+2, nH);
00168 
00169         if (mShowLines) OGCRestore(&myOGC);
00170 
00171         Window::DisplayFunc();
00172     }

Here is the call graph for this function:


Generated on Thu Jan 13 09:16:37 2011 for ImpalaSrc by  doxygen 1.5.1