CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
Vispa.Views.TreeView.TreeView Class Reference
Inheritance diagram for Vispa.Views.TreeView.TreeView:
Vispa.Views.AbstractView.AbstractView Vispa.Share.ObjectHolder.ObjectHolder

Public Member Functions

def __init__ (self, parent=None, maxDepth=100)
 
def cancel (self)
 
def clear (self)
 
def collapseAll (self, remember=True)
 
def expandAll (self)
 
def expandToDepthDialog (self)
 
def isBusy (self)
 
def itemExpanded (self, item)
 
def itemSelectionChanged (self)
 
def mousePressEvent (self, event)
 
def restoreSelection (self)
 
def select (self, object)
 
def selection (self)
 
def setDataAccessor (self, accessor)
 
def updateContent (self)
 
- Public Member Functions inherited from Vispa.Views.AbstractView.AbstractView
def __init__ (self)
 
def cancel (self)
 
def isBusy (self)
 
def restoreSelection (self)
 
def select (self, object)
 
def selection (self)
 
def updateContent (self)
 
- Public Member Functions inherited from Vispa.Share.ObjectHolder.ObjectHolder
def __init__ (self)
 
def allDataObjectChildren (self, objects=None)
 
def appendObject (self, object)
 
def applyFilter (self, objects)
 
def clearObjects (self)
 
def dataAccessor (self)
 
def dataObject (self)
 
def dataObjects (self)
 
def dataObjectsCount (self)
 
def numberDataObjectChildren (self, objects=None)
 
def removeObject (self, object)
 
def setDataAccessor (self, accessor)
 
def setDataObject (self, object)
 
def setDataObjects (self, objects)
 
def setExclusiveMode (self, exclusive=True)
 
def setFilter (self, filter)
 

Private Member Functions

def _createNode (self, object=None, itemParent=None, positionName="0")
 
def _selectedItem (self)
 

Private Attributes

 _firstItem
 
 _itemDict
 
 _maxDepth
 
 _operationId
 
 _selection
 
 _treeDepth
 
 _updateCounter
 
 _updatingFlag
 

Detailed Description

The TreeView widget fills itself using a DataAccessor.

Definition at line 10 of file TreeView.py.

Constructor & Destructor Documentation

def Vispa.Views.TreeView.TreeView.__init__ (   self,
  parent = None,
  maxDepth = 100 
)

Definition at line 17 of file TreeView.py.

17  def __init__(self, parent=None, maxDepth=100):
18  logging.debug(__name__ + ": __init__")
19  AbstractView.__init__(self)
20  QTreeWidget.__init__(self, parent)
21 
22  self._operationId = 0
23  self._firstItem = None
24  self._itemDict = {}
25  self._maxDepth = maxDepth
26  self._selection = None
27  self._updatingFlag = 0
28  self._treeDepth=1
30 
31  self.setSortingEnabled(False)
32  self.setColumnCount(1)
33  self.setRootIsDecorated(True)
34  self.header().hide()
35 
36  self.connect(self, SIGNAL("itemSelectionChanged()"), self.itemSelectionChanged)
37  self.connect(self, SIGNAL("itemCollapsed(QTreeWidgetItem*)"), self.itemExpanded)
38  self.connect(self, SIGNAL("itemExpanded(QTreeWidgetItem*)"), self.itemExpanded)
39 
def __init__(self, parent=None, maxDepth=100)
Definition: TreeView.py:17
def itemExpanded(self, item)
Definition: TreeView.py:194

Member Function Documentation

def Vispa.Views.TreeView.TreeView._createNode (   self,
  object = None,
  itemParent = None,
  positionName = "0" 
)
private
Create daughter items of an object recursively.

Definition at line 93 of file TreeView.py.

