]> git.saurik.com Git - wxWidgets.git/blobdiff - utils/wxPython/src/gdi.i
minimal now works in Unicode mode
[wxWidgets.git] / utils / wxPython / src / gdi.i
index 6bc2672b724ff558e8e9f1f549edb3a9838e2ef2..c4cc53f2c028d19a40b232a5f96d82d160dca244 100644 (file)
 %{
 #include "helpers.h"
 #include <wx/metafile.h>
+#include <wx/imaglist.h>
+#ifndef __WXMSW__
+#include <wx/dcps.h>
+#endif
 %}
 
 //----------------------------------------------------------------------
@@ -144,19 +148,19 @@ public:
 
     wxString GetFaceName();
     int GetFamily();
+#ifdef __WXMSW__
     int GetFontId();
+#endif
     int GetPointSize();
     int GetStyle();
     bool GetUnderlined();
     int GetWeight();
-#ifdef __WXMSW__
     void SetFaceName(const wxString& faceName);
     void SetFamily(int family);
     void SetPointSize(int pointSize);
     void SetStyle(int style);
     void SetUnderlined(bool underlined);
     void SetWeight(int weight);
-#endif
 };
 
 //----------------------------------------------------------------------
@@ -207,24 +211,23 @@ public:
     int GetCap();
     wxColour& GetColour();
 
-#ifdef __WXMSW__
-            // **** This one needs to return a list of ints (wxDash)
-    int GetDashes(wxDash **dashes);
-    wxBitmap* GetStipple();
-#endif
     int GetJoin();
     int GetStyle();
     int GetWidth();
     bool Ok();
     void SetCap(int cap_style);
     void SetColour(wxColour& colour);
+    void SetJoin(int join_style);
+    void SetStyle(int style);
+    void SetWidth(int width);
+
 #ifdef __WXMSW__
+            // **** This one needs to return a list of ints (wxDash)
+    int GetDashes(wxDash **dashes);
+    wxBitmap* GetStipple();
     void SetDashes(int LCOUNT, wxDash* LIST);
     void SetStipple(wxBitmap& stipple);
 #endif
-    void SetJoin(int join_style);
-    void SetStyle(int style);
-    void SetWidth(int width);
 };
 
 //----------------------------------------------------------------------
@@ -244,11 +247,9 @@ public:
     wxBitmap * GetStipple();
     int GetStyle();
     bool Ok();
-#ifdef __WXMSW__
     void SetColour(wxColour &colour);
     void SetStipple(wxBitmap& bitmap);
     void SetStyle(int style);
-#endif
 };
 
 //----------------------------------------------------------------------
@@ -286,12 +287,7 @@ public:
     void EndDoc();
     void EndDrawing();
     void EndPage();
-#ifdef __WXWIN__
     void FloodFill(long x, long y, const wxColour& colour, int style=wxFLOOD_SURFACE);
-#endif
-#ifdef __WXGTK__
-    void FloodFill(long x, long y, wxColour* colour, int style=wxFLOOD_SURFACE);
-#endif
     wxBrush&  GetBackground();
     wxBrush&  GetBrush();
     long GetCharHeight();
@@ -312,8 +308,10 @@ public:
     }
     void GetSize(int* OUTPUT, int* OUTPUT); //void GetSize(long* OUTPUT, long* OUTPUT);
     wxColour& GetTextBackground();
-    void GetTextExtent(const wxString& string, long *OUTPUT, long *OUTPUT,
-                       long *OUTPUT, long *OUTPUT);
+    void GetTextExtent(const wxString& string, long *OUTPUT, long *OUTPUT);
+    %name(GetFullTextExtent)void GetTextExtent(const wxString& string,
+                       long *OUTPUT, long *OUTPUT, long *OUTPUT, long* OUTPUT,
+                       const wxFont* font = NULL);
     wxColour& GetTextForeground();
     long LogicalToDeviceX(long x);
     long LogicalToDeviceXRel(long x);
@@ -402,12 +400,10 @@ public:
 
 //---------------------------------------------------------------------------
 
-#ifdef __WXMSW__
 class wxWindowDC : public wxDC {
 public:
       wxWindowDC(wxWindow* win);
 };
