X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ae3c17b4013e80b99976c750c19fca47729517f6..5b88a837ba75928cd3835a6b97ae2bf5ad983a6e:/interface/wx/gdicmn.h diff --git a/interface/wx/gdicmn.h b/interface/wx/gdicmn.h index f415ecf9d8..e8ae5f3451 100644 --- a/interface/wx/gdicmn.h +++ b/interface/wx/gdicmn.h @@ -48,6 +48,15 @@ enum wxBitmapType wxBITMAP_TYPE_ANY = 50 }; +/** + Polygon filling mode. See wxDC::DrawPolygon. +*/ +enum wxPolygonFillMode +{ + wxODDEVEN_RULE = 1, + wxWINDING_RULE +}; + /** Standard cursors. See wxCursor. */ @@ -94,12 +103,14 @@ enum wxStockCursor /** @class wxRealPoint - @wxheader{gdicmn.h} A wxRealPoint is a useful data structure for graphics operations. - It contains floating point @e x and @e y members. See wxPoint for an - integer version. + It contains floating point @e x and @e y members. + See wxPoint for an integer version. + + Note that the coordinates stored inside a wxRealPoint object may be negative + and that wxRealPoint functions do not perform any check against negative values. @library{wxcore} @category{data} @@ -109,6 +120,9 @@ enum wxStockCursor class wxRealPoint { public: + /** + Initializes to zero the x and y members. + */ wxRealPoint(); /** @@ -131,10 +145,13 @@ public: /** @class wxRect - @wxheader{gdicmn.h} A class for manipulating rectangles. + Note that the x, y coordinates and the width and height stored inside a wxRect + object may be negative and that wxRect functions do not perform any check against + negative values. + @library{wxcore} @category{data} @@ -145,6 +162,7 @@ class wxRect public: /** Default constructor. + Initializes to zero the internal @a x, @a y, @a width and @a height members. */ wxRect(); /** @@ -156,7 +174,7 @@ public: */ wxRect(const wxPoint& topLeft, const wxPoint& bottomRight); /** - Creates a wxRect object from position and @a size values. + Creates a wxRect object from position @a pos and @a size values. */ wxRect(const wxPoint& pos, const wxSize& size); /** @@ -313,14 +331,19 @@ public: wxRect Inflate(wxCoord dx, wxCoord dy) const; //@} - //@{ /** - Modifies the rectangle to contain the overlapping box of this rectangle + Modifies this rectangle to contain the overlapping portion of this rectangle and the one passed in as parameter. + + @return This rectangle, modified. */ - wxRect Intersect(const wxRect& rect) const; wxRect& Intersect(const wxRect& rect); - //@} + + /** + Returns the overlapping portion of this rectangle and the one passed in as + parameter. + */ + wxRect Intersect(const wxRect& rect) const; /** Returns @true if this rectangle has a non-empty intersection with the @@ -404,7 +427,7 @@ public: /** Assignment operator. */ - void operator =(const wxRect& rect); + wxRect& operator=(const wxRect& rect); /** Equality operator. @@ -436,12 +459,15 @@ public: /** @class wxPoint - @wxheader{gdicmn.h} A wxPoint is a useful data structure for graphics operations. - It contains integer @e x and @e y members. See wxRealPoint for a floating - point version. + It contains integer @e x and @e y members. + See wxRealPoint for a floating point version. + + Note that the width and height stored inside a wxPoint object may be negative + and that wxPoint functions do not perform any check against negative values + (this is used to e.g. store the special -1 value in ::wxDefaultPosition instance). @library{wxcore} @category{data} @@ -454,18 +480,22 @@ public: class wxPoint { public: - //@{ /** Constructs a point. + Initializes the internal x and y coordinates to zero. */ wxPoint(); + + /** + Initializes the point object with the given @a x and @a y coordinates. + */ wxPoint(int x, int y); - //@} /** - Assignment operator. + @name Miscellaneous operators */ - void operator =(const wxPoint& pt); + //@{ + wxPoint& operator=(const wxPoint& pt); bool operator ==(const wxPoint& p1, const wxPoint& p2); bool operator !=(const wxPoint& p1, const wxPoint& p2); @@ -483,7 +513,8 @@ public: wxPoint& operator +=(const wxSize& sz); wxPoint& operator -=(const wxSize& sz); - + //@} + /** x member. */ @@ -503,7 +534,6 @@ wxPoint wxDefaultPosition; /** @class wxColourDatabase - @wxheader{gdicmn.h} wxWidgets maintains a database of standard RGB colours for a predefined set of named colours. The application may add to this set if desired by @@ -616,7 +646,7 @@ public: is, wxColour::IsOk() will return @false) if the colour wasn't found in the database. */ - wxColour Find(const wxString& colourName); + wxColour Find(const wxString& colourName) const; /** Finds a colour name given the colour. Returns an empty string if the @@ -628,10 +658,15 @@ public: /** @class wxSize - @wxheader{gdicmn.h} - A wxSize is a useful data structure for graphics operations. It simply - contains integer @e width and @e height members. + A wxSize is a useful data structure for graphics operations. + It simply contains integer @e width and @e height members. + + Note that the width and height stored inside a wxSize object may be negative + and that wxSize functions do not perform any check against negative values + (this is used to e.g. store the special -1 value in ::wxDefaultSize instance). + See also IsFullySpecified() and SetDefaults() for utility functions regarding + the special -1 value. wxSize is used throughout wxWidgets as well as wxPoint which, although almost equivalent to wxSize, has a different meaning: wxPoint represents a @@ -653,13 +688,15 @@ public: class wxSize { public: - //@{ /** - Creates a size object. + Initializes this size object with zero width and height. */ wxSize(); + + /** + Initializes this size object with the given @a width and @a height. + */ wxSize(int width, int height); - //@} //@{ /** @@ -759,10 +796,12 @@ public: */ void SetWidth(int width); + /** - Assignment operator. + @name Miscellaneous operators */ - void operator =(const wxSize& sz); + //@{ + wxSize& operator=(const wxSize& sz); bool operator ==(const wxSize& s1, const wxSize& s2); bool operator !=(const wxSize& s1, const wxSize& s2); @@ -777,6 +816,7 @@ public: wxSize operator *(int factor, const wxSize& sz); wxSize& operator /=(int factor); wxSize& operator *=(int factor); + //@} }; /** @@ -791,7 +831,7 @@ wxSize wxDefaultSize; // Global functions/macros // ============================================================================ -/** @ingroup group_funcmacro_gdi */ +/** @addtogroup group_funcmacro_gdi */ //@{ /** @@ -814,7 +854,7 @@ wxSize wxDefaultSize; @header{wx/gdicmn.h} */ -wxICON(); +#define wxICON(iconName) /** Returns @true if the display is colour, @false otherwise. @@ -843,7 +883,7 @@ void wxSetCursor(const wxCursor& cursor); //@} -/** @ingroup group_funcmacro_gdi */ +/** @addtogroup group_funcmacro_gdi */ //@{ /** Returns the dimensions of the work area on the display. On Windows this @@ -857,22 +897,45 @@ void wxClientDisplayRect(int* x, int* y, int* width, int* height); wxRect wxGetClientDisplayRect(); //@} -/** @ingroup group_funcmacro_gdi */ +/** @addtogroup group_funcmacro_gdi */ +//@{ +/** + Returns the display resolution in pixels per inch. + + The @c x component of the returned wxSize object contains the horizontal + resolution and the @c y one -- the vertical resolution. + + @header{wx/gdicmn.h} + + @since 2.9.0 +*/ +wxSize wxGetDisplayPPI(); +//@} + +/** @addtogroup group_funcmacro_gdi */ //@{ /** Returns the display size in pixels. + For the version taking @a width and @a header arguments, either of them + can be @NULL if the caller is not interested in the returned value. + @header{wx/gdicmn.h} */ void wxDisplaySize(int* width, int* height); wxSize wxGetDisplaySize(); //@} -/** @ingroup group_funcmacro_gdi */ +/** @addtogroup group_funcmacro_gdi */ //@{ /** Returns the display size in millimeters. + For the version taking @a width and @a header arguments, either of them + can be @NULL if the caller is not interested in the returned value. + + @see wxGetDisplayPPI() + @header{wx/gdicmn.h} */ void wxDisplaySizeMM(int* width, int* height);