#include <Fireworks/Core/interface/FWGeometryTableManager.h>
Classes | |
class | ColorBoxRenderer |
struct | Match |
struct | NodeInfo |
Public Types | |
enum | Bits { kExpanded = BIT(0), kMatches = BIT(1), kChildMatches = BIT(2), kFilterCached = BIT(3), kVisNode = BIT(4), kVisNodeChld = BIT(5) } |
enum | ECol { kName, kColor, kVisSelf, kVisChild, kMaterial, kPosX, kPosY, kPosZ, kNumCol } |
typedef Entries_v::iterator | Entries_i |
typedef std::vector< NodeInfo > | Entries_v |
typedef Volumes_t::iterator | Volumes_i |
typedef boost::unordered_map < TGeoVolume *, Match > | Volumes_t |
Public Member Functions | |
void | assertNodeFilterCache (NodeInfo &data) |
virtual FWTableCellRendererBase * | cellRenderer (int iSortedRowNumber, int iCol) const |
FWGeometryTableManager (FWGeometryTableView *) | |
int | getLevelOffset () const |
void | getNodeMatrix (const NodeInfo &nodeInfo, TGeoHMatrix &mat) const |
void | getNodePath (int, std::string &) const |
virtual std::vector< std::string > | getTitles () const |
returns the title names for each column More... | |
bool | getVisibility (const NodeInfo &nodeInfo) const |
bool | getVisibilityChld (const NodeInfo &nodeInfo) const |
virtual void | implSort (int, bool) |
Called by 'sort' method to actually handle the sorting of the rows. Arguments are the same as 'sort'. More... | |
void | loadGeometry (TGeoNode *, TObjArray *) |
bool | nodeImported (int idx) const |
virtual int | numberOfColumns () const |
Number of columns in the table. More... | |
virtual int | numberOfRows () const |
Number of rows in the table. More... | |
void | printChildren (int) const |
Entries_v & | refEntries () |
Entries_i | refSelected () |
virtual bool | rowIsSelected (int row) const |
std::vector< int > | rowToIndex () |
int | selectedColumn () const |
int | selectedRow () const |
void | setBackgroundToWhite (bool) |
void | setDaughtersSelfVisibility (bool) |
void | setSelection (int row, int column, int mask) |
void | setVisibility (NodeInfo &nodeInfo, bool) |
void | setVisibilityChld (NodeInfo &nodeInfo, bool) |
virtual const std::string | title () const |
virtual int | unsortedRowNumber (int unsorted) const |
when passed the index to the sorted order of the rows it returns the original row number from the underlying data More... | |
virtual | ~FWGeometryTableManager () |
Public Member Functions inherited from FWTableManagerBase | |
virtual void | buttonPressedInRowHeader (Int_t row, Event_t *event, Int_t relX, Int_t relY) |
Called if mouse button pressed in Row Header, defaults is to do nothing. More... | |
virtual void | buttonReleasedInRowHeader (Int_t row, Event_t *event, Int_t relX, Int_t relY) |
virtual unsigned int | cellHeight () const |
require all cells to be the same height More... | |
ClassDef (FWTableManagerBase, 0) | |
void | dataChanged () |
Classes which inherit from FWTableManagerBase must call this when their underlying data changes. More... | |
FWTableManagerBase () | |
virtual bool | hasLabelHeaders () const |
virtual bool | hasRowHeaders () const |
Returns 'true' if this table has row headers. Defaults return value is false. More... | |
virtual std::vector< unsigned int > | maxWidthForColumns () const |
for each column in the table this returns the present maximum width for that column More... | |
virtual FWTableCellRendererBase * | rowHeader (int iSortedRowNumber) const |
Returns the renderer for the row header for the sorted row number iSortedRowNumber. More... | |
void | sort (int iCol, bool iSortOrder) |
Call to have table sorted on values in column iCol with the sort order being descending if iSortOrder is 'true'. More... | |
int | sortColumn (void) |
The current sort column. More... | |
bool | sortOrder (void) |
The current sort order for the table. More... | |
void | visualPropertiesChanged () |
Classes which inherit from FWTableManagerBase must call this when how the data is shown (e.g. color) changes. More... | |
virtual | ~FWTableManagerBase () |
Static Public Member Functions | |
static void | getNNodesTotal (TGeoNode *geoNode, int &off) |
Private Member Functions | |
void | changeSelection (int iRow, int iColumn) |
void | checkChildMatches (TGeoVolume *v, std::vector< TGeoVolume * > &) |
void | checkExpandLevel () |
void | checkHierarchy () |
void | firstColumnClicked (int row) |
FWGeometryTableManager (const FWGeometryTableManager &) | |
void | importChildren (int parent_idx) |
const FWGeometryTableManager & | operator= (const FWGeometryTableManager &) |
void | printMaterials () |
void | recalculateVisibility () |
void | recalculateVisibilityNodeRec (int) |
void | recalculateVisibilityVolumeRec (int) |
void | redrawTable () |
void | topGeoNodeChanged (int) |
void | updateFilter () |
Private Attributes | |
FWGeometryTableView * | m_browser |
ColorBoxRenderer | m_colorBoxRenderer |
Entries_v | m_entries |
bool | m_filterOff |
int | m_levelOffset |
int | m_numVolumesMatched |
FWTextTreeCellRenderer | m_renderer |
std::vector< int > | m_row_to_index |
int | m_selectedColumn |
int | m_selectedIdx |
int | m_selectedRow |
int | m_topGeoNodeIdx |
Volumes_t | m_volumes |
Friends | |
class | FWGeometryTableView |
Additional Inherited Members |
Description: [one line class summary]
Usage: <usage>
Definition at line 40 of file FWGeometryTableManager.h.
typedef Entries_v::iterator FWGeometryTableManager::Entries_i |
Definition at line 96 of file FWGeometryTableManager.h.
typedef std::vector<NodeInfo> FWGeometryTableManager::Entries_v |
Definition at line 95 of file FWGeometryTableManager.h.
typedef Volumes_t::iterator FWGeometryTableManager::Volumes_i |
Definition at line 99 of file FWGeometryTableManager.h.
typedef boost::unordered_map<TGeoVolume*, Match> FWGeometryTableManager::Volumes_t |
Definition at line 98 of file FWGeometryTableManager.h.
Enumerator | |
---|---|
kExpanded | |
kMatches | |
kChildMatches | |
kFilterCached | |
kVisNode | |
kVisNodeChld |
Definition at line 47 of file FWGeometryTableManager.h.
Enumerator | |
---|---|
kName | |
kColor | |
kVisSelf | |
kVisChild | |
kMaterial | |
kPosX | |
kPosY | |
kPosZ | |
kNumCol |
Definition at line 45 of file FWGeometryTableManager.h.
FWGeometryTableManager::FWGeometryTableManager | ( | FWGeometryTableView * | browser | ) |
Definition at line 114 of file FWGeometryTableManager.cc.
References FWTextTableCellRenderer::height(), m_colorBoxRenderer, FWGeometryTableManager::ColorBoxRenderer::m_height, m_renderer, and FWGeometryTableManager::ColorBoxRenderer::m_width.
|
virtual |
Definition at line 127 of file FWGeometryTableManager.cc.
|
private |
void FWGeometryTableManager::assertNodeFilterCache | ( | NodeInfo & | data | ) |
Definition at line 367 of file FWGeometryTableManager.cc.
References kChildMatches, kExpanded, kFilterCached, kMatches, FWGeometryTableManager::NodeInfo::m_node, m_volumes, FWGeometryTableManager::NodeInfo::setBit(), FWGeometryTableManager::NodeInfo::setBitVal(), setVisibility(), setVisibilityChld(), and FWGeometryTableManager::NodeInfo::testBit().
Referenced by FWGeoTopNode::Paint(), FWGeoTopNode::paintChildNodesRecurse(), recalculateVisibility(), recalculateVisibilityNodeRec(), and recalculateVisibilityVolumeRec().
|
virtual |
Returns the particular renderer used to handle the requested cell. Arguments:
iSortedRowNumber: the row number from the present sort (i.e. the cell number of the view) iCol: the column number of the cell. The returned value must be used immediately and not held onto since the same Renderer can be used for subsequent calls
Implements FWTableManagerBase.
Definition at line 232 of file FWGeometryTableManager.cc.
References runTheMatrix::data, getNodeMatrix(), getVisibility(), getVisibilityChld(), FWGeometryTableView::getVolumeMode(), FWTextTreeCellRenderer::iconWidth(), kChildMatches, kColor, kExpanded, kMaterial, kName, kPosX, kPosY, kPosZ, kVisChild, kVisSelf, testEve_cfg::level, m_browser, FWGeometryTableManager::NodeInfo::m_color, m_colorBoxRenderer, m_entries, m_filterOff, FWGeometryTableManager::NodeInfo::m_level, m_levelOffset, FWGeometryTableManager::NodeInfo::m_node, m_renderer, m_row_to_index, m_volumes, pos, FWTextTableCellRenderer::setData(), FWGeometryTableManager::ColorBoxRenderer::setData(), FWTextTreeCellRenderer::setIndentation(), FWTextTreeCellRenderer::setIsOpen(), FWTextTreeCellRenderer::setIsParent(), FWGeometryTableManager::NodeInfo::testBit(), and zero.
|
private |
Definition at line 195 of file FWGeometryTableManager.cc.
References m_row_to_index, m_selectedColumn, m_selectedIdx, m_selectedRow, and FWTableManagerBase::visualPropertiesChanged().
Referenced by redrawTable(), and setSelection().
|
private |
Definition at line 613 of file FWGeometryTableManager.cc.
References i, FWGeometryTableManager::Match::m_childMatches, and m_volumes.
Referenced by updateFilter().
|
private |
Definition at line 695 of file FWGeometryTableManager.cc.
References FWGeometryTableView::getAutoExpand(), i, kExpanded, m_browser, m_entries, and m_levelOffset.
Referenced by FWGeometryTableView::autoExpandChanged(), FWGeometryTableView::setPath(), and FWGeometryTableView::updateFilter().
|
private |
Definition at line 589 of file FWGeometryTableManager.cc.
References i, m_entries, mergeVDriftHistosByStation::name, convertSQLiteXML::ok, and redTxt.
|
private |
Definition at line 351 of file FWGeometryTableManager.cc.
References FWTableManagerBase::dataChanged(), kExpanded, m_entries, recalculateVisibility(), rowToIndex(), and FWTableManagerBase::visualPropertiesChanged().
Referenced by FWGeometryTableView::cellClicked().
|
inline |
Definition at line 154 of file FWGeometryTableManager.h.
References m_levelOffset.
Referenced by FWGeoTopNode::Paint().
|
inlinestatic |
Definition at line 228 of file FWGeometryTableManager.h.
References i.
Referenced by importChildren(), loadGeometry(), FWGeoTopNode::paintChildNodesRecurse(), recalculateVisibilityNodeRec(), recalculateVisibilityVolumeRec(), and setDaughtersSelfVisibility().
void FWGeometryTableManager::getNodeMatrix | ( | const NodeInfo & | nodeInfo, |
TGeoHMatrix & | mat | ||
) | const |
Definition at line 761 of file FWGeometryTableManager.cc.
References prof2calltree::l, m_entries, FWGeometryTableManager::NodeInfo::m_level, FWGeometryTableManager::NodeInfo::m_node, and FWGeometryTableManager::NodeInfo::m_parent.
Referenced by cellRenderer(), FWGeometryTableView::chosenItem(), and FWGeoTopNode::Paint().
void FWGeometryTableManager::getNodePath | ( | int | idx, |
std::string & | path | ||
) | const |
Definition at line 674 of file FWGeometryTableManager.cc.
References i, m_entries, and mergeVDriftHistosByStation::name.
Referenced by FWGeometryTableView::cdNode(), FWGeometryTableView::cdUp(), and printChildren().
|
virtual |
returns the title names for each column
Implements FWTableManagerBase.
Definition at line 148 of file FWGeometryTableManager.cc.
References FWGeometryTableView::getVolumeMode(), m_browser, and numberOfColumns().
bool FWGeometryTableManager::getVisibility | ( | const NodeInfo & | nodeInfo | ) | const |
Definition at line 811 of file FWGeometryTableManager.cc.
References FWGeometryTableView::getVolumeMode(), kVisNode, m_browser, FWGeometryTableManager::NodeInfo::m_node, and FWGeometryTableManager::NodeInfo::testBit().
Referenced by FWGeometryTableView::cellClicked(), cellRenderer(), FWGeoTopNode::Paint(), and FWGeoTopNode::paintChildNodesRecurse().
bool FWGeometryTableManager::getVisibilityChld | ( | const NodeInfo & | nodeInfo | ) | const |
Definition at line 820 of file FWGeometryTableManager.cc.
References FWGeometryTableView::getVolumeMode(), kVisNodeChld, m_browser, FWGeometryTableManager::NodeInfo::m_node, and FWGeometryTableManager::NodeInfo::testBit().
Referenced by FWGeometryTableView::cellClicked(), cellRenderer(), FWGeoTopNode::Paint(), and FWGeoTopNode::paintChildNodesRecurse().
|
inlinevirtual |
Called by 'sort' method to actually handle the sorting of the rows. Arguments are the same as 'sort'.
Implements FWTableManagerBase.
Definition at line 142 of file FWGeometryTableManager.h.
|
private |
Definition at line 564 of file FWGeometryTableManager.cc.
References runTheMatrix::data, FWGeometryTableView::getAutoExpand(), getNNodesTotal(), kExpanded, m_browser, FWGeometryTableManager::NodeInfo::m_color, m_entries, FWGeometryTableManager::NodeInfo::m_level, FWGeometryTableManager::NodeInfo::m_node, FWGeometryTableManager::NodeInfo::m_parent, n, dbtoconf::parent, and FWGeometryTableManager::NodeInfo::setBit().
Referenced by loadGeometry().
void FWGeometryTableManager::loadGeometry | ( | TGeoNode * | iGeoTopNode, |
TObjArray * | iVolumes | ||
) |
Definition at line 511 of file FWGeometryTableManager.cc.
References FWGeometryTableView::getAutoExpand(), getNNodesTotal(), importChildren(), kExpanded, m_browser, m_entries, m_filterOff, FWGeometryTableManager::NodeInfo::m_level, m_levelOffset, FWGeometryTableManager::NodeInfo::m_node, FWGeometryTableManager::NodeInfo::m_parent, m_row_to_index, m_volumes, MultipleCompare::Match(), FWGeometryTableManager::NodeInfo::setBit(), updateFilter(), and v.
Referenced by FWGeometryTableView::FWGeometryTableView().
bool FWGeometryTableManager::nodeImported | ( | int | idx | ) | const |
|
virtual |
Number of columns in the table.
Implements FWTableManagerBase.
Definition at line 142 of file FWGeometryTableManager.cc.
References kNumCol.
Referenced by getTitles().
|
virtual |
Number of rows in the table.
Implements FWTableManagerBase.
Definition at line 137 of file FWGeometryTableManager.cc.
References m_row_to_index.
|
private |
void FWGeometryTableManager::printChildren | ( | int | idx | ) | const |
Definition at line 721 of file FWGeometryTableManager.cc.
References getNodePath(), m_entries, mergeVDriftHistosByStation::name, and path().
Referenced by FWGeometryTableView::printTable().
|
private |
Definition at line 832 of file FWGeometryTableManager.cc.
References i, m, m_entries, and m_selectedIdx.
Referenced by FWGeometryTableView::chosenItem().
|
private |
Definition at line 388 of file FWGeometryTableManager.cc.
References assertNodeFilterCache(), runTheMatrix::data, FWGeometryTableView::getTopNodeIdx(), FWGeometryTableView::getVolumeMode(), i, kChildMatches, kExpanded, m_browser, m_entries, m_filterOff, m_row_to_index, siStripFEDMonitor_P5_cff::Max, recalculateVisibilityNodeRec(), recalculateVisibilityVolumeRec(), and FWGeometryTableManager::NodeInfo::testBit().
Referenced by firstColumnClicked(), and redrawTable().
|
private |
Definition at line 412 of file FWGeometryTableManager.cc.
References assertNodeFilterCache(), runTheMatrix::data, getNNodesTotal(), kChildMatches, kExpanded, kMatches, m_entries, m_filterOff, m_row_to_index, n, FWGeometryTableManager::NodeInfo::testBit(), and FWGeometryTableManager::NodeInfo::testBitAny().
Referenced by recalculateVisibility().
|
private |
Definition at line 440 of file FWGeometryTableManager.cc.
References assertNodeFilterCache(), runTheMatrix::data, getNNodesTotal(), kChildMatches, kExpanded, kMatches, m_entries, m_filterOff, FWGeometryTableManager::NodeInfo::m_node, m_row_to_index, n, FWGeometryTableManager::NodeInfo::testBit(), and FWGeometryTableManager::NodeInfo::testBitAny().
Referenced by recalculateVisibility().
|
private |
Definition at line 492 of file FWGeometryTableManager.cc.
References changeSelection(), FWTableManagerBase::dataChanged(), m_entries, recalculateVisibility(), and FWTableManagerBase::visualPropertiesChanged().
Referenced by FWGeometryTableView::autoExpandChanged(), FWGeometryTableView::refreshTable3D(), and FWGeometryTableView::setPath().
|
inline |
Definition at line 148 of file FWGeometryTableManager.h.
References m_entries.
Referenced by FWGeometryTableView::cdTop(), FWGeometryTableView::cdUp(), FWGeoTopNode::FWGeoTopNode(), and FWGeometryTableView::updateFilter().
FWGeometryTableManager::Entries_i FWGeometryTableManager::refSelected | ( | ) |
Definition at line 667 of file FWGeometryTableManager.cc.
References i, m_entries, and m_selectedIdx.
Referenced by FWGeometryTableView::cellClicked(), FWGeometryTableView::chosenItem(), FWGeoMaterialValidator::fillOptions(), and FWGeometryTableView::nodeColorChangeRequested().
|
virtual |
|
inline |
Definition at line 139 of file FWGeometryTableManager.h.
References m_row_to_index.
Referenced by firstColumnClicked().
int FWGeometryTableManager::selectedColumn | ( | ) | const |
Definition at line 185 of file FWGeometryTableManager.cc.
References m_selectedColumn.
int FWGeometryTableManager::selectedRow | ( | ) | const |
void FWGeometryTableManager::setBackgroundToWhite | ( | bool | iToWhite | ) |
Definition at line 207 of file FWGeometryTableManager.cc.
References FWTextTableCellRenderer::getDefaultHighlightGC(), m_renderer, FWTextTreeCellRenderer::setBlackIcon(), FWTextTableCellRenderer::setGraphicsContext(), and FWTextTableCellRenderer::setHighlightContext().
Referenced by FWGeometryTableView::setBackgroundColor().
void FWGeometryTableManager::setDaughtersSelfVisibility | ( | bool | v | ) |
Definition at line 743 of file FWGeometryTableManager.cc.
References runTheMatrix::data, getNNodesTotal(), m_entries, m_selectedIdx, n, setVisibility(), and setVisibilityChld().
Referenced by FWGeometryTableView::chosenItem().
void FWGeometryTableManager::setSelection | ( | int | row, |
int | column, | ||
int | mask | ||
) |
Definition at line 170 of file FWGeometryTableManager.cc.
References changeSelection().
Referenced by FWGeometryTableView::cellClicked().
void FWGeometryTableManager::setVisibility | ( | NodeInfo & | nodeInfo, |
bool | x | ||
) |
Definition at line 777 of file FWGeometryTableManager.cc.
References FWGeometryTableViewManager::getGeoMangeur(), FWGeometryTableView::getVolumeMode(), kVisNode, m_browser, FWGeometryTableManager::NodeInfo::m_node, FWGeometryTableManager::NodeInfo::setBitVal(), and x.
Referenced by assertNodeFilterCache(), FWGeometryTableView::cellClicked(), setDaughtersSelfVisibility(), and FWGeometryTableView::updateFilter().
void FWGeometryTableManager::setVisibilityChld | ( | NodeInfo & | nodeInfo, |
bool | x | ||
) |
Definition at line 793 of file FWGeometryTableManager.cc.
References FWGeometryTableViewManager::getGeoMangeur(), FWGeometryTableView::getVolumeMode(), kVisNodeChld, m_browser, FWGeometryTableManager::NodeInfo::m_node, FWGeometryTableManager::NodeInfo::setBitVal(), and x.
Referenced by assertNodeFilterCache(), FWGeometryTableView::cellClicked(), setDaughtersSelfVisibility(), and FWGeometryTableView::updateFilter().
|
virtual |
Definition at line 175 of file FWGeometryTableManager.cc.
Referenced by python.Vispa.Views.LineDecayView.LineDecayContainer::autolayout(), python.Vispa.Views.LineDecayView.LineDecayContainer::autolayoutThreadFinished(), python.Vispa.Views.LineDecayView.LineDecayContainer::childFinishedAutolayouting(), and python.Vispa.Gui.PortWidget.PortWidget::name().
|
private |
Definition at line 711 of file FWGeometryTableManager.cc.
References m_entries, and m_levelOffset.
Referenced by FWGeometryTableView::setPath().
|
virtual |
when passed the index to the sorted order of the rows it returns the original row number from the underlying data
Implements FWTableManagerBase.
Definition at line 132 of file FWGeometryTableManager.cc.
|
private |
Definition at line 635 of file FWGeometryTableManager.cc.
References checkChildMatches(), FWGeometryTableView::getFilter(), FWGeometryTableView::getTopNodeIdx(), i, kFilterCached, m_browser, m_entries, m_filterOff, m_numVolumesMatched, m_volumes, and siStripFEDMonitor_P5_cff::Max.
Referenced by loadGeometry(), FWGeometryTableView::modeChanged(), FWGeometryTableView::setPath(), and FWGeometryTableView::updateFilter().
|
friend |
Definition at line 42 of file FWGeometryTableManager.h.
|
private |
Definition at line 211 of file FWGeometryTableManager.h.
Referenced by cellRenderer(), checkExpandLevel(), getTitles(), getVisibility(), getVisibilityChld(), importChildren(), loadGeometry(), recalculateVisibility(), setVisibility(), setVisibilityChld(), and updateFilter().
|
mutableprivate |
Definition at line 203 of file FWGeometryTableManager.h.
Referenced by cellRenderer(), and FWGeometryTableManager().
|
private |
Definition at line 214 of file FWGeometryTableManager.h.
Referenced by cellRenderer(), checkExpandLevel(), checkHierarchy(), firstColumnClicked(), getNodeMatrix(), getNodePath(), importChildren(), loadGeometry(), printChildren(), printMaterials(), recalculateVisibility(), recalculateVisibilityNodeRec(), recalculateVisibilityVolumeRec(), redrawTable(), refEntries(), refSelected(), setDaughtersSelfVisibility(), topGeoNodeChanged(), and updateFilter().
|
private |
Definition at line 216 of file FWGeometryTableManager.h.
Referenced by cellRenderer(), loadGeometry(), recalculateVisibility(), recalculateVisibilityNodeRec(), recalculateVisibilityVolumeRec(), and updateFilter().
|
private |
Definition at line 220 of file FWGeometryTableManager.h.
Referenced by cellRenderer(), checkExpandLevel(), getLevelOffset(), loadGeometry(), and topGeoNodeChanged().
|
private |
Definition at line 217 of file FWGeometryTableManager.h.
Referenced by updateFilter().
|
mutableprivate |
Definition at line 202 of file FWGeometryTableManager.h.
Referenced by cellRenderer(), FWGeometryTableManager(), and setBackgroundToWhite().
|
private |
Definition at line 205 of file FWGeometryTableManager.h.
Referenced by cellRenderer(), changeSelection(), loadGeometry(), numberOfRows(), recalculateVisibility(), recalculateVisibilityNodeRec(), recalculateVisibilityVolumeRec(), and rowToIndex().
|
private |
Definition at line 208 of file FWGeometryTableManager.h.
Referenced by changeSelection(), and selectedColumn().
|
private |
Definition at line 207 of file FWGeometryTableManager.h.
Referenced by changeSelection(), FWGeometryTableView::chosenItem(), printMaterials(), refSelected(), and setDaughtersSelfVisibility().
|
private |
Definition at line 206 of file FWGeometryTableManager.h.
Referenced by changeSelection(), rowIsSelected(), and selectedRow().
|
private |
Definition at line 219 of file FWGeometryTableManager.h.
|
mutableprivate |
Definition at line 213 of file FWGeometryTableManager.h.
Referenced by assertNodeFilterCache(), cellRenderer(), checkChildMatches(), loadGeometry(), and updateFilter().