1 #ifndef __gtk_ardour_editing_h__
2 #define __gtk_ardour_editing_h__
6 #include <ardour/types.h>
8 // This involves some cpp magic. --taybin
10 #define SNAPTYPE(a) /*empty*/
11 #define SNAPMODE(a) /*empty*/
12 #define REGIONLISTSORTTYPE(a) /*empty*/
13 #define MOUSEMODE(a) /*empty*/
14 #define ZOOMFOCUS(a) /*empty*/
15 #define DISPLAYCONTROL(a) /*empty*/
16 #define IMPORTMODE(a) /*empty*/
22 #define SNAPTYPE(a) a,
24 #include "editing_syms.h"
28 #define SNAPTYPE(s) #s,
29 static const char *snaptypestrs[] = {
30 #include "editing_syms.h"
32 inline const char* enum2str(SnapType m) {return snaptypestrs[m];}
33 SnapType str2snaptype(const std::string &);
36 #define SNAPTYPE(a) /*empty*/
40 #define SNAPMODE(a) a,
42 #include "editing_syms.h"
46 #define SNAPMODE(s) #s,
47 static const char *snapmodestrs[] = {
48 #include "editing_syms.h"
50 inline const char* enum2str(SnapMode m) {return snapmodestrs[m];}
51 SnapMode str2snapmode(const std::string &);
54 #define SNAPMODE(a) /*empty*/
57 #undef REGIONLISTSORTTYPE
58 #define REGIONLISTSORTTYPE(a) a,
59 enum RegionListSortType {
60 #include "editing_syms.h"
63 #undef REGIONLISTSORTTYPE
64 #define REGIONLISTSORTTYPE(s) #s,
65 static const char *regionlistsorttypestrs[] = {
66 #include "editing_syms.h"
68 inline const char* enum2str(RegionListSortType m) {return regionlistsorttypestrs[m];}
69 RegionListSortType str2regionlistsorttype(const std::string &);
71 #undef REGIONLISTSORTTYPE
72 #define REGIONLISTSORTTYPE(a) /*empty*/
76 #define MOUSEMODE(a) a,
78 #include "editing_syms.h"
82 #define MOUSEMODE(s) #s,
83 static const char *mousemodestrs[] = {
84 #include "editing_syms.h"
86 inline const char* enum2str(MouseMode m) {return mousemodestrs[m];}
87 MouseMode str2mousemode(const std::string &);
90 #define MOUSEMODE(a) /*empty*/
94 #define ZOOMFOCUS(a) a,
96 #include "editing_syms.h"
100 #define ZOOMFOCUS(s) #s,
101 static const char *zoomfocusstrs[] = {
102 #include "editing_syms.h"
104 inline const char* enum2str(ZoomFocus m) {return zoomfocusstrs[m];}
105 ZoomFocus str2zoomfocus(const std::string &);
108 #define ZOOMFOCUS(a) /*empty*/
111 #undef DISPLAYCONTROL
112 #define DISPLAYCONTROL(a) a,
113 enum DisplayControl {
114 #include "editing_syms.h"
117 #undef DISPLAYCONTROL
118 #define DISPLAYCONTROL(s) #s,
119 static const char *displaycontrolstrs[] = {
120 #include "editing_syms.h"
122 inline const char* enum2str(DisplayControl m) {return displaycontrolstrs[m];}
123 DisplayControl str2displaycontrol (const std::string &);
125 #undef DISPLAYCONTROL
126 #define DISPLAYCONTROL(a) /*empty*/
130 #define IMPORTMODE(a) a,
132 #include "editing_syms.h"
136 #define IMPORTMODE(s) #s,
137 static const char *importmodestrs[] = {
138 #include "editing_syms.h"
140 inline const char* enum2str(ImportMode m) {return importmodestrs[m];}
141 ImportMode str2importmode (const std::string &);
144 #define IMPORTMODE(a) /*empty*/
146 /////////////////////
147 // These don't need their state saved. yet...
160 } // namespace Editing
162 #endif // __gtk_ardour_editing_h__