CMS 3D CMS Logo

List of all members | Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
FWGeometryTableViewBase Class Reference

#include <FWGeometryTableViewBase.h>

Inheritance diagram for FWGeometryTableViewBase:
FWViewBase FWParameterSetterEditorBase FWConfigurableParameterizable FWParameterizable FWConfigurable FWGeometryTableView FWOverlapTableView

Classes

class  FWViewCombo
 

Public Member Functions

void addTo (FWConfiguration &) const override
 
void cdNode (int)
 
virtual void cdTop ()
 
virtual void cdUp ()
 
virtual void cellClicked (Int_t iRow, Int_t iColumn, Int_t iButton, Int_t iKeyMod, Int_t iGlobalX, Int_t iGlobalY)
 
void checkExpandLevel ()
 
virtual void chosenItem (int)
 
 FWGeometryTableViewBase (TEveWindowSlot *, FWViewType::EType, FWColorManager *)
 
bool getEnableHighlight ()
 
long getLeafTransparencyFactor () const
 
FWEveDigitSetScalableMarkergetMarker ()
 
long getMinLeafTransparency () const
 
long getMinParentTransparency () const
 
long getParentTransparencyFactor () const
 
virtual FWGeometryTableManagerBasegetTableManager ()
 
int getTopNodeIdx () const
 
void nodeColorChangeRequested (Color_t)
 
void populate3DViewsFromConfig ()
 
virtual void refreshTable3D ()
 
void reloadColors ()
 
void saveImageTo (const std::string &iName) const override
 
void selectView (int)
 
void setBackgroundColor ()
 
virtual void setPath (int, std::string &)
 
void transparencyChanged ()
 
 ~FWGeometryTableViewBase () override
 
- Public Member Functions inherited from FWViewBase
virtual FWViewContextMenuHandlerBasecontextMenuHandler () const
 
void destroy ()
 
 FWViewBase (FWViewType::EType, unsigned int iVersion=1)
 
void promptForSaveImageTo (TGFrame *) const
 
FWViewType::EType typeId () const
 
const std::string & typeName () const
 
- Public Member Functions inherited from FWConfigurableParameterizable
 FWConfigurableParameterizable (unsigned int iVersion=1)
 
void setFrom (const FWConfiguration &) override
 
unsigned int version () const
 
 ~FWConfigurableParameterizable () override
 
- Public Member Functions inherited from FWParameterizable
void add (FWParameterBase *)
 
const_iterator begin () const
 
const_iterator end () const
 
 FWParameterizable ()
 
virtual ~FWParameterizable ()
 
- Public Member Functions inherited from FWConfigurable
 FWConfigurable ()
 
virtual ~FWConfigurable ()
 
- Public Member Functions inherited from FWParameterSetterEditorBase
 FWParameterSetterEditorBase ()
 
virtual void updateEditor ()
 
virtual ~FWParameterSetterEditorBase ()
 

Protected Member Functions

void populateController (ViewerParameterGUI &) const override
 
void postConst ()
 
void setTopNodePathFromConfig (const FWConfiguration &iFrom)
 
- Protected Member Functions inherited from FWViewBase
 ~FWViewBase () override
 

Protected Attributes

FWLongParameter m_autoExpand
 
FWColorManagerm_colorManager
 
FWColorPopupm_colorPopup
 
FWBoolParameter m_enableHighlight
 
bool m_enableRedraw
 
TEveScene * m_eveScene
 
FWGeoTopNodem_eveTopNode
 
TEveWindowFrame * m_eveWindow
 
TGCompositeFrame * m_frame
 
FWLongParameter m_leafTransparencyFactor
 
FWEveDigitSetScalableMarkerm_marker
 
FWLongParameter m_minLeafTransparency
 
FWLongParameter m_minParentTransparency
 
FWLongParameter m_parentTransparencyFactor
 
FWTableWidgetm_tableWidget
 
FWLongParameter m_topNodeIdx
 
FWViewCombom_viewBox
 
const FWConfigurationm_viewersConfig
 
- Protected Attributes inherited from FWViewBase
FWViewType m_type
 

Private Member Functions

 ClassDef (FWGeometryTableViewBase, 0)
 
 FWGeometryTableViewBase (const FWGeometryTableViewBase &)
 
const FWGeometryTableViewBaseoperator= (const FWGeometryTableViewBase &)
 
void setColumnSelected (int idx)
 

Private Attributes

int m_tableRowIndexForColorPopup
 

Additional Inherited Members

- Public Types inherited from FWParameterizable
typedef std::vector< FWParameterBase * >::const_iterator const_iterator
 
