Doxygen
DiagramItem类 参考

Class representing a single node in the built-in class diagram 更多...

+ DiagramItem 的协作图:

Public 成员函数

 DiagramItem (DiagramItem *p, uint number, const ClassDef *cd, Protection prot, Specifier virt, const QCString &ts)
 
QCString label () const
 
QCString fileName () const
 
DiagramItem * parentItem ()
 
DiagramItemList getChildren ()
 
void move (int dx, int dy)
 
uint xPos () const
 
uint yPos () const
 
uint avgChildPos () const
 
uint numChildren () const
 
void addChild (DiagramItem *di)
 
uint number () const
 
Protection protection () const
 
Specifier virtualness () const
 
void putInList ()
 
bool isInList () const
 
const ClassDef * getClassDef () const
 

Private 属性

DiagramItemList m_children
 
DiagramItem * m_parent
 
uint m_x = 0
 
uint m_y = 0
 
uint m_num
 
Protection m_prot
 
Specifier m_virt
 
QCString m_templSpec
 
bool m_inList = false
 
const ClassDef * m_classDef
 

详细描述

Class representing a single node in the built-in class diagram

在文件 diagram.cpp 第 40 行定义.

构造及析构函数说明

◆ DiagramItem()

DiagramItem::DiagramItem ( DiagramItem *  p,
uint  number,
const ClassDef *  cd,
Protection  prot,
Specifier  virt,
const QCString &  ts 
)

在文件 diagram.cpp 第 276 行定义.

278  : m_parent(p), m_num(number), m_prot(pr), m_virt(vi), m_templSpec(ts), m_classDef(cd)
279 {
280 }

成员函数说明

◆ addChild()

void DiagramItem::addChild ( DiagramItem *  di)

在文件 diagram.cpp 第 328 行定义.

329 {
330  m_children.push_back(di);
331 }

引用了 m_children.

被这些函数引用 DiagramRow::insertClass().

◆ avgChildPos()

uint DiagramItem::avgChildPos ( ) const

在文件 diagram.cpp 第 309 行定义.

310 {
311  DiagramItem *di;
312  size_t c=m_children.size();
313  if (c==0) // no children -> don't move
314  return xPos();
315  if ((di=m_children.front())->isInList()) // children should be in a list
316  return di->xPos();
317  if (c&1) // odd number of children -> get pos of middle child
318  return m_children.at(c/2)->xPos();
319  else // even number of children -> get middle of most middle children
320  return (m_children.at(c/2-1)->xPos()+m_children.at(c/2)->xPos())/2;
321 }

引用了 m_children , 以及 xPos().

被这些函数引用 TreeDiagram::layoutTree().

◆ fileName()

QCString DiagramItem::fileName ( ) const

在文件 diagram.cpp 第 304 行定义.

305 {
306  return m_classDef->getOutputFileBase();
307 }

引用了 ClassDef::getOutputFileBase() , 以及 m_classDef.

◆ getChildren()

DiagramItemList DiagramItem::getChildren ( )
inline

在文件 diagram.cpp 第 48 行定义.

48 { return m_children; }

引用了 m_children.

被这些函数引用 TreeDiagram::drawConnectors(), TreeDiagram::layoutTree() , 以及 TreeDiagram::moveChildren().

◆ getClassDef()

const ClassDef* DiagramItem::getClassDef ( ) const
inline

在文件 diagram.cpp 第 60 行定义.

60 { return m_classDef; }

引用了 m_classDef.

被这些函数引用 TreeDiagram::drawBoxes().

◆ isInList()

bool DiagramItem::isInList ( ) const
inline

在文件 diagram.cpp 第 59 行定义.

59 { return m_inList; }

引用了 m_inList.

被这些函数引用 TreeDiagram::drawBoxes() , 以及 TreeDiagram::drawConnectors().

◆ label()

QCString DiagramItem::label ( ) const

