Difference between revisions of "User:Ericb/Salgdi.hxx"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Class VCL_DLLPUBLIC SalGraphics)
 
(25 intermediate revisions by one other user not shown)
Line 22: Line 22:
 
* ImpleFontData
 
* ImpleFontData
 
* ImplFontCharMap
 
* ImplFontCharMap
* SalLayout'
+
* SalLayout
* ImpleLayoutArgs'
+
* ImpleLayoutArgs
 
* Rectangle
 
* Rectangle
 
* OutputDevice
 
* OutputDevice
 
* ServerFontLayout
 
* ServerFontLayout
 
These classes are only defined because they are used in the class contain in this file.
 
  
 
== Empty structures ==
 
== Empty structures ==
Line 35: Line 33:
 
* FontSubsetInfo
 
* FontSubsetInfo
  
== Macros ==
+
== Constants ==
  
* #define SAL_SETFONT_REMOVEANDMATCHNEW       ((USHORT)0x0001)
+
* AL_SETFONT_REMOVEANDMATCHNEW        
* #define SAL_SETFONT_USEDRAWTEXT            ((USHORT)0x0002)
+
* SAL_SETFONT_USEDRAWTEXT             
* #define SAL_SETFONT_USEDRAWTEXTARRAY       ((USHORT)0x0004)
+
* SAL_SETFONT_USEDRAWTEXTARRAY
* #define SAL_SETFONT_UNICODE                 ((USHORT)0x0008)
+
* SAL_SETFONT_UNICODE
* #define SAL_SETFONT_BADFONT                 ((USHORT)0x1000)
+
* SAL_SETFONT_BADFONT
* #define SAL_CPYAREA_WINDOWWINVALIDATE       ((USHORT)0x0001)
+
* SAL_CPYAREA_WINDOWWINVALIDATE
  
 
== Class VCL_DLLPUBLIC SalGraphics ==
 
== Class VCL_DLLPUBLIC SalGraphics ==
Line 66: Line 64:
 
: /vcl/aqua/inc/salgdi.h
 
: /vcl/aqua/inc/salgdi.h
 
: /vcl/aqua/source/gdi/salgdi.cxx
 
: /vcl/aqua/source/gdi/salgdi.cxx
 +
 +
=== Variables :===
 +
 +
* m_nLayout
 +
:: '''Type''' :
 +
:::: ''int''
 +
 +
=== Public Methods :===
 +
 +
==== SalGraphics() ====
 +
 +
* '''Description''' :
 +
:: SalGraphics constructor
 +
 +
==== ~SalGraphic() ====
 +
 +
* '''Description''' :
 +
:: SalGraphics destructor
 +
 +
* '''Type''' :
 +
:: ''virtual''
 +
 +
=== Protected Method :===
 +
 +
==== unionClipRegion( long nX, long nY, long nWidth, long nHeight) ====
 +
 +
* '''Description''' :
 +
:: ''Add a new Rectangle''
 +
:::'''Win''': ''Add a new rectangle to mpNextClipRect which is inside the pBoundRect Rectangle and resize pBoundRect if the new rectangle is bigger than it''
 +
::: '''Unix''' : ''Add a Xrectangle (according to given parameters) at the end of the ClipRectangleList in a member of the class SalClipRegion: “maClipRegion”''
 +
::: '''Aqua''' : ''??''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nX (''long'')
 +
:: nY (''long'')
 +
:: nWidth (''long'')
 +
:: nHeight (''long'')
 +
 +
==== drawPixel( long nX, long nY) ====
 +
* '''Description''' :
 +
:: ''Draw a pixel at the coordinate (nX, nY)''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nX (''long'')
 +
::: ''x-coordinate''
 +
:: nY (''long'')
 +
::: ''y-coordinate''
 +
 +
==== drawPixel( long nX, long nY, SalColor nSalColor) ====
 +
* '''Description''' :
 +
:: ''Draw a colored pixel at the coordinate (nX, nY)''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nX (''long'')
 +
:: nY (''long'')
 +
:: nSalColor (''SalColor'')
 +
 +
==== drawLine( long nX1, long nY1, long nX2, long nY2) ====
 +
* '''Description''' :
 +
:: ''Draw a line beginning at the coordinate (nX1, nY1) and ending at the coordinate (nX2, nY2)''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nX1 (''long'')
 +
:: nY1 (''long'')
 +
:: nX2 (''long'')
 +
:: nY2 (''long'')
 +
 +
==== drawRect( long nX, long nY, long nWidth, long nHeight) ====
 +
* '''Description''' :
 +
:: ''Draw a rectangle starting at the coordinate (nX, nY) of width nWidth and of height nHeight''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nX (''long'')
 +
:: nY (''long'')
 +
:: nWidth (''long'')
 +
:: nHeight (''long'')
 +
 +
==== drawPolyLine( ULONG nPoints, const SalPoint* pPtAry) ====
 +
* '''Description''' :
 +
:: ''Draw a line composed of several segments''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nPoints (''ULONG'')
 +
:: pPtAry (''const SalPoint*'')
 +
 +
==== drawPolygon( ULONG nPoints, const SalPoint* pPtAry) ====
 +
* '''Description''' :
 +
:: ''Draw a polygon''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nPoints (''ULONG'')
 +
:: pPtAry (''const SalPoint*'')
 +
 +
==== drawPolyPolygon( ULONG nPoly, const ULONG* pPoints, PCONSTSALPOINT* pPtAry) ====
 +
* '''Description''' :
 +
:: ''Draw a set of polygons''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nPoly (''ULONG'')
 +
:: pPoints (''const ULONG*'')
 +
:: pPtAry (""PCONSTSALPOINT*'')
 +
 +
==== drawPolyLineBezier( ULONG nPoints, const SalPoint* pPtAry, const BYTE* pFlgAry) ====
 +
* '''Description''' :
 +
:: ''''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nPoints (''ULONG'')
 +
:: pPtAry (''const SalPoint*'')
 +
:: pFlgAry (''const BYTE*'')
 +
 +
==== drawPolygonBezier( ULONG nPoints, const SalPoint* pPtAry, const BYTE* pFlgAry) ====
 +
* '''Description''' :
 +
:: ''''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nPoints (''ULONG'')
 +
:: pPtAry (''const SalPoint*'')
 +
:: pFlgAry (''const BYTE*'')
 +
 +
==== drawPolyPolygonBezier( ULONG nPoly, const ULONG* pPoints, const SalPoint* const* pPtAry, const BYTE* const* pFlgAry) ====
 +
* '''Description''' :
 +