- Public Attributes inherited from FWViewBase
sigc::signal< void, const FWViewBase * > beingDestroyed_
 
sigc::signal< void, Int_t, Int_t > openSelectedModelContextMenu_
 

Detailed Description

Definition at line 43 of file FWGeometryTableViewBase.h.

Constructor & Destructor Documentation

FWGeometryTableViewBase::FWGeometryTableViewBase ( TEveWindowSlot *  iParent,
FWViewType::EType  type,
FWColorManager colMng 
)

Definition at line 160 of file FWGeometryTableViewBase.cc.

References FWGenericParameter< T >::changed_, m_eveWindow, m_frame, m_leafTransparencyFactor, m_minLeafTransparency, m_minParentTransparency, m_parentTransparencyFactor, and refreshTable3D().

Referenced by FWGeometryTableViewBase::FWViewCombo::setElement().

161  : FWViewBase(type),
162  m_topNodeIdx(this, "TopNodeIndex", -1l, 0, 1e7),
163  m_autoExpand(this,"ExpandList:", 1l, 0l, 100l),
164  m_enableHighlight(this,"EnableHighlight", true),
165  m_parentTransparencyFactor(this, "ParentTransparencyFactor", 1l, 0l, 100l),
166  m_leafTransparencyFactor(this, "LeafTransparencyFactor", 1l, 0l, 100l),
167 m_minParentTransparency(this, "MinParentTransparency", type == FWViewType::kOverlapTable ? 0l : 90l, 0l, 100l),
168  m_minLeafTransparency(this, "MinLeafTransparency", 0l, 0l, 100l),
169  m_colorManager(colMng),
170  m_colorPopup(nullptr),
171  m_eveWindow(nullptr),
172  m_frame(nullptr),
173  m_viewBox(nullptr),
174  m_viewersConfig(nullptr),
175  m_enableRedraw(true),
176  m_marker(nullptr),
177  m_eveTopNode(nullptr),
178  m_eveScene(nullptr),
180 {
181  m_eveWindow = iParent->MakeFrame(nullptr);
182  TGCompositeFrame* xf = m_eveWindow->GetGUICompositeFrame();
183 
184  m_frame = new FWGeometryVF(xf, this);
185 
186  xf->AddFrame(m_frame, new TGLayoutHints(kLHintsExpandX | kLHintsExpandY));
187 
192 
193 }
type
Definition: HCALResponse.h:21
FWEveDigitSetScalableMarker * m_marker
FWLongParameter m_parentTransparencyFactor
const FWConfiguration * m_viewersConfig
FWLongParameter m_leafTransparencyFactor
sigc::signal< void, T > changed_
FWViewBase(FWViewType::EType, unsigned int iVersion=1)
Definition: FWViewBase.cc:33
FWGeometryTableViewBase::~FWGeometryTableViewBase ( )
override

Definition at line 223 of file FWGeometryTableViewBase.cc.

References getTableManager(), m_eveWindow, m_frame, and findQualityFiles::v.

Referenced by FWGeometryTableViewBase::FWViewCombo::setElement().

224 {
225  // take out composite frame and delete it directly (zwithout the timeout)
226  TGCompositeFrame *frame = m_eveWindow->GetGUICompositeFrame();
227  frame->RemoveFrame( m_frame );
228  delete m_frame;
229 
230 
231 
232  m_eveWindow->DestroyWindowAndSlot();
233  delete getTableManager();
234 }
virtual FWGeometryTableManagerBase * getTableManager()
FWGeometryTableViewBase::FWGeometryTableViewBase ( const FWGeometryTableViewBase )
private

Member Function Documentation

void FWGeometryTableViewBase::addTo ( FWConfiguration iTo) const
overridevirtual

Reimplemented from FWConfigurableParameterizable.

Definition at line 608 of file FWGeometryTableViewBase.cc.

References FWConfiguration::addKeyValue(), FWConfigurableParameterizable::addTo(), gen::k, m_eveTopNode, FWGeoTopNode::m_scene, and alignCSCRings::s.

Referenced by getTableManager().

