Isis Developer Reference
Isis::AbstractTreeModel Class Referenceabstract

Base class for tree models. More...

#include <AbstractTreeModel.h>

Inheritance diagram for Isis::AbstractTreeModel:
Inheritance graph
Collaboration diagram for Isis::AbstractTreeModel:
Collaboration graph

Public Types

enum  InterestingItems { PointItems = 1 , MeasureItems = 2 , ImageItems = 4 , AllItems = PointItems | MeasureItems | ImageItems }
 

Public Slots

void applyFilter ()
 

Signals

void cancelSort ()
 
void modelModified ()
 
void filterProgressChanged (int)
 
void filterProgressRangeChanged (int, int)
 
void rebuildProgressChanged (int)
 
void rebuildProgressRangeChanged (int, int)
 
void treeSelectionChanged (QList< AbstractTreeItem * >)
 
void tableSelectionChanged (QList< AbstractTreeItem * >)
 
void filterCountsChanged (int visibleTopLevelItemCount, int topLevelItemCount)
 This signal is emitted after filtering to provide the number of visible top-level items remaining after the filter was applied, as well as the total number of items that were possible. More...
 

Public Member Functions

 AbstractTreeModel (ControlNet *controlNet, TreeView *v, QObject *parent=0)
 
virtual ~AbstractTreeModel ()
 
QList< AbstractTreeItem * > getItems (int, int, InterestingItemsFlag=AllItems, bool=false)
 
QList< AbstractTreeItem * > getItems (AbstractTreeItem *, AbstractTreeItem *, InterestingItemsFlag=AllItems, bool=false)
 
QList< AbstractTreeItem * > getSelectedItems (InterestingItemsFlag=AllItems, bool=false)
 
QMutex * getMutex () const
 
int getItemCount (InterestingItemsFlag) const
 
int getTopLevelItemCount () const
 
int getVisibleItemCount (InterestingItemsFlag, bool) const
 
int getVisibleTopLevelItemCount () const
 
TreeViewgetView () const
 
void setDrivable (bool drivableStatus)
 
bool isDrivable () const
 
bool isFiltering () const
 
bool isRebuilding () const
 
void setRebuilding (bool running)
 
void setFilter (FilterWidget *newFilter)
 
void setGlobalSelection (bool selected, InterestingItemsFlag=AllItems)
 
void stopWorking ()
 
QSize getVisibleSize (int indentation) const
 indentation is in pixels More...
 
int indexOfVisibleItem (AbstractTreeItem const *item, InterestingItemsFlag=AllItems, bool=false) const
 
void setFrozen (bool)
 
bool isFrozen () const
 
void queueRebuild ()
 
virtual void rebuildItems ()=0
 

Protected Member Functions

void clear ()
 
ControlNetgetControlNetwork () const
 
FilterWidgetgetFilterWidget () const
 
QFutureWatcher< QAtomicPointer< RootItem > > * getRebuildWatcher () const
 
RootItemgetRootItem () const
 

Protected Attributes

RootItemrootItem
 

Detailed Description

Base class for tree models.

This class is a base class for models that store data in a tree-like structure. There is also a linked-list for iterating over the filtered items in an efficient manner. This handles the filtering of items and provides an interface for rebuilding.

Author
????-??-?? Eric Hyer

Member Enumeration Documentation

◆ InterestingItems

Enumerator
PointItems 
MeasureItems 
ImageItems 
AllItems 

Constructor & Destructor Documentation

◆ AbstractTreeModel()

Isis::AbstractTreeModel::AbstractTreeModel ( ControlNet controlNet,
TreeView v,
QObject parent = 0 
)

◆ ~AbstractTreeModel()

Isis::AbstractTreeModel::~AbstractTreeModel ( )
virtual

References rootItem.

Member Function Documentation

◆ applyFilter

◆ cancelSort

◆ clear()

void Isis::AbstractTreeModel::clear ( )
protected

References rootItem.

◆ filterCountsChanged

void Isis::AbstractTreeModel::filterCountsChanged ( int  visibleTopLevelItemCount,
int  topLevelItemCount 
)
signal

This signal is emitted after filtering to provide the number of visible top-level items remaining after the filter was applied, as well as the total number of items that were possible.

Referenced by applyFilter(), Isis::ImageImageTreeModel::rebuildItems(), Isis::ImagePointTreeModel::rebuildItems(), and Isis::PointMeasureTreeModel::rebuildItems().

