Isis Developer Reference
AbstractParentItem.h
Go to the documentation of this file.
1 #ifndef AbstractParentItem_H
2 #define AbstractParentItem_H
3 
10 /* SPDX-License-Identifier: CC0-1.0 */
11 
12 #include "AbstractTreeItem.h"
13 
14 
15 template< typename T > class QList;
16 class QVariant;
17 
18 
19 namespace Isis {
20 
34  class AbstractParentItem : public virtual AbstractTreeItem {
35  public:
37  virtual ~AbstractParentItem();
38 
39  virtual AbstractTreeItem *childAt(int row) const;
41  virtual AbstractTreeItem *getFirstVisibleChild() const;
42  virtual AbstractTreeItem *getLastVisibleChild() const;
43  virtual int indexOf(AbstractTreeItem *child) const;
44  virtual int childCount() const;
45  virtual void addChild(AbstractTreeItem *child);
46  virtual void setFirstVisibleChild(AbstractTreeItem *child);
47  virtual void setLastVisibleChild(AbstractTreeItem *child);
48 
49 
50  private: // disable copying of this class
52  const AbstractParentItem &operator=(const AbstractParentItem &);
53 
54 
55  private:
56  QList< AbstractTreeItem * > * m_children;
57  AbstractTreeItem *m_firstVisibleChild;
58  AbstractTreeItem *m_lastVisibleChild;
59  };
60 }
61 
62 #endif
Isis::AbstractParentItem::setLastVisibleChild
virtual void setLastVisibleChild(AbstractTreeItem *child)
Definition: AbstractParentItem.cpp:117
Isis::AbstractTreeItem::parent
AbstractTreeItem * parent() const
Definition: AbstractTreeItem.cpp:46
AbstractParentItem.h
QList
This is free and unencumbered software released into the public domain.
Definition: BoxcarCachingAlgorithm.h:13
Isis::AbstractParentItem::setFirstVisibleChild
virtual void setFirstVisibleChild(AbstractTreeItem *child)
Definition: AbstractParentItem.cpp:112
Isis::AbstractParentItem::getLastVisibleChild
virtual AbstractTreeItem * getLastVisibleChild() const
Definition: AbstractParentItem.cpp:66
Isis::AbstractTreeItem::row
int row() const
Definition: AbstractTreeItem.cpp:56
Isis::AbstractParentItem::addChild
virtual void addChild(AbstractTreeItem *child)
Definition: AbstractParentItem.cpp:84
Isis::AbstractParentItem::childAt
virtual AbstractTreeItem * childAt(int row) const
Definition: AbstractParentItem.cpp:48
AbstractTreeItem.h
Isis::AbstractParentItem::getChildren
virtual QList< AbstractTreeItem * > getChildren() const
Definition: AbstractParentItem.cpp:55
RootItem.h
Isis::AbstractParentItem::getFirstVisibleChild
virtual AbstractTreeItem * getFirstVisibleChild() const
Definition: AbstractParentItem.cpp:61
Isis::AbstractTreeItem::setParent
void setParent(AbstractTreeItem *newParent)
Definition: AbstractTreeItem.cpp:51
ASSERT
#define ASSERT(x)
Definition: IsisDebug.h:134
Isis::AbstractParentItem::~AbstractParentItem
virtual ~AbstractParentItem()
Definition: AbstractParentItem.cpp:28
Isis::AbstractParentItem::childCount
virtual int childCount() const
Definition: AbstractParentItem.cpp:78
Isis::AbstractParentItem::indexOf
virtual int indexOf(AbstractTreeItem *child) const
Definition: AbstractParentItem.cpp:71
Isis::AbstractParentItem
Base class for an item that is a parent in the tree.
Definition: AbstractParentItem.h:34
IsisDebug.h
Isis::AbstractTreeItem
Base class for an item in the tree.
Definition: AbstractTreeItem.h:39
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
Isis::RootItem
The root of a tree.
Definition: RootItem.h:37
Isis::AbstractParentItem::AbstractParentItem
AbstractParentItem(AbstractTreeItem *parent=0)
Definition: AbstractParentItem.cpp:19