2002-12-05 16:18:30 -05:00
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
|
|
// Name: wince/missing.h
|
2003-12-27 12:17:21 -05:00
|
|
|
// Purpose: Missing things in WinCE
|
2002-12-05 16:18:30 -05:00
|
|
|
// Author: Marco Cavallini
|
|
|
|
// Modified by:
|
|
|
|
// Created: 16/11/2002
|
|
|
|
// RCS-ID:
|
|
|
|
// Copyright: (c) KOAN SAS ( www.koansoftware.com )
|
2003-03-17 05:34:04 -05:00
|
|
|
// Licence: wxWindows licence
|
|
|
|
///////////////////////////////////////////////////////////////////////////////
|
2002-12-05 16:18:30 -05:00
|
|
|
|
|
|
|
#ifndef _WX_CE_MISSING_H_
|
|
|
|
#define _WX_CE_MISSING_H_
|
|
|
|
|
2003-12-27 12:17:21 -05:00
|
|
|
#include "wx/msw/private.h"
|
|
|
|
#include "shellapi.h"
|
|
|
|
|
2003-11-18 16:25:44 -05:00
|
|
|
inline BOOL IsIconic( HWND hWnd )
|
2003-07-10 17:14:50 -04:00
|
|
|
{
|
|
|
|
// Probably not right...
|
|
|
|
#if 0
|
|
|
|
long style = GetWindowLong(hWnd, GWL_STYLE);
|
|
|
|
return ((style & WS_MINIMIZE) == 0);
|
|
|
|
#endif
|
|
|
|
return FALSE;
|
|
|
|
}
|
2002-12-05 16:18:30 -05:00
|
|
|
|
2003-11-18 16:25:44 -05:00
|
|
|
#ifdef WIN32_PLATFORM_PSPC
|
|
|
|
#define SM_CXCURSOR 13
|
|
|
|
#define SM_CYCURSOR 14
|
|
|
|
#endif
|
2002-12-05 16:18:30 -05:00
|
|
|
|
2003-12-27 12:17:21 -05:00
|
|
|
// Missing from eVC 4 for some reason
|
|
|
|
#ifndef I_IMAGENONE
|
|
|
|
#define I_IMAGENONE (-2)
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef TBSTYLE_NO_DROPDOWN_ARROW
|
|
|
|
#define TBSTYLE_NO_DROPDOWN_ARROW 0x0080
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#if _WIN32_WCE >= 400
|
|
|
|
// aygshell.h missing from eVC 4 for some reason
|
|
|
|
#define SHCMBM_GETMENU (WM_USER + 402)
|
|
|
|
#define SHCMBM_SETSUBMENU (WM_USER + 400) // wparam == id of button, lParam == hmenu, return is old hmenu
|
|
|
|
#define SHCMBM_GETSUBMENU (WM_USER + 401) // lParam == ID
|
|
|
|
#define SHCMBM_GETMENU (WM_USER + 402) // get the owning hmenu (as specified in the load resource)
|
|
|
|
|
|
|
|
#define SHIDIF_DONEBUTTON 0x0001
|
|
|
|
#define SHIDIF_SIZEDLG 0x0002
|
|
|
|
#define SHIDIF_SIZEDLGFULLSCREEN 0x0004
|
|
|
|
#define SHIDIF_SIPDOWN 0x0008
|
|
|
|
#define SHIDIF_FULLSCREENNOMENUBAR 0x0010
|
|
|
|
#define SHIDIF_EMPTYMENU 0x0020
|
|
|
|
|
|
|
|
#define SHFS_SHOWTASKBAR 0x0001
|
|
|
|
#define SHFS_HIDETASKBAR 0x0002
|
|
|
|
#define SHFS_SHOWSIPBUTTON 0x0004
|
|
|
|
#define SHFS_HIDESIPBUTTON 0x0008
|
|
|
|
#define SHFS_SHOWSTARTICON 0x0010
|
|
|
|
#define SHFS_HIDESTARTICON 0x0020
|
|
|
|
|
|
|
|
typedef struct tagSHMENUBARINFO
|
|
|
|
{
|
|
|
|
DWORD cbSize; // IN - Indicates which members of struct are valid
|
|
|
|
HWND hwndParent; // IN
|
|
|
|
DWORD dwFlags; // IN - Some features we want
|
|
|
|
UINT nToolBarId; // IN - Which toolbar are we using
|
|
|
|
HINSTANCE hInstRes; // IN - Instance that owns the resources
|
|
|
|
int nBmpId;
|
|
|
|
int cBmpImages; // IN - Count of bitmap images
|
|
|
|
HWND hwndMB; // OUT
|
|
|
|
COLORREF clrBk; // IN - background color of the menu bar (excluding sip)
|
|
|
|
} SHMENUBARINFO, *PSHMENUBARINFO;
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
BOOL SHFullScreen(HWND hwndRequester, DWORD dwState);
|
|
|
|
|
|
|
|
WINSHELLAPI BOOL SHCreateMenuBar(SHMENUBARINFO *pmbi);
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
2002-12-05 16:18:30 -05:00
|
|
|
/*
|
|
|
|
Most of these are in MSVC++6.0 <wx\wince\winuser.h>
|
|
|
|
see also <wx\msw\gnuwin32\winresrc.h>
|
|
|
|
*/
|
2003-12-23 04:18:16 -05:00
|
|
|
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
// Used in msgdlg.cpp, evtloop.cpp
|
|
|
|
// ----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
#ifndef MB_TASKMODAL
|
|
|
|
#define MB_TASKMODAL 0x2000
|
|
|
|
#endif
|
|
|
|
|
2002-12-05 16:18:30 -05:00
|
|
|
////////////////////////////////////////////////////////
|
|
|
|
|
2003-07-10 17:14:50 -04:00
|
|
|
// JACS: I've commented these out in order to start from
|
|
|
|
// scratch. I don't think we should simply add styles,
|
|
|
|
// classes etc. when we don't know if they're supported
|
|
|
|
// by WinCE libraries.
|
|
|
|
|
|
|
|
#if 0
|
|
|
|
|
2002-12-05 16:18:30 -05:00
|
|
|
/*
|
|
|
|
* Extended Window Styles
|
|
|
|
*/
|
|
|
|
#define WS_EX_DLGMODALFRAME 0x00000001L
|
|
|
|
#define WS_EX_NOPARENTNOTIFY 0x00000004L
|
|
|
|
#define WS_EX_TOPMOST 0x00000008L
|
|
|
|
#define WS_EX_ACCEPTFILES 0x00000010L
|
|
|
|
#define WS_EX_TRANSPARENT 0x00000020L
|
|
|
|
|
|
|
|
#define WS_EX_MDICHILD 0x00000040L
|
|
|
|
#define WS_EX_TOOLWINDOW 0x00000080L
|
|
|
|
#define WS_EX_WINDOWEDGE 0x00000100L
|
|
|
|
#define WS_EX_CLIENTEDGE 0x00000200L
|
|
|
|
#define WS_EX_CONTEXTHELP 0x00000400L
|
|
|
|
|
|
|
|
#define WS_EX_RIGHT 0x00001000L
|
|
|
|
#define WS_EX_LEFT 0x00000000L
|
|
|
|
#define WS_EX_RTLREADING 0x00002000L
|
|
|
|
#define WS_EX_LTRREADING 0x00000000L
|
|
|
|
#define WS_EX_LEFTSCROLLBAR 0x00004000L
|
|
|
|
#define WS_EX_RIGHTSCROLLBAR 0x00000000L
|
|
|
|
|
|
|
|
#define WS_EX_CONTROLPARENT 0x00010000L
|
|
|
|
#define WS_EX_STATICEDGE 0x00020000L
|
|
|
|
#define WS_EX_APPWINDOW 0x00040000L
|
|
|
|
|
|
|
|
|
|
|
|
#define WS_EX_OVERLAPPEDWINDOW (WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE)
|
|
|
|
#define WS_EX_PALETTEWINDOW (WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW | WS_EX_TOPMOST)
|
|
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
* Flags for TrackPopupMenu
|
|
|
|
*/
|
|
|
|
#define TPM_LEFTBUTTON 0x0000L
|
|
|
|
#define TPM_RIGHTBUTTON 0x0002L
|
|
|
|
#define TPM_LEFTALIGN 0x0000L
|
|
|
|
#define TPM_CENTERALIGN 0x0004L
|
|
|
|
#define TPM_RIGHTALIGN 0x0008L
|
|
|
|
|
|
|
|
#define TPM_TOPALIGN 0x0000L
|
|
|
|
#define TPM_VCENTERALIGN 0x0010L
|
|
|
|
#define TPM_BOTTOMALIGN 0x0020L
|
|
|
|
|
|
|
|
#define TPM_HORIZONTAL 0x0000L /* Horz alignment matters more */
|
|
|
|
#define TPM_VERTICAL 0x0040L /* Vert alignment matters more */
|
|
|
|
#define TPM_NONOTIFY 0x0080L /* Don't send any notification msgs */
|
|
|
|
#define TPM_RETURNCMD 0x0100L
|
|
|
|
|
|
|
|
#define TPM_RECURSE 0x0001L
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////
|
|
|
|
// Missing declarations into WinCE include files (MCK)
|
|
|
|
////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
HCURSOR WINAPI
|
|
|
|
DestroyCursor(HCURSOR hCursor);
|
|
|
|
|
|
|
|
HCURSOR WINAPI
|
|
|
|
CreateCursor(HINSTANCE hInst,
|
|
|
|
int xHotSpot,
|
|
|
|
int yHotSpot,
|
|
|
|
int nWidth,
|
|
|
|
int nHeight,
|
|
|
|
CONST VOID *pvANDPlane,
|
|
|
|
CONST VOID *pvXORPlane );
|
|
|
|
|
|
|
|
////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
int WINAPI
|
|
|
|
GetScrollPos(
|
|
|
|
HWND hWnd,
|
|
|
|
int nBar);
|
|
|
|
|
|
|
|
bool WINAPI
|
|
|
|
GetScrollRange(
|
|
|
|
HWND hWnd,
|
|
|
|
int nBar,
|
|
|
|
LPINT lpMinPos,
|
|
|
|
LPINT lpMaxPos);
|
|
|
|
|
|
|
|
bool WINAPI
|
|
|
|
ScrollWindow(
|
|
|
|
HWND hWnd,
|
|
|
|
int XAmount,
|
|
|
|
int YAmount,
|
|
|
|
CONST RECT *lpRect,
|
|
|
|
CONST RECT *lpClipRect);
|
|
|
|
|
|
|
|
LRESULT WINAPI
|
|
|
|
CallWindowProcA(
|
|
|
|
WNDPROC lpPrevWndFunc,
|
|
|
|
HWND hWnd,
|
|
|
|
UINT Msg,
|
|
|
|
WPARAM wParam,
|
|
|
|
LPARAM lParam);
|
|
|
|
|
|
|
|
LRESULT WINAPI
|
|
|
|
CallWindowProcW(
|
|
|
|
WNDPROC lpPrevWndFunc,
|
|
|
|
HWND hWnd,
|
|
|
|
UINT Msg,
|
|
|
|
WPARAM wParam,
|
|
|
|
LPARAM lParam);
|
|
|
|
|
|
|
|
#ifdef UNICODE
|
|
|
|
#define CallWindowProc CallWindowProcW
|
|
|
|
#else
|
|
|
|
#define CallWindowProc CallWindowProcA
|
|
|
|
#endif // !UNICODE
|
|
|
|
|
2003-07-10 17:14:50 -04:00
|
|
|
#endif
|
2003-12-23 04:18:16 -05:00
|
|
|
// 0
|
2003-07-10 17:14:50 -04:00
|
|
|
|
2002-12-05 16:18:30 -05:00
|
|
|
////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
#endif // _WX_CE_MISSING_H_
|