CMS 3D CMS Logo

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

Public Member Functions

def __init__ (self, parent=None, name=None)
 
def addCategory (self, name)
 
def addProperty (self, bool=False)
 
def append (self, property)
 
def appendAddRow (self)
 
def cancel (self)
 
def clear (self)
 
def itemDoubleClickedSlot (self, item)
 
def lastRow (self)
 
def propertyWidgetFromProperty (property, categoryName=None)
 
def propertyWidgets (self)
 
def readOnly (self)
 
def removeProperty (self, bool=False)
 
def resizeEvent (self, event)
 
def sectionResized (self, index, old, new)
 
def setDataAccessor (self, accessor)
 
def setReadOnly (self, readOnly)
 
def setShowAddDeleteButton (self, show)
 
def showAddDeleteButton (self)
 
def updateContent (self)
 
def updatePropertyHeight (self, property)
 
def useRelativePaths (self, path)
 
def valueChanged (self, property)
 
- 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)
 

Public Attributes

 updateIni
 

Private Attributes

 _currentCategoryName
 
 _ignoreValueChangeFlag
 
 _operationId
 
 _readOnly
 
 _relativePath
 
 _showAddDeleteButtonFlag
 
 _updatingFlag
 

Detailed Description

Shows properties of an object in a QTableWidget using the DataAccessor.

The view can be used readonly ('setReadOnly') or for editing.
On editing the signals 'valueChanged', 'propertyDeleted', 'propertyAdded' are emitted.

Definition at line 45 of file PropertyView.py.

Constructor & Destructor Documentation

def Vispa.Views.PropertyView.PropertyView.__init__ (   self,
  parent = None,
  name = None 
)
Constructor 

Definition at line 54 of file PropertyView.py.

54  def __init__(self, parent=None, name=None):
55  """ Constructor """
56  #logging.debug(self.__class__.__name__ + ": __init__()")
57  AbstractView.__init__(self)
58  QTableWidget.__init__(self, parent)
59 
60  self._operationId = 0
62  self.updateIni = False
64  self._relativePath=None
65  self.setSortingEnabled(False)
66  self.verticalHeader().hide()
67  self.setSelectionMode(QTableWidget.NoSelection)
68  self.clear() # sets header
69 
70  self._readOnly = False
72 
73  self.connect(self.horizontalHeader(), SIGNAL("sectionResized(int,int,int)"), self.sectionResized)
74  self.connect(self, SIGNAL("itemDoubleClicked(QTableWidgetItem *)"), self.itemDoubleClickedSlot)
75 
def sectionResized(self, index, old, new)
def __init__(self, parent=None, name=None)
Definition: PropertyView.py:54

Member Function Documentation

def Vispa.Views.PropertyView.PropertyView.addCategory (   self,
  name 
)
Add a category row to the tabel which consists of two gray LabelItems.

Definition at line 140 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView.lastRow(), FWCaloRecHitDigitSetProxyBuilder.setItem(), FWGenParticleLegoProxyBuilder.setItem(), FWMuonRhoPhiProxyBuilder.setItem(), FWTrackingParticleProxyBuilder.setItem(), FWMuonProxyBuilder.setItem(), FWHGCRecHitProxyBuilder.setItem(), FWCandidateProxyBuilder.setItem(), FWCaloClusterProxyBuilder.setItem(), FWTrackProxyBuilder.setItem(), FWTrackProxyBuilderFullFramework.setItem(), FWVertexCandidateProxyBuilder.setItem(), FWVertexProxyBuilder.setItem(), FWElectronProxyBuilder.setItem(), FWDetailViewBase.setItem(), FWTauProxyBuilderBase.setItem(), FWJetProxyBuilder.setItem(), FWHeatmapProxyBuilderTemplate< CaloParticle >.setItem(), FWHeatmapProxyBuilderTemplate< T >.setItem(), FWHeatmapProxyBuilderTemplate< reco::CaloCluster >.setItem(), FWHeatmapProxyBuilderTemplate< reco::HGCalMultiCluster >.setItem(), and FWProxyBuilderBase.setItem().

140  def addCategory(self, name):
141  """ Add a category row to the tabel which consists of two gray LabelItems.
142  """
143  self.insertRow(self.lastRow()+1)
144  self.setItem(self.lastRow(), 0, LabelItem(name, Qt.lightGray))
145  self.setItem(self.lastRow(), 1, LabelItem("", Qt.lightGray))
146  self.verticalHeader().resizeSection(self.rowCount() - 1, Property.DEFAULT_HEIGHT)
147  return name
148 
def Vispa.Views.PropertyView.PropertyView.addProperty (   self,
  bool = False 
)
This function adds a property.

The DataAcessor is called to add the property.

