Files
wxWidgets/interface/wx/dcsvg.h
Vadim Zeitlin 3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00

120 lines
4.2 KiB
Objective-C

/////////////////////////////////////////////////////////////////////////////
// Name: dcsvg.h
// Purpose: interface of wxSVGFileDC
// Author: wxWidgets team
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
@class wxSVGFileDC
A wxSVGFileDC is a device context onto which graphics and text can be
drawn, and the output produced as a vector file, in SVG format.
This format can be read by a range of programs, including a Netscape plugin
(Adobe) and the open source Inkscape program (http://inkscape.org/). Full
details are given in the W3C SVG recommendation (http://www.w3.org/TR/SVG/).
The intention behind wxSVGFileDC is that it can be used to produce a file
corresponding to the screen display context, wxSVGFileDC, by passing the
wxSVGFileDC as a parameter instead of a wxDC. Thus the wxSVGFileDC
is a write-only class.
As the wxSVGFileDC is a vector format, raster operations like GetPixel()
are unlikely to be supported. However, the SVG specification allows for PNG
format raster files to be embedded in the SVG, and so bitmaps, icons and
blit operations in wxSVGFileDC are supported.
A more substantial SVG library (for reading and writing) is available at
the wxArt2D website <http://wxart2d.sourceforge.net/>.
@library{wxcore}
@category{dc}
*/
class wxSVGFileDC : public wxDC
{
public:
/**
Initializes a wxSVGFileDC with the given @a f filename with the given
@a Width and @a Height at @a dpi resolution.
*/
wxSVGFileDC(const wxString& filename, int width = 320, int height = 240, double dpi = 72);
/**
Destructor.
*/
virtual ~wxSVGFileDC();
/**
Does nothing.
*/
void EndDoc();
/**
Does nothing.
*/
void EndPage();
/**
This makes no sense in wxSVGFileDC and does nothing.
*/
void Clear();
/**
Does the same as wxDC::SetLogicalFunction(), except that only wxCOPY is
available. Trying to set one of the other values will fail.
*/
void SetLogicalFunction(wxRasterOperationMode function);
/**
Sets the clipping region for this device context to the intersection of
the given region described by the parameters of this method and the previously
set clipping region.
Clipping is implemented in the SVG output using SVG group elements (<g>), with
nested group elements being used to represent clipping region intersections when
two or more calls are made to SetClippingRegion().
*/
void SetClippingRegion(wxCoord x, wxCoord y, wxCoord width,
wxCoord height);
/**
This is an overloaded member function, provided for convenience. It differs from the
above function only in what argument(s) it accepts.
*/
void SetClippingRegion(const wxPoint& pt, const wxSize& sz);
/**
This is an overloaded member function, provided for convenience. It differs from the
above function only in what argument(s) it accepts.
*/
void SetClippingRegion(const wxRect& rect);
/**
This function is not implemented in this DC class.
It could be implemented in future if a GetPoints() function were made available on wxRegion.
*/
void SetClippingRegion(const wxRegion& region);
/**
Destroys the current clipping region so that none of the DC is clipped.
Since intersections arising from sequential calls to SetClippingRegion are represented
with nested SVG group elements (<g>), all such groups are closed when
DestroyClippingRegion is called.
*/
void DestroyClippingRegion();
//@{
/**
Functions not implemented in this DC class.
*/
void CrossHair(wxCoord x, wxCoord y);
bool FloodFill(wxCoord x, wxCoord y, const wxColour& colour,
wxFloodFillStyle style = wxFLOOD_SURFACE);
void GetClippingBox(wxCoord *x, wxCoord *y, wxCoord *width, wxCoord *height) const;
bool GetPixel(wxCoord x, wxCoord y, wxColour* colour) const;
void SetPalette(const wxPalette& palette);
bool StartDoc(const wxString& message);
//@}
};