]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/quantize.h
using common code
[wxWidgets.git] / include / wx / quantize.h
index dd50cf7102053a536749a780afbd7b366f32edab..6726d176f992af1de7a57c4d9d60d193dbd70c8b 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        quantize.h
+// Name:        wx/quantize.h
 // Purpose:     wxQuantizer class
 // Author:      Julian Smart
 // Modified by:
@@ -9,6 +9,11 @@
 // Licence:
 /////////////////////////////////////////////////////////////////////////////
 
+#ifndef _WX_QUANTIZE_H_
+#define _WX_QUANTIZE_H_
+
+#include "wx/object.h"
+
 /*
  * From jquant2.c
  *
  * For conditions of distribution and use, see the accompanying README file.
  */
 
-#ifdef __GNUG__
-#pragma interface "quantize.h"
-#endif
-
-#ifndef _WX_QUANTIZE_H_
-#define _WX_QUANTIZE_H_
-
-class WXDLLEXPORT wxImage;
+class WXDLLIMPEXP_FWD_CORE wxImage;
+class WXDLLIMPEXP_FWD_CORE wxPalette;
 
 /*
  * wxQuantize
@@ -42,7 +41,8 @@ DECLARE_DYNAMIC_CLASS(wxQuantize)
 
 //// Constructor
 
-    wxQuantize() {};
+    wxQuantize() {}
+    virtual ~wxQuantize() {}
 
 //// Operations
 
@@ -52,13 +52,19 @@ DECLARE_DYNAMIC_CLASS(wxQuantize)
     // This palette may be passed to ConvertImageToBitmap, for example.
     // If you pass a palette pointer, you must free the palette yourself.
 
-    static bool Quantize(const wxImage& src, wxImage& dest, wxPalette** pPalette = NULL, int desiredNoColours = 236,
+    static bool Quantize(const wxImage& src, wxImage& dest, wxPalette** pPalette, int desiredNoColours = 236,
+        unsigned char** eightBitData = 0, int flags = wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE|wxQUANTIZE_RETURN_8BIT_DATA);
+
+    // This version sets a palette in the destination image so you don't
+    // have to manage it yourself.
+
+    static bool Quantize(const wxImage& src, wxImage& dest, int desiredNoColours = 236,
         unsigned char** eightBitData = 0, int flags = wxQUANTIZE_INCLUDE_WINDOWS_COLOURS|wxQUANTIZE_FILL_DESTINATION_IMAGE|wxQUANTIZE_RETURN_8BIT_DATA);
 
 //// Helpers
 
     // Converts input bitmap(s) into 8bit representation with custom palette
-    
+
     // in_rows and out_rows are arrays [0..h-1] of pointer to rows
     // (in_rows contains w * 3 bytes per row, out_rows w bytes per row)
     // fills out_rows with indexes into palette (which is also stored into palette variable)
@@ -68,4 +74,3 @@ DECLARE_DYNAMIC_CLASS(wxQuantize)
 
 #endif
     // _WX_QUANTIZE_H_
-