CMS 3D CMS Logo

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

List of all members.

Classes

class  FWViewCombo

Public Member Functions

virtual void addTo (FWConfiguration &) const
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
long getMinLeafTransparency () const
long getMinParentTransparency () const
long getParentTransparencyFactor () const
virtual
FWGeometryTableManagerBase
getTableManager ()
int getTopNodeIdx () const
void nodeColorChangeRequested (Color_t)
void populate3DViewsFromConfig ()
virtual void refreshTable3D ()
void reloadColors ()
virtual void saveImageTo (const std::string &iName) const
void selectView (int)
void setBackgroundColor ()
virtual void setPath (int, std::string &)
void transparencyChanged ()
virtual ~FWGeometryTableViewBase ()

Protected Member Functions

void enableHighlight ()
virtual void populateController (ViewerParameterGUI &) const
void postConst ()
void setTopNodePathFromConfig (const FWConfiguration &iFrom)

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
TEvePointSet * m_marker
FWLongParameter m_minLeafTransparency
FWLongParameter m_minParentTransparency
FWLongParameter m_parentTransparencyFactor
FWTableWidgetm_tableWidget
FWLongParameter m_topNodeIdx
FWViewCombom_viewBox
const FWConfigurationm_viewersConfig

Private Member Functions

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

Private Attributes

int m_tableRowIndexForColorPopup

Detailed Description

Definition at line 44 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().

   : FWViewBase(type),
     m_topNodeIdx(this, "TopNodeIndex", -1l, 0, 1e7),
     m_autoExpand(this,"ExpandList:", 1l, 0l, 100l),
     m_enableHighlight(this,"EnableHighlight", true),
     m_parentTransparencyFactor(this, "ParentTransparencyFactor", 1l, 0l, 100l),
     m_leafTransparencyFactor(this, "LeafTransparencyFactor", 1l, 0l, 100l),
     m_minParentTransparency(this, "MinParentTransparency", 90l, 0l, 100l),
     m_minLeafTransparency(this, "MinLeafTransparency", 0l, 0l, 100l),
     m_colorManager(colMng),
     m_colorPopup(0),
     m_eveWindow(0),
     m_frame(0),
     m_viewBox(0),
     m_viewersConfig(0),
     m_enableRedraw(true),
     m_marker(0),
     m_eveTopNode(0),
     m_eveScene(0),
     m_tableRowIndexForColorPopup(-1)
{
   m_eveWindow = iParent->MakeFrame(0);
   TGCompositeFrame* xf = m_eveWindow->GetGUICompositeFrame();

   m_frame = new FWGeometryVF(xf, this);

   xf->AddFrame(m_frame, new TGLayoutHints(kLHintsExpandX | kLHintsExpandY));  
   
   m_parentTransparencyFactor.changed_.connect(boost::bind(&FWGeometryTableViewBase::refreshTable3D,this));
   m_leafTransparencyFactor.changed_.connect(boost::bind(&FWGeometryTableViewBase::refreshTable3D,this));
   m_minParentTransparency.changed_.connect(boost::bind(&FWGeometryTableViewBase::refreshTable3D,this));
   m_minLeafTransparency.changed_.connect(boost::bind(&FWGeometryTableViewBase::refreshTable3D,this));
 
}
FWGeometryTableViewBase::~FWGeometryTableViewBase ( ) [virtual]

Definition at line 223 of file FWGeometryTableViewBase.cc.

References getTableManager(), m_eveWindow, and m_frame.

{
   // take out composite frame and delete it directly (zwithout the timeout)
   TGCompositeFrame *frame = m_eveWindow->GetGUICompositeFrame();
   frame->RemoveFrame( m_frame );
   delete m_frame;



   m_eveWindow->DestroyWindowAndSlot();
   delete getTableManager();
}
FWGeometryTableViewBase::FWGeometryTableViewBase ( const FWGeometryTableViewBase ) [private]

Member Function Documentation

void FWGeometryTableViewBase::addTo ( FWConfiguration iTo) const [virtual]

Reimplemented from FWConfigurableParameterizable.