609 {
611 
612  FWConfiguration viewers(1);
613  FWConfiguration tempArea;
614 
615  for(TEveElement::List_i k = gEve->GetViewers()->BeginChildren(); k!= gEve->GetViewers()->EndChildren(); ++k)
616  {
617  for (TEveElement::List_i eit = (*k)->BeginChildren(); eit != (*k)->EndChildren(); ++eit )
618  {
619  TEveScene* s = ((TEveSceneInfo*)*eit)->GetScene();
620  if (s->GetGLScene() == m_eveTopNode->m_scene)
621  {
622  viewers.addKeyValue( (*k)->GetElementName(), tempArea);
623  break;
624  }
625  }
626  }
627 
628  iTo.addKeyValue("Viewers", viewers, true);
629 }
void addTo(FWConfiguration &) const override
FWGeoTopNodeGLScene * m_scene
Definition: FWGeoTopNode.h:68
FWConfiguration & addKeyValue(const std::string &, const FWConfiguration &)
int k[5][pyjets_maxn]
void FWGeometryTableViewBase::cdNode ( int  idx)
void FWGeometryTableViewBase::cdTop ( )
virtual
void FWGeometryTableViewBase::cdUp ( )
virtual
void FWGeometryTableViewBase::cellClicked ( Int_t  iRow,
Int_t  iColumn,
Int_t  iButton,
Int_t  iKeyMod,
Int_t  iGlobalX,
Int_t  iGlobalY 
)
virtual

Definition at line 394 of file FWGeometryTableViewBase.cc.

References FWColorManager::backgroundColorIndex(), FWGeometryTableManagerBase::cancelEditor(), colors, FWColorManager::fillLimitedColors(), FWGeometryTableManagerBase::firstColumnClicked(), getTableManager(), training_settings::idx, FWColorPopup::InitContent(), FWColorManager::kBlackIndex, m_colorManager, m_colorPopup, m_eveTopNode, m_tableRowIndexForColorPopup, m_tableWidget, FWColorPopup::PlacePopup(), FWGeoTopNode::popupMenu(), FWGeometryTableManagerBase::refEntries(), refreshTable3D(), FWColorPopup::ResetColors(), FWGeometryTableManagerBase::rowToIndex(), setColumnSelected(), FWColorPopup::SetName(), FWGeometryTableManagerBase::setVisibility(), FWGeometryTableManagerBase::setVisibilityChld(), FWGeometryTableManagerBase::showEditor(), FWGeometryTableManagerBase::NodeInfo::switchBit(), x, and y.

Referenced by FWGeometryTableViewBase::FWViewCombo::setElement().

395 {
396  int idx = getTableManager()->rowToIndex()[iRow];
398 
399  if (iColumn != 2) getTableManager()->cancelEditor(false);
400 
401  bool elementChanged = false;
402  if (iButton == kButton1)
403  {
404  if (iColumn == 0)
405  {
406  Window_t wdummy;
407  Int_t xLoc,yLoc;
408  gVirtualX->TranslateCoordinates(gClient->GetDefaultRoot()->GetId(), m_tableWidget->GetId(), x, y, xLoc, yLoc, wdummy);
409 
410  if (getTableManager()->firstColumnClicked(iRow, xLoc))
411  setColumnSelected(idx);
412  }
413  else if (iColumn == 1)
414  {
415  std::vector<Color_t> colors;
417 
418  if (!m_colorPopup) {
419  m_colorPopup = new FWColorPopup(gClient->GetDefaultRoot(), colors.front());
420  m_colorPopup->InitContent("", colors);
421  m_colorPopup->Connect("ColorSelected(Color_t)","FWGeometryTableViewBase", const_cast<FWGeometryTableViewBase*>(this), "nodeColorChangeRequested(Color_t");
422  }
424  m_colorPopup->SetName("Selected");
426  m_colorPopup->PlacePopup(x, y, m_colorPopup->GetDefaultWidth(), m_colorPopup->GetDefaultHeight());
427  return;
428  }
429  else if (iColumn == 2)
430  {
431  // transparency edit
432  getTableManager()->showEditor(idx);
433  }
434  else if (iColumn == 3)
435  {
436  // vis self
437  getTableManager()->setVisibility(ni, !getTableManager()->getVisibility(ni));
438  elementChanged = true;
439  }
440  else if (iColumn == 4)
441  {
442  // vis children
443  getTableManager()->setVisibilityChld(ni, !getTableManager()->getVisibilityChld(ni));
444  elementChanged = true;
445  }
446  else if (iColumn == 6)
447  {
448  // used in overlaps for RnrMarker column
449  ni.switchBit(BIT(5));
450  elementChanged = true;
451  }
452  else
453  {
454  setColumnSelected(idx);
455  }
456 
457  if (elementChanged) {
458  refreshTable3D();
459  // getTableManager()->dataChanged();
460  }
461  }
462  else if (iColumn == 0)
463  {
464  setColumnSelected(idx);
465  m_eveTopNode->popupMenu(x, y, nullptr);
466  }
467 }
bool firstColumnClicked(int row, int xPos)
void InitContent(const char *name, const std::vector< Color_t > &colors, bool backgroundIsBlack=true)
void fillLimitedColors(std::vector< Color_t > &cv) const
void SetName(const char *iName) override
virtual void setVisibilityChld(NodeInfo &, bool)
void PlacePopup(Int_t x, Int_t y, UInt_t w, UInt_t h)
vector< Color_t > colors
BackgroundColorIndex backgroundColorIndex() const
void ResetColors(const std::vector< Color_t > &colors, bool backgroundIsBlack=true)
virtual void popupMenu(int x, int y, TGLViewer *)
Definition: FWGeoTopNode.h:81
virtual void setVisibility(NodeInfo &, bool)
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::checkExpandLevel ( )

Definition at line 291 of file FWGeometryTableViewBase.cc.

References getTableManager(), mps_fire::i, FWGeometryTableManagerBase::kExpanded, m_autoExpand, m_topNodeIdx, FWGeometryTableManagerBase::refEntries(), and FWGenericParameter< T >::value().

Referenced by FWGeometryTableView::autoExpandCallback(), FWOverlapTableView::recalculate(), saveImageTo(), FWGeometryTableView::setFrom(), FWGeometryTableView::setPath(), and setPath().

292 {
293  // check expand state
294  int ae = m_autoExpand.value();
295  if ( m_topNodeIdx.value() > 0)
296  ae += getTableManager()->refEntries().at(m_topNodeIdx.value()).m_level;
297 
299  {
300  if (i->m_level < ae)
302  else
304  }
305 }
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::chosenItem ( int  menuIdx)
virtual

Reimplemented in FWOverlapTableView.

Definition at line 502 of file FWGeometryTableViewBase.cc.

References FWGeometryTableManagerBase::applyColorTranspToDaughters(), cdNode(), gather_cfg::cout, FWGeoTopNode::getFirstSelectedTableIndex(), FWGeometryTableManagerBase::getNodePath(), getTableManager(), FWGeoTopNode::kApplyChldCol, FWGeoTopNode::kApplyChldColRec, FWGeoTopNode::kCamera, FWGeoTopNode::kPrintMaterial, FWGeoTopNode::kPrintPath, FWGeoTopNode::kPrintShape, FWGeoTopNode::kSetTopNode, FWGeoTopNode::kSetTopNodeCam, FWGeoTopNode::kVisChldOff, FWGeoTopNode::kVisChldOn, FWGeoTopNode::kVisSelfOff, m_eveTopNode, FWGeometryTableManagerBase::NodeInfo::m_node, FWGeometryTableManagerBase::refEntry(), refreshTable3D(), FWGeoTopNode::s_pickedCamera3DCenter, FWGeoTopNode::s_pickedViewer, FWGeometryTableManagerBase::setDaughtersSelfVisibility(), FWGeometryTableManagerBase::setVisibility(), AlCaHLTBitMon_QueryRunRegistry::string, findQualityFiles::v, X, DOFs::Y, and DOFs::Z.

Referenced by FWOverlapTableView::chosenItem(), and FWGeometryTableViewBase::FWViewCombo::setElement().

503 {
504  int selectedIdx = m_eveTopNode->getFirstSelectedTableIndex();
506  // printf("chosen item %s %d\n", ni.name(), menuIdx);
507 
508  TGeoVolume *gv = ni.m_node->GetVolume();
509  bool resetHome = false;
510  if (gv)
511  {
512  switch (menuIdx)
513  {
515  getTableManager()->setVisibility(ni, false);
516  refreshTable3D();
517  break;
518 
520  getTableManager()->setDaughtersSelfVisibility(selectedIdx, false);
521  refreshTable3D();
522  break;
523 
525  getTableManager()->setDaughtersSelfVisibility(selectedIdx, true);
526  refreshTable3D();
527  break;
528 
530  getTableManager()->applyColorTranspToDaughters(selectedIdx, false);
531  refreshTable3D();
532  break;
533 
535  getTableManager()->applyColorTranspToDaughters(selectedIdx, true);
536  refreshTable3D();
537  break;
538 
540  gv->InspectMaterial();
541  break;
542 
544  gv->InspectShape();
545  break;
546 
548  {
549  std::string ps;
550  getTableManager()->getNodePath(selectedIdx, ps);
551  std::cout << ps << std::endl;
552  break;
553  }
555  cdNode(selectedIdx);
556  break;
557 
559  cdNode(selectedIdx);
560  resetHome = true;
561  break;
562 
564  {
565  TGLViewer* v = FWGeoTopNode::s_pickedViewer;
566  v->CurrentCamera().SetExternalCenter(true);
568  v->SetDrawCameraCenter(true);
569  // resetHome = true;
570  break;
571  }
572  default:
573  return;
574  }
575  }
576 
577  if (resetHome) gEve->FullRedraw3D(true, true);
578 
579 }
#define X(str)
Definition: MuonsGrabber.cc:48
void getNodePath(int, std::string &) const
virtual void applyColorTranspToDaughters(int selectedIdx, bool recurse)
int getFirstSelectedTableIndex()
void setDaughtersSelfVisibility(bool)
virtual void setVisibility(NodeInfo &, bool)
static TGLViewer * s_pickedViewer
Definition: FWGeoTopNode.h:87
static TGLVector3 s_pickedCamera3DCenter
Definition: FWGeoTopNode.h:86
virtual FWGeometryTableManagerBase * getTableManager()
FWGeometryTableViewBase::ClassDef ( FWGeometryTableViewBase  ,
 
)
private
bool FWGeometryTableViewBase::getEnableHighlight ( )
inline

