ReactOS
0.4.16-dev-1311-g81a4d83
Toggle main menu visibility
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
Functions
_
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
w
Variables
_
c
d
e
f
g
h
i
l
m
n
o
p
s
t
u
x
Typedefs
_
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
w
x
Enumerations
_
a
b
c
d
f
i
l
m
o
p
s
t
w
x
Enumerator
a
b
c
d
e
f
g
h
i
m
n
o
p
r
s
t
u
v
w
x
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
_
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
z
Enumerator
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Related Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
v
x
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Examples
imemenu.h
Go to the documentation of this file.
1
/*
2
* PROJECT: ReactOS Keyboard Layout Switcher
3
* LICENSE: GPL-2.0-or-later (https://spdx.org/licenses/GPL-2.0-or-later)
4
* PURPOSE: IME menu handling
5
* COPYRIGHT: Copyright 2025 Katayama Hirofumi MZ (katayama.hirofumi.mz@gmail.com)
6
*/
7
8
#pragma once
9
10
#include <
immdev.h
>
11
12
#define ID_STARTIMEMENU 1000
13
14
struct
tagIMEMENUNODE
;
15
16
typedef
struct
tagIMEMENUITEM
17
{
18
IMEMENUITEMINFO
m_Info
;
19
UINT
m_nRealID
;
20
struct
tagIMEMENUNODE
*
m_pSubMenu
;
21
}
IMEMENUITEM
, *
PIMEMENUITEM
;
22
23
typedef
struct
tagIMEMENUNODE
24
{
25
struct
tagIMEMENUNODE
*
m_pNext
;
26
INT
m_nItems
;
27
IMEMENUITEM
m_Items
[
ANYSIZE_ARRAY
];
28
}
IMEMENUNODE
, *
PIMEMENUNODE
;
29
30
PIMEMENUNODE
31
CreateImeMenu
(
32
_In_
HIMC
hIMC,
33
_Inout_opt_
PIMEMENUITEMINFO lpImeParentMenu,
34
_In_
BOOL
bRightMenu);
35
36
HMENU
MenuFromImeMenu
(
_In_
const
IMEMENUNODE
*pMenu);
37
INT
GetRealImeMenuID
(
_In_
const
IMEMENUNODE
*pMenu,
_In_
INT
nFakeID);
38
VOID
CleanupImeMenus
(
VOID
);
HIMC
DWORD HIMC
Definition:
dimm.idl:75
BOOL
unsigned int BOOL
Definition:
ntddk_ex.h:94
GetRealImeMenuID
INT GetRealImeMenuID(_In_ const IMEMENUNODE *pMenu, _In_ INT nFakeID)
Definition:
imemenu.c:202
CreateImeMenu
PIMEMENUNODE CreateImeMenu(_In_ HIMC hIMC, _Inout_opt_ PIMEMENUITEMINFO lpImeParentMenu, _In_ BOOL bRightMenu)
Definition:
imemenu.c:62
PIMEMENUITEM
struct tagIMEMENUITEM * PIMEMENUITEM
IMEMENUNODE
struct tagIMEMENUNODE IMEMENUNODE
CleanupImeMenus
VOID CleanupImeMenus(VOID)
Definition:
imemenu.c:246
MenuFromImeMenu
HMENU MenuFromImeMenu(_In_ const IMEMENUNODE *pMenu)
Definition:
imemenu.c:188
IMEMENUITEM
struct tagIMEMENUITEM IMEMENUITEM
PIMEMENUNODE
struct tagIMEMENUNODE * PIMEMENUNODE
immdev.h
void
Definition:
nsiface.idl:2307
HMENU
static const CLSID *static CLSID *static const GUID VARIANT VARIANT *static IServiceProvider DWORD *static HMENU
Definition:
ordinal.c:63
UINT
unsigned int UINT
Definition:
ndis.h:50
_Inout_opt_
#define _Inout_opt_
Definition:
no_sal2.h:216
_In_
#define _In_
Definition:
no_sal2.h:158
tagIMEMENUITEM
Definition:
imemenu.h:17
tagIMEMENUITEM::m_nRealID
UINT m_nRealID
Definition:
imemenu.h:19
tagIMEMENUITEM::m_Info
IMEMENUITEMINFO m_Info
Definition:
imemenu.h:18
tagIMEMENUITEM::m_pSubMenu
struct tagIMEMENUNODE * m_pSubMenu
Definition:
imemenu.h:20
tagIMEMENUNODE
Definition:
imemenu.h:24
tagIMEMENUNODE::m_nItems
INT m_nItems
Definition:
imemenu.h:26
tagIMEMENUNODE::m_Items
IMEMENUITEM m_Items[ANYSIZE_ARRAY]
Definition:
imemenu.h:27
tagIMEMENUNODE::m_pNext
struct tagIMEMENUNODE * m_pNext
Definition:
imemenu.h:25
ANYSIZE_ARRAY
#define ANYSIZE_ARRAY
Definition:
typedefs.h:46
INT
int32_t INT
Definition:
typedefs.h:58
base
applications
kbswitch
imemenu.h
Generated on Thu Jun 19 2025 06:02:26 for ReactOS by
1.9.6