Definition at line 597 of file FWGeometryTableViewBase.cc.

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

{
   FWConfigurableParameterizable::addTo(iTo);

   FWConfiguration viewers(1);
   FWConfiguration tempArea;

   for(TEveElement::List_i k = gEve->GetViewers()->BeginChildren(); k!= gEve->GetViewers()->EndChildren(); ++k)
   {
      for (TEveElement::List_i eit = (*k)->BeginChildren(); eit != (*k)->EndChildren(); ++eit )
      {
         TEveScene* s = ((TEveSceneInfo*)*eit)->GetScene();
         if (s->GetGLScene() == m_eveTopNode->m_scene)
         {
            viewers.addKeyValue( (*k)->GetElementName(), tempArea);
            break;
         }
      }
   }

   iTo.addKeyValue("Viewers", viewers, true);
}
void FWGeometryTableViewBase::cdNode ( int  idx)
void FWGeometryTableViewBase::cdTop ( ) [virtual]

Reimplemented in FWOverlapTableView.

Definition at line 257 of file FWGeometryTableViewBase.cc.

References getTableManager(), getHLTPrescaleColumns::path, FWGeometryTableManagerBase::refEntries(), and setPath().

Referenced by FWGeometryTableView::FWGeometryTableView().

{
   std::string path = "/" ;
   path += getTableManager()->refEntries().at(0).name();
   setPath(-1, path ); 
}
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(), UserOptions_cff::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 detailsBasic3DVector::y.

{
   int idx = getTableManager()->rowToIndex()[iRow];
   FWGeometryTableManagerBase::NodeInfo& ni = getTableManager()->refEntries()[idx];

   if (iColumn != 2)  getTableManager()->cancelEditor(false);

   bool elementChanged = false;
   if (iButton == kButton1) 
   {
      if (iColumn == 0)
      {
         Window_t wdummy;
         Int_t xLoc,yLoc;
         gVirtualX->TranslateCoordinates(gClient->GetDefaultRoot()->GetId(), m_tableWidget->GetId(),  x, y, xLoc, yLoc, wdummy);

         if (getTableManager()->firstColumnClicked(iRow, xLoc))
            setColumnSelected(idx);
      }
      else if (iColumn == 1)
      { 
         std::vector<Color_t> colors;
         m_colorManager->fillLimitedColors(colors);
      
         if (!m_colorPopup) {
            m_colorPopup = new FWColorPopup(gClient->GetDefaultRoot(), colors.front());
            m_colorPopup->InitContent("", colors);
            m_colorPopup->Connect("ColorSelected(Color_t)","FWGeometryTableViewBase", const_cast<FWGeometryTableViewBase*>(this), "nodeColorChangeRequested(Color_t");
         }
         m_tableRowIndexForColorPopup = idx;
         m_colorPopup->SetName("Selected");
         m_colorPopup->ResetColors(colors, m_colorManager->backgroundColorIndex()==FWColorManager::kBlackIndex);
         m_colorPopup->PlacePopup(x, y, m_colorPopup->GetDefaultWidth(), m_colorPopup->GetDefaultHeight());
         return;
      }
      else if (iColumn == 2)
      {
         // transparency edit
         getTableManager()->showEditor(idx);
      }
      else if (iColumn == 3)
      {
         // vis self
         getTableManager()->setVisibility(ni, !getTableManager()->getVisibility(ni));
         elementChanged = true;
      }
      else if (iColumn == 4)
      { 
         // vis children
         getTableManager()->setVisibilityChld(ni, !getTableManager()->getVisibilityChld(ni));
         elementChanged = true;
      }
      else if (iColumn == 6)
      {
         // used in overlaps for RnrMarker column
         ni.switchBit(BIT(6));
         elementChanged = true;
      }
      else
      {
         setColumnSelected(idx);
      }

      if (elementChanged) {
         refreshTable3D();
         // getTableManager()->dataChanged();
      }
   }
   else if (iColumn == 0)
   {
      setColumnSelected(idx);
      m_eveTopNode->popupMenu(x, y, 0);
   }
}
void FWGeometryTableViewBase::checkExpandLevel ( )
void FWGeometryTableViewBase::chosenItem ( int  menuIdx) [virtual]

