本文整理汇总了C++中NodeAttribute::EnumerateColourFields方法的典型用法代码示例。如果您正苦于以下问题:C++ NodeAttribute::EnumerateColourFields方法的具体用法?C++ NodeAttribute::EnumerateColourFields怎么用?C++ NodeAttribute::EnumerateColourFields使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类NodeAttribute
的用法示例。
在下文中一共展示了NodeAttribute::EnumerateColourFields方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnLoadDocument
BOOL LoadBrushDirect::OnLoadDocument(Document* pDoc)
{
ERROR3IF(pDoc==NULL,"No doc pointer during PrintMarksMan::ConvertAllDocColours!");
Node *CurNode = Node::DocFindFirstDepthFirst(pDoc);
Node *NextNode;
while (CurNode !=NULL)
{
// We may be about to chop this node out of the tree, so get the next node now
NextNode = CurNode->DocFindNextDepthFirst();
// Use to scan the colour fields of the attribute.
UINT32 Context = 0;
DocColour *pColour;
if (CurNode->IsAnAttribute())
{
NodeAttribute *pNodeAttr = (NodeAttribute *) CurNode;
// Get the next colour field from the attribute
pColour = pNodeAttr->EnumerateColourFields(Context++);
while (pColour != NULL)
{
// For each colour field, make sure the colour is a local DocColour so that
// the sub-tree is entirely stand-alone
if (pColour->FindParentIndexedColour() != NULL)
{
ColourGeneric ColDef;
ColourContext *cc = ColourManager::GetColourContext(pColour->GetColourModel());
ERROR3IF(cc == NULL, "Can't find colour context?!");
// Get the IndexedColour definition as a standalone colour definition
cc->ConvertColour(pColour->FindParentIndexedColour(), &ColDef);
// Make the DocColour into a simple standalone "lookalike" of the parent colour
*pColour = DocColour(pColour->GetColourModel(), &ColDef);
}
pColour = pNodeAttr->EnumerateColourFields(Context++);
}
}
CurNode = NextNode;
}
// All is well we hope.
return TRUE;
}