References Vispa.Views.TreeView.TreeView._createNode(), Vispa.Views.TreeView.TreeView._firstItem, Vispa.Plugins.EdmBrowser.EventContentView.EventContentView._itemDict, Vispa.Views.TreeView.TreeView._itemDict, Vispa.Views.TreeView.TreeView._maxDepth, Vispa.Share.ObjectHolder.ObjectHolder.applyFilter(), class-composition.children, Vispa.Share.ObjectHolder.ObjectHolder.dataAccessor(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.dataAccessor(), label, and str.

Referenced by Vispa.Views.TreeView.TreeView._createNode(), and Vispa.Views.TreeView.TreeView.updateContent().

93  def _createNode(self, object=None, itemParent=None, positionName="0"):
94  """ Create daughter items of an object recursively.
95  """
96  item = QTreeWidgetItem(itemParent)
97  item.setText(0, self.dataAccessor().label(object))
98  item.object = object
99  item.positionName = str(positionName)+"("+self.dataAccessor().label(object)+")"
100  self._itemDict[item.positionName] = item
101  if self._firstItem==None:
102  self._firstItem=item
103  i = 0
104  if len(positionName.split("-")) < self._maxDepth:
105  for daughter in self.applyFilter(self.dataAccessor().children(object)):
106  self._createNode(daughter, item, positionName + "-" + str(i))
107  i += 1
108 
char const * label
def _createNode(self, object=None, itemParent=None, positionName="0")
Definition: TreeView.py:93
#define str(s)
def Vispa.Views.TreeView.TreeView._selectedItem (   self)
private
def Vispa.Views.TreeView.TreeView.cancel (   self)
def Vispa.Views.TreeView.TreeView.clear (   self)
def Vispa.Views.TreeView.TreeView.collapseAll (   self,
  remember = True 
)

Definition at line 189 of file TreeView.py.

References Vispa.Plugins.EdmBrowser.EdmBrowserTabController.EdmBrowserTabController._treeDepth, and Vispa.Views.TreeView.TreeView._treeDepth.

Referenced by Vispa.Views.TreeView.TreeView.expandToDepthDialog().

189  def collapseAll(self,remember=True):
190  if remember:
191  self._treeDepth=0
192  QTreeWidget.collapseAll(self)
193 
def collapseAll(self, remember=True)
Definition: TreeView.py:189
def Vispa.Views.TreeView.TreeView.expandAll (   self)
def Vispa.Views.TreeView.TreeView.expandToDepthDialog (   self)
Show dialog and call expandToDepth() function of tree view.

Definition at line 170 of file TreeView.py.

References Vispa.Plugins.EdmBrowser.EdmBrowserTabController.EdmBrowserTabController._treeDepth, Vispa.Views.TreeView.TreeView._treeDepth, Vispa.Views.TreeView.TreeView.collapseAll(), Vispa.Views.BoxDecayView.BoxDecayView.collapseAll(), and Vispa.Views.BoxDecayView.BoxDecayView.expandToDepth().

171  """ Show dialog and call expandToDepth() function of tree view.
172  """
173  if hasattr(QInputDialog, "getInteger"):
174  # Qt 4.3
175  (depth, ok) = QInputDialog.getInteger(self, "Expand to depth...", "Input depth:", self._treeDepth, 0)
176  else:
177  # Qt 4.5
178  (depth, ok) = QInputDialog.getInt(self, "Expand to depth...", "Input depth:", self._treeDepth, 0)
179  if ok:
180  self._treeDepth=depth
181  self.collapseAll(False)
182  if self._treeDepth>0:
183  self.expandToDepth(self._treeDepth-1)
184 
def collapseAll(self, remember=True)
Definition: TreeView.py:189
def Vispa.Views.TreeView.TreeView.isBusy (   self)
def Vispa.Views.TreeView.TreeView.itemExpanded (   self,
  item 
)

Definition at line 194 of file TreeView.py.

References Vispa.Plugins.EdmBrowser.EdmBrowserTabController.EdmBrowserTabController._treeDepth, and Vispa.Views.TreeView.TreeView._treeDepth.

194  def itemExpanded(self,item):
195  i=0
196  while item:
197  if item.isExpanded():
198  i+=1
199  item=item.parent()
200  self._treeDepth=i
def Vispa.Views.TreeView.TreeView.itemSelectionChanged (   self)
Emits signal selected that the TabController can connect to.

Definition at line 109 of file TreeView.py.

References Vispa.Views.TreeView.TreeView._selection, Vispa.Views.TableView.TableView._selection, Vispa.Views.TreeView.TreeView._updatingFlag, Vispa.Views.TableView.TableView._updatingFlag, Vispa.Views.RootCanvasView.RootCanvasView._updatingFlag, Vispa.Views.PropertyView.PropertyView._updatingFlag, edm::signalslot::Signal< void(const std::string &, const edmplugin::PluginInfo &)>.emit(), edm::signalslot::Signal< void(TerminationOrigin)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &, HLTPathStatus const &)>.emit(), edm::signalslot::Signal< void(edm::StreamContext const &, edm::ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void()>.emit(), edm::signalslot::Signal< void(std::string const &, bool)>.emit(), edm::signalslot::Signal< void(RunIndex)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(eventsetup::ComponentDescription const *, eventsetup::EventSetupRecordKey const &, eventsetup::DataKey const &)>.emit(), edm::signalslot::Signal< void(LuminosityBlockIndex)>.emit(), edm::signalslot::Signal< void(const edmplugin::SharedLibrary &)>.emit(), edm::signalslot::Signal< void(edm::BranchDescription const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, TerminationOrigin)>.emit(), edm::signalslot::Signal< void(const boost::filesystem::path &)>.emit(), edm::signalslot::Signal< void(const edmplugin::PluginFactoryBase *)>.emit(), edm::signalslot::Signal< void(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, TerminationOrigin)>.emit(), edm::signalslot::Signal< void(ModuleDescription const &)>.emit(), edm::signalslot::Signal< T >.emit(), Signal< void(BranchDescription const &)>.emit(), edm::signalslot::Signal< void(StreamID)>.emit(), edm::signalslot::Signal< void(const std::string &, const std::string &)>.emit(), edm::signalslot::Signal< void(service::SystemBounds const &)>.emit(), and edm::signalslot::Signal< void(StreamContext const &)>.emit().

110  """ Emits signal selected that the TabController can connect to.
111  """
112  #logging.debug(__name__ + ": itemSelectionChanged")
113  if not self._updatingFlag:
114  self._selection = self.currentItem().positionName
115  self.emit(SIGNAL("selected"), self.currentItem().object)
116 
def Vispa.Views.TreeView.TreeView.mousePressEvent (   self,
  event 
)

Definition at line 165 of file TreeView.py.

References edm::signalslot::Signal< T >.emit(), Signal< void(BranchDescription const &)>.emit(), edm::signalslot::Signal< void(StreamID)>.emit(), edm::signalslot::Signal< void(const std::string &, const std::string &)>.emit(), edm::signalslot::Signal< void(service::SystemBounds const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &)>.emit(), edm::signalslot::Signal< void(const std::string &, const edmplugin::PluginInfo &)>.emit(), edm::signalslot::Signal< void(TerminationOrigin)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &, HLTPathStatus const &)>.emit(), edm::signalslot::Signal< void(edm::StreamContext const &, edm::ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void()>.emit(), edm::signalslot::Signal< void(std::string const &, bool)>.emit(), edm::signalslot::Signal< void(RunIndex)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(eventsetup::ComponentDescription const *, eventsetup::EventSetupRecordKey const &, eventsetup::DataKey const &)>.emit(), edm::signalslot::Signal< void(LuminosityBlockIndex)>.emit(), edm::signalslot::Signal< void(const edmplugin::SharedLibrary &)>.emit(), edm::signalslot::Signal< void(edm::BranchDescription const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, TerminationOrigin)>.emit(), edm::signalslot::Signal< void(const boost::filesystem::path &)>.emit(), edm::signalslot::Signal< void(const edmplugin::PluginFactoryBase *)>.emit(), edm::signalslot::Signal< void(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, TerminationOrigin)>.emit(), and edm::signalslot::Signal< void(ModuleDescription const &)>.emit().

165  def mousePressEvent(self,event):
166  QTreeWidget.mousePressEvent(self,event)
167  if event.button()==Qt.RightButton:
168  self.emit(SIGNAL("mouseRightPressed"), event.globalPos())
169 
def mousePressEvent(self, event)
Definition: TreeView.py:165
def Vispa.Views.TreeView.TreeView.restoreSelection (   self)
Restore selection.

Definition at line 140 of file TreeView.py.

References Vispa.Views.TreeView.TreeView._selectedItem(), Vispa.Views.TreeView.TreeView._updatingFlag, Vispa.Views.TableView.TableView._updatingFlag, Vispa.Views.RootCanvasView.RootCanvasView._updatingFlag, and Vispa.Views.PropertyView.PropertyView._updatingFlag.

140  def restoreSelection(self):
141  """ Restore selection.
142  """
143  #logging.debug(__name__ + ": restoreSelection")
144  select = self._selectedItem()
145  if select != None:
146  self._updatingFlag +=1
147  self.setCurrentItem(select)
148  self._updatingFlag -=1
149 
def Vispa.Views.TreeView.TreeView.select (   self,
  object 
)
Mark an object in the TreeView as selected.

Definition at line 117 of file TreeView.py.

References Vispa.Views.TreeView.TreeView._selection, Vispa.Views.TableView.TableView._selection, Vispa.Views.TreeView.TreeView._updatingFlag, Vispa.Views.TableView.TableView._updatingFlag, Vispa.Views.RootCanvasView.RootCanvasView._updatingFlag, and Vispa.Views.PropertyView.PropertyView._updatingFlag.

117  def select(self, object):
118  """ Mark an object in the TreeView as selected.
119  """
120  #logging.debug(__name__ + ": select")
121  items = []
122  for positionName, item in self._itemDict.items():
123  if item.object == object:
124  items += [(positionName, item)]
125  if len(items) > 0:
126  item = sorted(items)[0][1]
127  self._selection = item.positionName
128  self._updatingFlag +=1
129  self.setCurrentItem(item)
130  self._updatingFlag -=1
131 
def select(self, object)
Definition: TreeView.py:117
def Vispa.Views.TreeView.TreeView.selection (   self)
Return currently selected object.

If selection unknown return first object.

Definition at line 150 of file TreeView.py.

References Vispa.Views.TreeView.TreeView._selectedItem().

Referenced by trackingPlots.Iteration.modules().

150  def selection(self):
151  """ Return currently selected object.
152 
153  If selection unknown return first object.
154  """
155  #logging.debug(__name__ + ": selection")
156  select = self._selectedItem()
157  if select != None:
158  return select.object
159  else:
160  return None
161 
def Vispa.Views.TreeView.TreeView.setDataAccessor (   self,
  accessor 
)
Sets the DataAccessor from which the nodes are created.

You need to call updateContent() in order to make the changes visible.   

Definition at line 40 of file TreeView.py.

40  def setDataAccessor(self, accessor):
41  """ Sets the DataAccessor from which the nodes are created.
42 
43  You need to call updateContent() in order to make the changes visible.
44  """
45  if not isinstance(accessor, BasicDataAccessor):
46  raise TypeError(__name__ + " requires data accessor of type BasicDataAccessor.")
47  AbstractView.setDataAccessor(self, accessor)
48 
def setDataAccessor(self, accessor)
Definition: TreeView.py:40
def Vispa.Views.TreeView.TreeView.updateContent (   self)
Clear the TreeView and refill it.

Definition at line 62 of file TreeView.py.

References Vispa.Views.TreeView.TreeView._createNode(), Vispa.Views.TreeView.TreeView._operationId, Vispa.Views.TableView.TableView._operationId, Vispa.Views.RootCanvasView.RootCanvasView._operationId, Vispa.Views.BoxDecayView.BoxDecayView._operationId, Vispa.Views.LineDecayView.LineDecayView._operationId, Vispa.Views.PropertyView.PropertyView._operationId, Vispa.Plugins.EdmBrowser.EdmBrowserTabController.EdmBrowserTabController._treeDepth, Vispa.Views.TreeView.TreeView._treeDepth, Vispa.Views.TreeView.TreeView._updateCounter, Vispa.Views.TableView.TableView._updateCounter, Vispa.Views.BoxDecayView.BoxDecayView._updateCounter, Vispa.Plugins.ConfigEditor.ConfigEditorBoxView.ConfigEditorBoxView._updateCounter, Vispa.Views.TreeView.TreeView._updatingFlag, Vispa.Views.TableView.TableView._updatingFlag, Vispa.Views.RootCanvasView.RootCanvasView._updatingFlag, Vispa.Views.PropertyView.PropertyView._updatingFlag, Vispa.Share.ObjectHolder.ObjectHolder.applyFilter(), Vispa.Gui.TextDialog.TextDialog.cancel, Vispa.Views.AbstractView.AbstractView.cancel(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.cancel(), Vispa.Main.TabController.TabController.cancel(), Vispa.Main.Application.Application.cancel(), ReducedTrackerTreeVariables.clear(), EopVariables.clear(), CastorCalibrationsSet.clear(), TkOffTreeVariables.clear(), TrackerTreeVariables.clear(), StringMap.clear(), AlignmentErrors.clear(), AlignmentErrorsExtended.clear(), Alignments.clear(), NumberOfDevices.clear(), CTPPSTrkDetector.clear(), CastorCalibrationWidthsSet.clear(), OOTPileupCorrectionColl.clear(), HLTTauDQMOfflineObjects.clear(), edm::reftobase::RefVectorHolderBase.clear(), HcalCalibrationsSet.clear(), HcalCalibrationWidthsSet.clear(), Overlayer.clear(), StorableDoubleMap< T >.clear(), Vispa.Plugins.EdmBrowser.EventContentView.EventContentView.clear(), EcalCondObjectContainer< T >.clear(), Vispa.Share.FindAlgorithm.FindAlgorithm.clear(), edm::BranchChildren.clear(), EcalContainer< DetId, T >.clear(), ecaldqm::MESetMulti.clear(), edm::reftobase::RefVectorHolder< REFV >.clear(), edm::reftobase::BaseVectorHolder< T >.clear(), CSCALCTDigi.clear(), HcalIndexLookup.clear(), HcalItemColl< Item >.clear(), CSCCLCTDigi.clear(), CSCCLCTPreTriggerDigi.clear(), helper::ClusterStorer.clear(), edm::reftobase::IndirectVectorHolder< T >.clear(), KDTreeLinkerAlgo< DATA >.clear(), ClusterCollectionFP420.clear(), RecoCollectionFP420.clear(), TrackCollectionFP420.clear(), DigiCollectionFP420.clear(), CSCCorrelatedLCTDigi.clear(), reco::PattRecoTree< ScaleType, Cluster >.clear(), ClhepEvaluator.clear(), OpticalAlignMeasurementInfo.clear(), SiPixelPerformanceSummary.clear(), CTPPSToFDetector.clear(), FWFromSliceSelector.clear(), SegmentToTrackAssociator.clear(), edm::reftobase::VectorHolder< T, REFV >.clear(), HBHEChannelInfo.clear(), pos::PixelROCStatus.clear(), edm::OrphanHandleBase.clear(), AlignmentParameterSelector.clear(), ME0TriggerDigi.clear(), ecaldqm::MESet.clear(), edm::ParentageRegistry.clear(), HcalItemArrayColl< Item, N >.clear(), HLTPerformanceInfo::Module.clear(), CSCTriggerContainer< T >.clear(), edm::RefToBaseVector< T >.clear(), edm::StreamedProduct.clear(), edm::ScheduleItems.clear(), DTBufferTree< Key, Content >.clear(), DrawIteration.clear(), KDTreeNodes< DATA >.clear(), cond::Iov_t.clear(), edm::ThinnedAssociationsHelper.clear(), OpticalAlignParam.clear(), edm::WorkerRegistry.clear(), SiStripQuality.clear(), Vispa.Views.TreeView.TreeView.clear(), edm::HandleBase.clear(), egHLT::OffEvt.clear(), edm::TrieFactory< T >.clear(), SiStripDelay.clear(), DDI::Store< N, I, K >.clear(), cond::Tag_t.clear(), TrackerDetToDTCELinkCablingMap.clear(), edm::Association< C >.clear(), DTTFFEDReader.clear(), SiPixelCalibDigiProducer.clear(), Vispa.Views.TableView.TableView.clear(), edm::DetSet< T >.clear(), edm::EventSetupImpl.clear(), edm::ProcessHistory.clear(), MuonResidualsFromTrack.clear(), FBaseSimEvent.clear(), DTuROSDigiToRaw.clear(), CTPPSRPAlignmentCorrectionsData.clear(), edm::PtrVectorBase.clear(), Vispa.Views.PropertyView.PropertyView.clear(), HLTPerformanceInfo::Path.clear(), l1t::IntervalManager< TimeType, PayloadType >.clear(), BXVector< T >.clear(), edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >.clear(), OpticalAlignInfo.clear(), HcalDTCHeader.clear(), DTCCBConfig.clear(), StudyHLT.clear(), DDXMLElement.clear(), CSCDCCExaminer.clear(), FQueue< T >.clear(), DTLVStatus.clear(), edm::Handle< GenericObject >.clear(), edm::BasicHandle.clear(), DTT0.clear(), edm::RefVectorBase< KEY >.clear(), DTTPGParameters.clear(), DTRangeT0.clear(), CastorCTDCHeader.clear(), Vispa.Plugins.EdmBrowser.EventContentDataAccessor.EventContentDataAccessor.clear(), FWGeometry.clear(), HcalDCCHeader.clear(), DTHVStatus.clear(), AlignmentParameterSelector::PXBDetIdRanges.clear(), edm::Handle< FWGenericObject >.clear(), edm::TrieNode< T >.clear(), DTReadOutMapping.clear(), reco::FlavorHistoryEvent.clear(), edm::OwnArray< T, MAX_SIZE, P >.clear(), AlignmentParameterSelector::PXFDetIdRanges.clear(), edm::AssociationMap< Tag >.clear(), edm::RefVector< C, T, F >.clear(), DTPerformance.clear(), DTTtrig.clear(), AlignmentParameterSelector::TIBDetIdRanges.clear(), DTStatusFlag.clear(), HLTPerformanceInfo.clear(), edm::OwnVector< T, P >.clear(), edm::ValueMap< T >.clear(), DTDeadFlag.clear(), AlignmentParameterSelector::TIDDetIdRanges.clear(), rpcamc13::AMCPayload.clear(), AlignmentParameterSelector::TOBDetIdRanges.clear(), DTMtime.clear(), pos::PixelFEDCard.clear(), math::Graph< N, E >.clear(), AlignmentParameterSelector::TECDetIdRanges.clear(), edm::Trie< T >.clear(), Json::Value.clear(), reco::HitPattern.clear(), BeautifulSoup.Tag.clear(), Vispa.Share.ObjectHolder.ObjectHolder.dataAccessor(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.dataAccessor(), Vispa.Share.ObjectHolder.ObjectHolder.dataObject(), Vispa.Share.ObjectHolder.ObjectHolder.dataObjects(), Vispa.Views.BoxDecayView.BoxDecayView.expandToDepth(), and str.

62  def updateContent(self):
63  """ Clear the TreeView and refill it.
64  """
65  #logging.debug(__name__ + ": updateContent")
66  self.cancel()
67  if self.dataAccessor() == None:
68  return False
69  self._updatingFlag+=1
70  self.clear()
71  if self.dataObject()==None:
72  self._updatingFlag-=1
73  return True
74  operationId = self._operationId
75  i = 0
76  for object in self.applyFilter(self.dataObjects()):
77  # Process application event loop in order to accept user input during time consuming drawing operation
78  self._updateCounter+=1
79  if self._updateCounter>=self.UPDATE_EVERY:
80  self._updateCounter=0
81  if not Application.NO_PROCESS_EVENTS:
82  QCoreApplication.instance().processEvents()
83  # Abort drawing if operationId out of date
84  if operationId != self._operationId:
85  break
86  self._createNode(object, self, str(i))
87  i += 1
88  if self._treeDepth>0:
89  self.expandToDepth(self._treeDepth-1)
90  self._updatingFlag -=1
91  return self._operationId==operationId
92 
def _createNode(self, object=None, itemParent=None, positionName="0")
Definition: TreeView.py:93
#define str(s)

Member Data Documentation

Vispa.Views.TreeView.TreeView._firstItem
private
Vispa.Views.TreeView.TreeView._itemDict
private
Vispa.Views.TreeView.TreeView._maxDepth
private

Definition at line 25 of file TreeView.py.

Referenced by Vispa.Views.TreeView.TreeView._createNode().

Vispa.Views.TreeView.TreeView._operationId
private
Vispa.Views.TreeView.TreeView._updateCounter
private

Definition at line 29 of file TreeView.py.

Referenced by Vispa.Views.TreeView.TreeView.updateContent().