◆ filterProgressChanged

void Isis::AbstractTreeModel::filterProgressChanged ( int  )
signal

Referenced by AbstractTreeModel().

◆ filterProgressRangeChanged

void Isis::AbstractTreeModel::filterProgressRangeChanged ( int  ,
int   
)
signal

Referenced by AbstractTreeModel().

◆ getControlNetwork()

ControlNet * Isis::AbstractTreeModel::getControlNetwork ( ) const
protected

◆ getFilterWidget()

FilterWidget * Isis::AbstractTreeModel::getFilterWidget ( ) const
protected

◆ getItemCount()

int Isis::AbstractTreeModel::getItemCount ( InterestingItemsFlag  flags) const

References getItemCount(), and rootItem.

Referenced by getItemCount().

◆ getItems() [1/2]

QList< AbstractTreeItem * > Isis::AbstractTreeModel::getItems ( AbstractTreeItem item1,
AbstractTreeItem item2,
InterestingItemsFlag  flags = AllItems,
bool  ignoreExpansion = false 
)

◆ getItems() [2/2]

◆ getMutex()

QMutex * Isis::AbstractTreeModel::getMutex ( ) const

◆ getRebuildWatcher()

◆ getRootItem()

RootItem * Isis::AbstractTreeModel::getRootItem ( ) const
protected

References rootItem.

◆ getSelectedItems()

QList< AbstractTreeItem * > Isis::AbstractTreeModel::getSelectedItems ( InterestingItemsFlag  flags = AllItems,
bool  ignoreExpansion = false 
)

◆ getTopLevelItemCount()

◆ getView()

TreeView * Isis::AbstractTreeModel::getView ( ) const

◆ getVisibleItemCount()

int Isis::AbstractTreeModel::getVisibleItemCount ( InterestingItemsFlag  flags,
bool  ignoreExpansion 
) const

◆ getVisibleSize()

QSize Isis::AbstractTreeModel::getVisibleSize ( int  indentation) const

◆ getVisibleTopLevelItemCount()

int Isis::AbstractTreeModel::getVisibleTopLevelItemCount ( ) const

◆ indexOfVisibleItem()

int Isis::AbstractTreeModel::indexOfVisibleItem ( AbstractTreeItem const *  item,
InterestingItemsFlag  flags = AllItems,
bool  ignoreExpansion = false 
) const

◆ isDrivable()

bool Isis::AbstractTreeModel::isDrivable ( ) const

◆ isFiltering()

◆ isFrozen()

◆ isRebuilding()

bool Isis::AbstractTreeModel::isRebuilding ( ) const

◆ modelModified

void Isis::AbstractTreeModel::modelModified ( )
signal

◆ queueRebuild()

◆ rebuildItems()

virtual void Isis::AbstractTreeModel::rebuildItems ( )
pure virtual

◆ rebuildProgressChanged

void Isis::AbstractTreeModel::rebuildProgressChanged ( int  )
signal

Referenced by AbstractTreeModel().

◆ rebuildProgressRangeChanged

void Isis::AbstractTreeModel::rebuildProgressRangeChanged ( int  ,
int   
)
signal

Referenced by AbstractTreeModel().

◆ setDrivable()

void Isis::AbstractTreeModel::setDrivable ( bool  drivableStatus)

◆ setFilter()

void Isis::AbstractTreeModel::setFilter ( FilterWidget newFilter)

References applyFilter().

◆ setFrozen()

void Isis::AbstractTreeModel::setFrozen ( bool  newFrozenState)

◆ setGlobalSelection()

void Isis::AbstractTreeModel::setGlobalSelection ( bool  selected,
InterestingItemsFlag  flags = AllItems 
)

◆ setRebuilding()

void Isis::AbstractTreeModel::setRebuilding ( bool  running)
inline

◆ stopWorking()

void Isis::AbstractTreeModel::stopWorking ( )

◆ tableSelectionChanged

void Isis::AbstractTreeModel::tableSelectionChanged ( QList< AbstractTreeItem * >  )
signal

◆ treeSelectionChanged

void Isis::AbstractTreeModel::treeSelectionChanged ( QList< AbstractTreeItem * >  )
signal

Member Data Documentation

◆ rootItem


The documentation for this class was generated from the following files: