mirror of
https://github.com/TTimo/GtkRadiant.git
synced 2025-01-10 03:51:18 +00:00
fixed illegal template usage
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@47 8a3a26a2-13c4-0310-b231-cf6edde360e5
This commit is contained in:
parent
95ac019c00
commit
31af7f484e
2 changed files with 16 additions and 22 deletions
|
@ -296,23 +296,17 @@ public:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
template<typename Type, typename Other, typename True, typename False>
|
template<typename Other, typename True, typename False, typename Type>
|
||||||
class TypeEqual
|
class TypeEqual
|
||||||
{
|
{
|
||||||
template<typename Matched>
|
|
||||||
class Match
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
typedef False type;
|
|
||||||
};
|
|
||||||
template<>
|
|
||||||
class Match<Other>
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
typedef True type;
|
|
||||||
};
|
|
||||||
public:
|
public:
|
||||||
typedef typename Match<Type>::type type;
|
typedef False type;
|
||||||
|
};
|
||||||
|
template<typename Other, typename True, typename False>
|
||||||
|
class TypeEqual<Other, True, False, Other>
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
typedef True type;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -89,10 +89,10 @@ public:
|
||||||
template<typename Caller>
|
template<typename Caller>
|
||||||
SignalHandler(const BindFirstOpaque<Caller>& caller)
|
SignalHandler(const BindFirstOpaque<Caller>& caller)
|
||||||
: Callback0<SignalHandlerResult>(BindFirstOpaque<typename TypeEqual<
|
: Callback0<SignalHandlerResult>(BindFirstOpaque<typename TypeEqual<
|
||||||
typename Caller::result_type,
|
|
||||||
SignalHandlerResult,
|
SignalHandlerResult,
|
||||||
Caller,
|
Caller,
|
||||||
SignalHandlerCaller1<Caller>
|
SignalHandlerCaller1<Caller>,
|
||||||
|
typename Caller::result_type
|
||||||
>::type>(caller.getBound()))
|
>::type>(caller.getBound()))
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -117,10 +117,10 @@ public:
|
||||||
template<typename Caller>
|
template<typename Caller>
|
||||||
SignalHandler1(const BindFirstOpaque1<Caller>& caller)
|
SignalHandler1(const BindFirstOpaque1<Caller>& caller)
|
||||||
: Callback1<FirstArgument, SignalHandlerResult>(BindFirstOpaque1<typename TypeEqual<
|
: Callback1<FirstArgument, SignalHandlerResult>(BindFirstOpaque1<typename TypeEqual<
|
||||||
typename Caller::result_type,
|
|
||||||
SignalHandlerResult,
|
SignalHandlerResult,
|
||||||
Caller,
|
Caller,
|
||||||
SignalHandlerCaller2<Caller>
|
SignalHandlerCaller2<Caller>,
|
||||||
|
typename Caller::result_type
|
||||||
>::type>(caller.getBound()))
|
>::type>(caller.getBound()))
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -145,10 +145,10 @@ public:
|
||||||
template<typename Caller>
|
template<typename Caller>
|
||||||
SignalHandler2(const BindFirstOpaque2<Caller>& caller)
|
SignalHandler2(const BindFirstOpaque2<Caller>& caller)
|
||||||
: Callback2<FirstArgument, SecondArgument, SignalHandlerResult>(BindFirstOpaque2<typename TypeEqual<
|
: Callback2<FirstArgument, SecondArgument, SignalHandlerResult>(BindFirstOpaque2<typename TypeEqual<
|
||||||
typename Caller::result_type,
|
|
||||||
SignalHandlerResult,
|
SignalHandlerResult,
|
||||||
Caller,
|
Caller,
|
||||||
SignalHandlerCaller3<Caller>
|
SignalHandlerCaller3<Caller>,
|
||||||
|
typename Caller::result_type
|
||||||
>::type>(caller.getBound()))
|
>::type>(caller.getBound()))
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -185,10 +185,10 @@ public:
|
||||||
template<typename Caller>
|
template<typename Caller>
|
||||||
SignalHandler3(const BindFirstOpaque3<Caller>& caller)
|
SignalHandler3(const BindFirstOpaque3<Caller>& caller)
|
||||||
: Callback3<FirstArgument, SecondArgument, ThirdArgument, SignalHandlerResult>(BindFirstOpaque3<typename TypeEqual<
|
: Callback3<FirstArgument, SecondArgument, ThirdArgument, SignalHandlerResult>(BindFirstOpaque3<typename TypeEqual<
|
||||||
typename Caller::result_type,
|
|
||||||
SignalHandlerResult,
|
SignalHandlerResult,
|
||||||
Caller,
|
Caller,
|
||||||
SignalHandlerCaller4<Caller>
|
SignalHandlerCaller4<Caller>,
|
||||||
|
typename Caller::result_type
|
||||||
>::type>(caller.getBound()))
|
>::type>(caller.getBound()))
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue