Mercurial > games > semicongine
diff fuhtark_test/include/winapi/smx.h @ 1500:91c8c3b7cbf0
add: futhark tests for generating vulkan api
| author | sam <sam@basx.dev> |
|---|---|
| date | Wed, 26 Nov 2025 21:36:48 +0700 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fuhtark_test/include/winapi/smx.h Wed Nov 26 21:36:48 2025 +0700 @@ -0,0 +1,169 @@ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the w64 mingw-runtime package. + * No warranty is given; refer to the file DISCLAIMER within this package. + */ +#ifndef _SMX_H_ +#define _SMX_H_ + +#define MENU_TEXT_LEN 50 + +#define SME_VERSION 0 + +#define SM_GETSELCOUNT (WM_USER + 1000) +#define SM_GETSERVERSELA (WM_USER + 1001) +#define SM_GETSERVERSELW (WM_USER + 1002) +#define SM_GETCURFOCUSA (WM_USER + 1003) +#define SM_GETCURFOCUSW (WM_USER + 1004) +#define SM_GETOPTIONS (WM_USER + 1005) + +#ifdef UNICODE +#define SM_GETSERVERSEL SM_GETSERVERSELW +#define SM_GETCURFOCUS SM_GETCURFOCUSW +#else +#define SM_GETSERVERSEL SM_GETSERVERSELA +#define SM_GETCURFOCUS SM_GETCURFOCUSA +#endif + +typedef struct _SMS_LOADMENUA { + DWORD dwVersion; + CHAR szMenuName[MENU_TEXT_LEN + 1]; + HMENU hMenu; + CHAR szHelpFileName[MAX_PATH]; + DWORD dwServerType; + DWORD dwMenuDelta; +} SMS_LOADMENUA,*PSMS_LOADMENUA; + +typedef struct _SMS_LOADMENUW { + DWORD dwVersion; + WCHAR szMenuName[MENU_TEXT_LEN + 1]; + HMENU hMenu; + WCHAR szHelpFileName[MAX_PATH]; + DWORD dwServerType; + DWORD dwMenuDelta; +} SMS_LOADMENUW,*PSMS_LOADMENUW; + +#ifdef UNICODE +#define SMS_LOADMENU SMS_LOADMENUW +#define PSMS_LOADMENU PSMS_LOADMENUW +#else +#define SMS_LOADMENU SMS_LOADMENUA +#define PSMS_LOADMENU PSMS_LOADMENUA +#endif + +typedef struct _SMS_GETSERVERSELA { + CHAR szServerName[MAX_PATH]; + DWORD dwServerType; +} SMS_GETSERVERSELA,*PSMS_GETSERVERSELA; + +typedef struct _SMS_GETSERVERSELW { + WCHAR szServerName[MAX_PATH]; + DWORD dwServerType; + +} SMS_GETSERVERSELW,*PSMS_GETSERVERSELW; + +#ifdef UNICODE +#define SMS_GETSERVERSEL SMS_GETSERVERSELW +#define PSMS_GETSERVERSEL PSMS_GETSERVERSELW +#else +#define SMS_GETSERVERSEL SMS_GETSERVERSELA +#define PSMS_GETSERVERSEL PSMS_GETSERVERSELA +#endif + +typedef struct _SMS_GETSELCOUNT { + DWORD dwItems; +} SMS_GETSELCOUNT,*PSMS_GETSELCOUNT; + +#define SM_FOCUS_TYPE_NT_DOMAIN 1 +#define SM_FOCUS_TYPE_LM_DOMAIN 2 +#define SM_FOCUS_TYPE_UNKNOWN_DOMAIN 3 +#define SM_FOCUS_TYPE_NT_SERVER 4 +#define SM_FOCUS_TYPE_LM_SERVER 5 +#define SM_FOCUS_TYPE_WFW_SERVER 6 +#define SM_FOCUS_TYPE_UNKNOWN_SERVER 7 + +typedef struct _SMS_GETCURFOCUSA { + CHAR szFocus[MAX_PATH]; + DWORD dwFocusType; +} SMS_GETCURFOCUSA,*PSMS_GETCURFOCUSA; + +typedef struct _SMS_GETCURFOCUSW { + WCHAR szFocus[MAX_PATH]; + DWORD dwFocusType; +} SMS_GETCURFOCUSW,*PSMS_GETCURFOCUSW; + +#ifdef UNICODE +#define SMS_GETCURFOCUS SMS_GETCURFOCUSW +#define PSMS_GETCURFOCUS PSMS_GETCURFOCUSW +#else +#define SMS_GETCURFOCUS SMS_GETCURFOCUSA +#define PSMS_GETCURFOCUS PSMS_GETCURFOCUSA +#endif + +typedef struct _SMS_GETOPTIONS { + WINBOOL fSaveSettingsOnExit; + WINBOOL fConfirmation; +} SMS_GETOPTIONS,*PSMS_GETOPTIONS; + +typedef struct _SMS_VALIDATEA { + const CHAR *pszServer; + CHAR *pszType; + CHAR *pszComment; +} SMS_VALIDATEA,*PSMS_VALIDATEA; + +typedef struct _SMS_VALIDATEW { + const WCHAR *pszServer; + WCHAR *pszType; + WCHAR *pszComment; + +} SMS_VALIDATEW,*PSMS_VALIDATEW; + +#ifdef UNICODE +#define SMS_VALIDATE SMS_VALIDATEW +#define PSMS_VALIDATE PSMS_VALIDATEW +#else +#define SMS_VALIDATE SMS_VALIDATEA +#define PSMS_VALIDATE PSMS_VALIDATEA +#endif + +#define SZ_SME_UNLOADMENU "SMEUnloadMenu" +#define SZ_SME_INITIALIZEMENU "SMEInitializeMenu" +#define SZ_SME_REFRESH "SMERefresh" +#define SZ_SME_MENUACTION "SMEMenuAction" +#define SZ_SME_LOADMENUW "SMELoadMenuW" +#define SZ_SME_GETEXTENDEDERRORSTRINGW "SMEGetExtendedErrorStringW" +#define SZ_SME_VALIDATEW "SMEValidateW" +#define SZ_SME_LOADMENUA "SMELoadMenuA" +#define SZ_SME_GETEXTENDEDERRORSTRINGA "SMEGetExtendedErrorStringA" +#define SZ_SME_VALIDATEA "SMEValidateA" + +#ifdef UNICODE +#define SZ_SME_LOADMENU SZ_SME_LOADMENUW +#define SZ_SME_GETEXTENDEDERRORSTRING SZ_SME_GETEXTENDEDERRORSTRINGW +#define SZ_SME_VALIDATE SZ_SME_VALIDATEW +#else +#define SZ_SME_LOADMENU SZ_SME_LOADMENUA +#define SZ_SME_GETEXTENDEDERRORSTRING SZ_SME_GETEXTENDEDERRORSTRINGA +#define SZ_SME_VALIDATE SZ_SME_VALIDATEA +#endif + +typedef DWORD (WINAPI *PSMX_LOADMENU)(HWND hWnd,PSMS_LOADMENU psmsload); +typedef LPTSTR (WINAPI *PSMX_GETEXTENDEDERRORSTRING)(VOID); +typedef VOID (WINAPI *PSMX_UNLOADMENU)(VOID); +typedef VOID (WINAPI *PSMX_INITIALIZEMENU)(VOID); +typedef VOID (WINAPI *PSMX_REFRESH)(HWND hwndParent); +typedef VOID (WINAPI *PSMX_MENUACTION)(HWND hwndParent,DWORD dwEventId); +typedef WINBOOL (WINAPI *PSMX_VALIDATE)(PSMS_VALIDATE psmsvalidate); + +DWORD WINAPI SMELoadMenuA(HWND hWnd,PSMS_LOADMENUA psmsload); +DWORD WINAPI SMELoadMenuW(HWND hWnd,PSMS_LOADMENUW psmsload); +LPSTR WINAPI SMEGetExtendedErrorStringA(VOID); +LPWSTR WINAPI SMEGetExtendedErrorStringW(VOID); +VOID WINAPI SMEUnloadMenu(VOID); +VOID WINAPI SMEInitializeMenu(VOID); +VOID WINAPI SMERefresh(HWND hwndParent); +VOID WINAPI SMEMenuAction(HWND hwndParent,DWORD dwEventId); +WINBOOL WINAPI SMEValidateA(PSMS_VALIDATEA psmsValidate); +WINBOOL WINAPI SMEValidateW(PSMS_VALIDATEW psmsValidate); + +#endif
