CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
Vispa.Views.TableView.TableView Class Reference
Inheritance diagram for Vispa.Views.TableView.TableView:
Vispa.Views.AbstractView.AbstractView Vispa.Share.ObjectHolder.ObjectHolder Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView

Public Member Functions

def __init__ (self, parent=None)
 
def cancel (self)
 
def clear (self)
 
def isBusy (self)
 
def itemSelectionChanged (self)
 
def mousePressEvent (self, event)
 
def restoreSelection (self)
 
def select (self, object)
 
def selection (self)
 
def setColumns (self, columns)
 
def setDataAccessor (self, accessor)
 
def setSorting (self, sort)
 
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 _createItem (self, object, properties)
 
def _selectedRow (self)
 

Private Attributes

 _autosizeColumns
 
 _columns
 
 _filteredColumns
 
 _firstColumn
 
 _operationId
 
 _selection
 
 _sortingFlag
 
 _updateCounter
 
 _updatingFlag
 

Detailed Description

The TableView widget fills itself using a DataAccessor.

Definition at line 17 of file TableView.py.

Constructor & Destructor Documentation

def Vispa.Views.TableView.TableView.__init__ (   self,
  parent = None 
)

Definition at line 24 of file TableView.py.

24  def __init__(self, parent=None):
25  logging.debug(__name__ + ": __init__")
26  AbstractView.__init__(self)
27  QTableWidget.__init__(self, parent)
28 
29  self._operationId = 0
30  self._selection = (None,None)
31  self._updatingFlag = 0
32  self._columns=[]
33  self._sortingFlag=False
35  self._firstColumn=0
37  self._autosizeColumns=True
38 
39  self.setSortingEnabled(False)
40  self.verticalHeader().hide()
41  self.setSelectionMode(QTableWidget.SingleSelection)
42  self.setSelectionBehavior(QAbstractItemView.SelectRows)
43  self.setSizePolicy(QSizePolicy(QSizePolicy.Preferred, QSizePolicy.Expanding))
44 
45  self.connect(self, SIGNAL("itemSelectionChanged()"), self.itemSelectionChanged)
46 
def __init__(self, parent=None)
Definition: TableView.py:24

Member Function Documentation

def Vispa.Views.TableView.TableView._createItem (   self,
  object,
  properties 
)
private
Create item for an object.

Definition at line 142 of file TableView.py.

References Vispa.Views.TableView.TableView._columns, Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView._firstColumn, Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView._firstColumn, Vispa.Views.TableView.TableView._firstColumn, FWCaloRecHitDigitSetProxyBuilder.setItem(), FWGenParticleLegoProxyBuilder.setItem(), FWMuonRhoPhiProxyBuilder.setItem(), FWTrackingParticleProxyBuilder.setItem(), FWMuonProxyBuilder.setItem(), FWHGCRecHitProxyBuilder.setItem(), FWCaloClusterProxyBuilder.setItem(), FWCandidateProxyBuilder.setItem(), FWTrackProxyBuilder.setItem(), FWTrackProxyBuilderFullFramework.setItem(), FWVertexCandidateProxyBuilder.setItem(), FWVertexProxyBuilder.setItem(), FWElectronProxyBuilder.setItem(), FWDetailViewBase.setItem(), FWTauProxyBuilderBase.setItem(), FWJetProxyBuilder.setItem(), FWHeatmapProxyBuilderTemplate< CaloParticle >.setItem(), FWHeatmapProxyBuilderTemplate< reco::CaloCluster >.setItem(), FWHeatmapProxyBuilderTemplate< T >.setItem(), FWHeatmapProxyBuilderTemplate< reco::HGCalMultiCluster >.setItem(), FWProxyBuilderBase.setItem(), and str.

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

142  def _createItem(self, object, properties):
143  """ Create item for an object.
144  """
145  row=self.rowCount()
146  self.setRowCount(self.rowCount()+1)
147  height=Property.DEFAULT_HEIGHT
148  firstColumnDone=False
149  for property in properties:
150  if property!=None and property[1] in self._columns:
151  i=self._columns.index(property[1])
152  if property[0] in ["MultilineString","Double"]:
153  propertyWidget=PropertyView.propertyWidgetFromProperty(property)
154  if propertyWidget.properyHeight()>height:
155  height=propertyWidget.properyHeight()
156  text=str(propertyWidget.value())
157  else:
158  text=str(property[2])
159  item=TableWidgetItem(text)
160  item.setFlags(Qt.ItemIsEnabled|Qt.ItemIsSelectable)
161  item.object=object
162  self.setItem(row,i,item)
163  if i==self._firstColumn:
164  firstColumnDone=True
165  if not firstColumnDone:
166  item=QTableWidgetItem("")
167  item.setFlags(Qt.ItemIsEnabled|Qt.ItemIsSelectable)
168  item.object=object
169  self.setItem(row,self._firstColumn,item)
170  self.verticalHeader().resizeSection(row,height)
171 
def _createItem(self, object, properties)
Definition: TableView.py:142
#define str(s)
def Vispa.Views.TableView.TableView._selectedRow (   self)
private
Return the row containing the selected object.
First search for object by name. If it is not found use position.

