]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/functor.txx
creaButtonContainer: Documentation updates :) :). If you turns on the documentation...
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / creaButtonContainer / model / functor.txx
1 /*!
2  * @file functor.cxx
3  * @brief Implements TFunctor class and it propose is Call_Back Functions
4  * @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
5  * @date  2011-05-19
6 */
7
8 namespace creaButtonContainer
9 {
10         namespace model
11         {
12                 // constructor - takes pointer to an object and pointer to a member and stores
13                 // them in two private variables
14                 // -------------------------------------------------------------------------------
15                 template< typename TClass >
16                         TConcreteFunctor< TClass >::TConcreteFunctor( TClass* _pt2Object, void
17                         (TClass::*_fpt)( const ButtonIDType &buttonName ) )
18                         {
19                                 this->pt2Object = _pt2Object;
20                                 this->fpt = _fpt;
21                         }
22                 // -------------------------------------------------------------------------------
23                 // override operator "()" // execute member functions
24                 template< typename TClass >
25                         void
26                         TConcreteFunctor< TClass >::operator()( const ButtonIDType &buttonName )
27                         {
28                                 ( *pt2Object.*fpt )( buttonName );
29                         }
30                 // -------------------------------------------------------------------------------
31                 // override function "Call" // execute member function
32                 template< typename TClass >
33                         void
34                         TConcreteFunctor< TClass >::Call( const ButtonIDType &buttonName )
35                         {
36                                 ( *pt2Object.*fpt )( buttonName );
37                         }
38         }//ecapseman
39 }//ecapseman
40