Definition at line 75 of file FWGeometryTableViewBase.h.

References m_enableHighlight, and FWGenericParameter< T >::value().

75 { return m_enableHighlight.value(); }
long FWGeometryTableViewBase::getLeafTransparencyFactor ( ) const
inline
FWEveDigitSetScalableMarker* FWGeometryTableViewBase::getMarker ( )
inline
long FWGeometryTableViewBase::getMinLeafTransparency ( ) const
inline
long FWGeometryTableViewBase::getMinParentTransparency ( ) const
inline
long FWGeometryTableViewBase::getParentTransparencyFactor ( ) const
inline
virtual FWGeometryTableManagerBase* FWGeometryTableViewBase::getTableManager ( )
inlinevirtual
int FWGeometryTableViewBase::getTopNodeIdx ( ) const
inline
void FWGeometryTableViewBase::nodeColorChangeRequested ( Color_t  col)

Definition at line 486 of file FWGeometryTableViewBase.cc.

References cuy::col, getTableManager(), FWGeometryTableManagerBase::NodeInfo::m_color, FWGeometryTableManagerBase::NodeInfo::m_node, m_tableRowIndexForColorPopup, FWGeometryTableManagerBase::refEntries(), and refreshTable3D().

Referenced by saveImageTo().

487 {
488  // AMT: need to add virtual FWGeometryTableView::nodeColorChangeRequested() for volume mode
489 
490  // printf("color change %d \n", m_tableRowIndexForColorPopup);
491  if (m_tableRowIndexForColorPopup >= 0) {
493  ni.m_color = col;
494  ni.m_node->GetVolume()->SetLineColor(col);
495  refreshTable3D();
497  }
498 }
col
Definition: cuy.py:1010
virtual FWGeometryTableManagerBase * getTableManager()
const FWGeometryTableViewBase& FWGeometryTableViewBase::operator= ( const FWGeometryTableViewBase )
private
void FWGeometryTableViewBase::populate3DViewsFromConfig ( )

Definition at line 310 of file FWGeometryTableViewBase.cc.

References fwLog, fwlog::kError, FWConfiguration::keyValues(), m_eveScene, m_eveTopNode, m_marker, m_viewBox, m_viewersConfig, FWGeometryTableViewBase::FWViewCombo::setElement(), lumiContext::sname, and findQualityFiles::v.

Referenced by saveImageTo(), and FWGUIManager::setFrom().

311 {
312  // post-config
313  if (m_viewersConfig) {
314  TEveElementList* viewers = gEve->GetViewers();
316 
317  if(nullptr!=keyVals)
318  {
319  for(FWConfiguration::KeyValuesIt it = keyVals->begin(); it!= keyVals->end(); ++it) {
320 
321  TString sname = it->first;
322  TEveViewer* v = dynamic_cast<TEveViewer*>(viewers->FindChild(sname.Data()));
323  if (!v)
324  {
325  fwLog(fwlog::kError) << "FWGeometryTableViewBase::populate3DViewsFromConfig no viewer found " << it->first << std::endl;
326  return;
327  }
328  v->AddScene(m_eveScene);
330  if (m_marker) getMarkerScene(v)->AddElement(m_marker);
331 
332  gEve->FullRedraw3D(false, true);
333  }
334  }
335  }
336 }
std::vector< std::pair< std::string, FWConfiguration > > KeyValues
const KeyValues * keyValues() const
FWEveDigitSetScalableMarker * m_marker
const FWConfiguration * m_viewersConfig
#define fwLog(_level_)
Definition: fwLog.h:50
KeyValues::const_iterator KeyValuesIt
void FWGeometryTableViewBase::populateController ( ViewerParameterGUI gui) const
overrideprotectedvirtual

Reimplemented from FWViewBase.

Reimplemented in FWOverlapTableView, and FWGeometryTableView.

Definition at line 666 of file FWGeometryTableViewBase.cc.

References ViewerParameterGUI::getTabContainer(), m_minLeafTransparency, m_minParentTransparency, ViewerParameterGUI::requestTab(), and mps_merge::separator.

Referenced by FWOverlapTableView::populateController().

667 {
668  gui.requestTab("Style").
669  separator().
670  //addParam(&m_parentTransparencyFactor).
671  // addParam(&m_leafTransparencyFactor).
672  addParam(&m_minParentTransparency).
673  addParam(&m_minLeafTransparency).
674  separator();
675  TGTextButton* butt = new TGTextButton(gui.getTabContainer(), "ReloadColors");
676  gui.getTabContainer()->AddFrame(butt);
677  butt->Connect("Clicked()", "FWGeometryTableViewBase", (FWGeometryTableViewBase*)this, "reloadColors()");
678 
679 }
string separator
Definition: mps_merge.py:78
ViewerParameterGUI & requestTab(const char *)
TGCompositeFrame * getTabContainer()
void FWGeometryTableViewBase::postConst ( )
protected

Definition at line 195 of file FWGeometryTableViewBase.cc.

References FWTableWidget::body(), FWTableWidget::disableGrowInWidth(), idDealer::editor, getTableManager(), m_eveWindow, m_frame, m_tableWidget, FWTableWidget::SetBackgroundColor(), FWGeometryTableManagerBase::setCellValueEditor(), FWTableWidget::SetHeaderBackgroundColor(), and FWTableWidget::SetLineSeparatorColor().

Referenced by FWGeometryTableView::FWGeometryTableView(), and FWOverlapTableView::FWOverlapTableView().

196 {
198  m_frame->AddFrame(m_tableWidget,new TGLayoutHints(kLHintsExpandX|kLHintsExpandY,2,2,0,0));
202  m_tableWidget->Connect("cellClicked(Int_t,Int_t,Int_t,Int_t,Int_t,Int_t)",
203  "FWGeometryTableViewBase",this,
204  "cellClicked(Int_t,Int_t,Int_t,Int_t,Int_t,Int_t)");
206  // resetSetters();
207 
208 
209  FWTranspEntry *editor = new FWTranspEntry(m_tableWidget->body(), this);
210  editor->SetBackgroundColor(gVirtualX->GetPixel(kYellow-7));
211  editor->SetFrameDrawn(false);
212  editor->Connect("ReturnPressed()", "FWGeometryTableViewBase",this,"transparencyChanged()");
214 
215  m_frame->MapSubwindows();
216  editor->UnmapWindow();
217  m_frame->Layout();
218  m_eveWindow->GetGUICompositeFrame()->Layout();
219  m_frame->MapWindow();
220 }
void SetHeaderBackgroundColor(Pixel_t)
void SetLineSeparatorColor(Pixel_t)
void disableGrowInWidth()
FWTabularWidget * body()
Definition: FWTableWidget.h:92
void SetBackgroundColor(Pixel_t) override
void setCellValueEditor(TGTextEntry *editor)
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::refreshTable3D ( )
virtual

Reimplemented in FWOverlapTableView.

Definition at line 589 of file FWGeometryTableViewBase.cc.

References getTableManager(), m_enableRedraw, m_eveTopNode, FWGeoTopNode::m_scene, and FWGeometryTableManagerBase::redrawTable().

Referenced by cellClicked(), FWGeometryTableView::checkRegionOfInterest(), chosenItem(), FWGeometryTableView::FWGeometryTableView(), FWGeometryTableViewBase(), FWOverlapTableView::FWOverlapTableView(), nodeColorChangeRequested(), FWOverlapTableView::refreshTable3D(), reloadColors(), saveImageTo(), FWGeometryTableView::setFrom(), FWGeometryTableView::setPath(), setPath(), transparencyChanged(), FWGeometryTableView::updateFilter(), and FWGeometryTableView::updateVisibilityTopNode().

590 {
591  if (m_enableRedraw)
592  {
593  if (gEve->GetSelection()->HasChild(m_eveTopNode))
594  gEve->GetSelection()->RemoveElement(m_eveTopNode);
595 
596  if (gEve->GetHighlight()->HasChild(m_eveTopNode))
597  gEve->GetHighlight()->RemoveElement(m_eveTopNode);
598 
599  m_eveTopNode->m_scene->PadPaint(m_eveTopNode->m_scene->GetPad());
600  gEve->Redraw3D();
601 
603  }
604 }
FWGeoTopNodeGLScene * m_scene
Definition: FWGeoTopNode.h:68
void redrawTable(bool setExpand=false)
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::reloadColors ( )