:: ''''
 +
* '''Type''' :
 +
:: ''virtual void''
 +
* '''Parameters''' :
 +
:: nPoly (''ULONG'')
 +
:: pPoints (''const ULONG*'')
 +
:: pPtAry (''const SalPoint* const*'')
 +
:: pFlgAry (''const BYTE* const*'')

Latest revision as of 11:24, 25 March 2010

This file includes all the empty boxes which define the functions used to print something on the screen (like a pixel, a line, a polygone, ...).

Includes

  • tools/string.hxx
  • sv.h
  • dllapi.h
  • salgtype.hxx
  • vos/thread.hxx
  • outdev.hxx
  • rtl/ustring.hxx
  • salnativewidgets.hxx
  • salctrlhandle.hxx
  • map

Empty classes

  • ImplDevFontList
  • SalBitpmap
  • ImplFontSelectData
  • ImplFontMetricData
  • ImpleFontData
  • ImplFontCharMap
  • SalLayout
  • ImpleLayoutArgs
  • Rectangle
  • OutputDevice
  • ServerFontLayout

Empty structures

  • ImplKernPairData
  • FontSubsetInfo

Constants

  • AL_SETFONT_REMOVEANDMATCHNEW
  • SAL_SETFONT_USEDRAWTEXT
  • SAL_SETFONT_USEDRAWTEXTARRAY
  • SAL_SETFONT_UNICODE
  • SAL_SETFONT_BADFONT
  • SAL_CPYAREA_WINDOWWINVALIDATE

Class VCL_DLLPUBLIC SalGraphics

Implementation

The class SalGraphics is an empty box (technically an abstract class with pure virtual methods) which is used to create a specific class in accordance with the OS used. salgdi.hxx is included in salgdi.h existing for every single OS and which are included itself into salgdi.cxx existing for every single OS too.

This class is the an abstract data type which can not be instantiated. It is completed for each OS in following files:

Windows
Inherited class : WinSalGraphics
/vcl/win/inc/salgdi.h
/vcl/win/source/gdi/salgdi.cxx
X11
Inherited class : X11SalGraphics
/vcl/unx/inc/salgdi.h
/vcl/unx/source/gdi/salgdi.cxx
Aqua
Inherited class : SalGraphics
/vcl/aqua/inc/salgdi.h
/vcl/aqua/source/gdi/salgdi.cxx

Variables :

  • m_nLayout
Type :
int

Public Methods :

SalGraphics()

  • Description :
SalGraphics constructor

~SalGraphic()

  • Description :
SalGraphics destructor
  • Type :
virtual

Protected Method :

unionClipRegion( long nX, long nY, long nWidth, long nHeight)

  • Description :
Add a new Rectangle
Win: Add a new rectangle to mpNextClipRect which is inside the pBoundRect Rectangle and resize pBoundRect if the new rectangle is bigger than it
Unix : Add a Xrectangle (according to given parameters) at the end of the ClipRectangleList in a member of the class SalClipRegion: “maClipRegion”
Aqua : ??
  • Type :
virtual void
  • Parameters :
nX (long)
nY (long)
nWidth (long)
nHeight (long)

drawPixel( long nX, long nY)

  • Description :
Draw a pixel at the coordinate (nX, nY)
  • Type :
virtual void
  • Parameters :
nX (long)
x-coordinate
nY (long)
y-coordinate

drawPixel( long nX, long nY, SalColor nSalColor)

  • Description :
Draw a colored pixel at the coordinate (nX, nY)
  • Type :
virtual void
  • Parameters :
nX (long)
nY (long)
nSalColor (SalColor)

drawLine( long nX1, long nY1, long nX2, long nY2)

  • Description :
Draw a line beginning at the coordinate (nX1, nY1) and ending at the coordinate (nX2, nY2)
  • Type :
virtual void
  • Parameters :
nX1 (long)
nY1 (long)
nX2 (long)
nY2 (long)

drawRect( long nX, long nY, long nWidth, long nHeight)

  • Description :
Draw a rectangle starting at the coordinate (nX, nY) of width nWidth and of height nHeight
  • Type :
virtual void
  • Parameters :
nX (long)
nY (long)
nWidth (long)
nHeight (long)

drawPolyLine( ULONG nPoints, const SalPoint* pPtAry)

  • Description :
Draw a line composed of several segments
  • Type :
virtual void
  • Parameters :
nPoints (ULONG)
pPtAry (const SalPoint*)

drawPolygon( ULONG nPoints, const SalPoint* pPtAry)

  • Description :
Draw a polygon
  • Type :
virtual void
  • Parameters :
nPoints (ULONG)
pPtAry (const SalPoint*)

drawPolyPolygon( ULONG nPoly, const ULONG* pPoints, PCONSTSALPOINT* pPtAry)

  • Description :
Draw a set of polygons
  • Type :
virtual void
  • Parameters :
nPoly (ULONG)
pPoints (const ULONG*)
pPtAry (""PCONSTSALPOINT*)

drawPolyLineBezier( ULONG nPoints, const SalPoint* pPtAry, const BYTE* pFlgAry)

  • Description :
'
  • Type :
virtual void
  • Parameters :
nPoints (ULONG)
pPtAry (const SalPoint*)
pFlgAry (const BYTE*)

drawPolygonBezier( ULONG nPoints, const SalPoint* pPtAry, const BYTE* pFlgAry)

  • Description :
'
  • Type :
virtual void
  • Parameters :
nPoints (ULONG)
pPtAry (const SalPoint*)
pFlgAry (const BYTE*)

drawPolyPolygonBezier( ULONG nPoly, const ULONG* pPoints, const SalPoint* const* pPtAry, const BYTE* const* pFlgAry)

  • Description :
'
  • Type :
virtual void
  • Parameters :
nPoly (ULONG)
pPoints (const ULONG*)
pPtAry (const SalPoint* const*)
pFlgAry (const BYTE* const*)
Personal tools