在文件 diagram.cpp 第 282 行定义.

283 {
284  QCString result;
285  if (!m_templSpec.isEmpty())
286  {
287  // we use classDef->name() here and not displayName() in order
288  // to get the name used in the inheritance relation.
289  QCString n = m_classDef->name();
290  if (/*n.right(2)=="-g" ||*/ n.right(2)=="-p")
291  {
292  n = n.left(n.length()-2);
293  }
295  }
296  else
297  {
298  result=m_classDef->displayName();
299  }
300  if (Config_getBool(HIDE_SCOPE_NAMES)) result=stripScope(result);
301  return result;
302 }

引用了 Config_getBool, ClassDef::displayName(), insertTemplateSpecifierInScope(), QCString::isEmpty(), QCString::left(), QCString::length(), m_classDef, m_templSpec, Definition::name(), QCString::right() , 以及 stripScope().

被这些函数引用 writeBitmapBox() , 以及 writeVectorBox().

◆ move()

void DiagramItem::move ( int  dx,
int  dy 
)
inline

在文件 diagram.cpp 第 49 行定义.

49 { m_x+=(uint)dx; m_y+=(uint)dy; }

引用了 m_x , 以及 m_y.

被这些函数引用 ClassDiagram::ClassDiagram(), TreeDiagram::computeLayout() , 以及 TreeDiagram::layoutTree().

◆ number()

uint DiagramItem::number ( ) const
inline

在文件 diagram.cpp 第 55 行定义.

55 { return m_num; }

引用了 m_num.

被这些函数引用 TreeDiagram::layoutTree().

◆ numChildren()

uint DiagramItem::numChildren ( ) const

在文件 diagram.cpp 第 323 行定义.

324 {
325  return static_cast<uint>(m_children.size());
326 }

引用了 m_children.

被这些函数引用 TreeDiagram::computeLayout(), TreeDiagram::drawBoxes() , 以及 TreeDiagram::layoutTree().

◆ parentItem()

DiagramItem* DiagramItem::parentItem ( )
inline

在文件 diagram.cpp 第 47 行定义.

47 { return m_parent; }

引用了 m_parent.

被这些函数引用 TreeDiagram::computeLayout(), TreeDiagram::computeRows(), TreeDiagram::drawBoxes() , 以及 TreeDiagram::drawConnectors().

◆ protection()

Protection DiagramItem::protection ( ) const
inline

在文件 diagram.cpp 第 56 行定义.

56 { return m_prot; }

引用了 m_prot.

被这些函数引用 TreeDiagram::drawConnectors().

◆ putInList()

void DiagramItem::putInList ( )
inline

在文件 diagram.cpp 第 58 行定义.

58 { m_inList=TRUE; }

引用了 m_inList , 以及 TRUE.

◆ virtualness()

Specifier DiagramItem::virtualness ( ) const
inline

在文件 diagram.cpp 第 57 行定义.

57 { return m_virt; }

引用了 m_virt.

被这些函数引用 writeBitmapBox() , 以及 writeVectorBox().

◆ xPos()

uint DiagramItem::xPos ( ) const
inline

在文件 diagram.cpp 第 50 行定义.

50 { return m_x; }

引用了 m_x.

被这些函数引用 avgChildPos(), ClassDiagram::ClassDiagram(), TreeDiagram::drawBoxes(), TreeDiagram::drawConnectors() , 以及 TreeDiagram::layoutTree().

◆ yPos()

uint DiagramItem::yPos ( ) const
inline

在文件 diagram.cpp 第 51 行定义.

51 { return m_y; }

引用了 m_y.

被这些函数引用 TreeDiagram::drawBoxes() , 以及 TreeDiagram::drawConnectors().

类成员变量说明

◆ m_children

DiagramItemList DiagramItem::m_children
private

在文件 diagram.cpp 第 62 行定义.

被这些函数引用 addChild(), avgChildPos(), getChildren() , 以及 numChildren().

