Open CASCADE Technology  7.4.0
Public Member Functions | Static Public Member Functions | Protected Attributes

Xw_Window Class Reference

This class defines XLib window intended for creation of OpenGL context. More...

#include <Xw_Window.hxx>

Inheritance diagram for Xw_Window:
Inheritance graph
[legend]

Public Member Functions

 Xw_Window (const Handle< Aspect_DisplayConnection > &theXDisplay, const Standard_CString theTitle, const Standard_Integer thePxLeft, const Standard_Integer thePxTop, const Standard_Integer thePxWidth, const Standard_Integer thePxHeight, const Aspect_FBConfig theFBConfig=NULL)
 Creates a XLib window defined by his position and size in pixels. Throws exception if window can not be created or Display do not support GLX extension. More...
 
 Xw_Window (const Handle< Aspect_DisplayConnection > &theXDisplay, const Window theXWin, const Aspect_FBConfig theFBConfig=NULL)
 Creates a wrapper over existing Window handle. More...
 
 ~Xw_Window ()
 Destroys the Window and all resourses attached to it. More...
 
virtual void Map () const override
 Opens the window <me> More...
 
virtual void Unmap () const override
 Closes the window <me> More...
 
virtual Aspect_TypeOfResize DoResize () const override
 Applies the resizing to the window <me> More...
 
virtual Standard_Boolean DoMapping () const override
 Apply the mapping change to the window <me> More...
 
virtual Standard_Boolean IsMapped () const override
 Returns True if the window <me> is opened. More...
 
virtual Standard_Real Ratio () const override
 Returns The Window RATIO equal to the physical WIDTH/HEIGHT dimensions. More...
 
virtual void Position (Standard_Integer &X1, Standard_Integer &Y1, Standard_Integer &X2, Standard_Integer &Y2) const override
 Returns The Window POSITION in PIXEL. More...
 
virtual void Size (Standard_Integer &theWidth, Standard_Integer &theHeight) const override
 Returns The Window SIZE in PIXEL. More...
 
Window XWindow () const
 
const Handle< Aspect_DisplayConnection > & DisplayConnection () const
 
virtual Aspect_Drawable NativeHandle () const override
 
virtual Aspect_Drawable NativeParentHandle () const override
 
virtual Aspect_FBConfig NativeFBConfig () const override
 
virtual void SetTitle (const TCollection_AsciiString &theTitle) override
 Sets window title. More...
 
virtual void InvalidateContent (const Handle< Aspect_DisplayConnection > &theDisp) override
 Invalidate entire window content through generation of Expose event. This method does not aggregate multiple calls into single event - dedicated event will be sent on each call. When NULL display connection is specified, the connection specified on window creation will be used. Sending exposure messages from non-window thread would require dedicated display connection opened specifically for this working thread to avoid race conditions, since Xlib display connection is not thread-safe by default. More...
 
- Public Member Functions inherited from Aspect_Window
void SetBackground (const Aspect_Background &ABack)
 Modifies the window background. More...
 
void SetBackground (const Quantity_Color &color)
 Modifies the window background. More...
 
void SetBackground (const Aspect_GradientBackground &ABackground)
 Modifies the window gradient background. More...
 
void SetBackground (const Quantity_Color &theFirstColor, const Quantity_Color &theSecondColor, const Aspect_GradientFillMethod theFillMethod)
 Modifies the window gradient background. More...
 
Aspect_Background Background () const
 Returns the window background. More...
 
Aspect_FillMethod BackgroundFillMethod () const
 Returns the current image background fill mode. More...
 
Aspect_GradientBackground GradientBackground () const
 Returns the window gradient background. More...
 
Standard_Boolean IsVirtual () const
 Returns True if the window <me> is virtual. More...
 
void SetVirtual (const Standard_Boolean theVirtual)
 Setup the virtual state. More...
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor. More...
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing. More...
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter. More...
 
virtual ~Standard_Transient ()
 Destructor must be virtual. More...
 
virtual void Delete () const
 Memory deallocator for transient classes. More...
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object. More...
 
Standard_Boolean IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type. More...
 
Standard_Boolean IsInstance (const Standard_CString theTypeName) const
 Returns a true value if this is an instance of TypeName. More...
 
