]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/creaButtonContainer/model/system.h
51db3bd5c136fa16fd6dcc7eca647bb4ac4bc601
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / creaButtonContainer / model / system.h
1 /*!
2  * @file system.h
3  * @brief Contains a system typedefs used to reuse code.
4  * @author Diego CACERES (diego.caceres[AT]creatis.insa-lyon.fr)
5  * @date  2011-05-24
6 */
7
8 #ifndef SYSTEM_H_
9 #define SYSTEM_H_
10
11 #include <list>
12 #include <map>
13 #include <iostream>
14 #include <exception>
15 #include "functor.h"
16
17 /*!     @namespace <creaButtonContainer>
18  *      @brief Contains the creaButtonContainer library included in creaMaracasVisu.
19  */
20 namespace creaButtonContainer
21 {
22         /*!     @typedef model::TFunctor* FunctionEventType;
23          *      @brief Defines the FunctionEventType type.
24          */
25         typedef model::TFunctor* FunctionEventType;
26         // ----------------------------------------------------------------------------------
27         /*!     @typedef creaButtonContainer::view::Button Button;
28          *      @brief Defines the ActionButton type.
29          *      First is the button description, Second FunctionEventType
30          */
31         typedef std::pair< std::string, FunctionEventType > ButtonAction;
32         // ----------------------------------------------------------------------------------
33         /*!     @typedef std::pair< std::string, std::string > ButtonInfo;
34          *      @brief Defines the ButtonInfo type.
35          *      First is the ButtonName and Second is the IconPath
36          */
37         typedef std::pair< std::string, std::string > ButtonInfo;
38         // ----------------------------------------------------------------------------------
39         /*!     @typedef std::pair< ButtonInfo*, ActionButton* > ButtonPair;
40          *      @brief Defines the ButtonPair type.
41          */
42         typedef std::pair< ButtonInfo*, ButtonAction* > ButtonPair;
43         // ----------------------------------------------------------------------------------
44         /*!     @typedef std::list< std::string > KeyMapList;
45          *      @brief Defines the KeyMapList type.
46          */
47         typedef std::list< std::string > KeyMapList;
48         // ----------------------------------------------------------------------------------
49         /*!     @typedef std::list< ButtonPair* > ButtonList;
50          *      @brief Defines the ButtonList type.
51          */
52         typedef std::list< ButtonPair* > ButtonList;
53         // ----------------------------------------------------------------------------------
54         /*!     @typedef std::map< std::string, ButtonList > ButtonGroupMap;
55          *      @brief Defines the ButtonGroupMap type.
56          */
57         typedef std::map< std::string, ButtonList > ButtonGroupMap;
58 // ----------------------------------------------------------------------------------
59 }
60
61 #endif /* SYSTEM_H_ */