// 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 _WNT_WDriver_HeaderFile #define _WNT_WDriver_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_WNT_WDriver_HeaderFile #include #endif #ifndef _Standard_Address_HeaderFile #include #endif #ifndef _Handle_WNT_Window_HeaderFile #include #endif #ifndef _Standard_Real_HeaderFile #include #endif #ifndef _Handle_WNT_HColorTable_HeaderFile #include #endif #ifndef _Handle_WNT_HFontTable_HeaderFile #include #endif #ifndef _Handle_TColStd_HArray1OfInteger_HeaderFile #include #endif #ifndef _Handle_WNT_HListOfMFTFonts_HeaderFile #include #endif #ifndef _Handle_TShort_HArray1OfShortReal_HeaderFile #include #endif #ifndef _Handle_WNT_TextManager_HeaderFile #include #endif #ifndef _Aspect_WindowDriver_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif #ifndef _Aspect_TypeOfResize_HeaderFile #include #endif #ifndef _Aspect_TypeOfDrawMode_HeaderFile #include #endif #ifndef _Quantity_PlaneAngle_HeaderFile #include #endif #ifndef _Quantity_Factor_HeaderFile #include #endif #ifndef _Handle_Standard_Transient_HeaderFile #include #endif #ifndef _Standard_CString_HeaderFile #include #endif #ifndef _Standard_ShortReal_HeaderFile #include #endif #ifndef _Aspect_TypeOfText_HeaderFile #include #endif #ifndef _Quantity_Ratio_HeaderFile #include #endif #ifndef _Handle_Aspect_ColorMap_HeaderFile #include #endif #ifndef _Handle_Aspect_TypeMap_HeaderFile #include #endif #ifndef _Handle_Aspect_WidthMap_HeaderFile #include #endif #ifndef _Handle_Aspect_FontMap_HeaderFile #include #endif #ifndef _Handle_Aspect_MarkMap_HeaderFile #include #endif #ifndef _Quantity_Length_HeaderFile #include #endif #ifndef _Handle_MFT_FontManager_HeaderFile #include #endif class WNT_Window; class WNT_HColorTable; class WNT_HFontTable; class TColStd_HArray1OfInteger; class WNT_HListOfMFTFonts; class TShort_HArray1OfShortReal; class WNT_TextManager; class Aspect_DriverDefinitionError; class Aspect_DriverError; class Standard_Transient; class TShort_Array1OfShortReal; class TCollection_ExtendedString; class Aspect_ColorMap; class Aspect_TypeMap; class Aspect_WidthMap; class Aspect_FontMap; class Aspect_MarkMap; class MFT_FontManager; //! This class defines Windows NT window driver
class WNT_WDriver : public Aspect_WindowDriver { public: //! Creates Windows NT window driver associated
//! with the Windows NT window
Standard_EXPORT WNT_WDriver(const Handle(WNT_Window)& aWindow); //! Destroy the Driver
Standard_EXPORT virtual void Destroy() ; ~WNT_WDriver() { Destroy(); } //! Selects RetainBuffer for output
Standard_EXPORT Standard_Address SelectBuffer(const Standard_Integer aRetainBuffer) const; //! Begin graphics and drawn directly to the Window or Pixmap if
Standard_EXPORT virtual void BeginDraw(const Standard_Boolean aDoubleBuffer = Standard_True,const Standard_Integer aRetainBuffer = 0) ; //! Called by the method Graphic2d_View::Update, this
//! method manages the buffer flushing and Wait after up to date
//! display when Synchronize is TRUE.
Standard_EXPORT virtual void EndDraw(const Standard_Boolean aSynchronize = Standard_False) ; //! Resizes the WorkSpace depending of the Window size
//! MUST be call after a Resize or Move WindowDriver Event
//! Returns the TypeOfResize gravity mode.
//! Trigger: Raises if the type of resizing is unknown.
Standard_EXPORT virtual Aspect_TypeOfResize ResizeSpace() ; //! Sets the highlight color for the drawing. Returns False
//! if the graphic device does not support palette mechanism.
Standard_EXPORT Standard_Boolean SetHighlightColor(const Standard_Integer aColorIdx) const; //! Change the current drawing mode of the Driver
//! TODM_REPLACE : the primitive is drawn with his defined color.
//! TODM_ERASE : the primitive is erased from the window.
//! TODM_XOR : the primitive is xored to the window.
//! TODM_XORLIGHT: the primitive is xored depending of the current
//! highlight and background colors.
Standard_EXPORT virtual void SetDrawMode(const Aspect_TypeOfDrawMode aMode) ; //! Sets the line attributes.
//! Category: Methods to set the line attributes
//! Trigger: Raises if one of the index is out of range.
Standard_EXPORT virtual void SetLineAttrib(const Standard_Integer ColorIndex,const Standard_Integer TypeIndex,const Standard_Integer WidthIndex) ; //! Sets the text attributes.
//! Category: Methods to set the text attributes
//! Trigger: Raises if one of the index is out of range.
Standard_EXPORT virtual void SetTextAttrib(const Standard_Integer ColorIndex,const Standard_Integer FontIndex) ; //! Sets the Extended text attributes.
//! Category: Methods to set the text attributes
//! Trigger: Raises if one of the index is out of range.
Standard_EXPORT virtual void SetTextAttrib(const Standard_Integer ColorIndex,const Standard_Integer FontIndex,const Quantity_PlaneAngle aSlant,const Quantity_Factor aHScale,const Quantity_Factor aWScale,const Standard_Boolean isUnderlined = Standard_False) ; //! Sets the polygon attributes.
//! Warning:
//! is the background poly color index.
//! is the background poly fill rule index.
//! If is TRUE the edge of the poly is drawn with the
//! current line attributes.
//! Category: Methods to set the poly attributes
//! Trigger: Raises if one of the index is out of range.
Standard_EXPORT virtual void SetPolyAttrib(const Standard_Integer ColorIndex,const Standard_Integer TileIndex,const Standard_Boolean DrawEdgeFlag = Standard_False) ; //! Sets the polygon attributes.
//! Warning:
//! way to fill consecutive lines
//! Category: Methods to set the poly attributes
//! Trigger: Raises if one of the index is out of range.
Standard_EXPORT void SetPolyAttrib(const Standard_Integer ColorIndex,const Standard_Integer TileIndex,const Standard_Integer PolygonMode,const Standard_Boolean DrawEdgeFlag = Standard_False) ; //! Sets the marker attributes.
//! Warning:
//! is the edge or fill marker color index.
//! is the edge marker thickness index.
//! If is TRUE the marker is filled on the first set
//! of consecutive drawn points.
//! Trigger: Raises if one of the index is out of range.
Standard_EXPORT virtual void SetMarkerAttrib(const Standard_Integer ColorIndex,const Standard_Integer EdgeWidthIndex,const Standard_Boolean FillMarker = Standard_False) ; //! Returns Standard_True if the associated driver
//! have stored the image and Standard_False if not.
Standard_EXPORT virtual Standard_Boolean IsKnownImage(const Handle(Standard_Transient)& anImage) ; //! Returns Standard_True and the Image Size in PIXEL
//! if the image file exist and can be computed by the driver,
//! NOTE that only XWD and DIB image file type are recognized
//! today.
Standard_EXPORT virtual Standard_Boolean SizeOfImageFile(const Standard_CString anImageFile,Standard_Integer& aWidth,Standard_Integer& aHeight) const; //! Clears the image in .
Standard_EXPORT virtual void ClearImage(const Handle(Standard_Transient)& anImageId) ; //! Clears the image associated with the image file.
Standard_EXPORT virtual void ClearImageFile(const Standard_CString anImageFile) ; //! Draws the image in .
//! , is the center of the image.
//! Image center must be defined in DWU space.
Standard_EXPORT virtual void DrawImage(const Handle(Standard_Transient)& anImageId,const Standard_ShortReal aX,const Standard_ShortReal aY) ; //! Draws the image file in .
//! , is the center of the image.
//! the scale factor which is apply on this image
//! Image center must be defined in DWU space.
//! anImageFile must be defined with the full pathname
//! of the form dev:\path\name.ext or $DIR\name.ext
//! with DIR defined in a setenv variable.
Standard_EXPORT virtual void DrawImageFile(const Standard_CString anImageFile,const Standard_ShortReal aX,const Standard_ShortReal aY,const Quantity_Factor aScale = 1.0) ; //! Stores a complete image and draws it in .
//! Image size must be defined in DWU space>
//! Trigger: Raises if the creation of the image failed.
Standard_EXPORT virtual void FillAndDrawImage(const Handle(Standard_Transient)& anImageId,const Standard_ShortReal aX,const Standard_ShortReal aY,const Standard_Integer Width,const Standard_Integer Height,const Standard_Address anArrayOfPixels) ; //! Stores a line of an image and draws it in .
//! Warning: 0<= anIndexOfLine < aHeight
//! anIndexOfLine = 0 must be the first call
//! Trigger: Raises if the creation of the image failed.
Standard_EXPORT virtual void FillAndDrawImage(const Handle(Standard_Transient)& anImageId,const Standard_ShortReal aX,const Standard_ShortReal aY,const Standard_Integer anIndexOfLine,const Standard_Integer Width,const Standard_Integer Height,const Standard_Address anArrayOfPixels) ; //! Draws the polyline depending of SetLineAttrib() attributes.
//! Warning: Coordinates must be defined in DWU space.
//! Trigger: Raises if Polyline has too many points (> 1024)
//! Raises if the length of is not equal to
//! the length of .
Standard_EXPORT virtual void DrawPolyline(const TShort_Array1OfShortReal& ListX,const TShort_Array1OfShortReal& ListY) ; //! Draws the polygone depending of SetPolyAttrib() attributes.
//! Warning: Coordinates must be defined in DWU space.
//! Trigger: Raises if Polygone has too many points (> 1024)
//! Raises if the length of is not equal to
//! the length of .
Standard_EXPORT virtual void DrawPolygon(const TShort_Array1OfShortReal& ListX,const TShort_Array1OfShortReal& ListY) ; //! Draws the segment depending of SetLineAttrib() attributes.
//! Warning: Coordinates must be defined in DWU space.
Standard_EXPORT virtual void DrawSegment(const Standard_ShortReal X1,const Standard_ShortReal Y1,const Standard_ShortReal X2,const Standard_ShortReal Y2) ; //! Draws the text depending of SetTextAttrib() attributes.
//! Warning: Coordinates must be defined in DWU space.
//! Trigger: Raises if Text has too many chars (> 1024)
Standard_EXPORT virtual void DrawText(const TCollection_ExtendedString& Text,const Standard_ShortReal Xpos,const Standard_ShortReal Ypos,const Standard_ShortReal anAngle = 0.0,const Aspect_TypeOfText aType = Aspect_TOT_SOLID) ; //! Draws the text depending of SetTextAttrib() attributes.
//! Warning: Coordinates must be defined in DWU space.
//! Angle must be defined in RADIAN.
//! Trigger: Raises if Text has too many chars (> 1024)
Standard_EXPORT virtual void DrawText(const Standard_CString Text,const Standard_ShortReal Xpos,const Standard_ShortReal Ypos,const Standard_ShortReal anAngle = 0.0,const Aspect_TypeOfText aType = Aspect_TOT_SOLID) ; //! Draws an framed text depending of the
//! SetTextAttrib() and SetPolyAttrib() attributes.
//! Warning: Coordinates must be defined in DWU space.
//! defines the ratio of the space between the
//! polygon borders and the bounding box of the text and
//! depending of the height of the text.
//! Trigger: Raises if Text has too many chars (> 1024)
//! or 1.
Standard_EXPORT virtual void DrawPolyText(const TCollection_ExtendedString& aText,const Standard_ShortReal Xpos,const Standard_ShortReal Ypos,const Quantity_Ratio aMarge = 0.1,const Standard_ShortReal anAngle = 0.0,const Aspect_TypeOfText aType = Aspect_TOT_SOLID) ; //! Draws an framed text depending of the
//! SetTextAttrib() and SetPolyAttrib() attributes.
//! Warning: Coordinates must be defined in DWU space.
//! defines the ratio of the space between the
//! polygon borders and the bounding box of the text and
//! depending of the height of the text.
//! Trigger: Raises if Text has too many chars (> 1024)
//! or 1.
Standard_EXPORT virtual void DrawPolyText(const Standard_CString aText,const Standard_ShortReal Xpos,const Standard_ShortReal Ypos,const Quantity_Ratio aMarge = 0.1,const Standard_ShortReal anAngle = 0.0,const Aspect_TypeOfText aType = Aspect_TOT_SOLID) ; //! Draws a 1 PIXEL point depending of the SetMarkerAttrib()
//! color attribute or add a point depending of the incremental
//! BeginXxxxxx() primitive used.
Standard_EXPORT virtual void DrawPoint(const Standard_ShortReal X,const Standard_ShortReal Y) ; //! Draws the previously defined marker depending of
//! the SetMarkerAttrib() attributes.
//! Warning: Coordinates and sizes must be defined in DWU space.
//! Angle must be defined in RADIAN.
//! A one pixel marker is drawn when aMarker index is undefined.
Standard_EXPORT virtual void DrawMarker(const Standard_Integer aMarker,const Standard_ShortReal Xpos,const Standard_ShortReal Ypos,const Standard_ShortReal Width,const Standard_ShortReal Height,const Standard_ShortReal Angle = 0.0) ; //! Draws an Ellipsoid arc of center and Radius
//! of relative angle from
//! the base angle
//! Warning: Returns FALSE if the hardware can't drawing this
//! primitive properly,application must to simulate it.
//! Trigger: Raises if one of is <= 0.
Standard_EXPORT virtual Standard_Boolean DrawArc(const Standard_ShortReal X,const Standard_ShortReal Y,const Standard_ShortReal aXradius,const Standard_ShortReal aYradius,const Standard_ShortReal aStartAngle = 0.0,const Standard_ShortReal anOpenAngle = 6.283185) ; //! Draws an filled Ellipsoid arc of center and Radius
//! of relative angle from
//! the base angle and depending of the
//! SetPolyAttrib() attributes.
//! Warning: Returns FALSE if the hardware can't drawing this
//! primitive properly,application must to simulate it.
//! Trigger: Raises if one of is <= 0.
Standard_EXPORT virtual Standard_Boolean DrawPolyArc(const Standard_ShortReal X,const Standard_ShortReal Y,const Standard_ShortReal anXradius,const Standard_ShortReal anYradius,const Standard_ShortReal aStartAngle = 0.0,const Standard_ShortReal anOpenAngle = 6.283185) ; //! Begin a polyline primitive of of points.
//! Warning: Points must be added by the DrawPoint() method.
Standard_EXPORT virtual void BeginPolyline(const Standard_Integer aNumber) ; //! Begin a polygon primitive of of points .
//! Warning: Points must be added by the DrawPoint() method.
Standard_EXPORT virtual void BeginPolygon(const Standard_Integer aNumber) ; //! Begin a set of segments .
//! Warning: Segments must be added by DrawSegment() method.
Standard_EXPORT virtual void BeginSegments() ; //! Begin a set of circles or ellips .
//! Warning: Arcs must be added by the DrawArc() method.
Standard_EXPORT virtual void BeginArcs() ; //! Begin a set of polygon circles or ellips .
//! Warning: Arcs must be added by the DrawPolyArc() method.
Standard_EXPORT virtual void BeginPolyArcs() ; //! Begin a set of markers .
//! Warning: Markers must be added by the DrawMarker() method.
Standard_EXPORT virtual void BeginMarkers() ; //! Begin a set of points .
//! Warning: Points must be added by the DrawPoint() method.
Standard_EXPORT virtual void BeginPoints() ; //! Close the last Begining primitive
//! Trigger: Raises if no primitive have been opened by BeginXxxxxx().
Standard_EXPORT virtual void ClosePrimitive() ; //! Allocate the retain buffer ,
//! Defines the DWU coordinates of the pivot point for all primitives
//! contains inside.
//! Defines the buffer color and font index :
//! the default color is the highlight color of the colormap.
//! the default font is the default system font of the fontmap.
//! The other attributes are fixed :
//! line type is Solid,
//! line width is 1 Pixel,
//! polygon fill mode is Solid,
//! Returns TRUE if the buffer is allocated and enabled for drawing.
Standard_EXPORT virtual Standard_Boolean OpenBuffer(const Standard_Integer aRetainBuffer,const Standard_ShortReal aPivotX = 0.0,const Standard_ShortReal aPivotY = 0.0,const Standard_Integer aWidthIndex = 0,const Standard_Integer aColorIndex = 0,const Standard_Integer aFontIndex = 0,const Aspect_TypeOfDrawMode aDrawMode = Aspect_TODM_REPLACE) ; //! Allocate the retain buffer ,
//! Defines the DWU coordinates of the pivot point for all primitives
//! contains inside.
//! Defines the buffer color and font index :
//! the default color is the highlight color of the colormap.
//! the default font is the default system font of the fontmap.
//! the default line type,
//! the default line width,
//! the default polygon fill mode,
//! Returns TRUE if the buffer is allocated and enabled for drawing.
Standard_EXPORT Standard_Boolean OpenColorBuffer(const Standard_Integer aRetainBuffer,const Standard_ShortReal aPivotX = 0.0,const Standard_ShortReal aPivotY = 0.0,const Standard_Integer aWidthIndex = 0,const Standard_Integer aColorIndex = 0,const Standard_Integer aFontIndex = 0,const Aspect_TypeOfDrawMode aDrawMode = Aspect_TODM_REPLACE) ; //! Clear & Deallocate the retain buffer .
Standard_EXPORT virtual void CloseBuffer(const Standard_Integer aRetainBuffer) const; //! Erase & Clear ALL primitives retains in the buffer .
Standard_EXPORT virtual void ClearBuffer(const Standard_Integer aRetainBuffer) const; //! Draw ALL primitives retains in the buffer .
//! Warning: Note that the aspect of a retain buffer drawing is
//! mono-colored with the current buffer Attributes and
//! Depending of the DoubleBuffer state flag at the BeginDraw() buffer time,
//! when DB is TRUE,an XOR method is use for drawing and erasing buffers in the
//! same way.In this case,some color side effect can occurs depending of the
//! traversal primitive colors and the supported hardware.
//! when DB is FALSE and the background drawing has been generated with
//! DB at TRUE,no color side effect occurs because the DB is used for restoring
//! the drawing context at EraseBuffer() time,this is more powerfull for the
//! drawing quality excepted for large buffers (flicking) .
Standard_EXPORT virtual void DrawBuffer(const Standard_Integer aRetainBuffer) const; //! Erase ALL primitives retains in the buffer .
Standard_EXPORT virtual void EraseBuffer(const Standard_Integer aRetainBuffer) const; //! Erase , Translate and reDraw ALL primitives retains in the buffer
//! .
//! are the new DWU attached point absolute coordinates
//! of the buffer pivot point.
Standard_EXPORT virtual void MoveBuffer(const Standard_Integer aRetainBuffer,const Standard_ShortReal aPivotX = 0.0,const Standard_ShortReal aPivotY = 0.0) const; //! Erase , Scale the buffer from the Pivot point and reDraw ALL primitives
//! retains in the buffer .
//! are the absolute scale factors apply on the two axis.
//! Warning: Note that the scalling of some primitives can provided some bad
//! smoothing side effect (i.e: Circles,...)
Standard_EXPORT virtual void ScaleBuffer(const Standard_Integer aRetainBuffer,const Quantity_Factor aScaleX = 1.0,const Quantity_Factor aScaleY = 1.0) const; //! Erase , Rotate the buffer from the Pivot point and reDraw ALL primitives
//! retains in the buffer .
//! is the absolute counter-clockwise rotation angle from the
//! Horizontal axis.
Standard_EXPORT virtual void RotateBuffer(const Standard_Integer aRetainBuffer,const Quantity_PlaneAngle anAngle = 0.0) const; //! Returns the Available WorkSpace in DWU coordinates
Standard_EXPORT virtual void WorkSpace(Quantity_Length& Width,Quantity_Length& Heigth) const; //! Returns the DWU value depending of
//! the PIXEL value.
Standard_EXPORT virtual Quantity_Length Convert(const Standard_Integer PV) const; //! Returns the PIXEL value depending of
//! the DWU value.
Standard_EXPORT virtual Standard_Integer Convert(const Quantity_Length DV) const; //! Returns the DWU position depending of
//! the PIXEL position .
Standard_EXPORT virtual void Convert(const Standard_Integer PX,const Standard_Integer PY,Quantity_Length& DX,Quantity_Length& DY) const; //! Returns the PIXEL position depending of
//! the DWU position .
Standard_EXPORT virtual void Convert(const Quantity_Length DX,const Quantity_Length DY,Standard_Integer& PX,Standard_Integer& PY) const; //! Returns TRUE if the retain buffer is enabled
Standard_EXPORT virtual Standard_Boolean BufferIsOpen(const Standard_Integer aRetainBuffer) const; //! Returns TRUE if the retain buffer has not been opened or empty.
//! Returns FALSE if a lot of primitives have been stored inside
//! because a BeginDraw(..,) has been done previously.
Standard_EXPORT virtual Standard_Boolean BufferIsEmpty(const Standard_Integer aRetainBuffer) const; //! Returns TRUE if the retain buffer s actually displayed at screen.
Standard_EXPORT virtual Standard_Boolean BufferIsDrawn(const Standard_Integer aRetainBuffer) const; //! Returns the current buffer rotate angle from the X axis.
Standard_EXPORT virtual void AngleOfBuffer(const Standard_Integer aRetainBuffer,Quantity_PlaneAngle& anAngle) const; //! Returns the current buffer scale factors.
Standard_EXPORT virtual void ScaleOfBuffer(const Standard_Integer aRetainBuffer,Quantity_Factor& aScaleX,Quantity_Factor& aScaleY) const; //! Returns the current buffer position.
Standard_EXPORT virtual void PositionOfBuffer(const Standard_Integer aRetainBuffer,Standard_ShortReal& aPivotX,Standard_ShortReal& aPivotY) const; //! Returns the TEXT size in DWU space depending
//! of the required FontIndex if aFontIndex is >= 0
//! or the current FontIndex if < 0 (default).
//! Trigger: Raises if font is not defined.
Standard_EXPORT virtual void TextSize(const TCollection_ExtendedString& aText,Standard_ShortReal& aWidth,Standard_ShortReal& aHeight,const Standard_Integer aFontIndex = -1) const; //! Returns the TEXT size and offsets
//! in DWU space depending
//! of the required FontIndex if aFontIndex is >= 0
//! or the current FontIndex if < 0 (default).
//! Trigger: Raises if font is not defined.
Standard_EXPORT virtual void TextSize(const TCollection_ExtendedString& aText,Standard_ShortReal& aWidth,Standard_ShortReal& aHeight,Standard_ShortReal& anXoffset,Standard_ShortReal& anYoffset,const Standard_Integer aFontIndex = -1) const; //! Returns the TEXT size in DWU space depending
//! of the required FontIndex if aFontIndex is >= 0
//! or the current FontIndex if < 0 (default).
//! Trigger: Raises if font is not defined.
Standard_EXPORT virtual void TextSize(const Standard_CString aText,Standard_ShortReal& aWidth,Standard_ShortReal& aHeight,Standard_ShortReal& anXoffset,Standard_ShortReal& anYoffset,const Standard_Integer aFontIndex = -1) const; //! Returns the font string,slant,size and
//! baseline height in DWU space depending
//! of the required FontIndex if aFontIndex is >= 0
//! or the current FontIndex if < 0 (default).
//! Trigger: Raises if font is not defined.
Standard_EXPORT virtual Standard_CString FontSize(Quantity_PlaneAngle& aSlant,Standard_ShortReal& aSize,Standard_ShortReal& aBheight,const Standard_Integer aFontIndex = -1) const; //! Returns the min and max driver virtual color indexs.
Standard_EXPORT virtual void ColorBoundIndexs(Standard_Integer& aMinIndex,Standard_Integer& aMaxIndex) const; //! Returns the local colormap hardware index from a virtual driver color
//! index or returns -1 if the index is not defined.
Standard_EXPORT virtual Standard_Integer LocalColorIndex(const Standard_Integer anIndex) const; //! Returns the min and max driver virtual font indexs.
Standard_EXPORT virtual void FontBoundIndexs(Standard_Integer& aMinIndex,Standard_Integer& aMaxIndex) const; //! Returns the associated fontmap hardware index from a virtual driver font
//! index or returns -1 if the index is not defined.
Standard_EXPORT virtual Standard_Integer LocalFontIndex(const Standard_Integer anIndex) const; //! Returns the min and max driver virtual type indexs.
Standard_EXPORT virtual void TypeBoundIndexs(Standard_Integer& aMinIndex,Standard_Integer& aMaxIndex) const; //! Returns the associated typemap hardware index from a virtual driver type
//! index or returns -1 if the index is not defined.
Standard_EXPORT virtual Standard_Integer LocalTypeIndex(const Standard_Integer anIndex) const; //! Returns the min and max driver virtual width indexs.
Standard_EXPORT virtual void WidthBoundIndexs(Standard_Integer& aMinIndex,Standard_Integer& aMaxIndex) const; //! Returns the associated widthmap hardware index from a virtual driver width
//! index or returns -1 if the index is not defined.
Standard_EXPORT virtual Standard_Integer LocalWidthIndex(const Standard_Integer anIndex) const; //! Returns the min and max driver virtual marker indexs.
Standard_EXPORT virtual void MarkBoundIndexs(Standard_Integer& aMinIndex,Standard_Integer& aMaxIndex) const; //! Returns the local markmap hardware index from a virtual driver marker
//! index or returns -1 if the index is not defined.
Standard_EXPORT virtual Standard_Integer LocalMarkIndex(const Standard_Integer anIndex) const; Standard_EXPORT const Handle_WNT_TextManager& TextManager() ; Standard_EXPORT const Handle_MFT_FontManager& MFT_Font(const Standard_Integer anIndex) ; Standard_EXPORT Standard_ShortReal MFT_Size(const Standard_Integer anIndex) ; DEFINE_STANDARD_RTTI(WNT_WDriver) protected: //! Defines the color map.
//! Level: Public
//! Trigger: Raises if the definition failed.
Standard_EXPORT virtual void InitializeColorMap(const Handle(Aspect_ColorMap)& Colormap) ; //! Defines the line type map.
//! Level: Public
//! Trigger: Raises if the definition failed.
Standard_EXPORT virtual void InitializeTypeMap(const Handle(Aspect_TypeMap)& Typemap) ; //! Defines the width line map.
//! Level: Public
//! Trigger: Raises if the definition failed.
Standard_EXPORT virtual void InitializeWidthMap(const Handle(Aspect_WidthMap)& Widthmap) ; //! Defines the font map.
//! Level: Public
//! Trigger: Raises if the definition failed.
Standard_EXPORT virtual void InitializeFontMap(const Handle(Aspect_FontMap)& Fontmap) ; //! Defines the mark map.
//! Level: Public
//! Trigger: Raises if the definition failed.
Standard_EXPORT virtual void InitializeMarkMap(const Handle(Aspect_MarkMap)& Markmap) ; private: Standard_EXPORT Standard_Address InternalOpenBuffer(const Standard_Integer aRetainBuffer,const Standard_Boolean aMono,const Standard_ShortReal aPivotX,const Standard_ShortReal aPivotY,const Standard_Integer aColorIndex,const Standard_Integer aWidthIndex,const Standard_Integer aTypeIndex,const Standard_Integer aFontIndex,const Aspect_TypeOfDrawMode aDrawMode = Aspect_TODM_REPLACE) ; Standard_EXPORT Standard_Integer ProcessColorIndex(const Standard_Integer ColorIndex) const; Standard_EXPORT Quantity_Length ProcessWidthIndex(const Standard_Integer WidthIndex) const; Standard_EXPORT Standard_Integer ProcessTypeIndex(const Standard_Integer TypeIndex) const; Standard_Address myAllocators; Standard_Address myAllocator; Handle_WNT_Window myWNTWindow; Standard_Real myPixelToUnit; Handle_WNT_HColorTable myColors; Handle_WNT_HFontTable myFonts; Handle_TColStd_HArray1OfInteger myTypeIdxs; Handle_TColStd_HArray1OfInteger myWidthIdxs; Handle_TColStd_HArray1OfInteger myMarkerIdxs; Handle_WNT_HListOfMFTFonts myMFTFonts; Handle_TShort_HArray1OfShortReal myMFTSizes; Handle_WNT_TextManager myTextManager; }; // other Inline functions and methods (like "C++: function call" methods) #endif