Definition at line 338 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView._currentCategoryName, Vispa.Views.PropertyView.PropertyView._relativePath, reco::ClusterCompatibility.append(), ecaldqm::Dependency.append(), Vispa.Views.PropertyView.PropertyView.append(), psClasses.BuildTreeNodeList.append(), svgfig.SVG.append(), psClasses.queueNode.append(), BeautifulSoup.PageElement.append(), Json::Value.append(), Vispa.Share.ObjectHolder.ObjectHolder.dataAccessor(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.dataAccessor(), Vispa.Share.ObjectHolder.ObjectHolder.dataObject(), 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(RunIndex)>.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(StreamContext const &, PathContext const &, HLTPathStatus const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, TerminationOrigin)>.emit(), edm::signalslot::Signal< T >.emit(), edm::signalslot::Signal< void(std::string const &, bool)>.emit(), Signal< void(BranchDescription const &)>.emit(), edm::signalslot::Signal< void(service::SystemBounds const &)>.emit(), edm::signalslot::Signal< void(const std::string &, const edmplugin::PluginInfo &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &)>.emit(), edm::signalslot::Signal< void(StreamID)>.emit(), edm::signalslot::Signal< void(const std::string &, const std::string &)>.emit(), edm::signalslot::Signal< void(ModuleDescription const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &)>.emit(), edm::signalslot::Signal< void(edm::StreamContext const &, edm::ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(TerminationOrigin)>.emit(), edm::signalslot::Signal< void(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.emit(), edm::signalslot::Signal< void()>.emit(), Vispa.Views.PropertyView.PropertyView.propertyWidgetFromProperty(), and str.

Referenced by Vispa.Views.PropertyView.PropertyView.appendAddRow().

338  def addProperty(self, bool=False):
339  """ This function adds a property.
340 
341  The DataAcessor is called to add the property.
342  """
343  type=str(self.sender()._typelist.currentText())
344  name=str(self.sender()._lineedit.text().toAscii())
345  if type in ["String","File"]:
346  value=""
347  elif type in ["Integer","Double"]:
348  value=0
349  elif type in ["FileVector"]:
350  value=()
351  elif type in ["Boolean"]:
352  value=False
353  if name==None or name=="":
354  QCoreApplication.instance().infoMessage("Please specify name of property.")
355  return
356  if self.dataAccessor():
357  if self.dataAccessor().addProperty(self.dataObject(), name, value, type):
358  property=self.propertyWidgetFromProperty((type,name,value,None,False,True), self._currentCategoryName)
359  if property:
360  self.append(property)
361  if isinstance(property,(FileProperty,FileVectorProperty)):
362  property.useRelativePaths(self._relativePath)
363  self.sender()._lineedit.setText("")
364  property.setFocus()
365  self.emit(SIGNAL('propertyAdded'),property.name())
366 
def propertyWidgetFromProperty(property, categoryName=None)
#define str(s)
def Vispa.Views.PropertyView.PropertyView.append (   self,
  property 
)
Adds a property to the PropertyView and returns it.

Definition at line 112 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView._readOnly, Vispa.Views.PropertyView.PropertyView._showAddDeleteButtonFlag, ConnectionManager.connect(), conditionUploadTest.DB.connect(), RPCDBCom.connect(), l1t::DataManager.connect(), TestBase.connect(), HCALConfigDB.connect(), ReadBase.connect(), ShallowTree::BranchConnector.connect(), dqmservices::DQMMonitoringService.connect(), SimActivityRegistry.connect(), sim_act::Signaler< EndOfTrack >.connect(), sim_act::Signaler< G4Step >.connect(), sim_act::Signaler< EndOfEvent >.connect(), sim_act::Signaler< BeginOfRun >.connect(), sim_act::Signaler< BeginOfEvent >.connect(), sim_act::Signaler< DDDWorld >.connect(), sim_act::Signaler< BeginOfJob >.connect(), sim_act::Signaler< EndOfRun >.connect(), sim_act::Signaler< BeginOfTrack >.connect(), sim_act::Signaler< T >.connect(), ShallowTree::TypedBranchConnector< T >.connect(), edm::ServiceToken.connect(), edm::signalslot::Signal< void(LuminosityBlockIndex)>.connect(), edm::signalslot::Signal< void(service::SystemBounds const &)>.connect(), edm::signalslot::Signal< void(eventsetup::ComponentDescription const *, eventsetup::EventSetupRecordKey const &, eventsetup::DataKey const &)>.connect(), edm::signalslot::Signal< void(GlobalContext const &, ModuleCallingContext const &)>.connect(), edm::signalslot::Signal< void(RunIndex)>.connect(), edm::signalslot::Signal< void(std::string const &, bool)>.connect(), edm::signalslot::Signal< void()>.connect(), edm::signalslot::Signal< void(edm::StreamContext const &, edm::ModuleCallingContext const &)>.connect(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &, HLTPathStatus const &)>.connect(), edm::signalslot::Signal< void(TerminationOrigin)>.connect(), edm::signalslot::Signal< void(const std::string &, const edmplugin::PluginInfo &)>.connect(), edm::signalslot::Signal< void(StreamContext const &)>.connect(), edm::signalslot::Signal< void(const std::string &, const std::string &)>.connect(), edm::signalslot::Signal< void(const edmplugin::SharedLibrary &)>.connect(), edm::signalslot::Signal< void(StreamID)>.connect(), Signal< void(BranchDescription const &)>.connect(), edm::signalslot::Signal< T >.connect(), edm::signalslot::Signal< void(GlobalContext const &, TerminationOrigin)>.connect(), edm::signalslot::Signal< void(ModuleDescription const &)>.connect(), edm::signalslot::Signal< void(StreamContext const &, TerminationOrigin)>.connect(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)>.connect(), edm::signalslot::Signal< void(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.connect(), edm::signalslot::Signal< void(const edmplugin::PluginFactoryBase *)>.connect(), edm::signalslot::Signal< void(const boost::filesystem::path &)>.connect(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &)>.connect(), edm::signalslot::Signal< void(GlobalContext const &)>.connect(), edm::signalslot::Signal< void(edm::BranchDescription const &)>.connect(), o2o_db_manager.DbManager.connect(), PFCandConnector.connect(), L1TOMDSHelper.connect(), confdbOfflineConverter.OfflineConverter.connect, DDTOBRodAlgo.connect, GlobalTag.GlobalTag.connect(), edm::signalslot::ObsoleteSignal< void(Event const &, EventSetup const &)>.connect(), edm::signalslot::ObsoleteSignal< void(LuminosityBlock const &, EventSetup const &)>.connect(), edm::signalslot::ObsoleteSignal< void(LuminosityBlockID const &, Timestamp const &)>.connect(), edm::signalslot::ObsoleteSignal< void(RunID const &, Timestamp const &)>.connect(), edm::signalslot::ObsoleteSignal< void(std::string const &, HLTPathStatus const &)>.connect(), edm::signalslot::ObsoleteSignal< void(Run const &, EventSetup const &)>.connect(), edm::signalslot::ObsoleteSignal< T >.connect(), edm::signalslot::ObsoleteSignal< void(std::string const &)>.connect(), edm::signalslot::ObsoleteSignal< void(ModuleDescription const &)>.connect(), edm::signalslot::ObsoleteSignal< void(EventID const &, Timestamp const &)>.connect(), SiStripGainFromCalibTree.connect(), edm::serviceregistry::ServicesManager.connect(), conddb_version_mgr.conddb_tool.connect(), o2olib.O2OJobMgr.connect(), cond::service::PoolDBOutputService.connect(), l1t::OMDSReader.connect(), edm::ActivityRegistry.connect(), Vispa.Views.PropertyView.PropertyView.lastRow(), Vispa.Share.BasicDataAccessor.BasicDataAccessor.removeProperty(), Vispa.Views.PropertyView.PropertyView.removeProperty(), FWCaloRecHitDigitSetProxyBuilder.setItem(), FWGenParticleLegoProxyBuilder.setItem(), FWMuonRhoPhiProxyBuilder.setItem(), FWMuonProxyBuilder.setItem(), FWTrackingParticleProxyBuilder.setItem(), FWHGCRecHitProxyBuilder.setItem(), FWCandidateProxyBuilder.setItem(), FWCaloClusterProxyBuilder.setItem(), FWTrackProxyBuilder.setItem(), FWTrackProxyBuilderFullFramework.setItem(), FWVertexCandidateProxyBuilder.setItem(), FWVertexProxyBuilder.setItem(), FWElectronProxyBuilder.setItem(), FWDetailViewBase.setItem(), FWTauProxyBuilderBase.setItem(), FWJetProxyBuilder.setItem(), FWHeatmapProxyBuilderTemplate< CaloParticle >.setItem(), FWHeatmapProxyBuilderTemplate< reco::HGCalMultiCluster >.setItem(), FWHeatmapProxyBuilderTemplate< T >.setItem(), FWHeatmapProxyBuilderTemplate< reco::CaloCluster >.setItem(), FWProxyBuilderBase.setItem(), and Vispa.Views.PropertyView.PropertyView.updatePropertyHeight().

Referenced by diclist.diclist.add(), and Vispa.Views.PropertyView.PropertyView.addProperty().

112  def append(self, property):
113  """ Adds a property to the PropertyView and returns it.
114  """
115  property.setPropertyView(self)
116  if self._readOnly:
117  property.setReadOnly(True)
118  self.insertRow(self.lastRow()+1)
119  self.setItem(self.lastRow(), 0, LabelItem(property))
120  if not self._readOnly and self._showAddDeleteButtonFlag and property.deletable():
121  widget=ClosableProperty(property)
122  self.connect(widget.closeButton(), SIGNAL('clicked(bool)'), self.removeProperty)
123  self.setCellWidget(self.lastRow(), 1, widget)
124  else:
125  self.setCellWidget(self.lastRow(), 1, property)
126  self.updatePropertyHeight(property)
127  self.connect(property, SIGNAL('updatePropertyHeight'), self.updatePropertyHeight)
128  return property
129 
def updatePropertyHeight(self, property)
def removeProperty(self, bool=False)
def Vispa.Views.PropertyView.PropertyView.appendAddRow (   self)
Append a row with a field to add new properties.

Definition at line 200 of file PropertyView.py.

References Vispa.Share.BasicDataAccessor.BasicDataAccessor.addProperty(), Vispa.Views.PropertyView.PropertyView.addProperty(), ConnectionManager.connect(), RPCDBCom.connect(), conditionUploadTest.DB.connect(), l1t::DataManager.connect(), HCALConfigDB.connect(), TestBase.connect(), ReadBase.connect(), ShallowTree::BranchConnector.connect(), dqmservices::DQMMonitoringService.connect(), SimActivityRegistry.connect(), sim_act::Signaler< EndOfRun >.connect(), sim_act::Signaler< G4Step >.connect(), sim_act::Signaler< EndOfEvent >.connect(), sim_act::Signaler< BeginOfRun >.connect(), sim_act::Signaler< BeginOfTrack >.connect(), sim_act::Signaler< DDDWorld >.connect(), sim_act::Signaler< BeginOfJob >.connect(), sim_act::Signaler< EndOfTrack >.connect(), sim_act::Signaler< BeginOfEvent >.connect(), sim_act::Signaler< T >.connect(), ShallowTree::TypedBranchConnector< T >.connect(), edm::ServiceToken.connect(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)>.connect(), edm::signalslot::Signal< void(StreamContext const &)>.connect(), Signal< void(BranchDescription const &)>.connect(), edm::signalslot::Signal< void(GlobalContext const &, TerminationOrigin)>.connect(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &)>.connect(), edm::signalslot::Signal< void(edm::StreamContext const &, edm::ModuleCallingContext const &)>.connect(), edm::signalslot::Signal< void(GlobalContext const &)>.connect(), edm::signalslot::Signal< void(edm::BranchDescription const &)>.connect(), edm::signalslot::Signal< void(const boost::filesystem::path &)>.connect(), edm::signalslot::Signal< void(const edmplugin::SharedLibrary &)>.connect(), edm::signalslot::Signal< void(LuminosityBlockIndex)>.connect(), edm::signalslot::Signal< void(eventsetup::ComponentDescription const *, eventsetup::EventSetupRecordKey const &, eventsetup::DataKey const &)>.connect(), edm::signalslot::Signal< void(GlobalContext const &, ModuleCallingContext const &)>.connect(), edm::signalslot::Signal< void(RunIndex)>.connect(), edm::signalslot::Signal< void(std::string const &, bool)>.connect(), edm::signalslot::Signal< void()>.connect(), edm::signalslot::Signal< void(const std::string &, const std::string &)>.connect(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &, HLTPathStatus const &)>.connect(), edm::signalslot::Signal< void(TerminationOrigin)>.connect(), edm::signalslot::Signal< void(const std::string &, const edmplugin::PluginInfo &)>.connect(), edm::signalslot::Signal< T >.connect(), edm::signalslot::Signal< void(StreamContext const &, TerminationOrigin)>.connect(), edm::signalslot::Signal< void(service::SystemBounds const &)>.connect(), edm::signalslot::Signal< void(StreamID)>.connect(), edm::signalslot::Signal< void(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.connect(), edm::signalslot::Signal< void(const edmplugin::PluginFactoryBase *)>.connect(), edm::signalslot::Signal< void(ModuleDescription const &)>.connect(), o2o_db_manager.DbManager.connect(), PFCandConnector.connect(), confdbOfflineConverter.OfflineConverter.connect, L1TOMDSHelper.connect(), DDTOBRodAlgo.connect, GlobalTag.GlobalTag.connect(), edm::signalslot::ObsoleteSignal< void(LuminosityBlock const &, EventSetup const &)>.connect(), edm::signalslot::ObsoleteSignal< void(LuminosityBlockID const &, Timestamp const &)>.connect(), edm::signalslot::ObsoleteSignal< void(std::string const &, HLTPathStatus const &)>.connect(), edm::signalslot::ObsoleteSignal< void(RunID const &, Timestamp const &)>.connect(), edm::signalslot::ObsoleteSignal< void(EventID const &, Timestamp const &)>.connect(), edm::signalslot::ObsoleteSignal< T >.connect(), edm::signalslot::ObsoleteSignal< void(Event const &, EventSetup const &)>.connect(), edm::signalslot::ObsoleteSignal< void(Run const &, EventSetup const &)>.connect(), edm::signalslot::ObsoleteSignal< void(std::string const &)>.connect(), edm::signalslot::ObsoleteSignal< void(ModuleDescription const &)>.connect(), SiStripGainFromCalibTree.connect(), edm::serviceregistry::ServicesManager.connect(), conddb_version_mgr.conddb_tool.connect(), o2olib.O2OJobMgr.connect(), cond::service::PoolDBOutputService.connect(), l1t::OMDSReader.connect(), edm::ActivityRegistry.connect(), and Vispa.Views.PropertyView.PropertyView.lastRow().

200  def appendAddRow(self):
201  """ Append a row with a field to add new properties.
202  """
203  self.insertRow(self.lastRow()+1)
204  lineedit=QLineEdit()
205  lineedit.setFrame(False)
206  lineedit.setContentsMargins(0, 0, 0, 0)
207  self.setCellWidget(self.lastRow(), 0, lineedit)
208  widget=QWidget()
209  widget.setContentsMargins(0, 0, 0, 0)
210  widget.setLayout(QHBoxLayout())
211  widget.layout().setSpacing(0)
212  widget.layout().setContentsMargins(0, 0, 0, 0)
213  typelist=ComboBoxReturn()
214  types=["String","Boolean","Integer","Double","File","FileVector"]
215  for type in types:
216  typelist.addItem(type)
217  widget.layout().addWidget(typelist)
218  addButton=QToolButton()
219  addButton.setText("+")
220  widget.layout().addWidget(addButton)
221  self.setCellWidget(self.lastRow(), 1, widget)
222  self.verticalHeader().resizeSection(self.lastRow(), Property.DEFAULT_HEIGHT)
223  self.connect(addButton, SIGNAL('clicked(bool)'), self.addProperty)
224  self.connect(lineedit, SIGNAL('returnPressed()'), self.addProperty)
225  self.connect(typelist, SIGNAL('returnPressed()'), self.addProperty)
226  addButton._lineedit=lineedit
227  addButton._typelist=typelist
228  lineedit._lineedit=lineedit
229  lineedit._typelist=typelist
230  typelist._lineedit=lineedit
231  typelist._typelist=typelist
232 
def Vispa.Views.PropertyView.PropertyView.cancel (   self)
Stop all running operations.

Definition at line 76 of file PropertyView.py.

References Vispa.Views.BoxDecayView.BoxDecayView._operationId, Vispa.Views.LineDecayView.LineDecayView._operationId, and Vispa.Views.PropertyView.PropertyView._operationId.

76  def cancel(self):
77  """ Stop all running operations.
78  """
79  self._operationId += 1
80 
def Vispa.Views.PropertyView.PropertyView.clear (   self)
Clear the table and set the header label.

Definition at line 81 of file PropertyView.py.

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(), Vispa.Views.BoxDecayView.BoxDecayView.updateContent(), and Vispa.Views.PropertyView.PropertyView.updateContent().

81  def clear(self):
82  """ Clear the table and set the header label.
83  """
84  QTableWidget.clear(self)
85  self.setRowCount(0)
86  self.setColumnCount(2)
87  self.setHorizontalHeaderLabels(['Property', 'Value'])
88 
def Vispa.Views.PropertyView.PropertyView.itemDoubleClickedSlot (   self,
  item 
)
Slot for itemClicked() signal.

Calls items's property's doubleClicked().

Definition at line 367 of file PropertyView.py.

367  def itemDoubleClickedSlot(self, item):
368  """ Slot for itemClicked() signal.
369 
370  Calls items's property's doubleClicked().
371  """
372  #logging.debug(self.__class__.__name__ + ": itemDoubleClickedSlot()")
373  if item.property():
374  item.property().labelDoubleClicked()
375 
def Vispa.Views.PropertyView.PropertyView.lastRow (   self)
Return the last row holding a property.

The row with the add new property field is not counted.

Definition at line 130 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView._readOnly, Vispa.Views.PropertyView.PropertyView._showAddDeleteButtonFlag, and Vispa.Views.PropertyView.PropertyView._updatingFlag.

Referenced by Vispa.Views.PropertyView.PropertyView.addCategory(), Vispa.Views.PropertyView.PropertyView.append(), and Vispa.Views.PropertyView.PropertyView.appendAddRow().

130  def lastRow(self):
131  """ Return the last row holding a property.
132 
133  The row with the add new property field is not counted.
134  """
135  if not self._readOnly and self._showAddDeleteButtonFlag and not self._updatingFlag>0:
136  return self.rowCount() - 2
137  else:
138  return self.rowCount() - 1
139 
def Vispa.Views.PropertyView.PropertyView.propertyWidgetFromProperty (   property,
  categoryName = None 
)
Create a property widget from a property tuple.

This function is static in order to be used by other view, e.g. TableView.

Definition at line 267 of file PropertyView.py.

References str.

Referenced by Vispa.Views.PropertyView.PropertyView.addProperty().

267  def propertyWidgetFromProperty(property, categoryName=None):
268  """ Create a property widget from a property tuple.
269 
270  This function is static in order to be used by other view, e.g. TableView.
271  """
272  propertyWidget=None
273  if property[0] == "String":
274  propertyWidget=StringProperty(property[1], property[2], categoryName)
275  elif property[0] == "MultilineString":
276  propertyWidget=StringProperty(property[1], property[2], categoryName, True)
277  elif property[0] == "File":
278  propertyWidget=FileProperty(property[1], property[2], categoryName)
279  elif property[0] == "FileVector":
280  propertyWidget=FileVectorProperty(property[1], property[2], categoryName)
281  elif property[0] == "Boolean":
282  propertyWidget = BooleanProperty(property[1], property[2], categoryName)
283  elif property[0] == "Integer":
284  propertyWidget=IntegerProperty(property[1], property[2], categoryName)
285  elif property[0] == "Double":
286  propertyWidget=DoubleProperty(property[1], property[2], categoryName)
287  elif property[0] == "DropDown":
288  propertyWidget=DropDownProperty(property[1], property[2], property[6], categoryName)
289  else:
290  logging.error(__name__+": propertyWidgetFromProperty() - Unknown property type "+str(property[0]))
291  return None
292  if len(property) > 3 and property[3]:
293  propertyWidget.setUserInfo(property[3])
294  if len(property) > 4 and property[4]:
295  propertyWidget.setReadOnly(True)
296  if len(property) > 5 and property[5]:
297  propertyWidget.setDeletable(True)
298  return propertyWidget
def propertyWidgetFromProperty(property, categoryName=None)
#define str(s)
def Vispa.Views.PropertyView.PropertyView.propertyWidgets (   self)
Return all property widgets in the right column.

Closable as well as normal properties are returned.

Definition at line 89 of file PropertyView.py.

Referenced by Vispa.Views.PropertyView.PropertyView.removeProperty(), Vispa.Views.PropertyView.PropertyView.setReadOnly(), and Vispa.Views.PropertyView.PropertyView.updatePropertyHeight().

89  def propertyWidgets(self):
90  """ Return all property widgets in the right column.
91 
92  Closable as well as normal properties are returned.
93  """
94  widgets=[]
95  for i in range(self.rowCount()):
96  widget=self.cellWidget(i,1)
97  if isinstance(widget,Property):
98  widgets+=[(widget,i)]
99  elif hasattr(widget,"closableProperty"):
100  widgets+=[(widget.closableProperty(),i)]
101  return widgets
102 
def Vispa.Views.PropertyView.PropertyView.readOnly (   self)
def Vispa.Views.PropertyView.PropertyView.removeProperty (   self,
  bool = False 
)
This function deletes a property.

The DataAcessor is called to handle the property remove.

Definition at line 324 of file PropertyView.py.

References Vispa.Share.ObjectHolder.ObjectHolder.dataAccessor(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.dataAccessor(), Vispa.Share.ObjectHolder.ObjectHolder.dataObject(), 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(StreamID)>.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(StreamContext const &, TerminationOrigin)>.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(edm::BranchDescription const &)>.emit(), Signal< void(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(edm::StreamContext const &, edm::ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(const edmplugin::PluginFactoryBase *)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(const edmplugin::SharedLibrary &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(ModuleDescription const &)>.emit(), edm::signalslot::Signal< void(const boost::filesystem::path &)>.emit(), edm::signalslot::Signal< void(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.emit(), edm::signalslot::Signal< T >.emit(), class-composition.parent, and Vispa.Views.PropertyView.PropertyView.propertyWidgets().

Referenced by Vispa.Views.PropertyView.PropertyView.append().

324  def removeProperty(self, bool=False):
325  """ This function deletes a property.
326 
327  The DataAcessor is called to handle the property remove.
328  """
329  property=self.sender().parent()._property
330  name=property.name()
331  if self.dataAccessor():
332  if self.dataAccessor().removeProperty(self.dataObject(), property.name()):
333  for p,i in self.propertyWidgets():
334  if p==property:
335  self.removeRow(i)
336  self.emit(SIGNAL('propertyDeleted'),name)
337 
def removeProperty(self, bool=False)
def Vispa.Views.PropertyView.PropertyView.resizeEvent (   self,
  event 
)
Resize columns when table size is changed.

Definition at line 169 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView.updateIni, TmModule.width, Random_struct.width, OpenBounds.width(), SimpleDiskBounds.width(), FourPointPlaneBounds.width(), ApeEstimator_cff.width, RectangularPlaneBounds.width(), DiskSectorBounds.width(), GeneralNSurfaceDelimitedBounds.width(), funct::GammaZInterference.width, SiStripClusterInfo.width(), Range< OAxisX_t >.width(), SimpleCylinderBounds.width(), PhysicsTools::Calibration::Range< AxisX_t >.width(), PhysicsTools::Calibration::Range< Axis_t >.width(), PhysicsTools::Calibration::Range< float >.width(), PhysicsTools::Calibration::Range< AxisY_t >.width(), Range< OAxis_t >.width(), Range< OAxisY_t >.width(), funct::BreitWigner.width, reco::helper::CastorJetIDHelper.width(), DDTIDAxialCableAlgo.width, Bounds.width(), TrapezoidalPlaneBounds.width(), DDTECAxialCableAlgo.width, reco::CastorJetID.width, AlignableSurface.width(), DDI::Division.width(), FWCheckedTextTableCellRenderer.width(), FWColumnLabelCellRenderer.width(), function::ZMuStandaloneFunction.width, function::ZMuMuFunction.width, btag::SimpleMatrix< T >.width, function::ZMuMuScaledFunction.width, function::ZMuTrackFunction.width, btag::SimpleMatrix< Delta >.width, function::ZMuStandaloneScaledFunction.width, function::ZMuTrackScaledFunction.width, SimpleConeBounds.width(), FWCollectionSummaryModelCellRenderer.width(), function::ZMuTrackScaledNormalBack.width, presentation.PageLayout.width, FWFramedTextTableCellRenderer.width(), FWTextTableCellRenderer.width(), FWTableCellRendererBase.width(), ProcNormalize::Map.width, reco::CastorCluster.width(), DaqFakeReader.width, reco::CastorEgamma.width(), edm::OStreamColumn.width(), reco::CastorJet.width(), ProcLikelihood::SplinePDF.width, FWTextTreeCellRenderer.width(), SiStripMonitorCluster::ClusterProperties.width, FWGeometryTableManagerBase::ColorBoxRenderer.width(), DDDivision.width(), python.rootplot.utilities.Hist.width, TkAlMap.TkAlMap.width, dqmTnP::VoigtianPlusExponentialFitter.width, svgfig.Plot.width, svgfig.Frame.width, Vispa.Gui.VispaWidget.VispaWidget.width(), plotting.PlotTextBox.width(), svgfig.Dots.width, and Vispa.Main.Application.Application.writeIni().

169  def resizeEvent(self, event):
170  """ Resize columns when table size is changed.
171  """
172  if event != None:
173  QTableWidget.resizeEvent(self, event)
174  space = self.width() - 4
175  if self.verticalScrollBar().isVisible():
176  space -= self.verticalScrollBar().width()
177  space -= self.columnWidth(0)
178  self.setColumnWidth(1, space)
179  if self.updateIni:
180  self.writeIni()
181 
def Vispa.Views.PropertyView.PropertyView.sectionResized (   self,
  index,
  old,
  new 
)

Definition at line 182 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView.updateIni, TmModule.width, Random_struct.width, OpenBounds.width(), SimpleDiskBounds.width(), FourPointPlaneBounds.width(), ApeEstimator_cff.width, RectangularPlaneBounds.width(), DiskSectorBounds.width(), GeneralNSurfaceDelimitedBounds.width(), funct::GammaZInterference.width, SiStripClusterInfo.width(), Range< OAxisX_t >.width(), SimpleCylinderBounds.width(), PhysicsTools::Calibration::Range< AxisX_t >.width(), PhysicsTools::Calibration::Range< Axis_t >.width(), PhysicsTools::Calibration::Range< float >.width(), PhysicsTools::Calibration::Range< AxisY_t >.width(), Range< OAxis_t >.width(), Range< OAxisY_t >.width(), funct::BreitWigner.width, reco::helper::CastorJetIDHelper.width(), DDTIDAxialCableAlgo.width, Bounds.width(), TrapezoidalPlaneBounds.width(), DDTECAxialCableAlgo.width, reco::CastorJetID.width, AlignableSurface.width(), DDI::Division.width(), FWCheckedTextTableCellRenderer.width(), FWColumnLabelCellRenderer.width(), function::ZMuStandaloneFunction.width, function::ZMuMuFunction.width, btag::SimpleMatrix< T >.width, function::ZMuMuScaledFunction.width, function::ZMuTrackFunction.width, btag::SimpleMatrix< Delta >.width, function::ZMuStandaloneScaledFunction.width, function::ZMuTrackScaledFunction.width, SimpleConeBounds.width(), FWCollectionSummaryModelCellRenderer.width(), function::ZMuTrackScaledNormalBack.width, presentation.PageLayout.width, FWFramedTextTableCellRenderer.width(), FWTextTableCellRenderer.width(), FWTableCellRendererBase.width(), ProcNormalize::Map.width, reco::CastorCluster.width(), DaqFakeReader.width, reco::CastorEgamma.width(), edm::OStreamColumn.width(), reco::CastorJet.width(), ProcLikelihood::SplinePDF.width, FWTextTreeCellRenderer.width(), SiStripMonitorCluster::ClusterProperties.width, FWGeometryTableManagerBase::ColorBoxRenderer.width(), DDDivision.width(), python.rootplot.utilities.Hist.width, TkAlMap.TkAlMap.width, dqmTnP::VoigtianPlusExponentialFitter.width, svgfig.Plot.width, svgfig.Frame.width, Vispa.Gui.VispaWidget.VispaWidget.width(), plotting.PlotTextBox.width(), svgfig.Dots.width, and Vispa.Main.Application.Application.writeIni().

182  def sectionResized(self,index,old,new):
183  space = self.width() - 4
184  if self.verticalScrollBar().isVisible():
185  space -= self.verticalScrollBar().width()
186  space -= self.columnWidth(0)
187  self.setColumnWidth(1, space)
188  if self.updateIni:
189  self.writeIni()
190 
def sectionResized(self, index, old, new)
def Vispa.Views.PropertyView.PropertyView.setDataAccessor (   self,
  accessor 
)
Sets the DataAccessor from which the object properties are read.

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

Definition at line 191 of file PropertyView.py.

191  def setDataAccessor(self, accessor):
192  """ Sets the DataAccessor from which the object properties are read.
193 
194  You need to call updateContent() in order to make the changes visible.
195  """
196  if not isinstance(accessor, BasicDataAccessor):
197  raise TypeError(__name__ + " requires data accessor of type BasicDataAccessor.")
198  AbstractView.setDataAccessor(self, accessor)
199 
def Vispa.Views.PropertyView.PropertyView.setReadOnly (   self,
  readOnly 
)
Sets all properties in the PropertyView to read-only.

After calling this function all properties that are added are set to read-only as well.

Definition at line 149 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView._readOnly, and Vispa.Views.PropertyView.PropertyView.propertyWidgets().

149  def setReadOnly(self, readOnly):
150  """ Sets all properties in the PropertyView to read-only.
151 
152  After calling this function all properties that are added are set to read-only as well.
153  """
154  #logging.debug('PropertyView: setReadOnly()')
155  self._readOnly = readOnly
156  for property,i in self.propertyWidgets():
157  if property:
158  property.setReadOnly(self._readOnly)
159 
def Vispa.Views.PropertyView.PropertyView.setShowAddDeleteButton (   self,
  show 
)
def Vispa.Views.PropertyView.PropertyView.showAddDeleteButton (   self)
def Vispa.Views.PropertyView.PropertyView.updateContent (   self)
Fill the properties of an object in the PropertyView using the DataAccessor.

Definition at line 233 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView._updatingFlag, 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(), 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(), DrawIteration.clear(), DTBufferTree< Key, Content >.clear(), KDTreeNodes< DATA >.clear(), cond::Iov_t.clear(), edm::ThinnedAssociationsHelper.clear(), edm::WorkerRegistry.clear(), OpticalAlignParam.clear(), edm::HandleBase.clear(), SiStripQuality.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(), edm::DetSet< T >.clear(), edm::ProcessHistory.clear(), edm::EventSetupImpl.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(), edm::Handle< GenericObject >.clear(), DTLVStatus.clear(), DTT0.clear(), edm::BasicHandle.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(), edm::OwnArray< T, MAX_SIZE, P >.clear(), reco::FlavorHistoryEvent.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(), and Vispa.Share.ObjectHolder.ObjectHolder.dataObject().

233  def updateContent(self):
234  """ Fill the properties of an object in the PropertyView using the DataAccessor.
235  """
236  #logging.debug('PropertyView: updateContent()')
237  self.cancel()
238  if self.dataAccessor() == None:
239  return False
240  self._updatingFlag+=1
241  self.clear()
242  if self.dataObject()==None:
243  self._updatingFlag-=1
244  return True
245  self._ignoreValueChangeFlag = True # prevent infinite loop
246  operationId = self._operationId
247  # do not use threads here since this may lead to crashes
248  for property in self.dataAccessor().properties(self.dataObject()):
249  if property[0] == "Category":
250  self._currentCategoryName = self.addCategory(property[1])
251  else:
252  propertyWidget=PropertyView.propertyWidgetFromProperty(property, self._currentCategoryName)
253  if propertyWidget:
254  self.append(propertyWidget)
255  if isinstance(propertyWidget,(FileProperty,FileVectorProperty)):
256  propertyWidget.useRelativePaths(self._relativePath)
257  if isinstance(propertyWidget,QCheckBox):
258  propertyWidget.setChecked(property[2],False) # strange, QCheckBox forgets its state on append in Qt 4.4.4
259  if not self._readOnly and self._showAddDeleteButtonFlag:
260  self.appendAddRow()
261  self.resizeEvent(None)
262  self._ignoreValueChangeFlag = False
263  self._updatingFlag-=1
264  return self._operationId==operationId
265 
def Vispa.Views.PropertyView.PropertyView.updatePropertyHeight (   self,
  property 
)
Update the height of the column that holds a certain property.

Definition at line 103 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView.propertyWidgets().

Referenced by Vispa.Views.PropertyView.PropertyView.append().

103  def updatePropertyHeight(self,property):
104  """ Update the height of the column that holds a certain property.
105  """
106  #logging.debug(self.__class__.__name__ + ": updatePropertyHeight()")
107  for widget,i in self.propertyWidgets():
108  if widget==property:
109  self.verticalHeader().resizeSection(i, property.properyHeight())
110  return
111 
def updatePropertyHeight(self, property)
def Vispa.Views.PropertyView.PropertyView.useRelativePaths (   self,
  path 
)
def Vispa.Views.PropertyView.PropertyView.valueChanged (   self,
  property 
)
This function is called when a property a changed.

The DataAcessor is called to handle the property change.

Definition at line 301 of file PropertyView.py.

References Vispa.Views.PropertyView.PropertyView._ignoreValueChangeFlag, Vispa.Share.ObjectHolder.ObjectHolder.dataAccessor(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController.dataAccessor(), Vispa.Share.ObjectHolder.ObjectHolder.dataObject(), edm::signalslot::Signal< void(StreamContext const &, TerminationOrigin)>.emit(), edm::signalslot::Signal< void(edm::BranchDescription const &)>.emit(), Signal< void(BranchDescription const &)>.emit(), edm::signalslot::Signal< void(const edmplugin::SharedLibrary &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext 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(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(RunIndex)>.emit(), edm::signalslot::Signal< void(const edmplugin::PluginFactoryBase *)>.emit(), edm::signalslot::Signal< void(std::string const &, bool)>.emit(), edm::signalslot::Signal< void()>.emit(), edm::signalslot::Signal< T >.emit(), edm::signalslot::Signal< void(const boost::filesystem::path &)>.emit(), edm::signalslot::Signal< void(edm::StreamContext const &, edm::ModuleCallingContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &, HLTPathStatus const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &, TerminationOrigin)>.emit(), edm::signalslot::Signal< void(TerminationOrigin)>.emit(), edm::signalslot::Signal< void(const std::string &, const edmplugin::PluginInfo &)>.emit(), edm::signalslot::Signal< void(ModuleDescription const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &)>.emit(), edm::signalslot::Signal< void(StreamContext const &)>.emit(), edm::signalslot::Signal< void(service::SystemBounds const &)>.emit(), edm::signalslot::Signal< void(GlobalContext const &)>.emit(), edm::signalslot::Signal< void(const std::string &, const std::string &)>.emit(), edm::signalslot::Signal< void(StreamID)>.emit(), edmIntegrityCheck.PublishToFileSystem.parent, edm::ThinnedAssociationBranches.parent(), confdb.HLTProcess.parent, FSimVertex.parent(), reco::PattRecoNode< Cluster >.parent(), DDI::Division.parent(), math::GraphWalker< ReferenceCountingPointer, ReferenceCountingPointer >.parent(), math::GraphWalker< DDLogicalPart, DDPosData * >.parent(), GraphWalker< N, E >.parent(), math::GraphWalker< N, E >.parent(), edm::ModuleCallingContext.parent(), DDLSAX2FileHandler.parent(), OpticalObject.parent(), emtf::Node.parent, edm::DocFormatHelper.parent(), FWPSetTableManager::PSetData.parent, EmDQMReco::FourVectorMonitorElements.parent, DDFilteredView.parent(), cms::DDFilteredView.parent(), DDExpandedView.parent(), DDDivision.parent(), options.HLTProcessOptions.parent, dqmservices::TriggerSelector::TreeElement.parent(), DDXMLElement.parent(), BeautifulSoup.PageElement.parent, globcontrol.parent, Vispa.Views.LineDecayView.DecayObject.parent(), edm.print(), and str.

Referenced by Vispa.Views.PropertyView.BooleanProperty.__init__(), Vispa.Views.PropertyView.StringProperty.buttonClicked(), Vispa.Views.PropertyView.TextEditWithButtonProperty.createLineEdit(), Vispa.Views.PropertyView.TextEditWithButtonProperty.createTextEdit(), Vispa.Views.PropertyView.BooleanProperty.setChecked(), Vispa.Views.PropertyView.BooleanProperty.setReadOnly(), Vispa.Views.PropertyView.DropDownProperty.setReadOnly(), Vispa.Views.PropertyView.TextEditWithButtonProperty.setReadOnly(), and Vispa.Views.PropertyView.IntegerProperty.setValue().

301  def valueChanged(self, property):
302  """ This function is called when a property a changed.
303 
304  The DataAcessor is called to handle the property change.
305  """
306  if self.dataAccessor() and not self._ignoreValueChangeFlag:
307  bad=False
308  newvalue = property.value()
309  oldValue = self.dataAccessor().propertyValue(self.dataObject(), property.name())
310  if newvalue != oldValue:
311  if isinstance(newvalue,ValueError):
312  result=str(newvalue)
313  else:
314  result=self.dataAccessor().setProperty(self.dataObject(), property.name(), newvalue, property.categoryName())
315  if result==True:
316  self.emit(SIGNAL('valueChanged'),property.name(), newvalue, oldValue, property.categoryName())
317  else:
318  print("valueChanged() result = ", result, type(result))
319  property.setToolTip(result)
320  QMessageBox.critical(self.parent(), 'Error', result)
321  bad=True
322  property.setHighlighted(bad)
323 
S & print(S &os, JobReport::InputFile const &f)
Definition: JobReport.cc:66
#define str(s)

Member Data Documentation

Vispa.Views.PropertyView.PropertyView._currentCategoryName
private

Definition at line 63 of file PropertyView.py.

Referenced by Vispa.Views.PropertyView.PropertyView.addProperty().

Vispa.Views.PropertyView.PropertyView._ignoreValueChangeFlag
private

Definition at line 245 of file PropertyView.py.

Referenced by Vispa.Views.PropertyView.PropertyView.valueChanged().

Vispa.Views.PropertyView.PropertyView._operationId
private
Vispa.Views.PropertyView.PropertyView._readOnly
private
Vispa.Views.PropertyView.PropertyView._relativePath
private
Vispa.Views.PropertyView.PropertyView._showAddDeleteButtonFlag
private
Vispa.Views.PropertyView.PropertyView._updatingFlag
private
Vispa.Views.PropertyView.PropertyView.updateIni