Definition at line 200 of file TableView.py.

References Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView._firstColumn, Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView._firstColumn, Vispa.Views.TableView.TableView._firstColumn, Vispa.Views.TableView.TableView._selection, CSCChamberIndex.item(), CSCDDUMap.item(), CSCCrateMap.item(), CSCChamberMap.item(), CSCPedestals.item(), CSCDBGasGainCorrection.item(), CSCGains.item(), CSCNoiseMatrix.item(), CSCDBGains.item(), CSCDBChipSpeedCorrection.item(), CSCDBNoiseMatrix.item(), CSCcrosstalk.item(), CSCDBPedestals.item(), CSCDBCrosstalk.item(), CSCChamberTimeCorrections.item(), EcalContainer< EBDetId, EcalPulseCovariance >.item(), EcalContainer< EBDetId, EcalPulseShape >.item(), EcalContainer< EBDetId, Item >.item(), EcalContainer< EEDetId, EcalPulseCovariance >.item(), EcalContainer< EcalTrigTowerDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalMappingElement >.item(), EcalContainer< EEDetId, EcalTPGCrystalStatusCode >.item(), EcalContainer< EBDetId, EcalMappingElement >.item(), EcalContainer< EcalTrigTowerDetId, EcalDAQStatusCode >.item(), EcalContainer< EEDetId, EcalChannelStatusCode >.item(), EcalContainer< EcalTrigTowerDetId, Item >.item(), EcalContainer< EBDetId, EcalTPGLinearizationConstant >.item(), EcalContainer< EcalScDetId, EcalDQMStatusCode >.item(), EcalContainer< EBDetId, EcalPedestal >.item(), EcalContainer< EBDetId, EcalXtalGroupId >.item(), EcalContainer< EEDetId, EcalPulseSymmCovariance >.item(), EcalContainer< EEDetId, EcalDQMStatusCode >.item(), EcalContainer< DetId, T >.item(), EcalContainer< EBDetId, EcalLaserAPDPNRatios::EcalLaserAPDPNpair >.item(), EcalContainer< EEDetId, EcalXtalGroupId >.item(), EcalContainer< EEDetId, EcalTPGPedestal >.item(), EcalContainer< EEDetId, Item >.item(), EcalContainer< EcalScDetId, EcalDAQStatusCode >.item(), EcalContainer< EEDetId, float >.item(), EcalContainer< EEDetId, EcalPedestal >.item(), EcalContainer< EBDetId, EcalMGPAGainRatio >.item(), EcalContainer< DetIdT, T >.item(), EcalContainer< EEDetId, EcalLaserAPDPNRatios::EcalLaserAPDPNpair >.item(), EcalContainer< EcalScDetId, Item >.item(), EcalContainer< ESDetId, Item >.item(), EcalContainer< EBDetId, float >.item(), EcalContainer< EEDetId, EcalMGPAGainRatio >.item(), EcalContainer< EBDetId, EcalDQMStatusCode >.item(), EcalContainer< EEDetId, EcalTimeDependentCorrections::Values >.item(), EcalContainer< EEDetId, EcalPulseShape >.item(), EcalContainer< EcalTrigTowerDetId, EcalDQMStatusCode >.item(), EcalContainer< EBDetId, EcalTPGCrystalStatusCode >.item(), EcalContainer< EcalScDetId, EcalChannelStatusCode >.item(), EcalContainer< EBDetId, EcalTPGPedestal >.item(), EcalContainer< EBDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalTPGLinearizationConstant >.item(), EcalContainer< EBDetId, EcalPulseSymmCovariance >.item(), EcalContainer< EBDetId, EcalTimeDependentCorrections::Values >.item(), Items.item(), FWInteractionList.item(), FWSecondarySelectableSelector.item(), FWModelId.item(), FWDetailViewBase.item(), DQMHistoryTrendsConfig.item, FWProxyBuilderBase.item(), FWTableView.item(), DetSetVector< T >.item(), edmNew::DetSetVector< T >.item(), DetSetVector< SiPixelCluster >.item(), const_iterator.item(), DetSetVector< ClusterType >.item(), DetSetVector< SiStripCluster >.item(), and RecoTauValidation_cfi.text.

