// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _Xw_Window_HeaderFile #define _Xw_Window_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_Xw_Window_HeaderFile #include #endif #ifndef _Xw_WindowQuality_HeaderFile #include #endif #ifndef _Handle_Xw_ColorMap_HeaderFile #include #endif #ifndef _Handle_Xw_TypeMap_HeaderFile #include #endif #ifndef _Handle_Xw_WidthMap_HeaderFile #include #endif #ifndef _Handle_Xw_FontMap_HeaderFile #include #endif #ifndef _Handle_Xw_MarkMap_HeaderFile #include #endif #ifndef _Aspect_Handle_HeaderFile #include #endif #ifndef _Xw_TypeOfVisual_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Standard_Address_HeaderFile #include #endif #ifndef _Aspect_Window_HeaderFile #include #endif #ifndef _Handle_Xw_GraphicDevice_HeaderFile #include #endif #ifndef _Quantity_NameOfColor_HeaderFile #include #endif #ifndef _Standard_CString_HeaderFile #include #endif #ifndef _Quantity_Parameter_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Aspect_FillMethod_HeaderFile #include #endif #ifndef _Aspect_GradientFillMethod_HeaderFile #include #endif #ifndef _Aspect_TypeOfResize_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Handle_Aspect_PixMap_HeaderFile #include #endif #ifndef _Quantity_Ratio_HeaderFile #include #endif class Xw_ColorMap; class Xw_TypeMap; class Xw_WidthMap; class Xw_FontMap; class Xw_MarkMap; class Aspect_WindowDefinitionError; class Aspect_WindowError; class Xw_Driver; class Xw_IconBox; class Xw_PixMap; class Xw_GraphicDevice; class Aspect_Background; class Quantity_Color; class Aspect_GradientBackground; class Aspect_PixMap; //! This class defines a X11 window
//! Warning: The position and size for the creation of the window
//! are defined in Device Screen Unit (DSU)
//! floating [0,1] space.
class Xw_Window : public Aspect_Window { public: Standard_EXPORT Xw_Window(const Handle(Xw_GraphicDevice)& Device); //! Creates a Window from an X Window defined by his ID
//! This Xid equals (aPart1 << 16) + aPart2.
//! A child of this Window is created when the WindowQuality
//! isn't the same than the parent Window
//! Trigger: Raises WindowDefinitionError if the connection failed
//! or if the Position out of the Screen Space
Standard_EXPORT Xw_Window(const Handle(Xw_GraphicDevice)& Device,const Standard_Integer aPart1,const Standard_Integer aPart2,const Xw_WindowQuality aQuality = Xw_WQ_SAMEQUALITY,const Quantity_NameOfColor BackColor = Quantity_NOC_MATRAGRAY); //! Creates a Window from an X Window defined by his Xid
//! A child of this Window is created when the WindowQuality
//! isn't the same than the parent Window
//! Trigger: Raises WindowDefinitionError if the connection failed
//! or if the Position out of the Screen Space
Standard_EXPORT Xw_Window(const Handle(Xw_GraphicDevice)& Device,const Aspect_Handle aWindow,const Xw_WindowQuality aQuality = Xw_WQ_SAMEQUALITY,const Quantity_NameOfColor BackColor = Quantity_NOC_MATRAGRAY); //! Creates a Window defined by his Center and his Size
//! in DSU from the Parent Window.
//! NOTE than if Parent is 0 the window is created from the
//! ROOT Window.
//! Connects it to the X server at the first call
//! depending of the GraphicDevice Visual and
//! Display parameters.
//! Quality defined a 2D or 3D Graphics oriented Window and
//! must be one of :
//! Xw_WQ_DRAWINGQUALITY for 2D Wireframe.
//! Xw_WQ_PICTUREQUALITY for Picture.
//! Xw_WQ_3DQUALITY for 3D Shading, HiddenLines, Wireframe.
Standard_EXPORT Xw_Window(const Handle(Xw_GraphicDevice)& Device,const Standard_CString Title,const Quantity_Parameter Xc = 0.5,const Quantity_Parameter Yc = 0.5,const Quantity_Parameter Width = 0.5,const Quantity_Parameter Height = 0.5,const Xw_WindowQuality Quality = Xw_WQ_DRAWINGQUALITY,const Quantity_NameOfColor BackColor = Quantity_NOC_MATRAGRAY,const Aspect_Handle Parent = 0); //! Creates a Window defined by his position and size
//! in pixels from the Parent Window.
//! Trigger: Raises WindowDefinitionError if the connection failed
//! or if the Position out of the Screen Space
Standard_EXPORT Xw_Window(const Handle(Xw_GraphicDevice)& theDevice,const Standard_CString theTitle,const Standard_Integer thePxLeft,const Standard_Integer thePxTop,const Standard_Integer thePxWidth,const Standard_Integer thePxHeight,const Xw_WindowQuality theQuality = Xw_WQ_DRAWINGQUALITY,const Quantity_NameOfColor theBackColor = Quantity_NOC_MATRAGRAY,const Aspect_Handle theParent = 0); //! Modifies the window background.
//! Warning: the background color is ignored when the quality
//! of this window is TRANSPARENT.
Standard_EXPORT virtual void SetBackground(const Aspect_Background& Background) ; //! Modifies the window background from a Named Color.
//! Warning: the background color is ignored when the quality
//! of this window is TRANSPARENT.
Standard_EXPORT virtual void SetBackground(const Quantity_NameOfColor BackColor) ; //! Modifies the window background from a Named Color.
//! Warning: the background color is ignored when the quality
//! of this window is TRANSPARENT.
Standard_EXPORT virtual void SetBackground(const Quantity_Color& color) ; //! Defines the window background directly from a bitmap.
//! Warning: the bitmap and window must have the same depth.
Standard_EXPORT void SetBackground(const Aspect_Handle aPixmap) ; //! Loads the window background from an image file
//! defined with a supported format XWD,GIF or BMP
//! and returns TRUE if the operation is successfull.
Standard_EXPORT Standard_Boolean SetBackground(const Standard_CString aName,const Aspect_FillMethod aMethod = Aspect_FM_CENTERED) ; //! Modifies the window gradient background.
//! Warning: the gradient background colours are ignored when the quality
//! of this window is TRANSPARENT.
Standard_EXPORT virtual void SetBackground(const Aspect_GradientBackground& Background) ; //! Modifies the window gradient background.
//! Warning: the gradient background colours are ignored when the quality
//! of this window is TRANSPARENT.
Standard_EXPORT void SetBackground(const Quantity_Color& aCol1,const Quantity_Color& aCol2,const Aspect_GradientFillMethod aMethod = Aspect_GFM_HOR) ; //! Activates/Deactivates the Double Buffering capability
//! for this window.
//! Warning: Double Buffering is always DISABLE by default
//! If there is not enought ressources to activate the
//! double-buffering the DB mode flag can be set to FALSE.
Standard_EXPORT virtual void SetDoubleBuffer(const Standard_Boolean DBmode) ; //! Flushs all graphics to the screen and Swap the Double
//! buffer if Enable
//! Category: Methods to modify the class definition
//! Trigger: Raises if Something is WRONG at Drawing Time.
Standard_EXPORT virtual void Flush() const; //! Opens the window .
Standard_EXPORT virtual void Map() const; //! Closes the window .
Standard_EXPORT virtual void Unmap() const; //! Applies the resizing to the window .
Standard_EXPORT virtual Aspect_TypeOfResize DoResize() const; //! Apply the mapping change to the window
//! and returns TRUE if the window is mapped at screen.
Standard_EXPORT virtual Standard_Boolean DoMapping() const; //! Destroies the Window
//! C++: alias ~
//! Category: Methods to modify the class definition
//! Trigger: Raises if Window is not defined properly
Standard_EXPORT virtual void Destroy() ; //! Clears the Window in the Background color
Standard_EXPORT virtual void Clear() const; //! Clears the Window Area defined by his center and PIXEL size
//! in the Background color
//! Category: Methods to modify the class definition
//! Trigger: Raises if Window is not defined properly
Standard_EXPORT virtual void ClearArea(const Standard_Integer Xc,const Standard_Integer Yc,const Standard_Integer Width,const Standard_Integer Height) const; //! Restores The Window from the BackingStored Window
//! See BackingStore () method.
Standard_EXPORT virtual void Restore() const; //! Restores The Window Area defined by his center
//! and PIXEL size from the BackingStored Window
//! See BackingStore () method.
Standard_EXPORT virtual void RestoreArea(const Standard_Integer Xc,const Standard_Integer Yc,const Standard_Integer Width,const Standard_Integer Height) const; //! Dumps the Window to an XWD,GIF or BMP file with
//! an optional gamma correction value according to the graphic system.
//! and returns TRUE if the dump occurs normaly.
//! Category: Methods to modify the class definition
//! Trigger: Raises if Window is not defined properly
Standard_EXPORT virtual Standard_Boolean Dump(const Standard_CString aFilename,const Standard_Real aGammaValue = 1.0) const; //! Dumps the Window Area defined by his center and PIXEL size
//! to an XWD,GIF or BMP file with
//! an optional gamma correction value according to the graphic system.
//! and returns TRUE if the dump occurs normaly.
//! Category: Methods to modify the class definition
//! Trigger: Raises if Window is not defined properly
//! or the area is out of the Window.
Standard_EXPORT virtual Standard_Boolean DumpArea(const Standard_CString aFilename,const Standard_Integer Xc,const Standard_Integer Yc,const Standard_Integer Width,const Standard_Integer Height,const Standard_Real aGammaValue = 1.0) const; //! dump the full contents of the window to a pixmap.
Standard_EXPORT virtual Handle_Aspect_PixMap ToPixMap() const; //! Loads the XWD file to this Window.
//! Returns TRUE if the loading occurs normaly.
//! Warning: Note that the Window is enlarged automatically
//! when the image size is too large for this window.
//! Category: Methods to modify the class definition
//! Trigger: Raises if Window is not defined properly
Standard_EXPORT virtual Standard_Boolean Load(const Standard_CString aFilename) const; //! Loads the XWD file to Window Area defined by his center
//! and PIXEL size.
//! Returns TRUE if the loading occurs normaly.
//! Warning: Note that the Image is zoomed automatically
//! when the image size is too large for this window area.
//! Category: Methods to modify the class definition
//! Trigger: Raises if Window is not defined properly
//! or the area is out of the Window.
Standard_EXPORT virtual Standard_Boolean LoadArea(const Standard_CString aFilename,const Standard_Integer Xc,const Standard_Integer Yc,const Standard_Integer Width,const Standard_Integer Height) const; //! Changes the current window cursor by anId cursor
//! in the specified color.
//! NOTE than anId must be one of /usr/include/X11/cursorfont.h
//! or 0 for Deactivate the cursor
Standard_EXPORT virtual void SetCursor(const Standard_Integer anId,const Quantity_NameOfColor aColor = Quantity_NOC_YELLOW) const; //! Returns the BackingStore capability for this Window.
//! If Answer is True Exposure can be recovered by
//! Restore RestoreArea methods.
//! If Answer is False, Application must Redraw the
//! exposed area.
Standard_EXPORT virtual Standard_Boolean BackingStore() const; //! Returns the DoubleBuffer state.
Standard_EXPORT virtual Standard_Boolean DoubleBuffer() const; //! Returns True if the window is opened
//! and False if the window is closed.
Standard_EXPORT virtual Standard_Boolean IsMapped() const; //! Returns The Window RATIO equal to the physical
//! WIDTH/HEIGHT dimensions
Standard_EXPORT virtual Quantity_Ratio Ratio() const; //! Returns The Window POSITION in DSU
Standard_EXPORT virtual void Position(Quantity_Parameter& X1,Quantity_Parameter& Y1,Quantity_Parameter& X2,Quantity_Parameter& Y2) const; //! Returns The Window POSITION in PIXEL
Standard_EXPORT virtual void Position(Standard_Integer& X1,Standard_Integer& Y1,Standard_Integer& X2,Standard_Integer& Y2) const; //! Returns The Window SIZE in DSU
Standard_EXPORT virtual void Size(Quantity_Parameter& Width,Quantity_Parameter& Height) const; //! Returns The Window SIZE in PIXEL
Standard_EXPORT virtual void Size(Standard_Integer& Width,Standard_Integer& Height) const; //! Returns The Window SIZE in MM
Standard_EXPORT virtual void MMSize(Standard_Real& Width,Standard_Real& Height) const; //! Returns the DSU value depending of the PIXEL value.
Standard_EXPORT virtual Quantity_Parameter Convert(const Standard_Integer PV) const; //! Returns the PIXEL value depending of the DSU value.
Standard_EXPORT virtual Standard_Integer Convert(const Quantity_Parameter DV) const; //! Returns the DSU position depending of the PIXEL position.
Standard_EXPORT virtual void Convert(const Standard_Integer PX,const Standard_Integer PY,Quantity_Parameter& DX,Quantity_Parameter& DY) const; //! Returns the PIXEL position depending of the DSU position.
Standard_EXPORT virtual void Convert(const Quantity_Parameter DX,const Quantity_Parameter DY,Standard_Integer& PX,Standard_Integer& PY) const; //! Returns the X window ID of the created window .
Standard_EXPORT Aspect_Handle XWindow() const; //! Returns the X window ID of the created window .
//! This Xid equals (aPart1 << 16) + aPart2.
Standard_EXPORT void XWindow(Standard_Integer& aPart1,Standard_Integer& aPart2) const; //! Returns the X window ID parent of the created window .
Standard_EXPORT Aspect_Handle XParentWindow() const; //! Returns the X window ID parent of the created window .
//! This Xid equals (aPart1 << 16) + aPart2.
Standard_EXPORT void XParentWindow(Standard_Integer& aPart1,Standard_Integer& aPart2) const; //! Returns the X pixmap ID of the created window .
//! If BackingStore () is permitted.
Standard_EXPORT Aspect_Handle XPixmap() const; //! Returns the Pointer position relatively to the Window
//! and FALSE if the pointer is outside of the window
Standard_EXPORT virtual Standard_Boolean PointerPosition(Standard_Integer& X,Standard_Integer& Y) const; //! Returns the Colormap attached to this Window
Standard_EXPORT Handle_Xw_ColorMap ColorMap() const; //! Returns the Typemap attached to this Window
Standard_EXPORT Handle_Xw_TypeMap TypeMap() const; //! Returns the Widthmap attached to this Window
Standard_EXPORT Handle_Xw_WidthMap WidthMap() const; //! Returns the Fontmap attached to this Window
Standard_EXPORT Handle_Xw_FontMap FontMap() const; //! Returns the Markmap attached to this Window
Standard_EXPORT Handle_Xw_MarkMap MarkMap() const; //! Returns the Colormap XId attached to this Window
//! depending of the HardWare and Visual class
//! Trigger: Raises if Window is not defined properly
Standard_EXPORT Aspect_Handle XColorMap() const; //! Returns the Visual address attached to this Window
//! depending of the HardWare
//! Trigger: Raises if Window is not defined properly
Standard_EXPORT Standard_Address XVisual() const; //! Returns the X window Visual class of the created window
Standard_EXPORT Xw_TypeOfVisual VisualClass() const; //! Returns the X window Visual depth of the created window
Standard_EXPORT Standard_Integer VisualDepth() const; //! Returns the Visual ID of the Window
Standard_EXPORT Standard_Integer VisualID() const; //! Returns the Quality of this window
Standard_EXPORT Xw_WindowQuality Quality() const; //! Returns FALSE when the returned pixel value
//! of an RGB color is exact or TRUE
//! when the pixel value is approximated.
Standard_EXPORT Standard_Boolean PixelOfColor(const Quantity_NameOfColor aColor,Standard_Integer& aPixel) const; //! Returns FALSE when the returned pixel value
//! of an RGB color is exact or TRUE
//! when the pixel value is approximated.
//! Warning:
//! make becarefull about the number of different pixel
//! of colors reserved in the colormap in PseudoColor mode !!!
Standard_EXPORT Standard_Boolean PixelOfColor(const Quantity_Color& aColor,Standard_Integer& aPixel) const; //! Returns FALSE when the returned background pixel
//! value is not defined
Standard_EXPORT Standard_Boolean BackgroundPixel(Standard_Integer& aPixel) const; friend class Xw_Driver; friend class Xw_IconBox; friend class Xw_PixMap; DEFINE_STANDARD_RTTI(Xw_Window) protected: //! Returns the ExtendedWindow address of the created window.
Standard_EXPORT Standard_Address ExtendedWindow() const; //! Returns the ExtendedColorMap address of the created window.
Standard_EXPORT Standard_Address ExtendedColorMap() const; //! Returns the ExtendedTypeMap address of the created window.
Standard_EXPORT Standard_Address ExtendedTypeMap() const; //! Returns the ExtendedWidthMap address of the created window.
Standard_EXPORT Standard_Address ExtendedWidthMap() const; //! Returns the ExtendedFontMap address of the created window.
Standard_EXPORT Standard_Address ExtendedFontMap() const; //! Returns the ExtendedMarkMap address of the created window.
Standard_EXPORT Standard_Address ExtendedMarkMap() const; //! Print last error or raise depending of the error gravity.
Standard_EXPORT static void PrintError() ; Xw_WindowQuality MyQuality; Handle_Xw_ColorMap MyColorMap; Handle_Xw_TypeMap MyTypeMap; Handle_Xw_WidthMap MyWidthMap; Handle_Xw_FontMap MyFontMap; Handle_Xw_MarkMap MyMarkMap; Aspect_Handle MyXWindow; Aspect_Handle MyXParentWindow; Aspect_Handle MyXPixmap; Xw_TypeOfVisual MyVisualClass; Standard_Integer MyDepth; Standard_Integer MyBackgroundIndex; Standard_Address MyExtendedDisplay; Standard_Address MyExtendedWindow; Standard_Address MyExtendedColorMap; Standard_Address MyExtendedTypeMap; Standard_Address MyExtendedWidthMap; Standard_Address MyExtendedFontMap; Standard_Address MyExtendedMarkMap; private: Standard_EXPORT void SetWindow(const Aspect_Handle aWindow,const Xw_WindowQuality aQuality,const Quantity_NameOfColor BackColor) ; Standard_EXPORT void SetWindow(const Standard_CString Title,const Quantity_Parameter Xc,const Quantity_Parameter Yc,const Quantity_Parameter Width,const Quantity_Parameter Height,const Xw_WindowQuality Quality,const Quantity_NameOfColor BackColor,const Aspect_Handle Parent) ; //! Initialise the fileds of class
Standard_EXPORT void Init() ; }; // other Inline functions and methods (like "C++: function call" methods) #endif