Reimplemented in FWOverlapTableView.

Definition at line 502 of file FWGeometryTableViewBase.cc.

References cdNode(), gather_cfg::cout, FWGeoTopNode::getFirstSelectedTableIndex(), FWGeometryTableManagerBase::getNodePath(), getTableManager(), 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(), X, and Gflash::Z.

{
   int selectedIdx = m_eveTopNode->getFirstSelectedTableIndex();
   FWGeometryTableManagerBase::NodeInfo& ni = getTableManager()->refEntry(selectedIdx);
   // printf("chosen item %s \n", ni.name());
   
   TGeoVolume *gv = ni.m_node->GetVolume();
   bool resetHome = false;
   if (gv)
   {
      switch (menuIdx)
      {
         case FWGeoTopNode::kVisSelfOff:
            getTableManager()->setVisibility(ni, false);
            refreshTable3D();
            
         case FWGeoTopNode::kVisChldOff:
            getTableManager()->setDaughtersSelfVisibility(selectedIdx, false);
            refreshTable3D();
            break;
            
         case FWGeoTopNode::kVisChldOn:
            getTableManager()->setDaughtersSelfVisibility(selectedIdx,  true);
            refreshTable3D();
            break;
            
         case FWGeoTopNode::kPrintMaterial:
            gv->InspectMaterial();
            break;
            
         case FWGeoTopNode::kPrintShape:
            gv->InspectShape();
            break;
            
         case FWGeoTopNode::kPrintPath:
         {
            std::string ps;
             getTableManager()->getNodePath(selectedIdx, ps);
            std::cout << ps << std::endl;
            break;
         }  
         case FWGeoTopNode::kSetTopNode:
            cdNode(selectedIdx);
            break;         
            
         case FWGeoTopNode::kSetTopNodeCam:
            cdNode(selectedIdx);
            resetHome = true;
            break;
            
         case FWGeoTopNode::kCamera:
         {
            TGLViewer* v = FWGeoTopNode::s_pickedViewer;
            v->CurrentCamera().SetExternalCenter(true);
            v->CurrentCamera().SetCenterVec(FWGeoTopNode::s_pickedCamera3DCenter.X(), FWGeoTopNode::s_pickedCamera3DCenter.Y(), FWGeoTopNode::s_pickedCamera3DCenter.Z());
            v->SetDrawCameraCenter(true);
           // resetHome = true;
            break;
         }
         default:
            return;
      }
   }
   
   if (resetHome) gEve->FullRedraw3D(true, true);
   
}
FWGeometryTableViewBase::ClassDef ( FWGeometryTableViewBase  ,
 
) [private]
void FWGeometryTableViewBase::enableHighlight ( ) [protected]
bool FWGeometryTableViewBase::getEnableHighlight ( ) [inline]

Definition at line 76 of file FWGeometryTableViewBase.h.

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

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

Definition at line 486 of file FWGeometryTableViewBase.cc.

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

{
   // AMT: need to add virtual   FWGeometryTableView::nodeColorChangeRequested() for volume mode
   
   //   printf("color change %d \n", m_tableRowIndexForColorPopup);
   if (m_tableRowIndexForColorPopup >= 0) {
      FWGeometryTableManagerBase::NodeInfo& ni = getTableManager()->refEntries()[m_tableRowIndexForColorPopup];
      ni.m_color = col;
      ni.m_node->GetVolume()->SetLineColor(col);
      refreshTable3D();
      m_tableRowIndexForColorPopup = -1;
   }
}
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(), and lumiContext::sname.

Referenced by FWGUIManager::setFrom().

