CMS 3D CMS Logo

List of all members | Public Member Functions | Private Attributes
Vispa.Main.SplitterTab.SplitterTab Class Reference
Inheritance diagram for Vispa.Main.SplitterTab.SplitterTab:
Vispa.Main.AbstractTab.AbstractTab Vispa.Plugins.Browser.BrowserTab.BrowserTab Vispa.Plugins.ConfigEditor.ConfigEditorTab.ConfigEditorTab Vispa.Plugins.EdmBrowser.EdmBrowserTab.EdmBrowserTab

Public Member Functions

def __init__ (self, parent=None, topLevelPropertyView=False)
 
def closeEvent (self, event)
 
def createPropertyView (self)
 
def createToolBar (self, index=None)
 
def event (self, event)
 
def horizontalSplitter (self)
 
def horizontalSplitterMovedSlot (self, pos, index)
 
def propertyView (self)
 
def setController (self, controller)
 
def toolBar (self)
 
def verticalSplitter (self)
 
def verticalSplitterMovedSlot (self, pos, index)
 
- Public Member Functions inherited from Vispa.Main.AbstractTab.AbstractTab
def __init__ (self)
 
def controller (self)
 
def mainWindow (self)
 
def setController (self, controller)
 
def setMainWindow (self, main)
 
def setTabWidget (self, widget)
 
def tabWidget (self)
 

Private Attributes

 _horizontalSplitter
 
 _propertyView
 
 _toolBar
 
 _topLevelPropertyView
 
 _verticalSplitter
 

Detailed Description

A Tab with a QSplitter and a function to create the PropertyView.

The Tab is split vertically and within horizontally. QWidgets can be added
to verticalSplitter() and horizontalSplitter(). In the constructor
one can choose whether the PropertyView shall be on top level or inside
the horizontalSplitter().

Definition at line 10 of file SplitterTab.py.

Constructor & Destructor Documentation

def Vispa.Main.SplitterTab.SplitterTab.__init__ (   self,
  parent = None,
  topLevelPropertyView = False 
)

Definition at line 18 of file SplitterTab.py.

18  def __init__(self, parent=None, topLevelPropertyView=False):
19  logging.debug(__name__ + ": __init__")
20  self._topLevelPropertyView=topLevelPropertyView
21  AbstractTab.__init__(self)
22  if self._topLevelPropertyView:
23  QSplitter.__init__(self, Qt.Horizontal, parent)
24  self._verticalSplitter = QSplitter(Qt.Vertical, self)
25  else:
26  QSplitter.__init__(self, Qt.Vertical, parent)
27  self._verticalSplitter = self
28 
29  self._horizontalSplitter = QSplitter(Qt.Horizontal, self._verticalSplitter)
30 
31  self.connect(self._verticalSplitter, SIGNAL("splitterMoved(int, int)"), self.verticalSplitterMovedSlot)
32  self.connect(self._horizontalSplitter, SIGNAL("splitterMoved(int, int)"), self.horizontalSplitterMovedSlot)
33  if self._topLevelPropertyView:
34  self.connect(self, SIGNAL("splitterMoved(int, int)"), self.horizontalSplitterMovedSlot)
35  self._toolBar = None
36 
37  self._propertyView = None
38 
def verticalSplitterMovedSlot(self, pos, index)
Definition: SplitterTab.py:42
def __init__(self, parent=None, topLevelPropertyView=False)
Definition: SplitterTab.py:18
def horizontalSplitterMovedSlot(self, pos, index)
Definition: SplitterTab.py:50

Member Function Documentation

def Vispa.Main.SplitterTab.SplitterTab.closeEvent (   self,
  event 
)
Call close if tab is not embedded in TabWidget

Definition at line 87 of file SplitterTab.py.

References Vispa.Main.AbstractTab.AbstractTab._tabWidget, Vispa.Main.AbstractTab.AbstractTab.controller(), and Vispa.Main.AbstractTab.AbstractTab.mainWindow().