Definition at line 652 of file FWGeometryTableViewBase.cc.

References FWParameterizable::begin(), getTableManager(), mps_fire::i, FWGeometryTableManagerBase::refEntries(), and refreshTable3D().

Referenced by getMarker().

653 {
654  // printf("relaodColors \n");
655  for (FWGeometryTableManagerBase::Entries_i i = getTableManager()->refEntries().begin(); i != getTableManager()->refEntries().end(); ++i)
656  {
657  i->m_color = i->m_node->GetVolume()->GetLineColor();
658  }
659 
660  refreshTable3D();
661 }
const_iterator begin() const
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::saveImageTo ( const std::string &  iName) const
inlineoverridevirtual
void FWGeometryTableViewBase::selectView ( int  idx)

Definition at line 341 of file FWGeometryTableViewBase.cc.

References m_eveScene, m_eveTopNode, m_marker, m_viewBox, FWGeometryTableViewBase::FWViewCombo::setElement(), and findQualityFiles::v.

Referenced by FWGeometryTableViewBase::FWViewCombo::setElement().

342 {
343  // callback from sleclect view popup menu
344 
346 
347  TEveElement::List_i it = gEve->GetViewers()->BeginChildren();
348  std::advance(it, idx);
349  TEveViewer* v = (TEveViewer*)(*it);
350 
351  for (TEveElement::List_i eit = v->BeginChildren(); eit != v->EndChildren(); ++eit )
352  {
353  if ((((TEveSceneInfo*)(*eit))->GetScene()) == m_eveScene)
354  {
355  v->RemoveElement(*eit);
356  if (m_marker) getMarkerScene(v)->RemoveElement(m_marker);
357  gEve->Redraw3D();
358  return;
359  }
360  }
361 
362  if (m_marker) getMarkerScene(v)->AddElement(m_marker);
363  v->AddScene(m_eveScene);
364  gEve->Redraw3D();
365 }
FWEveDigitSetScalableMarker * m_marker
void FWGeometryTableViewBase::setBackgroundColor ( )

Definition at line 470 of file FWGeometryTableViewBase.cc.

References FWColorManager::backgroundColorIndex(), getTableManager(), FWColorManager::kWhiteIndex, m_colorManager, m_tableWidget, FWTableWidget::SetBackgroundColor(), FWGeometryTableManagerBase::setBackgroundToWhite(), and FWTableWidget::SetLineSeparatorColor().

Referenced by Vispa.Plugins.EdmBrowser.EventContentView.LabelItem::__init__(), and saveImageTo().

471 {
473  if(backgroundIsWhite) {
476  } else {
479  }
480  getTableManager()->setBackgroundToWhite(backgroundIsWhite);
481  gClient->NeedRedraw(m_tableWidget);
482 }
void SetLineSeparatorColor(Pixel_t)
BackgroundColorIndex backgroundColorIndex() const
void SetBackgroundColor(Pixel_t) override
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::setColumnSelected ( int  idx)
private

Definition at line 370 of file FWGeometryTableViewBase.cc.

References getTableManager(), FWGeometryTableManagerBase::kSelected, m_eveTopNode, FWGeometryTableManagerBase::redrawTable(), FWGeometryTableManagerBase::refEntry(), FWGeoTopNode::selectPhysicalFromTable(), FWGeometryTableManagerBase::NodeInfo::setBit(), FWGeoTopNode::UnHighlighted(), and FWGeoTopNode::UnSelected().

Referenced by cellClicked().

371 {
372  // printf("cell clicled top node %p\n", (void*)m_eveTopNode);
373  if (gEve->GetSelection()->HasChild( m_eveTopNode))
374  gEve->GetSelection()->RemoveElement( m_eveTopNode);
375 
376  if (gEve->GetHighlight()->HasChild( m_eveTopNode))
377  gEve->GetHighlight()->RemoveElement( m_eveTopNode);
378 
379  // reset bits and sets for old selected table entry
382 
383 
385  gEve->GetSelection()->AddElement(m_eveTopNode);
386 
389  gEve->Redraw3D();
390 }
void UnHighlighted() override
void UnSelected() override
bool selectPhysicalFromTable(int)
void redrawTable(bool setExpand=false)
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::setPath ( int  parentIdx,
std::string &   
)
virtual

Reimplemented in FWGeometryTableView.