-#endif
 
 //---------------------------------------------------------------------------
 
@@ -443,6 +439,9 @@ public:
 
 
 %readonly
+%{
+#if 0
+%}
 extern wxFont *wxNORMAL_FONT;
 extern wxFont *wxSMALL_FONT;
 extern wxFont *wxITALIC_FONT;
@@ -491,6 +490,11 @@ extern wxPalette wxNullPalette;
 extern wxFont   wxNullFont;
 extern wxColour wxNullColour;
 
+%readwrite
+%{
+#endif
+%}
+
 //---------------------------------------------------------------------------
 
 class wxPalette {
@@ -505,12 +509,88 @@ public:
 
 //---------------------------------------------------------------------------
 
+enum {
+    wxIMAGELIST_DRAW_NORMAL ,
+    wxIMAGELIST_DRAW_TRANSPARENT,
+    wxIMAGELIST_DRAW_SELECTED,
+    wxIMAGELIST_DRAW_FOCUSED,
+    wxIMAGE_LIST_NORMAL,
+    wxIMAGE_LIST_SMALL,
+    wxIMAGE_LIST_STATE
+};
+
+class wxImageList {
+public:
+    wxImageList(int width, int height, const bool mask=TRUE, int initialCount=1);
+    ~wxImageList();
+
+#ifdef __WXMSW__
+    int Add(const wxBitmap& bitmap, const wxBitmap& mask = wxNullBitmap);
+    %name(AddWithColourMask)int Add(const wxBitmap& bitmap, const wxColour& maskColour);
+    %name(AddIcon)int Add(const wxIcon& icon);
+    bool Replace(int index, const wxBitmap& bitmap, const wxBitmap& mask = wxNullBitmap);
+    %name(ReplaceIcon)bool Replace(int index, const wxIcon& icon);
+#else
+    int Add(const wxBitmap& bitmap);
+    bool Replace(int index, const wxBitmap& bitmap);
+#endif
+
+    bool Draw(int index, wxDC& dc, int x, int x, int flags = wxIMAGELIST_DRAW_NORMAL,
+              const bool solidBackground = FALSE);
+
+    int GetImageCount();
+    bool Remove(int index);
+    bool RemoveAll();
+};
+
 
 //---------------------------------------------------------------------------
 
 /////////////////////////////////////////////////////////////////////////////
 //
 // $Log$
+// Revision 1.14  1999/02/20 10:02:36  RD
+// Changes needed to enable wxGTK compatibility.
+//
+// Revision 1.13  1999/02/20 09:02:58  RD
+// Added wxWindow_FromHWND(hWnd) for wxMSW to construct a wxWindow from a
+// window handle.  If you can get the window handle into the python code,
+// it should just work...  More news on this later.
+//
+// Added wxImageList, wxToolTip.
+//
+// Re-enabled wxConfig.DeleteAll() since it is reportedly fixed for the
+// wxRegConfig class.
+//
+// As usual, some bug fixes, tweaks, etc.
+//
+// Revision 1.12  1999/01/30 07:30:11  RD
+//
+// Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
+//
+// Various cleanup, tweaks, minor additions, etc. to maintain
+// compatibility with the current wxWindows.
+//
+// Revision 1.11  1998/12/18 15:49:05  RR
+//
+//   wxClipboard now serves the primary selection as well
+//   wxPython fixes
+//   warning mesages
+//
+// Revision 1.10  1998/12/17 18:05:50  RD
+//
+// wxPython 0.5.2
+// Minor fixes and SWIG code generation for RR's changes.  MSW and GTK
+// versions are much closer now!
+//
+// Revision 1.9  1998/12/17 14:07:37  RR
+//
+//   Removed minor differences between wxMSW and wxGTK
+//
+// Revision 1.8  1998/12/16 22:10:54  RD
+//
+// Tweaks needed to be able to build wxPython with wxGTK.
+//
 // Revision 1.7  1998/12/15 20:41:18  RD
 // Changed the import semantics from "from wxPython import *" to "from
 // wxPython.wx import *"  This is for people who are worried about