Referenced by Vispa.Views.TableView.TableView.restoreSelection(), and Vispa.Views.TableView.TableView.selection().

200  def _selectedRow(self):
201  """ Return the row containing the selected object.
202  First search for object by name. If it is not found use position.
203  """
204  for i in range(self.rowCount()):
205  if self.item(i,self._firstColumn).text() == self._selection[1]:
206  return i
207  if self._selection[0]<self.rowCount():
208  return self._selection[0]
209  if self.rowCount()>0:
210  return 0
211  else:
212  return None
213 
def Vispa.Views.TableView.TableView.cancel (   self)
def Vispa.Views.TableView.TableView.clear (   self)
Deletes all items in the TableView

Definition at line 69 of file TableView.py.

References Vispa.Views.TableView.TableView._columns.

Referenced by Vispa.Views.WidgetView.WidgetView.closeEvent(), Vispa.Views.BoxDecayView.BoxDecayView.closeEvent(), Vispa.Views.LineDecayView.LineDecayView.setDataObjects(), Vispa.Views.WidgetView.WidgetView.setDataObjects(), Vispa.Views.TreeView.TreeView.updateContent(), Vispa.Views.TableView.TableView.updateContent(), and Vispa.Views.BoxDecayView.BoxDecayView.updateContent().

69  def clear(self):
70  """ Deletes all items in the TableView
71  """
72  #logging.debug(__name__ + ": clear")
73  QTableWidget.clear(self)
74  self.setRowCount(0)
75  self.setSortingEnabled(False)
76  self._columns=[]
77 
def Vispa.Views.TableView.TableView.isBusy (   self)
def Vispa.Views.TableView.TableView.itemSelectionChanged (   self)
Emits signal selected that the TabController can connect to.

Definition at line 172 of file TableView.py.

References Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView._firstColumn, Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView._firstColumn, Vispa.Views.TableView.TableView._firstColumn, Vispa.Views.TableView.TableView._selection, Vispa.Views.TableView.TableView._updatingFlag, Vispa.Views.RootCanvasView.RootCanvasView._updatingFlag, Vispa.Views.PropertyView.PropertyView._updatingFlag, Query< VALIDITY, SNAPSHOT_TIME >.currentRow(), Query< MAX_SINCE >.currentRow(), Query< HASH >.currentRow(), Query< VALIDITY, DESCRIPTION, RELEASE, SNAPSHOT_TIME >.currentRow(), Query< OBJECT_TYPE >.currentRow(), Query< DATA, STREAMER_INFO, OBJECT_TYPE >.currentRow(), cond::persistency::Query< Types >.currentRow(), Query< RECORD, LABEL, TAG_NAME >.currentRow(), Query< START_TIME, END_TIME >.currentRow(), Query< MAX_RUN_NUMBER >.currentRow(), Query< TIME_TYPE, OBJECT_TYPE, SYNCHRONIZATION, END_OF_VALIDITY, DESCRIPTION, LAST_VALIDATED_TIME >.currentRow(), Query< MIN_RUN_NUMBER >.currentRow(), Query< MIN_START_TIME >.currentRow(), Query< DESCRIPTION, INSERTION_TIME, MODIFICATION_TIME >.currentRow(), cond::persistency::Query< Types... >.currentRow(), Query< SINCE_GROUP >.currentRow(), Query< NAME >.currentRow(), Query< SINCE, PAYLOAD_HASH >.currentRow(), Query< SEQUENCE_SIZE >.currentRow(), edm::signalslot::Signal< void(service::SystemBounds const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &, HLTPathStatus const &)>.emit(), edm::signalslot::Signal< void(RunIndex)>.emit(), edm::signalslot::Signal< void(const edmplugin::SharedLibrary &)>.emit(), edm::signalslot::Signal< T >.emit(), edm::signalslot::Signal< void(ModuleDescription const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, TerminationOrigin)>.emit(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, TerminationOrigin)>.emit(), edm::signalslot::Signal< void(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.emit(), edm::signalslot::Signal< void(const edmplugin::PluginFactoryBase *)>.emit(), edm::signalslot::Signal< void(const boost::filesystem::path &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &)>.emit(), edm::signalslot::Signal< void(edm::BranchDescription const &)>.emit(), edm::signalslot::Signal< void(LuminosityBlockIndex)>.emit(), edm::signalslot::Signal< void(eventsetup::ComponentDescription const *, eventsetup::EventSetupRecordKey const &, eventsetup::DataKey const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(std::string const &, bool)>.emit(), edm::signalslot::Signal< void()>.emit(), edm::signalslot::Signal< void(edm::StreamContext const &, edm::ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(TerminationOrigin)>.emit(), edm::signalslot::Signal< void(const std::string &, const edmplugin::PluginInfo &)>.emit(), edm::signalslot::Signal< void(StreamContext const &)>.emit(), edm::signalslot::Signal< void(const std::string &, const std::string &)>.emit(), edm::signalslot::Signal< void(StreamID)>.emit(), Signal< void(BranchDescription const &)>.emit(), CSCDDUMap.item(), CSCChamberIndex.item(), CSCCrateMap.item(), CSCChamberMap.item(), CSCPedestals.item(), CSCDBGasGainCorrection.item(), CSCGains.item(), CSCNoiseMatrix.item(), CSCDBGains.item(), CSCDBChipSpeedCorrection.item(), CSCDBNoiseMatrix.item(), CSCcrosstalk.item(), CSCDBPedestals.item(), CSCDBCrosstalk.item(), CSCChamberTimeCorrections.item(), EcalContainer< EBDetId, EcalTimeDependentCorrections::Values >.item(), EcalContainer< EEDetId, EcalPedestal >.item(), EcalContainer< ESDetId, Item >.item(), EcalContainer< EBDetId, EcalMappingElement >.item(), EcalContainer< EcalTrigTowerDetId, EcalDQMStatusCode >.item(), EcalContainer< EEDetId, EcalPulseSymmCovariance >.item(), EcalContainer< EEDetId, EcalXtalGroupId >.item(), EcalContainer< EEDetId, EcalDQMStatusCode >.item(), EcalContainer< EBDetId, EcalPulseSymmCovariance >.item(), EcalContainer< EBDetId, EcalXtalGroupId >.item(), EcalContainer< EEDetId, Item >.item(), EcalContainer< EEDetId, EcalLaserAPDPNRatios::EcalLaserAPDPNpair >.item(), Items.item(), EcalContainer< DetIdT, T >.item(), EcalContainer< EBDetId, EcalMGPAGainRatio >.item(), EcalContainer< EcalTrigTowerDetId, Item >.item(), EcalContainer< EBDetId, EcalTPGPedestal >.item(), EcalContainer< EcalScDetId, EcalDAQStatusCode >.item(), EcalContainer< DetId, T >.item(), EcalContainer< EBDetId, EcalTPGCrystalStatusCode >.item(), EcalContainer< EBDetId, EcalLaserAPDPNRatios::EcalLaserAPDPNpair >.item(), EcalContainer< EEDetId, EcalTPGLinearizationConstant >.item(), EcalContainer< EcalScDetId, Item >.item(), EcalContainer< EcalScDetId, EcalDQMStatusCode >.item(), EcalContainer< EEDetId, EcalTPGPedestal >.item(), EcalContainer< EcalTrigTowerDetId, EcalDAQStatusCode >.item(), EcalContainer< EEDetId, EcalMGPAGainRatio >.item(), EcalContainer< EBDetId, EcalPulseShape >.item(), EcalContainer< EcalTrigTowerDetId, EcalChannelStatusCode >.item(), EcalContainer< EBDetId, float >.item(), EcalContainer< EcalScDetId, EcalChannelStatusCode >.item(), EcalContainer< EBDetId, Item >.item(), EcalContainer< EBDetId, EcalPedestal >.item(), EcalContainer< EBDetId, EcalDQMStatusCode >.item(), EcalContainer< EEDetId, EcalPulseShape >.item(), EcalContainer< EEDetId, float >.item(), EcalContainer< EBDetId, EcalTPGLinearizationConstant >.item(), EcalContainer< EEDetId, EcalPulseCovariance >.item(), EcalContainer< EBDetId, EcalPulseCovariance >.item(), EcalContainer< EBDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalTimeDependentCorrections::Values >.item(), EcalContainer< EEDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalTPGCrystalStatusCode >.item(), EcalContainer< EEDetId, EcalMappingElement >.item(), FWInteractionList.item(), FWModelId.item(), FWSecondarySelectableSelector.item(), FWDetailViewBase.item(), DQMHistoryTrendsConfig.item, FWProxyBuilderBase.item(), FWTableView.item(), edmNew::DetSetVector< T >.item(), DetSetVector< SiPixelCluster >.item(), DetSetVector< ClusterType >.item(), const_iterator.item(), DetSetVector< SiStripCluster >.item(), DetSetVector< T >.item(), and RecoTauValidation_cfi.text.

173  """ Emits signal selected that the TabController can connect to.
174  """
175  logging.debug(__name__ + ": itemSelectionChanged")
176  if not self._updatingFlag:
177  self._selection = (self.currentRow(),self.item(self.currentRow(),self._firstColumn).text())
178  if self.item(self.currentRow(),self._firstColumn)!=None:
179  self.emit(SIGNAL("selected"), self.item(self.currentRow(),self._firstColumn).object)
180  else:
181  self.emit(SIGNAL("selected"), None)
182 
def Vispa.Views.TableView.TableView.mousePressEvent (   self,
  event 
)

Definition at line 239 of file TableView.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().

239  def mousePressEvent(self,event):
240  QTableWidget.mousePressEvent(self,event)
241  if event.button()==Qt.RightButton:
242  self.emit(SIGNAL("mouseRightPressed"), event.globalPos())
243 
def mousePressEvent(self, event)
Definition: TableView.py:239
def Vispa.Views.TableView.TableView.restoreSelection (   self)
Restore selection.

Definition at line 214 of file TableView.py.

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

214  def restoreSelection(self):
215  """ Restore selection.
216  """
217  logging.debug(__name__ + ": restoreSelection")
218  select=self._selectedRow()
219  if select != None:
220  self._updatingFlag +=1
221  self.setCurrentCell(select,0)
222  self._updatingFlag -=1
223 
def Vispa.Views.TableView.TableView.select (   self,
  object 
)
Mark an object in the TableView as selected.
Remember position an name of object in order to restore the selection.

Definition at line 183 of file TableView.py.

References Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView._firstColumn, Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView._firstColumn, Vispa.Views.TableView.TableView._firstColumn, Vispa.Views.TableView.TableView._selection, Vispa.Views.TableView.TableView._updatingFlag, Vispa.Views.RootCanvasView.RootCanvasView._updatingFlag, Vispa.Views.PropertyView.PropertyView._updatingFlag, CSCChamberIndex.item(), CSCDDUMap.item(), CSCCrateMap.item(), CSCChamberMap.item(), CSCPedestals.item(), CSCDBGasGainCorrection.item(), CSCGains.item(), CSCNoiseMatrix.item(), CSCDBGains.item(), CSCDBChipSpeedCorrection.item(), CSCDBNoiseMatrix.item(), CSCcrosstalk.item(), CSCDBPedestals.item(), CSCDBCrosstalk.item(), CSCChamberTimeCorrections.item(), EcalContainer< EBDetId, EcalPulseShape >.item(), EcalContainer< EBDetId, EcalPulseCovariance >.item(), EcalContainer< EBDetId, EcalTPGPedestal >.item(), EcalContainer< EcalTrigTowerDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalMappingElement >.item(), EcalContainer< EEDetId, EcalTPGCrystalStatusCode >.item(), Items.item(), EcalContainer< EcalTrigTowerDetId, EcalDAQStatusCode >.item(), EcalContainer< EEDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalPulseCovariance >.item(), EcalContainer< EBDetId, EcalMappingElement >.item(), EcalContainer< EcalScDetId, EcalDQMStatusCode >.item(), EcalContainer< EBDetId, EcalTPGLinearizationConstant >.item(), EcalContainer< EBDetId, EcalPedestal >.item(), EcalContainer< EEDetId, EcalPulseSymmCovariance >.item(), EcalContainer< EEDetId, EcalDQMStatusCode >.item(), EcalContainer< EBDetId, EcalLaserAPDPNRatios::EcalLaserAPDPNpair >.item(), EcalContainer< EEDetId, EcalPedestal >.item(), EcalContainer< DetId, T >.item(), EcalContainer< EEDetId, EcalXtalGroupId >.item(), EcalContainer< EEDetId, EcalTPGPedestal >.item(), EcalContainer< EEDetId, Item >.item(), EcalContainer< EBDetId, Item >.item(), EcalContainer< EcalTrigTowerDetId, Item >.item(), EcalContainer< EEDetId, float >.item(), EcalContainer< EBDetId, EcalMGPAGainRatio >.item(), EcalContainer< EEDetId, EcalLaserAPDPNRatios::EcalLaserAPDPNpair >.item(), EcalContainer< EcalScDetId, Item >.item(), EcalContainer< ESDetId, Item >.item(), EcalContainer< EBDetId, float >.item(), EcalContainer< EEDetId, EcalMGPAGainRatio >.item(), EcalContainer< EBDetId, EcalDQMStatusCode >.item(), EcalContainer< EEDetId, EcalTimeDependentCorrections::Values >.item(), EcalContainer< EEDetId, EcalPulseShape >.item(), EcalContainer< EcalTrigTowerDetId, EcalDQMStatusCode >.item(), EcalContainer< EBDetId, EcalXtalGroupId >.item(), EcalContainer< EBDetId, EcalTPGCrystalStatusCode >.item(), EcalContainer< EcalScDetId, EcalDAQStatusCode >.item(), EcalContainer< EcalScDetId, EcalChannelStatusCode >.item(), EcalContainer< EBDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalTPGLinearizationConstant >.item(), EcalContainer< EBDetId, EcalPulseSymmCovariance >.item(), EcalContainer< EBDetId, EcalTimeDependentCorrections::Values >.item(), EcalContainer< DetIdT, T >.item(), FWInteractionList.item(), FWSecondarySelectableSelector.item(), FWModelId.item(), FWDetailViewBase.item(), DQMHistoryTrendsConfig.item, FWProxyBuilderBase.item(), FWTableView.item(), DetSetVector< SiPixelCluster >.item(), edmNew::DetSetVector< T >.item(), const_iterator.item(), DetSetVector< SiStripCluster >.item(), DetSetVector< T >.item(), and DetSetVector< ClusterType >.item().

183  def select(self, object):
184  """ Mark an object in the TableView as selected.
185  Remember position an name of object in order to restore the selection.
186  """
187  logging.debug(__name__ + ": select")
188  items = []
189  for i in range(self.rowCount()):
190  if self.item(i,self._firstColumn).object == object:
191  items += [(i,self.item(i,self._firstColumn))]
192  if len(items) > 0:
193  index = items[0][0]
194  item = items[0][1]
195  self._selection = (index,item.text())
196  self._updatingFlag +=1
197  self.setCurrentItem(item)
198  self._updatingFlag -=1
199 
def select(self, object)
Definition: TableView.py:183
def Vispa.Views.TableView.TableView.selection (   self)
Return currently selected object.

If selection unknown return first object.

Definition at line 224 of file TableView.py.

References Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView._firstColumn, Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView._firstColumn, Vispa.Views.TableView.TableView._firstColumn, Vispa.Views.TableView.TableView._selectedRow(), CSCChamberIndex.item(), CSCDDUMap.item(), CSCChamberMap.item(), CSCCrateMap.item(), CSCPedestals.item(), CSCNoiseMatrix.item(), CSCDBGasGainCorrection.item(), CSCGains.item(), CSCDBChipSpeedCorrection.item(), CSCDBGains.item(), CSCDBNoiseMatrix.item(), CSCcrosstalk.item(), CSCDBPedestals.item(), CSCDBCrosstalk.item(), CSCChamberTimeCorrections.item(), EcalContainer< EEDetId, EcalMGPAGainRatio >.item(), EcalContainer< EBDetId, EcalTimeDependentCorrections::Values >.item(), EcalContainer< EBDetId, EcalPulseShape >.item(), EcalContainer< EEDetId, EcalMappingElement >.item(), EcalContainer< EEDetId, EcalTPGCrystalStatusCode >.item(), EcalContainer< EEDetId, EcalTimeDependentCorrections::Values >.item(), EcalContainer< EcalTrigTowerDetId, EcalDAQStatusCode >.item(), EcalContainer< EEDetId, EcalChannelStatusCode >.item(), EcalContainer< EcalScDetId, Item >.item(), EcalContainer< EBDetId, EcalTPGPedestal >.item(), EcalContainer< EBDetId, EcalMappingElement >.item(), EcalContainer< EBDetId, EcalTPGCrystalStatusCode >.item(), EcalContainer< EEDetId, EcalPulseCovariance >.item(), EcalContainer< DetIdT, T >.item(), EcalContainer< EBDetId, EcalTPGLinearizationConstant >.item(), EcalContainer< EBDetId, EcalMGPAGainRatio >.item(), EcalContainer< EBDetId, EcalPedestal >.item(), EcalContainer< EBDetId, EcalLaserAPDPNRatios::EcalLaserAPDPNpair >.item(), Items.item(), EcalContainer< EEDetId, EcalPulseSymmCovariance >.item(), EcalContainer< EEDetId, EcalXtalGroupId >.item(), EcalContainer< DetId, T >.item(), EcalContainer< EEDetId, EcalTPGPedestal >.item(), EcalContainer< EEDetId, Item >.item(), EcalContainer< EEDetId, float >.item(), EcalContainer< EEDetId, EcalPedestal >.item(), EcalContainer< EEDetId, EcalDQMStatusCode >.item(), EcalContainer< ESDetId, Item >.item(), EcalContainer< EBDetId, EcalPulseCovariance >.item(), EcalContainer< EBDetId, EcalPulseSymmCovariance >.item(), EcalContainer< EcalTrigTowerDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalTPGLinearizationConstant >.item(), EcalContainer< EEDetId, EcalPulseShape >.item(), EcalContainer< EcalTrigTowerDetId, EcalDQMStatusCode >.item(), EcalContainer< EBDetId, EcalChannelStatusCode >.item(), EcalContainer< EEDetId, EcalLaserAPDPNRatios::EcalLaserAPDPNpair >.item(), EcalContainer< EBDetId, EcalXtalGroupId >.item(), EcalContainer< EBDetId, Item >.item(), EcalContainer< EcalScDetId, EcalDAQStatusCode >.item(), EcalContainer< EcalScDetId, EcalDQMStatusCode >.item(), EcalContainer< EcalTrigTowerDetId, Item >.item(), EcalContainer< EcalScDetId, EcalChannelStatusCode >.item(), EcalContainer< EBDetId, EcalDQMStatusCode >.item(), EcalContainer< EBDetId, float >.item(), FWInteractionList.item(), FWSecondarySelectableSelector.item(), FWModelId.item(), FWDetailViewBase.item(), DQMHistoryTrendsConfig.item, FWProxyBuilderBase.item(), FWTableView.item(), edmNew::DetSetVector< T >.item(), DetSetVector< T >.item(), DetSetVector< SiPixelCluster >.item(), const_iterator.item(), DetSetVector< SiStripCluster >.item(), and DetSetVector< ClusterType >.item().

Referenced by trackingPlots.Iteration.modules().

224  def selection(self):
225  """ Return currently selected object.
226 
227  If selection unknown return first object.
228  """
229  #logging.debug(__name__ + ": selection")
230  select=self._selectedRow()
231  if select != None:
232  return self.item(select,self._firstColumn).object
233  else:
234  return None
235 
def Vispa.Views.TableView.TableView.setColumns (   self,
  columns 
)
Set a list of columns that shall be shown.

Definition at line 50 of file TableView.py.

References Vispa.Views.TableView.TableView._filteredColumns.

Referenced by Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView.__init__(), and Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView.__init__().

50  def setColumns(self,columns):
51  """ Set a list of columns that shall be shown.
52  """
53  self._filteredColumns=columns
54 
def setColumns(self, columns)
Definition: TableView.py:50
def Vispa.Views.TableView.TableView.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 55 of file TableView.py.

55  def setDataAccessor(self, accessor):
56  """ Sets the DataAccessor from which the nodes are created.
57 
58  You need to call updateContent() in order to make the changes visible.
59  """
60  if not isinstance(accessor, BasicDataAccessor):
61  raise TypeError(__name__ + " requires data accessor of type BasicDataAccessor.")
62  AbstractView.setDataAccessor(self, accessor)
63 
def setDataAccessor(self, accessor)
Definition: TableView.py:55
def Vispa.Views.TableView.TableView.setSorting (   self,
  sort 
)
def Vispa.Views.TableView.TableView.updateContent (   self)
Clear the TableView and refill it.

Definition at line 78 of file TableView.py.

References Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView._autosizeColumns, Vispa.Views.TableView.TableView._autosizeColumns, Vispa.Views.TableView.TableView._columns, Vispa.Plugins.ConfigEditor.CodeTableView.CodeTableView._createItem(), Vispa.Views.TableView.TableView._createItem(), Vispa.Views.TableView.TableView._filteredColumns, 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.BranchTableView.BranchTableView._sortingFlag, Vispa.Views.TableView.TableView._sortingFlag, Vispa.Views.TableView.TableView._updateCounter, Vispa.Views.BoxDecayView.BoxDecayView._updateCounter, Vispa.Plugins.ConfigEditor.ConfigEditorBoxView.ConfigEditorBoxView._updateCounter, Vispa.Views.TableView.TableView._updatingFlag, Vispa.Views.RootCanvasView.RootCanvasView._updatingFlag, Vispa.Views.PropertyView.PropertyView._updatingFlag, Vispa.Plugins.EdmBrowser.BranchTableView.BranchTableView.allDataObjectChildren(), Vispa.Share.ObjectHolder.ObjectHolder.allDataObjectChildren(), 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(), edm::reftobase::RefVectorHolderBase.clear(), OOTPileupCorrectionColl.clear(), HLTTauDQMOfflineObjects.clear(), HcalCalibrationsSet.clear(), Overlayer.clear(), HcalCalibrationWidthsSet.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(), cond::Iov_t.clear(), KDTreeNodes< DATA >.clear(), edm::ThinnedAssociationsHelper.clear(), OpticalAlignParam.clear(), edm::WorkerRegistry.clear(), SiStripQuality.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(), DTCCBConfig.clear(), HcalDTCHeader.clear(), StudyHLT.clear(), DDXMLElement.clear(), CSCDCCExaminer.clear(), FQueue< T >.clear(), edm::Handle< GenericObject >.clear(), DTLVStatus.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(), AlignmentParameterSelector::PXBDetIdRanges.clear(), DTHVStatus.clear(), edm::Handle< FWGenericObject >.clear(), edm::TrieNode< T >.clear(), DTReadOutMapping.clear(), edm::OwnArray< T, MAX_SIZE, P >.clear(), reco::FlavorHistoryEvent.clear(), AlignmentParameterSelector::PXFDetIdRanges.clear(), edm::AssociationMap< Tag >.clear(), edm::RefVector< C, T, F >.clear(), DTTtrig.clear(), DTPerformance.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(), and Vispa.Share.ObjectHolder.ObjectHolder.dataObject().

78  def updateContent(self):
79  """ Clear the TableView and refill it.
80  """
81  logging.debug(__name__ + ": updateContent")
82  self.cancel()
83  if self.dataAccessor() == None:
84  return False
85  self._updatingFlag+=1
86  self.clear()
87  if self.dataObject()==None:
88  self._updatingFlag-=1
89  return True
90  operationId = self._operationId
91  objects=self.allDataObjectChildren()
92  properties=[]
93  for object in objects:
94  thread = ThreadChain(self.dataAccessor().properties, object)
95  while thread.isRunning():
96  if not Application.NO_PROCESS_EVENTS:
97  QCoreApplication.instance().processEvents()
98  if operationId != self._operationId:
99  self._updatingFlag-=1
100  return False
101  properties+=[thread.returnValue()]
102  if self._filteredColumns!=[]:
103  self._columns=self._filteredColumns
104  else:
105  self._columns=[]
106  ranking={}
107  for ps in properties:
108  for property in ps:
109  if not property[1] in ranking.keys():
110  ranking[property[1]]=1
111  if property[0]!="Category":
112  self._columns+=[property[1]]
113  elif property[1]=="Label":
114  ranking[property[1]]+=100000
115  elif property[1]=="Name":
116  ranking[property[1]]+=10000
117  else:
118  ranking[property[1]]+=1
119  self._columns.sort(lambda x,y: cmp(-ranking[x],-ranking[y]))
120  self.setColumnCount(len(self._columns))
121  self.setHorizontalHeaderLabels(self._columns)
122  i=0
123  for object in objects:
124  # Process application event loop in order to accept user input during time consuming drawing operation
125  self._updateCounter+=1
126  if self._updateCounter>=self.UPDATE_EVERY:
127  self._updateCounter=0
128  if not Application.NO_PROCESS_EVENTS:
129  QCoreApplication.instance().processEvents()
130  # Abort drawing if operationId out of date
131  if operationId != self._operationId:
132  break
133  self._createItem(object,properties[i])
134  i+=1
135  if self._autosizeColumns:
136  for i in range(len(self._columns)):
137  self.resizeColumnToContents(i)
138  self.setSortingEnabled(self._sortingFlag)
139  self._updatingFlag-=1
140  return self._operationId==operationId
141 
def allDataObjectChildren(self, objects=None)
def _createItem(self, object, properties)
Definition: TableView.py:142

Member Data Documentation

Vispa.Views.TableView.TableView._autosizeColumns
private

Definition at line 37 of file TableView.py.

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

Vispa.Views.TableView.TableView._columns
private
Vispa.Views.TableView.TableView._filteredColumns
private
Vispa.Views.TableView.TableView._sortingFlag
private
Vispa.Views.TableView.TableView._updateCounter
private