﻿	namespace Scope#{ThisName}Method_#{MethodName}
	{
		MYGUIEXPORT Convert<#{OriginalTypeName}>::Type MYGUICALL Export#{ThisName}_#{MethodName}_#{ValueName1}_#{ValueName2}_#{ValueName3}(MyGUI::Widget* _native,
			Convert<#{OriginalTypeName1}>::Type #{ValueName1},
			Convert<#{OriginalTypeName2}>::Type #{ValueName2},
			Convert<#{OriginalTypeName3}>::Type #{ValueName3})
		{
			return Convert<#{OriginalTypeName}>::To(static_cast<MyGUI::#{ThisType}*>(_native)->#{OriginalMethodName}(
				Convert<#{OriginalTypeName1}>::From(#{ValueName1}),
				Convert<#{OriginalTypeName2}>::From(#{ValueName2}),
				Convert<#{OriginalTypeName3}>::From(#{ValueName3})));
		}
		MYGUIEXPORT Convert<#{OriginalTypeName}>::Type MYGUICALL Export#{ThisName}_#{MethodName}_#{ValueName1}_#{ValueName2}(MyGUI::Widget* _native,
			Convert<#{OriginalTypeName1}>::Type #{ValueName1},
			Convert<#{OriginalTypeName2}>::Type #{ValueName2})
		{
			return Convert<#{OriginalTypeName}>::To(static_cast<MyGUI::#{ThisType}*>(_native)->#{OriginalMethodName}(
				Convert<#{OriginalTypeName1}>::From(#{ValueName1}),
				Convert<#{OriginalTypeName2}>::From(#{ValueName2})));
		}
		MYGUIEXPORT Convert<#{OriginalTypeName}>::Type MYGUICALL Export#{ThisName}_#{MethodName}_#{ValueName1}(MyGUI::Widget* _native,
			Convert<#{OriginalTypeName1}>::Type #{ValueName1})
		{
			return Convert<#{OriginalTypeName}>::To(static_cast<MyGUI::#{ThisType}*>(_native)->#{OriginalMethodName}(
				Convert<#{OriginalTypeName1}>::From(#{ValueName1})));
		}
	}
