]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/dc.tex
made more clear that GetItemRect() returns physical coords
[wxWidgets.git] / docs / latex / wx / dc.tex
index d609a8eaecfd5eccc9f5e1cfacb215d40d6228e7..121b397a5a7743a0373bfb132229db4f03bbc871 100644 (file)
@@ -31,14 +31,14 @@ them.
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
-\membersection{wxDC::wxDC}
+\membersection{wxDC::wxDC}\label{wxdcctor}
 
 \func{}{wxDC}{\void}
 
 Constructor.
 
 
 
 \func{}{wxDC}{\void}
 
 Constructor.
 
 
-\membersection{wxDC::\destruct{wxDC}}
+\membersection{wxDC::\destruct{wxDC}}\label{wxdcdtor}
 
 \func{}{\destruct{wxDC}}{\void}
 
 
 \func{}{\destruct{wxDC}}{\void}
 
@@ -193,6 +193,15 @@ wxUSE\_DC\_CACHEING preprocessor symbol for portability.
 \end{comment}
 
 
 \end{comment}
 
 
+\membersection{wxDC::ComputeScaleAndOrigin}\label{wxdccomputescaleandorigin}
+
+\func{virtual void}{ComputeScaleAndOrigin}{\void}
+
+Performs all necessary computations for given platform and context type
+after each change of scale and origin parameters. Usually called automatically 
+internally after such changes.
+
+
 \membersection{wxDC::CrossHair}\label{wxdccrosshair}
 
 \func{void}{CrossHair}{\param{wxCoord}{ x}, \param{wxCoord}{ y}}
 \membersection{wxDC::CrossHair}\label{wxdccrosshair}
 
 \func{void}{CrossHair}{\param{wxCoord}{ x}, \param{wxCoord}{ y}}
@@ -336,6 +345,24 @@ Draw an icon on the display (does nothing if the device context is PostScript).
 This can be the simplest way of drawing bitmaps on a window.
 
 
 This can be the simplest way of drawing bitmaps on a window.
 
 
+\membersection{wxDC::DrawLabel}\label{wxdcdrawlabel}
+
+\func{virtual void}{DrawLabel}{\param{const wxString\&}{ text},
+                               \param{const wxBitmap\&}{ image},
+                               \param{const wxRect\&}{ rect},
+                               \param{int}{ alignment = wxALIGN\_LEFT | wxALIGN\_TOP},
+                               \param{int}{ indexAccel = -1},
+                               \param{wxRect *}{rectBounding = NULL}}
+
+\func{void}{DrawLabel}{\param{const wxString\&}{ text}, \param{const wxRect\&}{ rect},
+                       \param{int}{ alignment = wxALIGN\_LEFT | wxALIGN\_TOP},
+                       \param{int}{ indexAccel = -1}}
+
+Draw optional bitmap and the text into the given rectangle and aligns it as specified
+by alignment parameter; it also will emphasize the character with the given index if
+it is != -1 and return the bounding rectangle if required.
+
+
 \membersection{wxDC::DrawLine}\label{wxdcdrawline}
 
 \func{void}{DrawLine}{\param{wxCoord}{ x1}, \param{wxCoord}{ y1}, \param{wxCoord}{ x2}, \param{wxCoord}{ y2}}
 \membersection{wxDC::DrawLine}\label{wxdcdrawline}
 
 \func{void}{DrawLine}{\param{wxCoord}{ x1}, \param{wxCoord}{ y1}, \param{wxCoord}{ x2}, \param{wxCoord}{ y2}}
@@ -429,7 +456,7 @@ The polygons maybe disjoint or overlapping. Each polygon specified in a call to
 
 \func{void}{DrawPoint}{\param{wxCoord}{ x}, \param{wxCoord}{ y}}
 
 
 \func{void}{DrawPoint}{\param{wxCoord}{ x}, \param{wxCoord}{ y}}
 
-Draws a point using the current pen.
+Draws a point using the color of the current pen. Note that the other properties of the pen are not used, such as width etc..
 
 
 \membersection{wxDC::DrawRectangle}\label{wxdcdrawrectangle}
 
 
 \membersection{wxDC::DrawRectangle}\label{wxdcdrawrectangle}
@@ -477,12 +504,15 @@ the rectangle.
 
 \membersection{wxDC::DrawSpline}\label{wxdcdrawspline}
 
 
 \membersection{wxDC::DrawSpline}\label{wxdcdrawspline}
 
