X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fediting.h;h=6ce6b74a514e3fdcdfe2365a27325a6001d8ce5c;hb=8b5f990267622100b3a1a7ff6fa346282aca4dda;hp=b25b935ee03fbe3ac11d1a4dce3340728d622c63;hpb=3aa346b253d515c3d0715ec5e0fa8b6ad477c4e5;p=ardour.git diff --git a/gtk2_ardour/editing.h b/gtk2_ardour/editing.h index b25b935ee0..6ce6b74a51 100644 --- a/gtk2_ardour/editing.h +++ b/gtk2_ardour/editing.h @@ -1,9 +1,28 @@ +/* + Copyright (C) 2000-2007 Paul Davis + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + #ifndef __gtk_ardour_editing_h__ #define __gtk_ardour_editing_h__ #include #include -#include +#include "ardour/types.h" // This involves some cpp magic. --taybin @@ -11,9 +30,16 @@ #define SNAPMODE(a) /*empty*/ #define REGIONLISTSORTTYPE(a) /*empty*/ #define MOUSEMODE(a) /*empty*/ +#define MIDIEDITMODE(a) /*empty*/ #define ZOOMFOCUS(a) /*empty*/ #define DISPLAYCONTROL(a) /*empty*/ #define IMPORTMODE(a) /*empty*/ +#define IMPORTPOSITION(a) +#define IMPORTDISPOSITION(a) +#define EDITPOINT(a) /*empty*/ +#define WAVEFORMSCALE(a) /*empty*/ +#define WAVEFORMSHAPE(a) /*empty*/ +#define INSERTTIMEOPT(a) /*empty*/ namespace Editing { @@ -24,11 +50,7 @@ enum SnapType { #include "editing_syms.h" }; -#undef SNAPTYPE -#define SNAPTYPE(s) #s, -static const char *snaptypestrs[] = { - #include "editing_syms.h" -}; +extern const char *snaptypestrs[]; inline const char* enum2str(SnapType m) {return snaptypestrs[m];} SnapType str2snaptype(const std::string &); @@ -42,11 +64,7 @@ enum SnapMode { #include "editing_syms.h" }; -#undef SNAPMODE -#define SNAPMODE(s) #s, -static const char *snapmodestrs[] = { - #include "editing_syms.h" -}; +extern const char *snapmodestrs[]; inline const char* enum2str(SnapMode m) {return snapmodestrs[m];} SnapMode str2snapmode(const std::string &); @@ -60,11 +78,7 @@ enum RegionListSortType { #include "editing_syms.h" }; -#undef REGIONLISTSORTTYPE -#define REGIONLISTSORTTYPE(s) #s, -static const char *regionlistsorttypestrs[] = { - #include "editing_syms.h" -}; +extern const char *regionlistsorttypestrs[]; inline const char* enum2str(RegionListSortType m) {return regionlistsorttypestrs[m];} RegionListSortType str2regionlistsorttype(const std::string &); @@ -78,17 +92,27 @@ enum MouseMode { #include "editing_syms.h" }; -#undef MOUSEMODE -#define MOUSEMODE(s) #s, -static const char *mousemodestrs[] = { - #include "editing_syms.h" -}; +extern const char *mousemodestrs[]; inline const char* enum2str(MouseMode m) {return mousemodestrs[m];} MouseMode str2mousemode(const std::string &); #undef MOUSEMODE #define MOUSEMODE(a) /*empty*/ +// MIDIEDITMODE +#undef MIDIEDITMODE +#define MIDIEDITMODE(a) a, +enum MidiEditMode { + #include "editing_syms.h" +}; + +extern const char *midieditmodestrs[]; +inline const char* enum2str(MidiEditMode m) {return midieditmodestrs[m];} +MidiEditMode str2midieditmode(const std::string &); + +#undef MIDIEDITMODE +#define MIDIEDITMODE(a) /*empty*/ + // ZOOMFOCUS #undef ZOOMFOCUS #define ZOOMFOCUS(a) a, @@ -96,11 +120,7 @@ enum ZoomFocus { #include "editing_syms.h" }; -#undef ZOOMFOCUS -#define ZOOMFOCUS(s) #s, -static const char *zoomfocusstrs[] = { - #include "editing_syms.h" -}; +extern const char *zoomfocusstrs[]; inline const char* enum2str(ZoomFocus m) {return zoomfocusstrs[m];} ZoomFocus str2zoomfocus(const std::string &); @@ -114,17 +134,14 @@ enum DisplayControl { #include "editing_syms.h" }; -#undef DISPLAYCONTROL -#define DISPLAYCONTROL(s) #s, -static const char *displaycontrolstrs[] = { - #include "editing_syms.h" -}; +extern const char *displaycontrolstrs[]; inline const char* enum2str(DisplayControl m) {return displaycontrolstrs[m];} DisplayControl str2displaycontrol (const std::string &); #undef DISPLAYCONTROL #define DISPLAYCONTROL(a) /*empty*/ + // IMPORTMODE #undef IMPORTMODE #define IMPORTMODE(a) a, @@ -133,19 +150,53 @@ enum ImportMode { }; #undef IMPORTMODE -#define IMPORTMODE(s) #s, -static const char *importmodestrs[] = { +#define IMPORTMODE(a) /*empty*/ + +// IMPORTPOSITION +#undef IMPORTPOSITION +#define IMPORTPOSITION(a) a, +enum ImportPosition { #include "editing_syms.h" }; -inline const char* enum2str(ImportMode m) {return importmodestrs[m];} -ImportMode str2importmode (const std::string &); -#undef IMPORTMODE -#define IMPORTMODE(a) /*empty*/ +#undef IMPORTPOSITION +#define IMPORTPOSITION(a) /*empty*/ + +// IMPORTDISPOSITION +#undef IMPORTDISPOSITION +#define IMPORTDISPOSITION(a) a, +enum ImportDisposition { + #include "editing_syms.h" +}; + +#undef IMPORTDISPOSITION +#define IMPORTDISPOSITION(a) /*empty*/ + +// EDITPOINT +#undef EDITPOINT +#define EDITPOINT(a) a, +enum EditPoint { + #include "editing_syms.h" +}; + +#undef EDITPOINT +#define EDITPOINT(a) /*empty*/ + +// INSERTTIMEOPT +#undef INSERTTIMEOPT +#define INSERTTIMEOPT(a) a, +enum InsertTimeOption { + #include "editing_syms.h" +}; + +#undef INSERTTIMEOPT +#define INSERTTIMEOPT(a) /*empty*/ + ///////////////////// // These don't need their state saved. yet... enum CutCopyOp { + Delete, Cut, Copy, Clear