{
   // post-config 
   if (m_viewersConfig) {
      TEveElementList* viewers = gEve->GetViewers();
      const FWConfiguration::KeyValues* keyVals = m_viewersConfig->keyValues();

      if(0!=keyVals)  
      {
         for(FWConfiguration::KeyValuesIt it = keyVals->begin(); it!= keyVals->end(); ++it) {
    
            TString sname = it->first;
            TEveViewer* v = dynamic_cast<TEveViewer*>(viewers->FindChild(sname.Data()));
            if (!v)
            {
               fwLog(fwlog::kError)  << "FWGeometryTableViewBase::populate3DViewsFromConfig no viewer found " << it->first << std::endl;
               return;
            }
            v->AddScene(m_eveScene);  
            m_viewBox->setElement(m_eveTopNode);
            if (m_marker) getMarkerScene(v)->AddElement(m_marker);

            gEve->FullRedraw3D(false, true);
         }   
      }
   }
}
void FWGeometryTableViewBase::populateController ( ViewerParameterGUI gui) const [protected, virtual]

Reimplemented from FWViewBase.

Reimplemented in FWGeometryTableView, and FWOverlapTableView.

Definition at line 655 of file FWGeometryTableViewBase.cc.

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

{
   gui.requestTab("Style").
   separator().
   //addParam(&m_parentTransparencyFactor).
  // addParam(&m_leafTransparencyFactor).
   addParam(&m_minParentTransparency).
   addParam(&m_minLeafTransparency).
   separator();
   TGTextButton* butt = new TGTextButton(gui.getTabContainer(), "ReloadColors");
   gui.getTabContainer()->AddFrame(butt);
   butt->Connect("Clicked()", "FWGeometryTableViewBase", (FWGeometryTableViewBase*)this, "reloadColors()");

}
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().

{
   m_tableWidget = new FWTableWidget(getTableManager(), m_frame); 
   m_frame->AddFrame(m_tableWidget,new TGLayoutHints(kLHintsExpandX|kLHintsExpandY,2,2,0,0));
   m_tableWidget->SetBackgroundColor(0xffffff);
   m_tableWidget->SetLineSeparatorColor(0x000000);
   m_tableWidget->SetHeaderBackgroundColor(0xececec);
   m_tableWidget->Connect("cellClicked(Int_t,Int_t,Int_t,Int_t,Int_t,Int_t)",
                          "FWGeometryTableViewBase",this,
                          "cellClicked(Int_t,Int_t,Int_t,Int_t,Int_t,Int_t)");
   m_tableWidget->disableGrowInWidth();
   //   resetSetters();

   
   FWTranspEntry *editor = new  FWTranspEntry(m_tableWidget->body(), this);
   editor->SetBackgroundColor(gVirtualX->GetPixel(kYellow-7));
   editor->SetFrameDrawn(false);
   editor->Connect("ReturnPressed()",  "FWGeometryTableViewBase",this,"transparencyChanged()");
   getTableManager()->setCellValueEditor(editor);

   m_frame->MapSubwindows();
   editor->UnmapWindow();
   m_frame->Layout();
   m_eveWindow->GetGUICompositeFrame()->Layout();
   m_frame->MapWindow();
}
void FWGeometryTableViewBase::refreshTable3D ( ) [virtual]
void FWGeometryTableViewBase::reloadColors ( )

Definition at line 641 of file FWGeometryTableViewBase.cc.

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

{
  // printf("relaodColors \n");
   for (FWGeometryTableManagerBase::Entries_i i = getTableManager()->refEntries().begin(); i !=  getTableManager()->refEntries().end(); ++i)
   {
      i->m_color = i->m_node->GetVolume()->GetLineColor();
   }
   
   refreshTable3D();
}
virtual void FWGeometryTableViewBase::saveImageTo ( const std::string &  iName) const [inline, virtual]

Implements FWViewBase.

Definition at line 82 of file FWGeometryTableViewBase.h.

{}
void FWGeometryTableViewBase::selectView ( int  idx)

Definition at line 341 of file FWGeometryTableViewBase.cc.

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

