ReactOS 0.4.15-dev-8080-g044f181
profile.h
Go to the documentation of this file.
1/*
2 * PROJECT: ReactOS msctfime.ime
3 * LICENSE: LGPL-2.1-or-later (https://spdx.org/licenses/LGPL-2.1-or-later)
4 * PURPOSE: Profile of msctfime.ime
5 * COPYRIGHT: Copyright 2024 Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
6 */
7
8#pragma once
9
10#include "sinks.h"
11
12class CicProfile : public IUnknown
13{
14protected:
15 ITfInputProcessorProfiles *m_pIPProfiles;
25
26 static INT CALLBACK
28 REFGUID rguid1,
29 REFGUID rguid2,
30 BOOL fActivated,
31 LPVOID pUserData);
32
33public:
34 CicProfile();
35 virtual ~CicProfile();
36
37 // IUnknown interface
38 STDMETHODIMP QueryInterface(REFIID riid, LPVOID* ppvObj) override;
41
44 _In_ HKL hKL,
45 _In_ REFGUID rguid,
46 _Out_ TF_LANGUAGEPROFILE *pProfile);
47 HRESULT GetLangId(_Out_ LANGID *pLangID);
48 HRESULT GetCodePageA(_Out_ UINT *puCodePage);
49
51
52 BOOL IsIME(HKL hKL);
53};
#define STDMETHODIMP
Definition: basetyps.h:43
DWORD m_dwFlags
Definition: profile.h:19
UINT m_nCodePage
Definition: profile.h:20
LANGID m_LangID1
Definition: profile.h:17
WORD m_padding1
Definition: profile.h:18
static INT CALLBACK ActiveLanguageProfileNotifySinkCallback(REFGUID rguid1, REFGUID rguid2, BOOL fActivated, LPVOID pUserData)
@implemented
Definition: profile.cpp:71
STDMETHODIMP_(ULONG) AddRef() override
HRESULT GetLangId(_Out_ LANGID *pLangID)
@implemented
Definition: profile.cpp:114
DWORD m_dwUnknown1
Definition: profile.h:23
HRESULT GetActiveLanguageProfile(_In_ HKL hKL, _In_ REFGUID rguid, _Out_ TF_LANGUAGEPROFILE *pProfile)
@unimplemented
Definition: profile.cpp:167
LONG m_cRefs
Definition: profile.h:24
STDMETHODIMP QueryInterface(REFIID riid, LPVOID *ppvObj) override
@implemented
Definition: profile.cpp:46
LANGID m_LangID2
Definition: profile.h:21
CicProfile()
@implemented
Definition: profile.cpp:13
WORD m_padding2
Definition: profile.h:22
HRESULT GetCodePageA(_Out_ UINT *puCodePage)
@implemented
Definition: profile.cpp:83
BOOL IsIME(HKL hKL)
Definition: profile.cpp:177
STDMETHODIMP_(ULONG) Release() override
virtual ~CicProfile()
@implemented
Definition: profile.cpp:26
ITfInputProcessorProfiles * m_pIPProfiles
Definition: profile.h:15
CActiveLanguageProfileNotifySink * m_pActiveLanguageProfileNotifySink
Definition: profile.h:16
HRESULT InitProfileInstance(_Inout_ TLS *pTLS)
@implemented
Definition: profile.cpp:139
Definition: tls.h:14
#define CALLBACK
Definition: compat.h:35
unsigned int BOOL
Definition: ntddk_ex.h:94
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned short WORD
Definition: ntddk_ex.h:93
REFIID riid
Definition: atlbase.h:39
ULONG AddRef()
ULONG Release()
USHORT LANGID
Definition: mui.h:9
#define _Inout_
Definition: ms_sal.h:378
#define _Out_
Definition: ms_sal.h:345
#define _In_
Definition: ms_sal.h:308
UINT_PTR HKL
Definition: msctf.idl:143
unsigned int UINT
Definition: ndis.h:50
long LONG
Definition: pedump.c:60
#define REFIID
Definition: guiddef.h:118
Definition: scsiwmi.h:51
int32_t INT
Definition: typedefs.h:58
uint32_t ULONG
Definition: typedefs.h:59