8 #ifndef MIDGE_UTILITY_SLOT_HH_ 9 #define MIDGE_UTILITY_SLOT_HH_ 13 #include "member_variables.hh" 20 template<
typename... x_args >
27 template<
typename x_owner >
35 template<
typename... x_args >
42 m_slot(
const string_t& name,
const std::function< signature >& sig );
43 template<
typename T >
44 m_slot(
const string_t& name, T *inst,
void (T::*func)( x_args... ) );
45 template<
typename T >
46 m_slot(
const string_t& name, T *inst,
void (T::*func)( x_args... )
const );
47 template<
typename x_owner >
48 m_slot(
const string_t& name,
const std::function< signature >& sig, x_owner* owner );
49 template<
typename T,
typename x_owner >
50 m_slot(
const string_t& name, T *inst,
void (T::*func)( x_args... ), x_owner* owner );
51 template<
typename T,
typename x_owner >
52 m_slot(
const string_t& name, T *inst,
void (T::*func)( x_args... )
const, x_owner* owner );
57 void disconnect_all();
59 mv_referrable( std::function< signature >,
function );
67 template<
typename x_owner >
71 if( p_owner ) p_owner->slot_ptr(
this, p_name );
75 template<
typename... x_args >
81 template<
typename... x_args >
82 template<
typename T >
85 f_function( [func, inst]( x_args... args ){
return (inst->*func)(args...);} )
88 template<
typename... x_args >
89 template<
typename T >
92 f_function( [func, inst]( x_args... args ){ return (inst->*func)(args...);} )
95 template<
typename... x_args >
96 template<
typename x_owner >
102 template<
typename... x_args >
103 template<
typename T,
typename x_owner >
106 f_function( [func, inst]( x_args... args ){
return (inst->*func)(args...);} )
109 template<
typename... x_args >
110 template<
typename T,
typename x_owner >
113 f_function( [func, inst]( x_args... args ){ return (inst->*func)(args...);} )
116 template<
typename... x_args >
void(x_args...) signature
std::set< std::pair< unsigned, m_signal< x_args... > *> > signal_connections
m_slot(const string_t &name, const std::function< signature > &sig)
slot(const string_t &p_name)