]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/graphics.h
Resolve ambiguity between GetClientXXX() methods in wxOSX wxComboBox.
[wxWidgets.git] / interface / wx / graphics.h
index 86ee53fd01c1e0df7dac783a6e1ec9f62f986998..7425c4a78add69012c674d3710639e57874dc883 100644 (file)
@@ -212,6 +212,23 @@ enum wxAntialiasMode
     wxANTIALIAS_DEFAULT,
 };
 
+/**
+    Interpolation quality used by wxGraphicsContext::SetInterpolationQuality().
+ */
+enum wxInterpolationQuality
+{
+    /** default interpolation, based on type of context, in general medium quality */
+    wxINTERPOLATION_DEFAULT,
+    /** no interpolation */
+    wxINTERPOLATION_NONE, 
+    /** fast interpolation, suited for interactivity */
+    wxINTERPOLATION_FAST,
+    /** better quality */
+    wxINTERPOLATION_GOOD,
+    /** best quality, not suited for interactivity */
+    wxINTERPOLATION_BEST
+};
+
 /**
     Compositing is done using Porter-Duff compositions
     (see http://keithp.com/~keithp/porterduff/p253-porter.pdf) with
@@ -224,6 +241,14 @@ enum wxAntialiasMode
 */
 enum wxCompositionMode
 {
+    /**
+        Indicates invalid or unsupported composition mode.
+
+        This value can't be passed to wxGraphicsContext::SetCompositionMode().
+
+        @since 2.9.2
+     */
+    wxCOMPOSITION_INVALID = -1,
     wxCOMPOSITION_CLEAR, /**< @e R = 0 */
     wxCOMPOSITION_SOURCE, /**< @e R = S */
     wxCOMPOSITION_OVER, /**< @e R = @e S + @e D*(1 - @e Sa) */
@@ -237,7 +262,7 @@ enum wxCompositionMode
     wxCOMPOSITION_DEST_OUT, /**< @e R = @e D*(1 - @e Sa) */
     wxCOMPOSITION_DEST_ATOP, /**< @e R = @e S*(1 - @e Da) + @e D*@e Sa */
     wxCOMPOSITION_XOR, /**< @e R = @e S*(1 - @e Da) + @e D*(1 - @e Sa) */
-    wxCOMPOSITION_ADD, /**< @e R = @e S + @e D */
+    wxCOMPOSITION_ADD  /**< @e R = @e S + @e D */
 };
 
 
@@ -317,6 +342,16 @@ public:
     */
     static wxGraphicsContext* Create(const wxPrinterDC& dc);
 
+    /**
+        Creates a wxGraphicsContext from a wxEnhMetaFileDC.
+
+        This function, as wxEnhMetaFileDC class itself, is only available only
+        under MSW.
+
+        @see wxGraphicsRenderer::CreateContext()
+    */
+    static wxGraphicsContext* Create(const wxEnhMetaFileDC& dc);
+
     /**
         Clips drawings to the specified region.
     */
@@ -403,7 +438,7 @@ public:
     /**
         Creates a native brush with a radial gradient.
 
-        The brush originats at (@a xo, @a yc) and ends on a circle around
+        The brush originates at (@a xo, @a yc) and ends on a circle around
         (@a xc, @a yc) with the given @a radius.
 
         The gradient may be specified either by its start and end colours @a
@@ -658,6 +693,16 @@ public:
     */
     virtual wxAntialiasMode GetAntialiasMode() const ;
 
+    /**
+        Sets the interpolation quality, returns true if it supported
+     */
+    virtual bool SetInterpolationQuality(wxInterpolationQuality interpolation) = 0;
+    
+    /**
+        Returns the current interpolation quality
+     */
+    virtual wxInterpolationQuality GetInterpolationQuality() const;
+    
     /**
         Sets the compositing operator, returns true if it supported
     */
@@ -827,6 +872,14 @@ public:
     */
     virtual wxGraphicsContext* CreateContext(const wxPrinterDC& dc) = 0 ;
 
+    /**
+        Creates a wxGraphicsContext from a wxEnhMetaFileDC.
+
+        This function, as wxEnhMetaFileDC class itself, is only available only
+        under MSW.
+    */
+    virtual wxGraphicsContext* CreateContext(const wxEnhMetaFileDC& dc) = 0;
+
     /**
         Creates a native brush from a wxBrush.
     */