157 static const TEveException kEH(
"TEveViewer::SpawnGLViewer ");
162 if (stereo && quad_buf)
174 catch (std::exception&)
176 Error(
"SpawnGLViewer",
"Insufficient support from the graphics hardware. Aborting.");
180 v->ToggleEditObject();
181 v->DisableCloseMenuEntries();
184 v->EnableMenuBarHiding();
189 v->SetStereo(
kTRUE, quad_buf);
202 static const TEveException kEH(
"TEveViewer::SpawnGLEmbeddedViewer ");
238 Warning(
"SwitchStereo",
"Only supported for TGLSAViewer.");
242 v->DestroyGLWidget();
246 v->SetStereo(
f->IsStereo());
251 catch (std::exception&)
253 Error(
"SwitchStereo",
"Insufficient support from the graphics hardware. Reverting.");
270 throw(eh +
"scene already in the viewer.");
300 throw(eh +
"fGLViewer not set.");
311 static const TEveException eh(
"TEveViewer::HandleElementPaste ");
318 Warning(eh.
Data(),
"class TEveViewer only accepts TEveScene paste argument.");
334 fShowTooltip (
kTRUE),
380 (*i)->DecParentIgnoreCnt();
392 "TEveViewerList",
this,
"OnMouseOver(TObject*,UInt_t)");
395 "TEveViewerList",
this,
"OnReMouseOver(TObject*,UInt_t)");
398 "TEveViewerList",
this,
"OnUnMouseOver(TObject*,UInt_t)");
401 "TEveViewerList",
this,
"OnClicked(TObject*,UInt_t,UInt_t)");
404 "TEveViewerList",
this,
"OnReClicked(TObject*,UInt_t,UInt_t)");
407 "TEveViewerList",
this,
"OnUnClicked(TObject*,UInt_t,UInt_t)");
416 this,
"OnMouseOver(TObject*,UInt_t)");
419 this,
"OnReMouseOver(TObject*,UInt_t)");
422 this,
"OnUnMouseOver(TObject*,UInt_t)");
425 this,
"OnClicked(TObject*,UInt_t,UInt_t)");
428 this,
"OnReClicked(TObject*,UInt_t,UInt_t)");
431 this,
"OnUnClicked(TObject*,UInt_t,UInt_t)");
const Mask_t kKeyControlMask
R__EXTERN TApplication * gApplication
void Error(const char *location, const char *msgfmt,...)
Use this function in case an error occurred.
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
R__EXTERN TEveManager * gEve
R__EXTERN void * gTQSender
virtual void Terminate(Int_t status=0)
Terminate the application by call TSystem::Exit() unless application has been told to return from Run...
virtual Int_t GetValue(const char *name, Int_t dflt) const
Returns the integer value for a resource.
void SetChildClass(TClass *c)
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
virtual void AddElement(TEveElement *el)
Add el to the list of children.
virtual TString GetHighlightTooltip()
TEveElement * FirstChild() const
Returns the first child element or 0 if the list is empty.
Bool_t IsPickable() const
Int_t NumChildren() const
void DecParentIgnoreCnt()
Decrease number of parents ignored in reference-counting.
virtual void RemoveElement(TEveElement *el)
Remove el from the list of children.
virtual void RemoveElementLocal(TEveElement *el)
Perform additional local removal of el.
static const TGPicture * fgListTreeIcons[9]
virtual void RemoveElementsLocal()
Perform additional local removal of all elements.
void IncParentIgnoreCnt()
Increase number of parents ignored in reference-counting.
Exception class thrown by TEve classes and macros.
TEveSelection * GetSelection() const
TEveSelection * GetHighlight() const
TEveUtil representation of TGLSceneInfo.
TEveScene * GetScene() const
Eve representation of TGLScene.
TGLScenePad * GetGLScene() const
virtual void UserRePickedElement(TEveElement *el)
Called when secondary selection becomes empty.
virtual void UserPickedElement(TEveElement *el, Bool_t multi=kFALSE)
Called when user picks/clicks on an element.
virtual void UserUnPickedElement(TEveElement *el)
Called when secondary selection becomes empty.
static void SetColorBrightness(Float_t value, Bool_t full_redraw=kFALSE)
Tweak all ROOT colors to become brighter (if value > 0) or darker (value < 0).
List of Viewers providing common operations on TEveViewer collections.
void SwitchColorSet()
Switch background color.
void RepaintChangedViewers(Bool_t resetCameras, Bool_t dropLogicals)
Repaint viewers that are tagged as changed.
virtual void RemoveElementLocal(TEveElement *el)
Decompoundofy el, call base-class version.
void OnMouseOver(TObject *obj, UInt_t state)
Slot for global TGLViewer::MouseOver() signal.
void SetColorBrightness(Float_t b)
Set color brightness.
void OnClicked(TObject *obj, UInt_t button, UInt_t state)
Slot for global TGLViewer::Clicked().
void OnUnMouseOver(TObject *obj, UInt_t state)
Slot for global TGLViewer::UnMouseOver().
virtual void RemoveElementsLocal()
Decompoundofy children, call base-class version.
void OnReClicked(TObject *obj, UInt_t button, UInt_t state)
Slot for global TGLViewer::ReClicked().
void OnReMouseOver(TObject *obj, UInt_t state)
Slot for global TGLViewer::ReMouseOver().
virtual void AddElement(TEveElement *el)
Call base-class implementation.
void RepaintAllViewers(Bool_t resetCameras, Bool_t dropLogicals)
Repaint all viewers.
void SceneDestructing(TEveScene *scene)
Callback done from a TEveScene destructor allowing proper removal of the scene from affected viewers.
void HandleTooltip()
Show / hide tooltip for various MouseOver events.
virtual void Disconnect()
Disconnect from TGLViewer class-signals.
virtual void Connect()
Connect to TGLViewer class-signals.
void OnUnClicked(TObject *obj, UInt_t button, UInt_t state)
Slot for global TGLViewer::UnClicked().
void DeleteAnnotations()
Delete annotations from all viewers.
virtual ~TEveViewerList()
Destructor.
TEveViewerList(const TEveViewerList &)
Eve representation of TGLViewer.
virtual void RemoveElementLocal(TEveElement *el)
Remove element 'el' from the list of children and also remove appropriate GLScene from GLViewer's lis...
void SetGLViewer(TGLViewer *viewer, TGFrame *frame)
Set TGLViewer that is represented by this object.
static Bool_t fgInitInternal
virtual void PostDock()
Virtual function called after a window is docked.
void SwitchStereo()
Switch stereo mode.
virtual Bool_t HandleElementPaste(TEveElement *el)
Receive a pasted object.
TGLSAViewer * SpawnGLViewer(TGedEditor *ged=nullptr, Bool_t stereo=kFALSE, Bool_t quad_buf=kTRUE)
Spawn new GLViewer and adopt it.
TGLEmbeddedViewer * SpawnGLEmbeddedViewer(TGedEditor *ged=nullptr, Int_t border=0)
Spawn new GLViewer and adopt it.
TEveViewer(const TEveViewer &)
virtual const TGPicture * GetListTreeIcon(Bool_t open=kFALSE)
Return TEveViewer icon.
void Redraw(Bool_t resetCameras=kFALSE)
Redraw viewer immediately.
virtual void AddScene(TEveScene *scene)
Add 'scene' to the list of scenes.
static Bool_t fgRecreateGlOnDockOps
virtual void PreUndock()
Virtual function called before a window is undocked.
static void InitInternal()
Initialize static data-members according to running conditions.
virtual void RemoveElementsLocal()
Remove all children, forwarded to GLViewer.
virtual ~TEveViewer()
Destructor.
virtual TObject * GetEditorObject(const TEveException &eh="TEveViewer::GetEditorObject ") const
Object to be edited when this is selected, returns the TGLViewer.
Encapsulates TGFrame into an eve-window.
TGCompositeFrame * GetGUICompositeFrame()
Returns the registered top-frame of this eve-window dynamic-casted to composite-frame.
virtual void PreUndock()
Virtual function called before a window is undocked.
TEveCompositeFrame * fEveFrame
virtual void PostDock()
Virtual function called after a window is docked.
The base class for composite widgets (menu bars, list boxes, etc.).
virtual void AddFrame(TGFrame *f, TGLayoutHints *l=nullptr)
Add frame to the composite frame using the specified layout hints.
virtual void RemoveFrame(TGFrame *f)
Remove frame from composite frame.
void SetEditable(Bool_t on=kTRUE) override
Switch ON/OFF edit mode.
A subclasses of TGWindow, and is used as base class for some simple widgets (buttons,...
void ReparentWindow(const TGWindow *p, Int_t x=0, Int_t y=0) override
Reparent window, make p the new parent and position the window at position (x,y) in new parent.
void MapWindow() override
map window
void UnmapWindow() override
unmap window
virtual void SetCleanup(Int_t=kLocalCleanup)
Minimal GL-viewer that can be embedded in a standard ROOT frames.
Base-class and default implementation of event-handler for TGLViewer.
virtual void TriggerTooltip(const char *text)
Trigger display of tooltip.
virtual void RemoveTooltip()
Hide the tooltip.
The top level standalone GL-viewer - created via plugin manager.
Base class for extended scene context.
TGLSceneInfo * AddScene(TGLSceneBase *scene)
Add new scene, appropriate scene-info is created.
void RemoveAllScenes()
Remove all scenes from the viewer, their scene-infos are deleted.
void RemoveScene(TGLSceneBase *scene)
Remove scene from the viewer, its scene-info is deleted.
virtual Bool_t IsChanged() const
virtual void DeleteOverlayAnnotations()
Delete overlay elements that are annotations.
Base GL viewer object - used by both standalone and embedded (in pad) GL.
virtual void SetEventHandler(TGEventHandler *handler)
Set the event-handler.
TGEventHandler * GetEventHandler() const
void RequestDraw(Short_t LOD=TGLRnrCtx::kLODMed)
Post request for redraw of viewer at level of detail 'LOD' Request is directed via cross thread gVirt...
virtual void CreateGLWidget()
void SetSmartRefresh(Bool_t smart_ref)
virtual void DestroyGLWidget()
void UseLightColorSet()
Use the light color-set.
virtual void PostSceneBuildSetup(Bool_t resetCameras)
Perform post scene-build setup.
void UseDarkColorSet()
Use the dark color-set.
TGLWidget * GetGLWidget()
This class describes layout hints used by the layout classes.
The TGPicture class implements pictures and icons used in the different GUI elements and widgets.
Mother of all ROOT objects.
This is the ROOT implementation of the Qt object communication mechanism (see also http://www....
Bool_t Connect(const char *signal, const char *receiver_class, void *receiver, const char *slot)
Non-static method is used to connect from the signal of this object to the receiver slot.
Bool_t Disconnect(const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
Disconnects signal of this object from slot of receiver.
const char * Data() const
static void SingleShot(Int_t milliSec, const char *receiver_class, void *receiver, const char *method)
This static function calls a slot after a given time interval.