{
   // callback from sleclect view popup menu

   m_viewBox->setElement(m_eveTopNode);

   TEveElement::List_i it = gEve->GetViewers()->BeginChildren();
   std::advance(it, idx);
   TEveViewer* v = (TEveViewer*)(*it);

   for (TEveElement::List_i eit = v->BeginChildren(); eit != v->EndChildren(); ++eit )
   {
      if ((((TEveSceneInfo*)(*eit))->GetScene()) == m_eveScene)
      {
        v->RemoveElement(*eit);
        if (m_marker) getMarkerScene(v)->RemoveElement(m_marker);
        gEve->Redraw3D();
        return;
      }
   }

   if (m_marker) getMarkerScene(v)->AddElement(m_marker); 
   v->AddScene(m_eveScene);
   gEve->Redraw3D();
}
void FWGeometryTableViewBase::setBackgroundColor ( )
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(), FWGeoTopNode::UnHighlighted(), and FWGeoTopNode::UnSelected().

Referenced by cellClicked().

{
   // printf("cell clicled top node %p\n", (void*)m_eveTopNode);
   if (gEve->GetSelection()->HasChild( m_eveTopNode))
      gEve->GetSelection()->RemoveElement( m_eveTopNode);

   if (gEve->GetHighlight()->HasChild( m_eveTopNode))
      gEve->GetHighlight()->RemoveElement( m_eveTopNode);

   // reset bits and sets for old selected table entry
   m_eveTopNode->UnSelected();
   m_eveTopNode->UnHighlighted();


   if (m_eveTopNode->selectPhysicalFromTable(idx))
      gEve->GetSelection()->AddElement(m_eveTopNode);

   getTableManager()->refEntry(idx).setBit(FWGeometryTableManagerBase::kSelected);
   getTableManager()->redrawTable();
   gEve->Redraw3D();
}
void FWGeometryTableViewBase::setPath ( int  parentIdx,
std::string &   
) [virtual]

Reimplemented in FWGeometryTableView.

Definition at line 275 of file FWGeometryTableViewBase.cc.

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

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

{
   m_eveTopNode->clearSelection();

   // printf("set path %d \n", parentIdx);
   m_topNodeIdx.set(parentIdx);
   // getTableManager()->refEntries().at(getTopNodeIdx()).setBitVal(FWGeometryTableManagerBase::kVisNodeSelf,!m_disableTopNode.value() );
   getTableManager()->setLevelOffset(getTableManager()->refEntries().at(getTopNodeIdx()).m_level);
 

   checkExpandLevel();
   refreshTable3D(); 
}
void FWGeometryTableViewBase::setTopNodePathFromConfig ( const FWConfiguration iFrom) [protected]

Definition at line 622 of file FWGeometryTableViewBase.cc.

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

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

{
   int tn;
   const FWConfiguration* value = iFrom.valueForKey( m_topNodeIdx.name() );
   if (!value) return;

   std::istringstream s(value->value());
   s>> tn;
   int lastIdx = getTableManager()->refEntries().size() -1;
   if (tn >= lastIdx) { 
      fwLog(fwlog::kWarning) << Form("Ignoring node path from confugration file -- %s value larger than number of nodes \n", m_topNodeIdx.name().c_str());
      return;
   }
   //   std::cerr << "set top node " << ;
   m_topNodeIdx.set(tn);
}
void FWGeometryTableViewBase::transparencyChanged ( )

Member Data Documentation

Definition at line 121 of file FWGeometryTableViewBase.h.

Referenced by cellClicked(), and setBackgroundColor().

Definition at line 126 of file FWGeometryTableViewBase.h.

Referenced by cellClicked().

Definition at line 113 of file FWGeometryTableViewBase.h.

Referenced by getEnableHighlight().

TEveScene* FWGeometryTableViewBase::m_eveScene [protected]
TEveWindowFrame* FWGeometryTableViewBase::m_eveWindow [protected]
TGCompositeFrame* FWGeometryTableViewBase::m_frame [protected]
TEvePointSet* FWGeometryTableViewBase::m_marker [protected]

Definition at line 158 of file FWGeometryTableViewBase.h.

Referenced by cellClicked(), and nodeColorChangeRequested().

Definition at line 122 of file FWGeometryTableViewBase.h.

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