◆ m_classDef

const ClassDef* DiagramItem::m_classDef
private

在文件 diagram.cpp 第 71 行定义.

被这些函数引用 fileName(), getClassDef() , 以及 label().

◆ m_inList

bool DiagramItem::m_inList = false
private

在文件 diagram.cpp 第 70 行定义.

被这些函数引用 isInList() , 以及 putInList().

◆ m_num

uint DiagramItem::m_num
private

在文件 diagram.cpp 第 66 行定义.

被这些函数引用 number().

◆ m_parent

DiagramItem* DiagramItem::m_parent
private

在文件 diagram.cpp 第 63 行定义.

被这些函数引用 parentItem().

◆ m_prot

Protection DiagramItem::m_prot
private

在文件 diagram.cpp 第 67 行定义.

被这些函数引用 protection().

◆ m_templSpec

QCString DiagramItem::m_templSpec
private

在文件 diagram.cpp 第 69 行定义.

被这些函数引用 label().

◆ m_virt

Specifier DiagramItem::m_virt
private

在文件 diagram.cpp 第 68 行定义.

被这些函数引用 virtualness().

◆ m_x

uint DiagramItem::m_x = 0
private

在文件 diagram.cpp 第 64 行定义.

被这些函数引用 move() , 以及 xPos().

◆ m_y

uint DiagramItem::m_y = 0
private

在文件 diagram.cpp 第 65 行定义.

被这些函数引用 move() , 以及 yPos().


该类的文档由以下文件生成:
stripScope
QCString stripScope(const QCString &name)
Definition: util.cpp:3815
QCString::length
uint length() const
Returns the length of the string, not counting the 0-terminator.
Definition: qcstring.h:147
DiagramItem::m_num
uint m_num
Definition: diagram.cpp:66
QCString::isEmpty
bool isEmpty() const
Returns TRUE iff the string is empty
Definition: qcstring.h:144
DiagramItem::m_y
uint m_y
Definition: diagram.cpp:65
DiagramItem::m_prot
Protection m_prot
Definition: diagram.cpp:67
DiagramItem::xPos
uint xPos() const
Definition: diagram.cpp:50
uint
unsigned uint
Definition: qcstring.h:40
DiagramItem::number
uint number() const
Definition: diagram.cpp:55
QCString::left
QCString left(size_t len) const
Definition: qcstring.h:212
DiagramItem::m_templSpec
QCString m_templSpec
Definition: diagram.cpp:69
ClassDef::getOutputFileBase
virtual QCString getOutputFileBase() const =0
Returns the unique base name (without extension) of the class's file on disk
Definition::name
virtual QCString name() const =0
TRUE
#define TRUE
Definition: qcstring.h:36
insertTemplateSpecifierInScope
QCString insertTemplateSpecifierInScope(const QCString &scope, const QCString &templ)
Definition: util.cpp:3782
DiagramItem::m_virt
Specifier m_virt
Definition: diagram.cpp:68
Config_getBool
#define Config_getBool(name)
Definition: config.h:33
DiagramItem::m_parent
DiagramItem * m_parent
Definition: diagram.cpp:63
ClassDef::displayName
virtual QCString displayName(bool includeScope=TRUE) const =0
Returns the name as it is appears in the documentation
DiagramItem::m_x
uint m_x
Definition: diagram.cpp:64
DiagramItem::m_inList
bool m_inList
Definition: diagram.cpp:70
DiagramItem::m_children
DiagramItemList m_children
Definition: diagram.cpp:62
QCString::right
QCString right(size_t len) const
Definition: qcstring.h:217
DiagramItem
Class representing a single node in the built-in class diagram
Definition: diagram.cpp:40
DiagramItem::m_classDef
const ClassDef * m_classDef
Definition: diagram.cpp:71
QCString
This is an alternative implementation of QCString.
Definition: qcstring.h:108