2
delegate void Handle#{DelegateName}(
3
Convert<#{OriginalTypeName1}>::Type #{ValueName1} ,
4
Convert<#{OriginalTypeName2}>::Type #{ValueName2} ,
5
Convert<#{OriginalTypeName3}>::Type #{ValueName3} ,
6
Convert<#{OriginalTypeName4}>::Type #{ValueName4} ,
7
Convert<#{OriginalTypeName5}>::Type #{ValueName5} );
8
event Handle#{DelegateName}^ Request#{DelegateName}
10
void add(Handle#{DelegateName}^ _value)
12
mDelegate#{DelegateName} += _value;
13
MMYGUI_CHECK_NATIVE(mNative);
14
static_cast<ThisType*>(mNative)->request#{DelegateName} =
15
static_cast< MyGUI::delegates::IDelegate5<
16
#{OriginalTypeName1} ,
17
#{OriginalTypeName2} ,
18
#{OriginalTypeName3} ,
19
#{OriginalTypeName4} ,
20
#{OriginalTypeName5} > *>(
21
new Delegate5< Handle#{DelegateName}^ ,
22
#{OriginalTypeName1} ,
23
#{OriginalTypeName2} ,
24
#{OriginalTypeName3} ,
25
#{OriginalTypeName4} ,
26
#{OriginalTypeName5} >(mDelegate#{DelegateName}) );
28
void remove(Handle#{DelegateName}^ _value)
30
mDelegate#{DelegateName} -= _value;
31
MMYGUI_CHECK_NATIVE(mNative);
32
if (mDelegate#{DelegateName} == nullptr)
33
static_cast<ThisType*>(mNative)->request#{DelegateName} = nullptr;
35
static_cast<ThisType*>(mNative)->request#{DelegateName} =
36
static_cast< MyGUI::delegates::IDelegate5<
37
#{OriginalTypeName1} ,
38
#{OriginalTypeName2} ,
39
#{OriginalTypeName3} ,
40
#{OriginalTypeName4} ,
41
#{OriginalTypeName5} > *>(
42
new Delegate5< Handle#{DelegateName}^ ,
43
#{OriginalTypeName1} ,
44
#{OriginalTypeName2} ,
45
#{OriginalTypeName3} ,
46
#{OriginalTypeName4} ,
47
#{OriginalTypeName5} >(mDelegate#{DelegateName}) );
51
Handle#{DelegateName}^ mDelegate#{DelegateName};