本文整理汇总了C++中FL_DocLayout::displayAnnotations方法的典型用法代码示例。如果您正苦于以下问题:C++ FL_DocLayout::displayAnnotations方法的具体用法?C++ FL_DocLayout::displayAnnotations怎么用?C++ FL_DocLayout::displayAnnotations使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类FL_DocLayout
的用法示例。
在下文中一共展示了FL_DocLayout::displayAnnotations方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: draw
/*!
Draw container content
\param pDA Draw arguments
*/
void fp_AnnotationContainer::draw(dg_DrawArgs* pDA)
{
if(getPage() == NULL)
{
return;
}
fl_AnnotationLayout * pAL2 = static_cast<fl_AnnotationLayout *>(getSectionLayout());
FL_DocLayout * pDL = pAL2->getDocLayout();
m_iLabelWidth = 0;
if(!pDL->displayAnnotations())
return;
UT_DEBUGMSG(("Annotation: Drawing unbroken annotation %p x %d, y %d width %d height %d \n",this,getX(),getY(),getWidth(),getHeight()));
UT_DEBUGMSG(("Annotation: Drawing PDA->xoff %d, pDA->yoff %ld \n",pDA->xoff,pDA->yoff));
//
// Only draw the lines in the clipping region.
//
dg_DrawArgs da = *pDA;
UT_uint32 count = countCons();
for (UT_uint32 i = 0; i<count; i++)
{
fp_ContainerObject* pContainer = static_cast<fp_ContainerObject*>(getNthCon(i));
da.xoff = pDA->xoff + pContainer->getX();
if(i == 0)
{
fl_AnnotationLayout * pAL = static_cast<fl_AnnotationLayout *>(getSectionLayout());
fp_AnnotationRun * pAR = pAL->getAnnotationRun();
if(pAR)
{
m_iLabelWidth = pAR->getWidth();
da.xoff = pDA->xoff + pContainer->getX() - m_iLabelWidth;
fp_Line * pLine = static_cast<fp_Line *>(pContainer);
da.yoff = pDA->yoff + pContainer->getY() + pLine->getAscent();
da.bDirtyRunsOnly = false;
m_iXLabel = da.xoff;
m_iYLabel = da.yoff;
pAR->draw(&da);
da.xoff = pDA->xoff + pContainer->getX();
}
}
da.yoff = pDA->yoff + pContainer->getY();
pContainer->draw(&da);
}
_drawBoundaries(pDA);
}