Skip to main content
Version: 4.16

Callback<dest_type,T1,void,void>

A Callback is basically a wrapper of a pointer-to-member-function. It is used for registering callbacks between widgets. For instance, a Button can be configured to call a member function when it is clicked.

The class is templated in order to provide the class type of the object in which the member function resides, and the argument types of the function to call.

The Callback class exists in four versions, for supporting member functions with 0, 1, 2 or 3 arguments. The compiler will infer which type to use automatically.

Template Parameters:

  • dest_type The type of the class in which the member function resides.
  • T1 The type of the first argument in the member function, or void if none.

Note: The member function to call must return void. The function can have zero, one, two or three arguments of any type.

Inherits from: GenericCallback< T1 >

Public Functions#

Callback()
Initializes a new instance of the Callback class.
Callback(dest_type pobject, void(dest_type::)(T1) pmemfun_1)
Initializes a Callback with an object and a pointer to the member function in that object to call.
virtual voidexecute(T1 t1)
Calls the member function.
virtual boolisValid() const
Query if this object is valid.

Additional inherited members#

Public Functions inherited from GenericCallback< T1 >#

virtual ~GenericCallback()
Finalizes an instance of the GenericCallback class.

Public Functions Documentation#

Callback#

Initializes a new instance of the Callback class.

Callback#

Callback(dest_type *pobject ,
void(dest_type::*)(T1)pmemfun_1
)

Initializes a Callback with an object and a pointer to the member function in that object to call.

Parameters:
pobjectPointer to the object on which the function should be called.
pmemfun_1Address of member function. This is the version where function takes one argument.

execute#

virtual void execute(T1t1)

Calls the member function.

Do not call execute unless isValid() returns true (ie. a pointer to the object and the function has been set).

Parameters:
t1This value will be passed as the first argument in the function call.
See also:

isValid#

virtual bool isValid()const

Query if this object is valid.

Returns:

true if valid, false if not.