87  def closeEvent(self,event):
88  """ Call close if tab is not embedded in TabWidget
89  """
90  if not self._tabWidget and self.mainWindow().isTabWidget(self):
91  if not self.controller().close():
92  event.ignore()
93  else:
94  event.accept()
95  else:
96  event.accept()
97 
def Vispa.Main.SplitterTab.SplitterTab.createPropertyView (   self)
Creates PropertyView object, adds it to this tab and makes it available via propertyView().

Definition at line 73 of file SplitterTab.py.

References Vispa.Main.SplitterTab.SplitterTab._propertyView, Vispa.Main.SplitterTab.SplitterTab._topLevelPropertyView, and Vispa.Main.SplitterTab.SplitterTab.horizontalSplitter().

73  def createPropertyView(self):
74  """ Creates PropertyView object, adds it to this tab and makes it available via propertyView().
75  """
76  if self._topLevelPropertyView:
77  parent=self
78  else:
79  parent=self.horizontalSplitter()
80  self._propertyView = PropertyView(parent, "PropertyView")
81 
def Vispa.Main.SplitterTab.SplitterTab.createToolBar (   self,
  index = None 
)

Definition at line 55 of file SplitterTab.py.

Referenced by Vispa.Plugins.ConfigEditor.ConfigEditorTab.ConfigEditorTab.createEditor().

55  def createToolBar(self,index=None):
56  if index==None:
57  index = self.verticalSplitter().count()
58  self._toolBar = SplitterToolBar()
59  self.verticalSplitter().insertWidget(index,self._toolBar)
60  self.verticalSplitter().setCollapsible(index, False)
61  self._toolBar.setFixedHeight(20)
62  self._toolBar.show()
63 
def createToolBar(self, index=None)
Definition: SplitterTab.py:55
def Vispa.Main.SplitterTab.SplitterTab.event (   self,
  event 
)
Call tabChanged if window is activated.

Definition at line 98 of file SplitterTab.py.

References Vispa.Main.AbstractTab.AbstractTab._tabWidget.

Referenced by Types.EventID.cppID().

98  def event(self,event):
99  """ Call tabChanged if window is activated.
100  """
101  if not self._tabWidget:
102  if event.type()==QEvent.WindowActivate:
103  QCoreApplication.instance().tabChanged()
104  return QSplitter.event(self,event)
105 
106 
def Vispa.Main.SplitterTab.SplitterTab.horizontalSplitter (   self)
def Vispa.Main.SplitterTab.SplitterTab.horizontalSplitterMovedSlot (   self,
  pos,
  index 
)
Implement this function if you want to react on size changes invoked by the horizontal splitter.

Definition at line 50 of file SplitterTab.py.

50  def horizontalSplitterMovedSlot(self, pos, index):
51  """ Implement this function if you want to react on size changes invoked by the horizontal splitter.
52  """
53  pass
54 
def horizontalSplitterMovedSlot(self, pos, index)
Definition: SplitterTab.py:50
def Vispa.Main.SplitterTab.SplitterTab.propertyView (   self)
Returns PropertyView object. See createPropertyView().

Definition at line 82 of file SplitterTab.py.

References Vispa.Main.SplitterTab.SplitterTab._propertyView.

Referenced by Vispa.Views.PropertyView.FileProperty.labelDoubleClicked(), and Vispa.Views.PropertyView.Property.valueChanged().

82  def propertyView(self):
83  """ Returns PropertyView object. See createPropertyView().
84  """
85  return self._propertyView
86 
def Vispa.Main.SplitterTab.SplitterTab.setController (   self,
  controller 
)

Definition at line 67 of file SplitterTab.py.