+\func{void}{DrawSpline}{\param{int }{n}, \param{wxPoint }{points[]}}
+
+Draws a spline between all given control points, using the current
+pen.
+
 \func{void}{DrawSpline}{\param{wxList *}{points}}
 
 Draws a spline between all given control points, using the current
 \func{void}{DrawSpline}{\param{wxList *}{points}}
 
 Draws a spline between all given control points, using the current
-pen.  Doesn't delete the wxList and contents. The spline is drawn
-using a series of lines, using an algorithm taken from the X drawing
-program `XFIG'.
+pen.  Doesn't delete the wxList and contents.
 
 \func{void}{DrawSpline}{\param{wxCoord}{ x1}, \param{wxCoord}{ y1}, \param{wxCoord}{ x2}, \param{wxCoord}{ y2}, \param{wxCoord}{ x3}, \param{wxCoord}{ y3}}
 
 
 \func{void}{DrawSpline}{\param{wxCoord}{ x1}, \param{wxCoord}{ y1}, \param{wxCoord}{ x2}, \param{wxCoord}{ y2}, \param{wxCoord}{ x3}, \param{wxCoord}{ y3}}
 
@@ -575,8 +605,6 @@ function will still return true.
 
 \membersection{wxDC::GetBackground}\label{wxdcgetbackground}
 
 
 \membersection{wxDC::GetBackground}\label{wxdcgetbackground}
 
-\func{wxBrush\&}{GetBackground}{\void}
-
 \constfunc{const wxBrush\&}{GetBackground}{\void}
 
 Gets the brush used for painting the background (see \helpref{wxDC::SetBackground}{wxdcsetbackground}).
 \constfunc{const wxBrush\&}{GetBackground}{\void}
 
 Gets the brush used for painting the background (see \helpref{wxDC::SetBackground}{wxdcsetbackground}).
@@ -595,8 +623,6 @@ Returns the current background mode: {\tt wxSOLID} or {\tt wxTRANSPARENT}.
 
 \membersection{wxDC::GetBrush}\label{wxdcgetbrush}
 
 
 \membersection{wxDC::GetBrush}\label{wxdcgetbrush}
 
-\func{wxBrush\&}{GetBrush}{\void}
-
 \constfunc{const wxBrush\&}{GetBrush}{\void}
 
 Gets the current brush (see \helpref{wxDC::SetBrush}{wxdcsetbrush}).
 \constfunc{const wxBrush\&}{GetBrush}{\void}
 
 Gets the current brush (see \helpref{wxDC::SetBrush}{wxdcsetbrush}).
@@ -631,8 +657,6 @@ rectangle are returned as a tuple.}
 
 \membersection{wxDC::GetFont}\label{wxdcgetfont}
 
 
 \membersection{wxDC::GetFont}\label{wxdcgetfont}
 
-\func{wxFont\&}{GetFont}{\void}
-
 \constfunc{const wxFont\&}{GetFont}{\void}
 
 Gets the current font (see \helpref{wxDC::SetFont}{wxdcsetfont}).
 \constfunc{const wxFont\&}{GetFont}{\void}
 
 Gets the current font (see \helpref{wxDC::SetFont}{wxdcsetfont}).
@@ -652,45 +676,39 @@ Gets the current logical function (see \helpref{wxDC::SetLogicalFunction}{wxdcse
 Gets the {\it mapping mode} for the device context (see \helpref{wxDC::SetMapMode}{wxdcsetmapmode}).
 
 
 Gets the {\it mapping mode} for the device context (see \helpref{wxDC::SetMapMode}{wxdcsetmapmode}).
 
 
-\membersection{wxDC::GetOptimization}\label{wxdcgetoptimization}
-
-\func{bool}{GetOptimization}{\void}
-
-Returns true if device context optimization is on.
-See \helpref{wxDC::SetOptimization}{wxsetoptimization} for details.
-
-
 \membersection{wxDC::GetPartialTextExtents}\label{wxdcgetpartialtextextents}
 
 \constfunc{bool}{GetPartialTextExtents}{\param{const wxString\&  }{text}, 
 \param{wxArrayInt\& }{widths}}
 
 \membersection{wxDC::GetPartialTextExtents}\label{wxdcgetpartialtextextents}
 
 \constfunc{bool}{GetPartialTextExtents}{\param{const wxString\&  }{text}, 
 \param{wxArrayInt\& }{widths}}
 
-Fills the {\it widths} array with the widths from the begining of 
-{\it text} to the coresponding character of {\it text}.  The generic
+Fills the {\it widths} array with the widths from the beginning of 
+{\it text} to the corresponding character of {\it text}.  The generic
 version simply builds a running total of the widths of each character
 using \helpref{GetTextExtent}{wxdcgettextextent}, however if the
 various platforms have a native API function that is faster or more
 version simply builds a running total of the widths of each character
 using \helpref{GetTextExtent}{wxdcgettextextent}, however if the
 various platforms have a native API function that is faster or more
-accurate than the generic implementaiton then it should be used
+accurate than the generic implementation then it should be used
 instead. 
 
 \pythonnote{This method only takes the {\it text} parameter and
   returns a Python list of integers.}
 
 instead. 
 
 \pythonnote{This method only takes the {\it text} parameter and
   returns a Python list of integers.}
 
-\membersection{wxDC::GetPen}\label{wxdcgetpen}
 
 
-\func{wxPen\&}{GetPen}{\void}
+\membersection{wxDC::GetPen}\label{wxdcgetpen}
 
 \constfunc{const wxPen\&}{GetPen}{\void}
 
 Gets the current pen (see \helpref{wxDC::SetPen}{wxdcsetpen}).
 
 
 \constfunc{const wxPen\&}{GetPen}{\void}
 
 Gets the current pen (see \helpref{wxDC::SetPen}{wxdcsetpen}).
 
+
 \membersection{wxDC::GetPixel}\label{wxdcgetpixel}
 
 \func{bool}{GetPixel}{\param{wxCoord}{ x}, \param{wxCoord}{ y}, \param{wxColour *}{colour}}
 
 \membersection{wxDC::GetPixel}\label{wxdcgetpixel}
 
 \func{bool}{GetPixel}{\param{wxCoord}{ x}, \param{wxCoord}{ y}, \param{wxColour *}{colour}}
 
-Sets {\it colour} to the colour at the specified location.
+Gets in {\it colour} the colour at the specified location.
 Not available for wxPostScriptDC or wxMetafileDC.
 
 Not available for wxPostScriptDC or wxMetafileDC.
 
+Note that setting a pixel can be done using \helpref{DrawPoint}{wxdcdrawpoint}.
+
 \pythonnote{For wxPython the wxColour value is returned and is not
 required as a parameter.}
 
 \pythonnote{For wxPython the wxColour value is returned and is not
 required as a parameter.}
 
@@ -749,8 +767,6 @@ Returns the horizontal and vertical resolution in millimetres.
 
 \membersection{wxDC::GetTextBackground}\label{wxdcgettextbackground}
 
 
 \membersection{wxDC::GetTextBackground}\label{wxdcgettextbackground}
 
-\func{wxColour\&}{GetTextBackground}{\void}
-
 \constfunc{const wxColour\&}{GetTextBackground}{\void}
 
 Gets the current text background colour (see \helpref{wxDC::SetTextBackground}{wxdcsettextbackground}).
 \constfunc{const wxColour\&}{GetTextBackground}{\void}
 
 Gets the current text background colour (see \helpref{wxDC::SetTextBackground}{wxdcsettextbackground}).
@@ -791,14 +807,11 @@ See also \helpref{wxFont}{wxfont}, \helpref{wxDC::SetFont}{wxdcsetfont}.
 
 \membersection{wxDC::GetTextForeground}\label{wxdcgettextforeground}
 
 
 \membersection{wxDC::GetTextForeground}\label{wxdcgettextforeground}
 
-\func{wxColour\&}{GetTextForeground}{\void}
-
 \constfunc{const wxColour\&}{GetTextForeground}{\void}
 
 Gets the current text foreground colour (see \helpref{wxDC::SetTextForeground}{wxdcsettextforeground}).
 
 
 \constfunc{const wxColour\&}{GetTextForeground}{\void}
 
 Gets the current text foreground colour (see \helpref{wxDC::SetTextForeground}{wxdcsettextforeground}).
 
 
-
 \membersection{wxDC::GetUserScale}\label{wxdcgetuserscale}
 
 \func{void}{GetUserScale}{\param{double}{ *x}, \param{double}{ *y}}
 \membersection{wxDC::GetUserScale}\label{wxdcgetuserscale}
 
 \func{void}{GetUserScale}{\param{double}{ *x}, \param{double}{ *y}}
@@ -896,8 +909,8 @@ doesn't contain anything.
                                 \param{bool}{ yBottomUp}}
 
 Sets the x and y axis orientation (i.e., the direction from lowest to
                                 \param{bool}{ yBottomUp}}
 
 Sets the x and y axis orientation (i.e., the direction from lowest to
-highest values on the axis). The default orientation is the natural
-orientation, e.g. x axis from left to right and y axis from bottom up.
+highest values on the axis). The default orientation is 
+x axis from left to right and y axis from top down.
 
 \wxheading{Parameters}
 
 
 \wxheading{Parameters}
 
@@ -908,17 +921,6 @@ left to right orientation, false to invert it.}
 bottom up orientation, false to invert it.}
 
 
 bottom up orientation, false to invert it.}
 
 
-\membersection{wxDC::SetDeviceOrigin}\label{wxdcsetdeviceorigin}
-
-\func{void}{SetDeviceOrigin}{\param{wxCoord}{ x}, \param{wxCoord}{ y}}
-
-Sets the device origin (i.e., the origin in pixels after scaling has been
-applied).
-
-This function may be useful in Windows printing
-operations for placing a graphic on a page.
-
-
 \membersection{wxDC::SetBackground}\label{wxdcsetbackground}
 
 \func{void}{SetBackground}{\param{const wxBrush\& }{brush}}
 \membersection{wxDC::SetBackground}\label{wxdcsetbackground}
 
 \func{void}{SetBackground}{\param{const wxBrush\& }{brush}}
@@ -934,6 +936,22 @@ Sets the current background brush for the DC.
 whether text will be drawn with a background colour or not.
 
 
 whether text will be drawn with a background colour or not.
 
 
+\membersection{wxDC::SetBrush}\label{wxdcsetbrush}
+
+\func{void}{SetBrush}{\param{const wxBrush\& }{brush}}
+
+Sets the current brush for the DC.
+
+If the argument is wxNullBrush, the current brush is selected out of the device
+context, and the original brush restored, allowing the current brush to
+be destroyed safely.
+
+See also \helpref{wxBrush}{wxbrush}.
+
+See also \helpref{wxMemoryDC}{wxmemorydc} for the interpretation of colours
+when drawing into a monochrome bitmap.
+
 \membersection{wxDC::SetClippingRegion}\label{wxdcsetclippingregion}
 
 \func{void}{SetClippingRegion}{\param{wxCoord}{ x}, \param{wxCoord}{ y}, \param{wxCoord}{ width}, \param{wxCoord}{ height}}
 \membersection{wxDC::SetClippingRegion}\label{wxdcsetclippingregion}
 
 \func{void}{SetClippingRegion}{\param{wxCoord}{ x}, \param{wxCoord}{ y}, \param{wxCoord}{ width}, \param{wxCoord}{ height}}
@@ -959,32 +977,15 @@ when only a known area of the screen is damaged.
 \helpref{wxDC::DestroyClippingRegion}{wxdcdestroyclippingregion}, \helpref{wxRegion}{wxregion}
 
 
 \helpref{wxDC::DestroyClippingRegion}{wxdcdestroyclippingregion}, \helpref{wxRegion}{wxregion}
 
 
-\membersection{wxDC::SetPalette}\label{wxdcsetpalette}
-
-\func{void}{SetPalette}{\param{const wxPalette\& }{palette}}
-
-If this is a window DC or memory DC, assigns the given palette to the window
-or bitmap associated with the DC. If the argument is wxNullPalette, the current
-palette is selected out of the device context, and the original palette
-restored.
-
-See \helpref{wxPalette}{wxpalette} for further details.
-
-
-\membersection{wxDC::SetBrush}\label{wxdcsetbrush}
-
-\func{void}{SetBrush}{\param{const wxBrush\& }{brush}}
-
-Sets the current brush for the DC.
+\membersection{wxDC::SetDeviceOrigin}\label{wxdcsetdeviceorigin}
 
 
-If the argument is wxNullBrush, the current brush is selected out of the device
-context, and the original brush restored, allowing the current brush to
-be destroyed safely.
+\func{void}{SetDeviceOrigin}{\param{wxCoord}{ x}, \param{wxCoord}{ y}}
 
 
-See also \helpref{wxBrush}{wxbrush}.
+Sets the device origin (i.e., the origin in pixels after scaling has been
+applied).
 
 
-See also \helpref{wxMemoryDC}{wxmemorydc} for the interpretation of colours
-when drawing into a monochrome bitmap.
+This function may be useful in Windows printing
+operations for placing a graphic on a page.
 
 
 \membersection{wxDC::SetFont}\label{wxdcsetfont}
 
 
 \membersection{wxDC::SetFont}\label{wxdcsetfont}
@@ -1064,19 +1065,16 @@ The mapping mode can be one of the following:
 \end{twocollist}
 
 
 \end{twocollist}
 
 
-\membersection{wxDC::SetOptimization}\label{wxsetoptimization}
+\membersection{wxDC::SetPalette}\label{wxdcsetpalette}
 
 
-\func{void}{SetOptimization}{\param{bool }{optimize}}
+\func{void}{SetPalette}{\param{const wxPalette\& }{palette}}
 
 
-If {\it optimize} is true (the default), this function sets optimization mode on.
-This currently means that under X, the device context will not try to set a pen or brush
-property if it is known to be set already. This approach can fall down
-if non-wxWidgets code is using the same device context or window, for example
-when the window is a panel on which the windowing system draws panel items.
-The wxWidgets device context 'memory' will now be out of step with reality.
+If this is a window DC or memory DC, assigns the given palette to the window
+or bitmap associated with the DC. If the argument is wxNullPalette, the current
+palette is selected out of the device context, and the original palette
+restored.
 
 
-Setting optimization off, drawing, then setting it back on again, is a trick
-that must occasionally be employed.
+See \helpref{wxPalette}{wxpalette} for further details. 
 
 
 \membersection{wxDC::SetPen}\label{wxdcsetpen}
 
 
 \membersection{wxDC::SetPen}\label{wxdcsetpen}
@@ -1122,7 +1120,7 @@ Sets the user scaling factor, useful for applications which require
 \func{bool}{StartDoc}{\param{const wxString\& }{message}}
 
 Starts a document (only relevant when outputting to a printer).
 \func{bool}{StartDoc}{\param{const wxString\& }{message}}
 
 Starts a document (only relevant when outputting to a printer).
-Message is a message to show whilst printing.
+Message is a message to show while printing.
 
 
 \membersection{wxDC::StartPage}\label{wxdcstartpage}
 
 
 \membersection{wxDC::StartPage}\label{wxdcstartpage}
@@ -1133,9 +1131,9 @@ Starts a document page (only relevant when outputting to a printer).
 
 \section{\class{wxDCClipper}}\label{wxdcclipper}
 
 
 \section{\class{wxDCClipper}}\label{wxdcclipper}
 
-This is a small helper class which sets the specified to its constructor
+This is a small helper class which sets the specified DC to its constructor
 clipping region and then automatically destroys it in its destructor. Using
 clipping region and then automatically destroys it in its destructor. Using
-it ensures that unwanted clipping region is not left set on the DC.
+it ensures that an unwanted clipping region is not left set on the DC.
 
 \wxheading{Derived from}
 
 
 \wxheading{Derived from}
 
@@ -1152,17 +1150,17 @@ No base class
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
 \latexignore{\rtfignore{\wxheading{Members}}}
 
 
-\membersection{wxDCClipper::wxDCClipper}
+\membersection{wxDCClipper::wxDCClipper}\label{wxdcclipperctor}
 
 \func{}{wxDCClipper}{\param{wxDC\& }{dc}, \param{wxCoord }{x},\param{wxCoord }{y},\param{wxCoord }{w},\param{wxCoord }{h},}
 
 \func{}{wxDCClipper}{\param{wxDC\& }{dc}, \param{const wxRect\&}{ rect}}
 
 
 \func{}{wxDCClipper}{\param{wxDC\& }{dc}, \param{wxCoord }{x},\param{wxCoord }{y},\param{wxCoord }{w},\param{wxCoord }{h},}
 
 \func{}{wxDCClipper}{\param{wxDC\& }{dc}, \param{const wxRect\&}{ rect}}
 
-Constructor: sets the the clipping region for the given device context to the
+Constructor: sets the clipping region for the given device context to the
 specified rectangle.
 
 
 specified rectangle.
 
 
-\membersection{wxDCClipper::\destruct{wxDCClipper}}
+\membersection{wxDCClipper::\destruct{wxDCClipper}}\label{wxdcclipperdtor}
 
 \func{}{\destruct{wxDCClipper}}{\void}
 
 
 \func{}{\destruct{wxDCClipper}}{\void}