]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/minifram.cpp
Fixed mouse handling for captured windows
[wxWidgets.git] / src / msw / minifram.cpp
index 282ae2bbdd2fd0a6c94b36de6b641d7eb3c38ec7..e76e9f15dec0f75f9e7cf2297d7f2f1fad037acb 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     04/01/98
 // RCS-ID:      $Id$
 // Copyright:   (c) Julian Smart and Markus Holzem
-// Licence:    wxWindows license
+// Licence:     wxWindows license
 /////////////////////////////////////////////////////////////////////////////
 
 #ifdef __GNUG__
@@ -20,6 +20,9 @@
 #pragma hdrstop
 #endif
 
+#include "wx/window.h"
+#include "wx/msw/private.h"
+
 #ifndef WX_PRECOMP
 #include "wx/setup.h"
 #include "wx/event.h"
 #include "wx/utils.h"
 #endif
 
+
+#ifdef __WIN32__
+
+#include "wx/minifram.h"
+
+IMPLEMENT_DYNAMIC_CLASS(wxMiniFrame, wxFrame)
+
+
+#else
+
+
 #if wxUSE_ITSY_BITSY
 
 #include "wx/minifram.h"
-#include "wx/msw/private.h"
 
 #ifndef __TWIN32__
-#ifdef __GNUWIN32__
-#include "wx/msw/gnuwin32/extra.h"
-#endif
+    #ifdef __GNUWIN32_OLD__
+        #include "wx/msw/gnuwin32/extra.h"
+    #endif
 #endif
 
-#if !USE_SHARED_LIBRARY
 IMPLEMENT_DYNAMIC_CLASS(wxMiniFrame, wxFrame)
-#endif
 
 long wxMiniFrame::MSWDefWindowProc(WXUINT nMsg, WXWPARAM wParam, WXLPARAM lParam)
 {
@@ -86,8 +97,8 @@ wxMiniFrame::~wxMiniFrame(void)
 //
 //////////////////////////////////////////////////////////////////////////
 
-#include <windows.h>
-#include <windowsx.h>
+#include "wx/window.h"
+#include "wx/msw/private.h"
 
 #include <string.h>
 
@@ -164,13 +175,13 @@ wxMiniFrame::~wxMiniFrame(void)
 #define HASCAPTION( hwnd )    (TestWinStyle( hwnd, IBS_VERTCAPTION ) ||\
                                TestWinStyle( hwnd, IBS_HORZCAPTION ))
                                
-#define SETCAPTIONSIZE(h,i)   (UINT)SetProp(h,"ibSize",(HANDLE)i)
-#define GETCAPTIONSIZE(h)     (UINT)GetProp(h,"ibSize")
-#define FREECAPTIONSIZE(h)    RemoveProp(h,"ibSize")
+#define SETCAPTIONSIZE(h,i)   (UINT)SetProp(h,wxT("ibSize"),(HANDLE)i)
+#define GETCAPTIONSIZE(h)     (UINT)GetProp(h,wxT("ibSize"))
+#define FREECAPTIONSIZE(h)    RemoveProp(h,wxT("ibSize"))
 
-#define SETMENUWASUPFLAG(h,i) (UINT)SetProp(h,"ibFlag",(HANDLE)i)
-#define GETMENUWASUPFLAG(h)   (UINT)GetProp(h,"ibFlag")
-#define FREEMENUWASUPFLAG(h)  RemoveProp(h,"ibFlag")
+#define SETMENUWASUPFLAG(h,i) (UINT)SetProp(h,wxT("ibFlag"),(HANDLE)i)
+#define GETMENUWASUPFLAG(h)   (UINT)GetProp(h,wxT("ibFlag"))
+#define FREEMENUWASUPFLAG(h)  RemoveProp(h,wxT("ibFlag"))
 
 /////////////////////////////////////////////////////////////////////
 // Little known fact:
@@ -388,7 +399,7 @@ LRESULT WINAPI ibDefWindowProc( HWND hWnd, UINT uiMsg, WPARAM wParam, LPARAM lPa
                 {
                     // VZ: I don't know what should be here, but the vars must
                     //     be inited!
-                    wxFAIL_MSG("don't know how to initialize cx, cy");
+                    wxFAIL_MSG(wxT("don't know how to initialize cx, cy"));
 
                     cx = cy = 0;
                 }
@@ -868,14 +879,14 @@ BOOL PASCAL DrawCaption( HDC hDC, HWND hWnd, LPRECT lprc,
     if (fWin31)
     {
         HFONT          hFont ;
-        LPSTR          lpsz ;
+        LPTSTR         lpsz ;
         LOGFONT        lf ;
         TEXTMETRIC     tm ;
         int            cx ;
         int            cy ;
         SIZE           Size ;
         
-        lpsz = (char*)GlobalAllocPtr( GHND, ui + 2 );
+        lpsz = (wxChar*)GlobalAllocPtr( GHND, (ui + 2) * sizeof(wxChar) );
         if (lpsz)
         {
             UINT    nBkMode ;
@@ -899,7 +910,7 @@ BOOL PASCAL DrawCaption( HDC hDC, HWND hWnd, LPRECT lprc,
             {
                 // Can only rotate true type fonts (well, ok, we could
                 // try and use "modern").
-                strcpy( lf.lfFaceName, "Arial" ) ;
+                wxStrcpy( lf.lfFaceName, wxT("Arial") ) ;
                 lf.lfPitchAndFamily = FF_SWISS | 0x04;
                 lf.lfEscapement = 900 ;
 
@@ -965,7 +976,11 @@ BOOL PASCAL DrawCaption( HDC hDC, HWND hWnd, LPRECT lprc,
             rgbText = SetTextColor( hDC, rgbText ) ;
             SetBkMode( hDC, nBkMode ) ;
             
+#ifdef __WIN16__
+            GlobalFreePtr( (unsigned int)(DWORD) lpsz ) ;
+#else
             GlobalFreePtr( lpsz ) ;
+#endif
         }
     }
     
@@ -1602,3 +1617,5 @@ void PASCAL DrawArrow( HDC hdc, LPRECT lprc, UINT uiStyle )
 }  // DrawArrow()   
 
 #endif // wxUSE_ITSY_BITSY
+
+#endif // __WIN32__