24 using namespace ROOT::Experimental;
25 namespace REX = ROOT::Experimental;
36 REveViewer::REveViewer(
const std::string& n,
const std::string& t) :
45 REveViewer::~REveViewer()
51 void REveViewer::Redraw(Bool_t )
60 void REveViewer::AddScene(REveScene *scene)
62 static const REveException eh(
"REveViewer::AddScene ");
64 for (
auto &c: RefChildren()) {
65 auto sinfo =
dynamic_cast<REveSceneInfo*
>(c);
67 if (sinfo && sinfo->GetScene() == scene)
69 throw eh +
"scene already in the viewer.";
73 auto si =
new REveSceneInfo(
this, scene);
82 void REveViewer::RemoveElementLocal(REveElement* )
93 void REveViewer::RemoveElementsLocal()
108 REveViewerList::REveViewerList(
const std::string &n,
const std::string &t) :
110 fShowTooltip (kTRUE),
113 fUseLightColorSet(kFALSE)
117 SetChildClass(TClass::GetClass<REveViewer>());
124 REveViewerList::~REveViewerList()
134 void REveViewerList::AddElement(REveElement* el)
136 REveElement::AddElement(el);
142 void REveViewerList::RemoveElementLocal(REveElement* el)
147 REveElement::RemoveElementLocal(el);
153 void REveViewerList::RemoveElementsLocal()
162 REveElement::RemoveElementsLocal();
168 void REveViewerList::Connect()
192 void REveViewerList::Disconnect()
216 void REveViewerList::RepaintChangedViewers(Bool_t , Bool_t )
235 void REveViewerList::RepaintAllViewers(Bool_t , Bool_t )
252 void REveViewerList::DeleteAnnotations()
264 void REveViewerList::SceneDestructing(REveScene* scene)
266 for (
auto &viewer: fChildren) {
267 for (
auto &j: viewer->RefChildren()) {
268 REveSceneInfo* sinfo = (REveSceneInfo *) j;
269 if (sinfo->GetScene() == scene)
270 viewer->RemoveElement(sinfo);
279 void REveViewerList::HandleTooltip()
310 void REveViewerList::OnMouseOver(TObject *, UInt_t )
332 void REveViewerList::OnReMouseOver(TObject *obj, UInt_t )
334 REveElement* el =
dynamic_cast<REveElement*
>(obj);
335 if (el && !el->IsPickable())
354 void REveViewerList::OnUnMouseOver(TObject *obj, UInt_t )
356 REveElement* el =
dynamic_cast<REveElement*
>(obj);
357 if (el && !el->IsPickable())
376 void REveViewerList::OnClicked(TObject *obj, UInt_t , UInt_t state)
378 REveElement* el =
dynamic_cast<REveElement*
>(obj);
379 if (el && !el->IsPickable())
381 REX::gEve->GetSelection()->UserPickedElement(el, state & kKeyControlMask);
393 void REveViewerList::OnReClicked(TObject *obj, UInt_t , UInt_t )
395 REveElement* el =
dynamic_cast<REveElement*
>(obj);
396 if (el && !el->IsPickable())
398 REX::gEve->GetSelection()->UserRePickedElement(el);
410 void REveViewerList::OnUnClicked(TObject *obj, UInt_t , UInt_t )
412 REveElement* el =
dynamic_cast<REveElement*
>(obj);
413 if (el && !el->IsPickable())
415 REX::gEve->GetSelection()->UserUnPickedElement(el);
421 void REveViewerList::SetColorBrightness(Float_t b)
423 REveUtil::SetColorBrightness(b, 1);
429 void REveViewerList::SwitchColorSet()
431 fUseLightColorSet = ! fUseLightColorSet;