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.
 

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
 
TreeView * getView () 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
 
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 ()
 
ControlNet * getControlNetwork () const
 
FilterWidget * getFilterWidget () const
 
QFutureWatcher< QAtomicPointer< RootItem > > * getRebuildWatcher () const
 
RootItem * getRootItem () const
 

Protected Attributes

RootItem * rootItem
 

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: