X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e2478fde622a16d25c66690af353dfdc37e7b582..8704b36653dc76ed7b6743642fb2925ffc5789d7:/include/wx/msw/missing.h diff --git a/include/wx/msw/missing.h b/include/wx/msw/missing.h index e630907950..7d1f8db5c8 100644 --- a/include/wx/msw/missing.h +++ b/include/wx/msw/missing.h @@ -1,9 +1,10 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: missing.h +// Name: wx/msw/missing.h // Purpose: Declarations for parts of the Win32 SDK that are missing in -// the version that comes with some compilers +// the versions that come with some compilers // Created: 2002/04/23 // RCS-ID: $Id$ +// Copyright: (c) 2002 Mattia Barbon // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// @@ -27,6 +28,10 @@ #define LVS_EX_FULLROWSELECT 0x00000020 #endif +#ifndef LVS_EX_LABELTIP + #define LVS_EX_LABELTIP 0x00004000 +#endif + #ifndef LVS_OWNERDATA #define LVS_OWNERDATA 0x1000 #endif @@ -44,7 +49,8 @@ #endif #ifndef LVSICF_NOSCROLL - #define LVSICF_NOSCROLL 0x0002 + #define LVSICF_NOINVALIDATEALL 0x0001 + #define LVSICF_NOSCROLL 0x0002 #endif // mingw32/cygwin don't have declarations for comctl32.dll 4.70+ stuff @@ -178,6 +184,93 @@ typedef struct { #endif #endif +#ifndef LVM_SETUNICODEFORMAT +#define LVM_SETUNICODEFORMAT 0x2005 +#endif + +// ---------------------------------------------------------------------------- +// Common Control missing +// ---------------------------------------------------------------------------- +// __DMC__ date time control IDs + +#ifdef __DMC__ +#define DATETIMEPICK_CLASSW L"SysDateTimePick32" +#define DATETIMEPICK_CLASSA "SysDateTimePick32" + +#define ICC_DATE_CLASSES 256 + +#if (_WIN32_IE >= 0x0300) +typedef struct tagINITCOMMONCONTROLSEX { + DWORD dwSize; + DWORD dwICC; +} INITCOMMONCONTROLSEX,*LPINITCOMMONCONTROLSEX; + +#define GDTR_MIN 1 +#define GDTR_MAX 2 + +#define GDT_ERROR -1 +#define GDT_VALID 0 +#define GDT_NONE 1 + + +#define DTS_UPDOWN 1 +#define DTS_SHOWNONE 2 +#define DTS_SHORTDATEFORMAT 0 +#define DTS_LONGDATEFORMAT 4 +#define DTS_TIMEFORMAT 9 +#define DTS_APPCANPARSE 16 +#define DTS_RIGHTALIGN 32 +#if ( _WIN32_IE >= 0x500 ) +#define DTS_SHORTDATECENTURYFORMAT 0x000C +#endif /* _WIN32_IE >= 0x500 */ +#endif + + + +#define DATETIMEPICK_CLASSW L"SysDateTimePick32" +#define DATETIMEPICK_CLASSA "SysDateTimePick32" + +#ifdef UNICODE + #define DATETIMEPICK_CLASS DATETIMEPICK_CLASSW +#else + #define DATETIMEPICK_CLASS DATETIMEPICK_CLASSA +#endif + +#define DTM_GETSYSTEMTIME 0x1001 +#define DTM_SETSYSTEMTIME 0x1002 +#define DTM_GETRANGE 0x1003 +#define DTM_SETRANGE 0x1004 +#define DTN_DATETIMECHANGE ((UINT)-759) + +#define DateTime_GetMonthCal(hwnd) SNDMSG(hwnd, DTM_GETMONTHCAL, 0, 0) +#define DateTime_GetMonthCalColor(hwnd, icolor) SNDMSG(hwnd, DTM_GETMONTHCAL, (WPARAM)icolor,0) +#define DateTime_GetMonthCalFont(hwnd) SNDMSG(hwnd,DTM_GETMCFONT,0,0) +#define DateTime_GetRange(hwnd,lpsystimearray) SNDMSG(hwnd,DTM_GETRANGE,0,(LPARAM)lpsystimearray) +#define DateTime_GetSystemTime(hwnd,lpsystime) SNDMSG(hwnd,DTM_GETSYSTEMTIME,0,(LPARAM)lpsystime) +#define DateTime_SetFormat(hwnd,lpszformat) SNDMSG(hwnd,DTM_SETFORMAT,0,(LPARAM)lpszformat) +#define DateTime_SetMonthCalColor(hwnd,icolor,clr) SNDMSG(hwnd,DTM_SETMCCOLOR,(WPARAM)icolor,(LPARAM)clr) +#define DateTime_SetMonthCalFont(hwnd,hfont,lparam) SNDMSG(hwnd,DTM_SETMCFONT,(WPARAM)hfont,(LPARAM)lparam) +#define DateTime_SetRange(hwnd,flags,lpsystimearray) SNDMSG(hwnd,DTM_SETRANGE,(WPARAM)flags,(LPARAM)lpsystimearray) +#define DateTime_SetSystemTime(hwnd,flag,lpsystime) SNDMSG(hwnd,DTM_SETSYSTEMTIME,(WPARAM)flag,(LPARAM)lpsystime) + + +#endif //__DMC__ date time control IDs + +#if defined(__GNUWIN32__) && !wxCHECK_W32API_VERSION( 2, 4 ) || defined (__DMC__) +typedef struct tagNMDATETIMECHANGE +{ + NMHDR nmhdr; + DWORD dwFlags; + SYSTEMTIME st; +} NMDATETIMECHANGE; +#endif // old gcc headers + +// ---------------------------------------------------------------------------- +// Toolbar define value missing +// ---------------------------------------------------------------------------- +#if !defined(CCS_VERT) +#define CCS_VERT 0x00000080L +#endif // ---------------------------------------------------------------------------- // MS HTML Help @@ -365,10 +458,114 @@ typedef struct _paraformat2 { #endif // wxUSE_RICHEDIT +// ---------------------------------------------------------------------------- +// ToolBar +// ---------------------------------------------------------------------------- + +#if wxUSE_TOOLBAR + +#if !defined(TBIF_SIZE) + +#define TBIF_SIZE 64 +#define TB_SETBUTTONINFO (WM_USER+66) + +typedef struct { + UINT cbSize; + DWORD dwMask; + int idCommand; + int iImage; + BYTE fsState; + BYTE fsStyle; + WORD cx; + DWORD lParam; + LPTSTR pszText; + int cchText; +} TBBUTTONINFO, *LPTBBUTTONINFO; + +#endif // !defined(TBIF_SIZE) + +#if !defined(TB_SETDISABLEDIMAGELIST) + #define TB_SETDISABLEDIMAGELIST (WM_USER + 54) +#endif // !defined(TB_SETDISABLEDIMAGELIST) + +#endif // wxUSE_TOOLBAR + +// ---------------------------------------------------------------------------- +// Tree control +// ---------------------------------------------------------------------------- + +#ifndef TVIS_FOCUSED + #define TVIS_FOCUSED 0x0001 +#endif + +#ifndef TV_FIRST + #define TV_FIRST 0x1100 +#endif + +#ifndef TVS_CHECKBOXES + #define TVS_CHECKBOXES 0x0100 +#endif + +#ifndef TVS_FULLROWSELECT + #define TVS_FULLROWSELECT 0x1000 +#endif + +#ifndef TVM_SETBKCOLOR + #define TVM_SETBKCOLOR (TV_FIRST + 29) + #define TVM_SETTEXTCOLOR (TV_FIRST + 30) +#endif + +#ifndef TVS_INFOTIP + #define TVS_INFOTIP 2048 +#endif + +#ifndef TVN_GETINFOTIPA + #define TVN_GETINFOTIPA (TVN_FIRST-13) + #define TVN_GETINFOTIPW (TVN_FIRST-14) +#endif + +#ifndef TVN_GETINFOTIP + #ifdef UNICODE + #define TVN_GETINFOTIP TVN_GETINFOTIPW + #else + #define TVN_GETINFOTIP TVN_GETINFOTIPA + #endif +#endif + +#if !defined(NMTVGETINFOTIP) && defined(TVN_FIRST) + // NB: Check for TVN_FIRST is done so that this code is not included if + // (which defined HTREEITEM) wasn't included before. + struct NMTVGETINFOTIPA + { + NMHDR hdr; + LPSTR pszText; + int cchTextMax; + HTREEITEM hItem; + LPARAM lParam; + }; + struct NMTVGETINFOTIPW + { + NMHDR hdr; + LPWSTR pszText; + int cchTextMax; + HTREEITEM hItem; + LPARAM lParam; + }; + #ifdef UNICODE + #define NMTVGETINFOTIP NMTVGETINFOTIPW + #else + #define NMTVGETINFOTIP NMTVGETINFOTIPA + #endif +#endif + // ---------------------------------------------------------------------------- // Misc stuff // ---------------------------------------------------------------------------- +#ifndef CCM_SETUNICODEFORMAT + #define CCM_SETUNICODEFORMAT 8197 +#endif + #ifndef QS_ALLPOSTMESSAGE #define QS_ALLPOSTMESSAGE 0x0100 #endif @@ -381,5 +578,123 @@ typedef struct _paraformat2 { #define ENDSESSION_LOGOFF 0x80000000 #endif +#ifndef HANGUL_CHARSET + #define HANGUL_CHARSET 129 +#endif + +#ifndef TME_HOVER + #define TME_HOVER 1 +#endif + +#ifndef TME_LEAVE + #define TME_LEAVE 2 +#endif + +#ifndef TME_QUERY + #define TME_QUERY 0x40000000 +#endif + +#ifndef TME_CANCEL + #define TME_CANCEL 0x80000000 +#endif + +#ifndef HOVER_DEFAULT + #define HOVER_DEFAULT 0xFFFFFFFF +#endif + +#ifdef __DMC__ + + #ifndef _TrackMouseEvent + #define _TrackMouseEvent TrackMouseEvent + #endif + +#endif + +// This didn't appear in mingw until 2.95.2 +#ifndef SIF_TRACKPOS +#define SIF_TRACKPOS 16 +#endif + +#if wxUSE_MOUSEWHEEL + #ifndef WM_MOUSEWHEEL + #define WM_MOUSEWHEEL 0x020A + #endif + #ifndef WHEEL_DELTA + #define WHEEL_DELTA 120 + #endif + #ifndef SPI_GETWHEELSCROLLLINES + #define SPI_GETWHEELSCROLLLINES 104 + #endif +#endif // wxUSE_MOUSEWHEEL + +#ifndef VK_OEM_1 + #define VK_OEM_1 0xBA + #define VK_OEM_2 0xBF + #define VK_OEM_3 0xC0 + #define VK_OEM_4 0xDB + #define VK_OEM_5 0xDC + #define VK_OEM_6 0xDD + #define VK_OEM_7 0xDE +#endif + +#ifndef VK_OEM_COMMA + #define VK_OEM_PLUS 0xBB + #define VK_OEM_COMMA 0xBC + #define VK_OEM_MINUS 0xBD + #define VK_OEM_PERIOD 0xBE +#endif + +#ifndef WM_CONTEXTMENU + #define WM_CONTEXTMENU 0x007B +#endif + +#ifndef WM_UPDATEUISTATE + #define WM_UPDATEUISTATE 0x0128 +#endif + +#ifndef WM_PRINTCLIENT + #define WM_PRINTCLIENT 0x318 +#endif + +#ifndef UIS_INITIALIZE + #define UIS_INITIALIZE 3 +#endif + +#ifndef UISF_HIDEFOCUS + #define UISF_HIDEFOCUS 1 +#endif + +#ifndef UISF_HIDEACCEL + #define UISF_HIDEACCEL 2 +#endif + +#ifndef WC_NO_BEST_FIT_CHARS + #define WC_NO_BEST_FIT_CHARS 0x400 +#endif + +#ifndef OFN_EXPLORER + #define OFN_EXPLORER 0x00080000 +#endif + +#ifndef OFN_ENABLESIZING + #define OFN_ENABLESIZING 0x00800000 +#endif + +// ------------------ For Flashing Window ------------- +#if (defined(__BORLANDC__) && (__BORLANDC__ < 550)) +typedef struct { + UINT cbSize; + HWND hwnd; + DWORD dwFlags; + UINT uCount; + DWORD dwTimeout; +} FLASHWINFO, *PFLASHWINFO; +#endif + +// In addition, include stuff not defined in WinCE +#ifdef __WXWINCE__ + #include "wx/msw/wince/missing.h" +#endif + #endif // _WX_MISSING_H_