Definition at line 275 of file FWGeometryTableViewBase.cc.

References checkExpandLevel(), FWGeoTopNode::clearSelection(), getTableManager(), getTopNodeIdx(), m_eveTopNode, m_topNodeIdx, refreshTable3D(), FWGenericParameter< T >::set(), and FWGeometryTableManagerBase::setLevelOffset().

Referenced by cdNode(), cdTop(), cdUp(), and saveImageTo().

276 {
278 
279  // printf("set path %d \n", parentIdx);
280  m_topNodeIdx.set(parentIdx);
281  // getTableManager()->refEntries().at(getTopNodeIdx()).setBitVal(FWGeometryTableManagerBase::kVisNodeSelf,!m_disableTopNode.value() );
282  getTableManager()->setLevelOffset(getTableManager()->refEntries().at(getTopNodeIdx()).m_level);
283 
284 
286  refreshTable3D();
287 }
void clearSelection()
Definition: FWGeoTopNode.h:78
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::setTopNodePathFromConfig ( const FWConfiguration iFrom)
protected

Definition at line 633 of file FWGeometryTableViewBase.cc.

References fwLog, getTableManager(), fwlog::kWarning, m_topNodeIdx, FWParameterBase::name(), FWGeometryTableManagerBase::refEntries(), alignCSCRings::s, FWGenericParameter< T >::set(), FWConfiguration::value(), and FWConfiguration::valueForKey().

Referenced by FWGeometryTableView::setFrom().

634 {
635  int tn;
636  const FWConfiguration* value = iFrom.valueForKey( m_topNodeIdx.name() );
637  if (!value) return;
638 
639  std::istringstream s(value->value());
640  s>> tn;
641  int lastIdx = getTableManager()->refEntries().size() -1;
642  if (tn >= lastIdx) {
643  fwLog(fwlog::kWarning) << Form("Ignoring node path from confugration file -- %s value larger than number of nodes \n", m_topNodeIdx.name().c_str());
644  return;
645  }
646  // std::cerr << "set top node " << ;
647  m_topNodeIdx.set(tn);
648 }
Definition: value.py:1
const std::string & value(unsigned int iIndex=0) const
#define fwLog(_level_)
Definition: fwLog.h:50
const FWConfiguration * valueForKey(const std::string &iKey) const
const std::string & name() const
virtual FWGeometryTableManagerBase * getTableManager()
void FWGeometryTableViewBase::transparencyChanged ( )

Member Data Documentation

FWLongParameter FWGeometryTableViewBase::m_autoExpand
protected
FWColorManager* FWGeometryTableViewBase::m_colorManager
protected

Definition at line 121 of file FWGeometryTableViewBase.h.

Referenced by cellClicked(), and setBackgroundColor().

FWColorPopup* FWGeometryTableViewBase::m_colorPopup
protected

Definition at line 126 of file FWGeometryTableViewBase.h.

Referenced by cellClicked().

FWBoolParameter FWGeometryTableViewBase::m_enableHighlight
protected

Definition at line 113 of file FWGeometryTableViewBase.h.

Referenced by getEnableHighlight().

bool FWGeometryTableViewBase::m_enableRedraw
protected
TEveScene* FWGeometryTableViewBase::m_eveScene
protected
FWGeoTopNode* FWGeometryTableViewBase::m_eveTopNode
protected
TEveWindowFrame* FWGeometryTableViewBase::m_eveWindow
protected
TGCompositeFrame* FWGeometryTableViewBase::m_frame
protected
FWLongParameter FWGeometryTableViewBase::m_leafTransparencyFactor
protected
FWEveDigitSetScalableMarker* FWGeometryTableViewBase::m_marker
protected
FWLongParameter FWGeometryTableViewBase::m_minLeafTransparency
protected
FWLongParameter FWGeometryTableViewBase::m_minParentTransparency
protected
FWLongParameter FWGeometryTableViewBase::m_parentTransparencyFactor
protected
int FWGeometryTableViewBase::m_tableRowIndexForColorPopup
private

Definition at line 155 of file FWGeometryTableViewBase.h.

Referenced by cellClicked(), and nodeColorChangeRequested().

FWTableWidget* FWGeometryTableViewBase::m_tableWidget
protected

Definition at line 122 of file FWGeometryTableViewBase.h.

Referenced by cellClicked(), postConst(), and setBackgroundColor().

FWLongParameter FWGeometryTableViewBase::m_topNodeIdx
protected
FWViewCombo* FWGeometryTableViewBase::m_viewBox
protected
const FWConfiguration* FWGeometryTableViewBase::m_viewersConfig
protected