Standard_Boolean IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_Boolean IsKind (const Standard_CString theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. More...
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. More...
 
Standard_Integer GetRefCount () const
 Get the reference counter of this object. More...
 
void IncrementRefCounter () const
 Increments the reference counter of this object. More...
 
Standard_Integer DecrementRefCounter () const
 Decrements the reference counter of this object; returns the decremented value. More...
 

Static Public Member Functions

static Aspect_VKey VirtualKeyFromNative (unsigned long theKey)
 Convert X11 virtual key (KeySym) into Aspect_VKey. More...
 
- Static Public Member Functions inherited from Standard_Transient
static const char * get_type_name ()
 Returns a type descriptor about this object. More...
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class. More...
 

Protected Attributes

Handle< Aspect_DisplayConnectionmyDisplay
 X Display connection. More...
 
Window myXWindow
 XLib window handle. More...
 
Aspect_FBConfig myFBConfig
 GLXFBConfig. More...
 
Standard_Integer myXLeft
 left position in pixels More...
 
Standard_Integer myYTop
 top position in pixels More...
 
Standard_Integer myXRight
 right position in pixels More...
 
Standard_Integer myYBottom
 bottom position in pixels More...
 
Standard_Boolean myIsOwnWin
 flag to indicate own window handle (to be deallocated on destruction) More...
 
- Protected Attributes inherited from Aspect_Window
Aspect_Background MyBackground
 
Aspect_GradientBackground MyGradientBackground
 
Aspect_FillMethod MyBackgroundFillMethod
 
Standard_Boolean MyIsVirtual
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object. More...
 
- Protected Member Functions inherited from Aspect_Window
 Aspect_Window ()
 Initializes the datas of a Window. More...
 

Detailed Description

This class defines XLib window intended for creation of OpenGL context.

Constructor & Destructor Documentation

◆ Xw_Window() [1/2]

Xw_Window::Xw_Window ( const Handle< Aspect_DisplayConnection > &  theXDisplay,
const Standard_CString  theTitle,
const Standard_Integer  thePxLeft,
const Standard_Integer  thePxTop,
const Standard_Integer  thePxWidth,
const Standard_Integer  thePxHeight,
const Aspect_FBConfig  theFBConfig = NULL 
)

Creates a XLib window defined by his position and size in pixels. Throws exception if window can not be created or Display do not support GLX extension.

◆ Xw_Window() [2/2]

Xw_Window::Xw_Window ( const Handle< Aspect_DisplayConnection > &  theXDisplay,
const Window  theXWin,
const Aspect_FBConfig  theFBConfig = NULL 
)

Creates a wrapper over existing Window handle.

◆ ~Xw_Window()

Xw_Window::~Xw_Window ( )

Destroys the Window and all resourses attached to it.

Member Function Documentation

◆ DisplayConnection()

const Handle< Aspect_DisplayConnection >& Xw_Window::DisplayConnection ( ) const
Returns
connection to X Display

◆ DoMapping()

virtual Standard_Boolean Xw_Window::DoMapping ( ) const
overridevirtual

Apply the mapping change to the window <me>

Implements Aspect_Window.

◆ DoResize()

virtual Aspect_TypeOfResize Xw_Window::DoResize ( ) const
overridevirtual

Applies the resizing to the window <me>

Implements Aspect_Window.

◆ InvalidateContent()

virtual void Xw_Window::InvalidateContent ( const Handle< Aspect_DisplayConnection > &  theDisp)
overridevirtual

Invalidate entire window content through generation of Expose event. This method does not aggregate multiple calls into single event - dedicated event will be sent on each call. When NULL display connection is specified, the connection specified on window creation will be used. Sending exposure messages from non-window thread would require dedicated display connection opened specifically for this working thread to avoid race conditions, since Xlib display connection is not thread-safe by default.

Reimplemented from Aspect_Window.

◆ IsMapped()

virtual Standard_Boolean Xw_Window::IsMapped ( ) const
overridevirtual

Returns True if the window <me> is opened.

Implements Aspect_Window.

◆ Map()

virtual void Xw_Window::Map ( ) const
overridevirtual

Opens the window <me>

Implements Aspect_Window.

◆ NativeFBConfig()

virtual Aspect_FBConfig Xw_Window::NativeFBConfig ( ) const
inlineoverridevirtual
Returns
native Window FB config (GLXFBConfig on Xlib)

Implements Aspect_Window.

◆ NativeHandle()

virtual Aspect_Drawable Xw_Window::NativeHandle ( ) const
inlineoverridevirtual
Returns
native Window handle

Implements Aspect_Window.

◆ NativeParentHandle()

virtual Aspect_Drawable Xw_Window::NativeParentHandle ( ) const
inlineoverridevirtual
Returns
parent of native Window handle

Implements Aspect_Window.

◆ Position()

virtual void Xw_Window::Position ( Standard_Integer X1,
Standard_Integer Y1,
Standard_Integer X2,
Standard_Integer Y2 
) const
overridevirtual

Returns The Window POSITION in PIXEL.

Implements Aspect_Window.

◆ Ratio()

virtual Standard_Real Xw_Window::Ratio ( ) const
overridevirtual

Returns The Window RATIO equal to the physical WIDTH/HEIGHT dimensions.

Implements Aspect_Window.

◆ SetTitle()

virtual void Xw_Window::SetTitle ( const TCollection_AsciiString theTitle)
overridevirtual

Sets window title.

Reimplemented from Aspect_Window.

◆ Size()

virtual void Xw_Window::Size ( Standard_Integer theWidth,
Standard_Integer theHeight 
) const
overridevirtual

Returns The Window SIZE in PIXEL.

Implements Aspect_Window.

◆ Unmap()

virtual void Xw_Window::Unmap ( ) const
overridevirtual

Closes the window <me>

Implements Aspect_Window.

◆ VirtualKeyFromNative()

static Aspect_VKey Xw_Window::VirtualKeyFromNative ( unsigned long  theKey)
static

Convert X11 virtual key (KeySym) into Aspect_VKey.

◆ XWindow()

Window Xw_Window::XWindow ( ) const
Returns
native Window handle

Field Documentation

◆ myDisplay

Handle< Aspect_DisplayConnection > Xw_Window::myDisplay
protected

X Display connection.

◆ myFBConfig

Aspect_FBConfig Xw_Window::myFBConfig
protected

GLXFBConfig.

◆ myIsOwnWin

Standard_Boolean Xw_Window::myIsOwnWin
protected

flag to indicate own window handle (to be deallocated on destruction)

◆ myXLeft

Standard_Integer Xw_Window::myXLeft
protected

left position in pixels

◆ myXRight

Standard_Integer Xw_Window::myXRight
protected

right position in pixels

◆ myXWindow

Window Xw_Window::myXWindow
protected

XLib window handle.

◆ myYBottom

Standard_Integer Xw_Window::myYBottom
protected

bottom position in pixels

◆ myYTop

Standard_Integer Xw_Window::myYTop
protected

top position in pixels


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