1 /*!
2  * \file
3  * \ingroup tabs
4  * \brief declarations used by the tabbed windows.
5  */
6 #ifndef __TABS_H__
7 #define __TABS_H__
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 /*!
14  * \name Sizes for tabbed windows
15  * @{
16  */
17 #define TAB_MARGIN       5   /*!< margin used for the tabbed window */
18 /*! @} */
19 
20 /*!
21  * \name tab positions for tabbed windows
22  * @{
23  */
24 enum { HELP_TAB_HELP = 0, HELP_TAB_SKILLS, HELP_TAB_ENCYCLOPEDIA, HELP_TAB_RULES };
25 enum { STATS_TAB_STATS = 0, STATS_TAB_KNOWLEDGE, STATS_TAB_COUNTERS, STATS_TAB_SESSION };
26 enum { INFO_TAB_NOTEPAD, INFO_TAB_URLWIN };
27 /*! @} */
28 
29 extern int tab_stats_collection_id; /*!< pointer to the \ref tab_collection for statistics windows */
30 
31 extern int tab_help_collection_id; /*!< pointer to the \ref tab_collection for help windows */
32 
33 extern int tab_info_collection_id; /*!< pointer to the \ref tab_collection for info windows */
34 
35 /*!
36  * \ingroup tabs
37  * \brief Displays the tabbed info window.
38  *
39  *      Each tab collection has 4 bits of the word, get the values to save to the cfg file.
40  *
41  * \callgraph
42  */
43 unsigned get_tab_selected(void);
44 
45 /*!
46  * \ingroup tabs
47  * \brief Displays the tabbed info window.
48  *
49  *      Each tab collection has 4 bits of the word, set the values to read from the cfg file.
50  *
51  * \callgraph
52  */
53 void set_tab_selected(unsigned int new_tab_selected);
54 
55 #ifdef JSON_FILES
56 /*!
57  * \ingroup tabs
58  *
59  *      Write the selected tab info to the client state file.
60  *
61  * \callgraph
62  */
63 void write_tab_selected(void);
64 
65 /*!
66  * \ingroup tabs
67  *
68  *      Read the selected tab info from the client state file.
69  *
70  * \callgraph
71  */
72 void read_tab_selected(void);
73 #endif
74 
75 #ifdef __cplusplus
76 } // extern "C"
77 #endif
78 
79 #endif // def __TABS_H__
80