References Vispa.Main.SplitterTab.SplitterTab._propertyView, 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< BeginOfJob >.connect(), sim_act::Signaler< G4Step >.connect(), sim_act::Signaler< EndOfEvent >.connect(), sim_act::Signaler< BeginOfRun >.connect(), sim_act::Signaler< BeginOfEvent >.connect(), sim_act::Signaler< BeginOfTrack >.connect(), sim_act::Signaler< DDDWorld >.connect(), sim_act::Signaler< EndOfRun >.connect(), sim_act::Signaler< EndOfTrack >.connect(), sim_act::Signaler< T >.connect(), ShallowTree::TypedBranchConnector< T >.connect(), edm::ServiceToken.connect(), edm::signalslot::Signal< void(StreamContext const &, TerminationOrigin)>.connect(), edm::signalslot::Signal< void(const std::string &, const edmplugin::PluginInfo &)>.connect(), edm::signalslot::Signal< void(StreamContext const &, ModuleCallingContext const &)>.connect(), Signal< void(BranchDescription const &)>.connect(), edm::signalslot::Signal< void(GlobalContext const &, TerminationOrigin)>.connect(), edm::signalslot::Signal< void()>.connect(), edm::signalslot::Signal< void(StreamContext const &, PathContext const &)>.connect(), edm::signalslot::Signal< void(GlobalContext const &)>.connect(), edm::signalslot::Signal< void(const boost::filesystem::path &)>.connect(), edm::signalslot::Signal< void(edm::BranchDescription const &)>.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(service::SystemBounds const &)>.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< T >.connect(), edm::signalslot::Signal< void(ModuleDescription const &)>.connect(), edm::signalslot::Signal< void(StreamContext const &)>.connect(), edm::signalslot::Signal< void(const std::string &, const std::string &)>.connect(), edm::signalslot::Signal< void(StreamID)>.connect(), edm::signalslot::Signal< void(const edmplugin::PluginFactoryBase *)>.connect(), edm::signalslot::Signal< void(PathsAndConsumesOfModulesBase const &, ProcessContext const &)>.connect(), o2o_db_manager.DbManager.connect(), PFCandConnector.connect(), confdbOfflineConverter.OfflineConverter.connect, L1TOMDSHelper.connect(), DDTOBRodAlgo.connect, GlobalTag.GlobalTag.connect(), edm::signalslot::ObsoleteSignal< void(ModuleDescription const &)>.connect(), edm::signalslot::ObsoleteSignal< void(LuminosityBlockID const &, Timestamp const &)>.connect(), edm::signalslot::ObsoleteSignal< void(EventID const &, Timestamp const &)>.connect(), edm::signalslot::ObsoleteSignal< void(Run const &, EventSetup const &)>.connect(), edm::signalslot::ObsoleteSignal< T >.connect(), edm::signalslot::ObsoleteSignal< void(LuminosityBlock const &, EventSetup const &)>.connect(), edm::signalslot::ObsoleteSignal< void(std::string 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(Event const &, EventSetup 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.Main.AbstractTab.AbstractTab.controller().

67  def setController(self, controller):
68  AbstractTab.setController(self, controller)
69  if self._propertyView:
70  self._propertyView.setReadOnly(not self.controller().isEditable())
71  self.connect(self._propertyView, SIGNAL('valueChanged'), self.controller().setModified)
72 
def setController(self, controller)
Definition: SplitterTab.py:67
def Vispa.Main.SplitterTab.SplitterTab.toolBar (   self)
def Vispa.Main.SplitterTab.SplitterTab.verticalSplitter (   self)
def Vispa.Main.SplitterTab.SplitterTab.verticalSplitterMovedSlot (   self,
  pos,
  index 
)
Implement this function if you want to react on size changes invoked by the vertical splitter.

Definition at line 42 of file SplitterTab.py.

42  def verticalSplitterMovedSlot(self, pos, index):
43  """ Implement this function if you want to react on size changes invoked by the vertical splitter.
44  """
45  pass
46 
def verticalSplitterMovedSlot(self, pos, index)
Definition: SplitterTab.py:42

Member Data Documentation

Vispa.Main.SplitterTab.SplitterTab._horizontalSplitter
private
Vispa.Main.SplitterTab.SplitterTab._propertyView
private
Vispa.Main.SplitterTab.SplitterTab._toolBar
private
Vispa.Main.SplitterTab.SplitterTab._topLevelPropertyView
private
Vispa.Main.SplitterTab.SplitterTab._verticalSplitter
private

Definition at line 24 of file SplitterTab.py.

Referenced by Vispa.Main.SplitterTab.SplitterTab.verticalSplitter().