X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/47d67540a017101b3e46abe9ef0f55914d8de37e..8adb5d455797d5b656ef677c74359e5a578b539f:/src/msw/minifram.cpp diff --git a/src/msw/minifram.cpp b/src/msw/minifram.cpp index c64fdf0e7d..2b4e637099 100644 --- a/src/msw/minifram.cpp +++ b/src/msw/minifram.cpp @@ -5,8 +5,8 @@ // Modified by: // Created: 04/01/98 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart and Markus Holzem -// Licence: wxWindows license +// Copyright: (c) Julian Smart +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifdef __GNUG__ @@ -20,24 +20,38 @@ #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/app.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" -#ifdef __GNUWIN32__ -#include "wx/msw/gnuwin32/extra.h" +#ifndef __TWIN32__ + #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) { @@ -83,12 +97,12 @@ wxMiniFrame::~wxMiniFrame(void) // ////////////////////////////////////////////////////////////////////////// -#include -#include +#include "wx/window.h" +#include "wx/msw/private.h" #include -#ifndef __WATCOMC__ +#if !defined( __WATCOMC__ ) && !defined( __MWERKS__ ) && !defined(__SALFORDC__) #include #endif @@ -161,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: @@ -376,12 +390,19 @@ LRESULT WINAPI ibDefWindowProc( HWND hWnd, UINT uiMsg, WPARAM wParam, LPARAM lPa cx = GetSystemMetrics( SM_CXFRAME ) ; cy = GetSystemMetrics( SM_CYFRAME ) ; } + else if (TestWinStyle(hWnd, WS_BORDER )) + { + cx = GetSystemMetrics( SM_CXBORDER ) ; + cy = GetSystemMetrics( SM_CYBORDER ) ; + } else - if (TestWinStyle(hWnd, WS_BORDER )) - { - cx = GetSystemMetrics( SM_CXBORDER ) ; - cy = GetSystemMetrics( SM_CYBORDER ) ; - } + { + // VZ: I don't know what should be here, but the vars must + // be inited! + wxFAIL_MSG(wxT("don't know how to initialize cx, cy")); + + cx = cy = 0; + } GetIconRect( hWnd, &rcMenu ) ; GetMinButtonRect( hWnd, &rcMin ) ; @@ -858,14 +879,15 @@ 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 ; - if ((lpsz = (char*)GlobalAllocPtr( GHND, ui + 2 ))) + lpsz = (wxChar*)GlobalAllocPtr( GHND, (ui + 2) * sizeof(wxChar) ); + if (lpsz) { UINT nBkMode ; @@ -888,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 ; @@ -954,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 } } @@ -1074,7 +1100,8 @@ BOOL PASCAL DoMenu( HWND hWnd ) if (!TestWinStyle(hWnd, WS_SYSMENU)) return FALSE ; - if ((hDC = GetWindowDC( hWnd ))) + hDC = GetWindowDC( hWnd ); + if (hDC) { // Invert the icon // @@ -1590,3 +1617,5 @@ void PASCAL DrawArrow( HDC hdc, LPRECT lprc, UINT uiStyle ) } // DrawArrow() #endif // wxUSE_ITSY_BITSY + +#endif // __WIN32__