Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TGLWidget Class Reference

GL window with context.

Must have a parent window (the 'parent' parameter of ctors). The current version inherits TGCanvas (I'm not sure about future versions), probably, in future multiple inheritance will be added - the second base class will be TGLPaintDevice or something like this.

Usage:

  • Simply create TGLWidget as an embedded widget, and connect your slots to signals you need: HandleExpose, HandleConfigureNotify, etc. In your slots you can use gl API directly - under Win32 TGLWidget switches between threads internally (look TGLPShapeObjEditor for such usage).
  • You can write your own class, derived from TGLWidget, with PaintGL and InitGL overriden.

Resources (and invariants):

  • fContainer (TGLWidgetContainer) - controlled by std::auto_ptr
  • fWindowIndex - controlled manually (see CreateWidget and dtor)
  • fGLContext - controlled manually (see CreateWidget and dtor)
  • visual info for X11 version, controlled manually (see CreateGLContainer and dtor)

Exceptions:

  • can be thrown only during construction.
  • under win32 class does not throw itself (but some internal operations can throw)
  • under X11 can throw std::runtime_error (from CreateGLContext).
  • In case of exceptions resources will be freed.

TGLWidget object is immutable as far as it was created.

Boolean parameter defines, if you want to grab user's input or not. By default you want, but for example when not - see TGLPShapeObjEditor.

Non-copyable.

Definition at line 27 of file TGLWidget.h.

Public Member Functions

 ~TGLWidget () override
 Destructor. Deletes window ???? and XVisualInfo.
 
Bool_t ClearCurrent ()
 Clear the current gl-context.
 
void DoRedraw () override
 Delegate call to the owner.
 
void ExtractViewport (Int_t *vp) const override
 For camera.
 
const TGLContextGetContext () const override
 Get gl context.
 
TGEventHandlerGetEventHandler () const
 
const TGLFormatGetPixelFormat () const override
 Pixel format.
 
Bool_t HandleButton (Event_t *ev) override
 Delegate call to the owner.
 
Bool_t HandleConfigureNotify (Event_t *ev) override
 Delegate call to the owner.
 
Bool_t HandleCrossing (Event_t *) override
 Handle mouse crossing event.
 
Bool_t HandleDoubleClick (Event_t *ev) override
 Delegate call to the owner.
 
Bool_t HandleFocusChange (Event_t *) override
 Delegate call to the owner.
 
Bool_t HandleKey (Event_t *ev) override
 Delegate call to the owner.
 
Bool_t HandleMotion (Event_t *ev) override
 Delegate call to the owner.
 
virtual void InitGL ()
 Call glEnable(... in overrider of InitGL.
 
TClassIsA () const override
 
Bool_t MakeCurrent () override
 Make the gl-context current.
 
virtual void PaintGL ()
 Do actual drawing in overrider of PaintGL.
 
void SetEventHandler (TGEventHandler *eh)
 Set event-handler. All events are passed to this object.
 
void SetFormat ()
 Set pixel format.
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
void SwapBuffers () override
 Swap buffers.
 
- Public Member Functions inherited from TGFrame
 TGFrame (const TGWindow *p=nullptr, UInt_t w=1, UInt_t h=1, UInt_t options=0, Pixel_t back=GetDefaultFrameBackground())
 Create a TGFrame object. Options is an OR of the EFrameTypes.
 
 TGFrame (TGClient *c, Window_t id, const TGWindow *parent=nullptr)
 Create a frame using an externally created window.
 
 ~TGFrame () override
 Destructor.
 
virtual void Activate (Bool_t)
 
void AddInput (UInt_t emask)
 Add events specified in the emask to the events the frame should handle.
 
virtual void ChangeBackground (Pixel_t back)
 Change frame background color.
 
virtual void ChangeOptions (UInt_t options)
 Change frame options. Options is an OR of the EFrameTypes.
 
Bool_t Contains (Int_t x, Int_t y) const
 
void Delete (Option_t *="") override
 Delete this object.
 
virtual void DeleteWindow ()
 Delete window.
 
virtual void DrawBorder ()
 Draw frame border.
 
void DrawClass () const override
 Draw class inheritance tree of the class to which this object belongs.
 
TObjectDrawClone (Option_t *="") const override
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
virtual void DrawCopy (Handle_t, Int_t, Int_t)
 
void Dump () const override
 Dump contents of object on stdout.
 
virtual Pixel_t GetBackground () const
 
Int_t GetBorderWidth () const
 
virtual UInt_t GetDefaultHeight () const
 
virtual TGDimension GetDefaultSize () const
 std::cout << fWidth << "x" << fHeight << std::endl;
 
virtual UInt_t GetDefaultWidth () const
 
virtual TDNDDataGetDNDData (Atom_t)
 
virtual Int_t GetDragType () const
 Returns drag source type.
 
virtual Int_t GetDropType () const
 Returns drop target type.
 
UInt_t GetEventMask () const
 
virtual Pixel_t GetForeground () const
 Return frame foreground color.
 
TGFrameElementGetFrameElement () const
 
virtual TGFrameGetFrameFromPoint (Int_t x, Int_t y)
 
UInt_t GetHeight () const
 
UInt_t GetMaxHeight () const
 
UInt_t GetMaxWidth () const
 
UInt_t GetMinHeight () const
 
UInt_t GetMinWidth () const
 
virtual UInt_t GetOptions () const
 
TGDimension GetSize () const
 
UInt_t GetWidth () const
 
Int_t GetX () const
 
Int_t GetY () const
 
virtual Bool_t HandleClientMessage (Event_t *event)
 Handle a client message.
 
virtual Bool_t HandleColormapChange (Event_t *)
 
virtual Bool_t HandleDNDDrop (TDNDData *)
 
virtual Atom_t HandleDNDEnter (Atom_t *)
 
virtual Bool_t HandleDNDFinished ()
 
virtual Bool_t HandleDNDLeave ()
 
virtual Atom_t HandleDNDPosition (Int_t, Int_t, Atom_t, Int_t, Int_t)
 
virtual Bool_t HandleDragDrop (TGFrame *, Int_t, Int_t, TGLayoutHints *)
 
virtual Bool_t HandleDragEnter (TGFrame *)
 
virtual Bool_t HandleDragLeave (TGFrame *)
 
virtual Bool_t HandleDragMotion (TGFrame *)
 
Bool_t HandleEvent (Event_t *event) override
 Handle all frame events.
 
virtual Bool_t HandleSelection (Event_t *)
 
virtual Bool_t HandleSelectionClear (Event_t *)
 
virtual Bool_t HandleSelectionRequest (Event_t *)
 
void Inspect () const override
 Dump contents of this object in a graphics canvas.
 
virtual Bool_t IsActive () const
 
virtual Bool_t IsComposite () const
 
Bool_t IsDNDSource () const
 
Bool_t IsDNDTarget () const
 
Bool_t IsEditable () const override
 
virtual Bool_t IsLayoutBroken () const
 
virtual void Layout ()
 
void MapRaised () override
 map raised
 
void MapSubwindows () override
 map sub windows
 
void MapWindow () override
 map window
 
void Move (Int_t x, Int_t y) override
 Move frame.
 
void MoveResize (Int_t x, Int_t y, UInt_t w=0, UInt_t h=0) override
 Move and/or resize the frame.
 
void Print (Option_t *option="") const override
 Print window id.
 
virtual void ProcessedConfigure (Event_t *event)
 
virtual void ProcessedEvent (Event_t *event)
 
virtual Bool_t ProcessMessage (Longptr_t, Longptr_t, Longptr_t)
 
virtual void ReallyDelete ()
 
void RemoveInput (UInt_t emask)
 Remove events specified in emask from the events the frame should handle.
 
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.
 
virtual void Resize (TGDimension size)
 Resize the frame.
 
void Resize (UInt_t w=0, UInt_t h=0) override
 Resize the frame.
 
void SavePrimitive (std::ostream &out, Option_t *option="") override
 Save a frame widget as a C++ statement(s) on output stream out.
 
void SaveUserColor (std::ostream &out, Option_t *)
 Save a user color in a C++ macro file - used in SavePrimitive().
 
virtual void SendMessage (const TGWindow *w, Longptr_t msg, Longptr_t parm1, Longptr_t parm2)
 Send message (i.e.
 
void SetBackgroundColor (Pixel_t back) override
 Set background color (override from TGWindow base class).
 
virtual void SetCleanup (Int_t=kLocalCleanup)
 
void SetDNDSource (Bool_t onoff)
 
void SetDNDTarget (Bool_t onoff)
 
virtual void SetDragType (Int_t type)
 SetDragType.
 
void SetDrawOption (Option_t *="") override
 Set drawing option for object.
 
virtual void SetDropType (Int_t type)
 SetDropType.
 
void SetEditable (Bool_t) override
 
virtual void SetForegroundColor (Pixel_t)
 
void SetFrameElement (TGFrameElement *fe)
 
virtual void SetHeight (UInt_t h)
 
virtual void SetLayoutBroken (Bool_t=kTRUE)
 
virtual void SetMaxHeight (UInt_t h)
 
virtual void SetMaxWidth (UInt_t w)
 
virtual void SetMinHeight (UInt_t h)
 
virtual void SetMinWidth (UInt_t w)
 
virtual void SetSize (const TGDimension &s)
 
virtual void SetWidth (UInt_t w)
 
virtual void SetX (Int_t x)
 
virtual void SetY (Int_t y)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
void UnmapWindow () override
 unmap window
 
- Public Member Functions inherited from TGWindow
 TGWindow (const TGWindow *p=nullptr, Int_t x=0, Int_t y=0, UInt_t w=0, UInt_t h=0, UInt_t border=0, Int_t depth=0, UInt_t clss=0, void *visual=nullptr, SetWindowAttributes_t *attr=nullptr, UInt_t wtype=0)
 Create a new window.
 
 TGWindow (TGClient *c, Window_t id, const TGWindow *parent=nullptr)
 Create a copy of a window.
 
 ~TGWindow () override
 Window destructor. Unregisters the window.
 
virtual void DestroySubwindows ()
 destroy sub windows
 
virtual void DestroyWindow ()
 destroy window
 
virtual UInt_t GetEditDisabled () const
 
virtual const TGWindowGetMainFrame () const
 Returns top level main frame.
 
const char * GetName () const override
 Return unique name, used in SavePrimitive methods.
 
const TGWindowGetParent () const
 
virtual Bool_t HandleExpose (Event_t *event)
 
virtual Bool_t HandleIdleEvent (TGIdleHandler *)
 
Bool_t HandleTimer (TTimer *) override
 Execute action in response of a timer timing out.
 
virtual void IconifyWindow ()
 iconify window
 
TClassIsA () const override
 
virtual Bool_t IsMapped ()
 Returns kTRUE if window is mapped on screen, kFALSE otherwise.
 
virtual Bool_t IsMapSubwindows () const
 
virtual void LowerWindow ()
 lower window
 
virtual Int_t MustCleanup () const
 
void Print (Option_t *option="") const override
 Print window id.
 
virtual void RaiseWindow ()
 raise window
 
virtual void RequestFocus ()
 request focus
 
virtual void SetBackgroundPixmap (Pixmap_t pixmap)
 set background pixmap
 
virtual void SetEditDisabled (UInt_t on=kEditDisable)
 
virtual void SetMapSubwindows (Bool_t)
 
virtual void SetName (const char *name)
 
virtual void SetWindowName (const char *name=nullptr)
 Set window name.
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TGObject
 TGObject ()
 
 TGObject (const TGObject &tgo)
 
 ~TGObject () override
 TGObject destructor.
 
TGClientGetClient () const
 
Handle_t GetId () const
 
ULong_t Hash () const override
 Return hash value for this object.
 
Bool_t IsEqual (const TObject *obj) const override
 Equal comparison (TGObjects are equal if they have the same window identifier).
 
void SaveAs (const char *filename="", Option_t *option="") const override
 Write this TGObject to a file using TImage, if filename's extension signals a valid TImage::EImageFileType, as defined by TImage::GetImageFileTypeFromFilename().
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility.
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method.
 
virtual void Copy (TObject &object) const
 Copy this to obj.
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object.
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout.
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification (the base implementation is no-op).
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete (void *ptr, void *vp)
 Only called by placement new when throwing an exception.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void operator delete[] (void *ptr, void *vp)
 Only called by placement new[] when throwing an exception.
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *vp)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 
- Public Member Functions inherited from TQObject
 TQObject ()
 TQObject Constructor.
 
virtual ~TQObject ()
 TQObject Destructor.
 
Bool_t AreSignalsBlocked () const
 
Bool_t BlockSignals (Bool_t b)
 
virtual void ChangedBy (const char *method)
 
void CollectClassSignalLists (TList &list, TClass *cls)
 Collect class signal lists from class cls and all its base-classes.
 
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.
 
virtual void Connected (const char *)
 
virtual void Destroyed ()
 
Bool_t Disconnect (const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects signal of this object from slot of receiver.
 
virtual void Disconnected (const char *)
 
void Emit (const char *signal)
 Activate signal without args.
 
template<typename T >
void Emit (const char *signal, const T &arg)
 Activate signal with single parameter.
 
template<typename... T>
void EmitVA (const char *signal_name, Int_t, const T &... params)
 Emit a signal with a varying number of arguments.
 
TListGetListOfClassSignals () const
 Returns pointer to list of signals of this class.
 
TListGetListOfConnections () const
 
TListGetListOfSignals () const
 
virtual Bool_t HasConnection (const char *signal_name) const
 Return true if there is any object connected to this signal.
 
virtual void HighPriority (const char *signal_name, const char *slot_name=nullptr)
 
virtual void LowPriority (const char *signal_name, const char *slot_name=nullptr)
 
virtual void Message (const char *msg)
 
virtual Int_t NumberOfConnections () const
 Return number of connections for this object.
 
virtual Int_t NumberOfSignals () const
 Return number of signals for this object.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TGLPaintDevice
virtual ~TGLPaintDevice ()
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static TGLWidgetCreate (const TGLFormat &format, const TGWindow *parent, Bool_t selectInput, Bool_t shareDefault, const TGLPaintDevice *shareDevice, UInt_t width, UInt_t height)
 Static constructor for creating widget with given pixel format.
 
static TGLWidgetCreate (const TGWindow *parent, Bool_t selectInput, Bool_t shareDefault, const TGLPaintDevice *shareDevice, UInt_t width, UInt_t height)
 Static constructor for creating widget with default pixel format.
 
static TGLWidgetCreateDummy ()
 Static constructor for creating widget with default pixel format.
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TGFrame
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static const TGGCGetBckgndGC ()
 Get background color graphics context.
 
static const TGGCGetBlackGC ()
 Get black graphics context.
 
static Pixel_t GetBlackPixel ()
 Get black pixel value.
 
static Pixel_t GetDefaultFrameBackground ()
 Get default frame background.
 
static Pixel_t GetDefaultSelectedBackground ()
 Get default selected frame background.
 
static const TGGCGetHilightGC ()
 Get highlight color graphics context.
 
static const TGGCGetShadowGC ()
 Get shadow color graphics context.
 
static const TGGCGetWhiteGC ()
 Get white graphics context.
 
static Pixel_t GetWhitePixel ()
 Get white pixel value.
 
- Static Public Member Functions inherited from TGWindow
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Int_t GetCounter ()
 Return global window counter (total number of created windows).
 
- Static Public Member Functions inherited from TGObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Public Member Functions inherited from TQObject
static Bool_t AreAllSignalsBlocked ()
 Returns true if all signals are blocked.
 
static Bool_t BlockAllSignals (Bool_t b)
 Block or unblock all signals. Returns the previous block status.
 
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static Bool_t Connect (const char *sender_class, const char *signal, const char *receiver_class, void *receiver, const char *slot)
 This method allows to make a connection from any object of the same class to a single slot.
 
static Bool_t Connect (TQObject *sender, const char *signal, const char *receiver_class, void *receiver, const char *slot)
 Create connection between sender and receiver.
 
static const char * DeclFileName ()
 
static Bool_t Disconnect (const char *class_name, const char *signal, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects "class signal".
 
static Bool_t Disconnect (TQObject *sender, const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects signal in object sender from slot_method in object receiver.
 
- Static Public Member Functions inherited from TGLPaintDevice
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 

Protected Member Functions

 TGLWidget (Window_t glw, const TGWindow *parent, Bool_t selectInput)
 Creates widget with default pixel format.
 
void AddContext (TGLContext *ctx) override
 Register gl-context created for this window.
 
std::pair< void *, void * > GetInnerData () const
 Dpy*, XVisualInfo *.
 
void RemoveContext (TGLContext *ctx) override
 Remove context (no real deletion, done by TGLContex dtor).
 
- Protected Member Functions inherited from TGFrame
virtual void Draw3dRectangle (UInt_t type, Int_t x, Int_t y, UInt_t w, UInt_t h)
 Draw 3D rectangle on the frame border.
 
TString GetOptionString () const
 Returns a frame option string - used in SavePrimitive().
 
const TGResourcePoolGetResourcePool () const
 
void * GetSender () override
 
virtual void StartGuiBuilding (Bool_t on=kTRUE)
 Go into GUI building mode.
 
- Protected Member Functions inherited from TGWindow
 TGWindow (const TGWindow &tgw)
 
 TGWindow (Window_t id)
 
TGWindowoperator= (const TGWindow &tgw)
 
- Protected Member Functions inherited from TGObject
TGObjectoperator= (const TGObject &tgo)
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 
- Protected Member Functions inherited from TQObject
virtual const char * GetSenderClassName () const
 

Static Protected Member Functions

static Window_t CreateWindow (const TGWindow *parent, const TGLFormat &format, UInt_t width, UInt_t height, std::pair< void *, void * > &innerData)
 CreateWidget - X11 version.
 
- Static Protected Member Functions inherited from TGFrame
static Time_t GetLastClick ()
 Get time of last mouse click.
 
- Static Protected Member Functions inherited from TQObject
static Int_t CheckConnectArgs (TQObject *sender, TClass *sender_class, const char *signal, TClass *receiver_class, const char *slot)
 Checking of consistency of sender/receiver methods/arguments.
 
static TString CompressName (const char *method_name)
 Removes "const" words and blanks from full (with prototype) method name and resolve any typedefs in the method signature.
 
static Bool_t ConnectToClass (const char *sender_class, const char *signal, TClass *receiver_class, void *receiver, const char *slot)
 This method allows to make connection from any object of the same class to the receiver object.
 
static Bool_t ConnectToClass (TQObject *sender, const char *signal, TClass *receiver_class, void *receiver, const char *slot)
 Create connection between sender and receiver.
 

Private Member Functions

 TGLWidget (const TGLWidget &)=delete
 
TGLWidgetoperator= (const TGLWidget &)=delete
 

Private Attributes

TGEventHandlerfEventHandler
 
Bool_t fFromInit
 
TGLContextfGLContext
 
TGLFormat fGLFormat
 
std::pair< void *, void * > fInnerData
 
std::set< TGLContext * > fValidContexts
 
Int_t fWindowIndex
 

Friends

class TGLContext
 

Additional Inherited Members

- Public Types inherited from TGWindow
enum  EEditMode {
  kEditEnable = 0 , kEditDisable = (1ULL << ( 0 )) , kEditDisableEvents = (1ULL << ( 1 )) , kEditDisableGrab = (1ULL << ( 2 )) ,
  kEditDisableLayout = (1ULL << ( 3 )) , kEditDisableResize = (1ULL << ( 4 )) , kEditDisableHeight = (1ULL << ( 5 )) , kEditDisableWidth = (1ULL << ( 6 )) ,
  kEditDisableBtnEnable = (1ULL << ( 7 )) , kEditDisableKeyEnable = (1ULL << ( 8 ))
}
 
enum  EStatusBits { kIsHtmlView = (1ULL << ( 14 )) }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 
- Protected Types inherited from TGFrame
enum  { kDeleteWindowCalled = (1ULL << ( 15 )) }
 
- Protected Types inherited from TObject
enum  { kOnlyPrepStep = (1ULL << ( 3 )) }
 
- Protected Attributes inherited from TGFrame
Pixel_t fBackground
 frame background color
 
Int_t fBorderWidth
 frame border width
 
Int_t fDNDState
 EDNDFlags.
 
UInt_t fEventMask
 currently active event mask
 
TGFrameElementfFE
 pointer to frame element
 
UInt_t fHeight
 frame height
 
UInt_t fMaxHeight
 maximal frame height
 
UInt_t fMaxWidth
 maximal frame width
 
UInt_t fMinHeight
 minimal frame height
 
UInt_t fMinWidth
 minimal frame width
 
UInt_t fOptions
 frame options
 
UInt_t fWidth
 frame width
 
Int_t fX
 frame x position
 
Int_t fY
 frame y position
 
- Protected Attributes inherited from TGWindow
UInt_t fEditDisabled
 flags used for "guibuilding"
 
TString fName
 name of the window used in SavePrimitive()
 
Bool_t fNeedRedraw
 kTRUE if window needs to be redrawn
 
const TGWindowfParent
 Parent window.
 
- Protected Attributes inherited from TGObject
TGClientfClient
 Connection to display server.
 
Handle_t fId
 X11/Win32 Window identifier.
 
- Protected Attributes inherited from TQObject
TListfListOfConnections
 list of signals from this object
 
TListfListOfSignals
 
Bool_t fSignalsBlocked
 list of connections to this object
 
- Static Protected Attributes inherited from TGFrame
static const TGGCfgBckgndGC = nullptr
 
static const TGGCfgBlackGC = nullptr
 
static Pixel_t fgBlackPixel = 0
 
static Window_t fgDbw = 0
 
static Int_t fgDbx = 0
 
static Int_t fgDby = 0
 
static Pixel_t fgDefaultFrameBackground = 0
 
static Pixel_t fgDefaultSelectedBackground = 0
 
static const TGGCfgHilightGC = nullptr
 
static Bool_t fgInit = kFALSE
 
static UInt_t fgLastButton = 0
 
static Time_t fgLastClick = 0
 
static const TGGCfgShadowGC = nullptr
 
static UInt_t fgUserColor = 0
 
static const TGGCfgWhiteGC = nullptr
 
static Pixel_t fgWhitePixel = 0
 
- Static Protected Attributes inherited from TGWindow
static Int_t fgCounter = 0
 counter of created windows in SavePrimitive
 
- Static Protected Attributes inherited from TQObject
static Bool_t fgAllSignalsBlocked = kFALSE
 flag used for suppression of signals
 

#include <TGLWidget.h>

Inheritance diagram for TGLWidget:
[legend]

Constructor & Destructor Documentation

◆ ~TGLWidget()

TGLWidget::~TGLWidget ( )
override

Destructor. Deletes window ???? and XVisualInfo.

Definition at line 162 of file TGLWidget.cxx.

◆ TGLWidget() [1/2]

TGLWidget::TGLWidget ( const TGLWidget )
privatedelete

◆ TGLWidget() [2/2]

TGLWidget::TGLWidget ( Window_t  glw,
const TGWindow parent,
Bool_t  selectInput 
)
protected

Creates widget with default pixel format.

Definition at line 140 of file TGLWidget.cxx.

Member Function Documentation

◆ AddContext()

void TGLWidget::AddContext ( TGLContext ctx)
overrideprotectedvirtual

Register gl-context created for this window.

Implements TGLPaintDevice.

Definition at line 249 of file TGLWidget.cxx.

◆ Class()

static TClass * TGLWidget::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TGLWidget::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TGLWidget::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 104 of file TGLWidget.h.

◆ ClearCurrent()

Bool_t TGLWidget::ClearCurrent ( )

Clear the current gl-context.

Definition at line 209 of file TGLWidget.cxx.

◆ Create() [1/2]

TGLWidget * TGLWidget::Create ( const TGLFormat format,
const TGWindow parent,
Bool_t  selectInput,
Bool_t  shareDefault,
const TGLPaintDevice shareDevice,
UInt_t  width,
UInt_t  height 
)
static

Static constructor for creating widget with given pixel format.

Definition at line 96 of file TGLWidget.cxx.

◆ Create() [2/2]

TGLWidget * TGLWidget::Create ( const TGWindow parent,
Bool_t  selectInput,
Bool_t  shareDefault,
const TGLPaintDevice shareDevice,
UInt_t  width,
UInt_t  height 
)
static

Static constructor for creating widget with default pixel format.

Definition at line 83 of file TGLWidget.cxx.

◆ CreateDummy()

TGLWidget * TGLWidget::CreateDummy ( )
static

Static constructor for creating widget with default pixel format.

Definition at line 73 of file TGLWidget.cxx.

◆ CreateWindow()

Window_t TGLWidget::CreateWindow ( const TGWindow parent,
const TGLFormat format,
UInt_t  width,
UInt_t  height,
std::pair< void *, void * > &  innerData 
)
staticprotected

CreateWidget - X11 version.

Static function called prior to construction. Can throw std::bad_alloc and std::runtime_error. This version is bad - I do not check the results of X11 calls.

Definition at line 499 of file TGLWidget.cxx.

◆ DeclFileName()

static const char * TGLWidget::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 104 of file TGLWidget.h.

◆ DoRedraw()

void TGLWidget::DoRedraw ( )
overridevirtual

Delegate call to the owner.

Reimplemented from TGFrame.

Definition at line 686 of file TGLWidget.cxx.

◆ ExtractViewport()

void TGLWidget::ExtractViewport ( Int_t vp) const
overridevirtual

For camera.

Implements TGLPaintDevice.

Definition at line 267 of file TGLWidget.cxx.

◆ GetContext()

const TGLContext * TGLWidget::GetContext ( ) const
overridevirtual

Get gl context.

Implements TGLPaintDevice.

Definition at line 225 of file TGLWidget.cxx.

◆ GetEventHandler()

TGEventHandler * TGLWidget::GetEventHandler ( ) const
inline

Definition at line 75 of file TGLWidget.h.

◆ GetInnerData()

std::pair< void *, void * > TGLWidget::GetInnerData ( ) const
protected

Dpy*, XVisualInfo *.

Definition at line 241 of file TGLWidget.cxx.

◆ GetPixelFormat()

const TGLFormat * TGLWidget::GetPixelFormat ( ) const
overridevirtual

Pixel format.

Implements TGLPaintDevice.

Definition at line 233 of file TGLWidget.cxx.

◆ HandleButton()

Bool_t TGLWidget::HandleButton ( Event_t ev)
overridevirtual

Delegate call to the owner.

Reimplemented from TGFrame.

Definition at line 587 of file TGLWidget.cxx.

◆ HandleConfigureNotify()

Bool_t TGLWidget::HandleConfigureNotify ( Event_t ev)
overridevirtual

Delegate call to the owner.

Reimplemented from TGFrame.

Definition at line 619 of file TGLWidget.cxx.

◆ HandleCrossing()

Bool_t TGLWidget::HandleCrossing ( Event_t ev)
overridevirtual

Handle mouse crossing event.

Reimplemented from TGFrame.

Definition at line 566 of file TGLWidget.cxx.

◆ HandleDoubleClick()

Bool_t TGLWidget::HandleDoubleClick ( Event_t ev)
overridevirtual

Delegate call to the owner.

Reimplemented from TGFrame.

Definition at line 603 of file TGLWidget.cxx.

◆ HandleFocusChange()

Bool_t TGLWidget::HandleFocusChange ( Event_t ev)
overridevirtual

Delegate call to the owner.

Reimplemented from TGFrame.

Definition at line 638 of file TGLWidget.cxx.

◆ HandleKey()

Bool_t TGLWidget::HandleKey ( Event_t ev)
overridevirtual

Delegate call to the owner.

Reimplemented from TGFrame.

Definition at line 654 of file TGLWidget.cxx.

◆ HandleMotion()

Bool_t TGLWidget::HandleMotion ( Event_t ev)
overridevirtual

Delegate call to the owner.

Reimplemented from TGFrame.

Definition at line 670 of file TGLWidget.cxx.

◆ InitGL()

void TGLWidget::InitGL ( )
virtual

Call glEnable(... in overrider of InitGL.

Definition at line 187 of file TGLWidget.cxx.

◆ IsA()

TClass * TGLWidget::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TGFrame.

Definition at line 104 of file TGLWidget.h.

◆ MakeCurrent()

Bool_t TGLWidget::MakeCurrent ( )
overridevirtual

Make the gl-context current.

Implements TGLPaintDevice.

Definition at line 201 of file TGLWidget.cxx.

◆ operator=()

TGLWidget & TGLWidget::operator= ( const TGLWidget )
privatedelete

◆ PaintGL()

void TGLWidget::PaintGL ( )
virtual

Do actual drawing in overrider of PaintGL.

Definition at line 194 of file TGLWidget.cxx.

◆ RemoveContext()

void TGLWidget::RemoveContext ( TGLContext ctx)
overrideprotectedvirtual

Remove context (no real deletion, done by TGLContex dtor).

Implements TGLPaintDevice.

Definition at line 257 of file TGLWidget.cxx.

◆ SetEventHandler()

void TGLWidget::SetEventHandler ( TGEventHandler eh)

Set event-handler. All events are passed to this object.

Definition at line 558 of file TGLWidget.cxx.

◆ SetFormat()

void TGLWidget::SetFormat ( )

Set pixel format.

Empty version for X11.

Definition at line 542 of file TGLWidget.cxx.

◆ Streamer()

void TGLWidget::Streamer ( TBuffer R__b)
overridevirtual

Stream an object of class TObject.

Reimplemented from TGFrame.

◆ StreamerNVirtual()

void TGLWidget::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 104 of file TGLWidget.h.

◆ SwapBuffers()

void TGLWidget::SwapBuffers ( )
overridevirtual

Swap buffers.

Implements TGLPaintDevice.

Definition at line 217 of file TGLWidget.cxx.

Friends And Related Symbol Documentation

◆ TGLContext

friend class TGLContext
friend

Definition at line 29 of file TGLWidget.h.

Member Data Documentation

◆ fEventHandler

TGEventHandler* TGLWidget::fEventHandler
private

Definition at line 43 of file TGLWidget.h.

◆ fFromInit

Bool_t TGLWidget::fFromInit
private

Definition at line 39 of file TGLWidget.h.

◆ fGLContext

TGLContext* TGLWidget::fGLContext
private

Definition at line 32 of file TGLWidget.h.

◆ fGLFormat

TGLFormat TGLWidget::fGLFormat
private

Definition at line 37 of file TGLWidget.h.

◆ fInnerData

std::pair<void *, void *> TGLWidget::fInnerData
private

Definition at line 34 of file TGLWidget.h.

◆ fValidContexts

std::set<TGLContext *> TGLWidget::fValidContexts
private

Definition at line 41 of file TGLWidget.h.

◆ fWindowIndex

Int_t TGLWidget::fWindowIndex
private

Definition at line 35 of file TGLWidget.h.

Libraries for TGLWidget:

The documentation for this class was generated from the following files: