reactos/dll/win32/msctf/mlng.h
Katayama Hirofumi MZ 5af1d7c6b1
[MSCTF][SDK][CTFMON][MSCTFIME][MSUTB] Add msctf.dll stubs (#8026)
Some baby steps to msctf.dll for CTF.
JIRA issue: CORE-19361
- Add all the export functions of msctf.dll.
- Modify msctf.spec.
- Modify sdk/include/psdk/msctf.idl
  and sdk/include/psdk/inputscope.idl.
- Add sdk/include/reactos/msctf_undoc.h.
- Include <msctf_undoc.h> in ctfmon,
  msctfime, and msutb.
2025-05-26 07:22:41 +09:00

61 lines
1.3 KiB
C++

/*
* PROJECT: ReactOS msctf.dll
* LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
* PURPOSE: Multi-language handling of Cicero
* COPYRIGHT: Copyright 2024 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
*/
#pragma once
#define CTF_COMPAT_DELAY_FIRST_ACTIVATE 2
struct MLNGINFO
{
HKL m_hKL;
BOOL m_bInitDesc;
BOOL m_bInitIcon;
INT m_iIconIndex;
WCHAR m_szDesc[128];
void InitDesc();
void InitIcon();
INT GetIconIndex();
LPCWSTR GetDesc();
void SetDesc(LPCWSTR pszDesc);
};
class CStaticIconList : public CicArray<HICON>
{
public:
static INT s_cx;
static INT s_cy;
CStaticIconList() { }
void Init(INT cxIcon, INT cyIcon);
INT AddIcon(HICON hIcon);
HICON ExtractIcon(INT iIcon);
void GetIconSize(INT *pcx, INT *pcy);
INT GetImageCount();
void RemoveAll(BOOL bNoLock);
};
INT InatAddIcon(_In_ HICON hIcon);
HICON InatCreateIcon(_In_ LANGID LangID);
HICON
InatCreateIconBySize(
_In_ LANGID LangID,
_In_ INT nWidth,
_In_ INT nHeight,
_In_ const LOGFONTW *plf);
BOOL InatGetIconSize(_Out_ INT *pcx, _Out_ INT *pcy);
INT InatGetImageCount(VOID);
VOID InatRemoveAll(VOID);
DWORD GetHKLSubstitute(_In_ HKL hKL);
HICON GetIconFromFile(_In_ INT cx, _In_ INT cy, _In_ LPCWSTR pszFileName, _In_ INT iIcon);
VOID UninitINAT(VOID);