4 * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
5 * Copyright (C) 2003-2016 Cinelerra CV contributors
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
28 // Load flags for undo
29 #define LOAD_ALL 0xffffffff
30 #define LOAD_EDITS 0x00000001
31 #define LOAD_AUTOMATION 0x00000002
32 #define LOAD_PATCHES 0x00000004
33 #define LOAD_CONSOLE 0x00000008
34 #define LOAD_TIMEBAR 0x00000010
35 #define LOAD_ACONFIG 0x00000020
36 #define LOAD_VCONFIG 0x00000040
37 #define LOAD_ASSETS 0x00000080
38 #define LOAD_SESSION 0x00000100
41 #define COPY_ALL 0x00000001
42 #define COPY_LENGTH 0x00000002
43 #define COPY_LOCAL_SESSION 0x00000004
44 #define COPY_SESSION 0x00000008
45 #define COPY_VIDEO_CONFIG 0x00000010
46 #define COPY_AUDIO_CONFIG 0x00000020
47 #define COPY_FOLDERS 0x00000040
48 #define COPY_ALL_ASSETS 0x00000080
49 #define COPY_USED_ASSETS 0x00000100
50 #define COPY_NESTED_EDL 0x00000200
51 #define COPY_CLIPS 0x00000400
52 #define COPY_VWINDOWS 0x00000800
53 #define COPY_MIXERS 0x00001000
54 #define COPY_LABELS 0x00002000
55 #define COPY_EDITS 0x00004000
56 #define COPY_AUTOS 0x00008000
57 #define COPY_PLUGINS 0x00010000
59 #define COPY_ALWAYS ( \
60 COPY_LOCAL_SESSION | \
67 #define COPY_TRACKS ( \
82 #define COPY_CLIPBOARD ( \
89 #define EDITING_MODES 2
92 #define EDITING_ARROW 0
93 #define EDITING_IBEAM 1
96 // default for left button
97 // default for middle button
98 // default for right button
104 #define MOVE_EDITS_DISABLED 5
105 #define EDIT_HANDLE_MODES 5
108 #define AW_NO_FOLDER -1
109 #define AW_AEFFECT_FOLDER 0
110 #define AW_VEFFECT_FOLDER 1
111 #define AW_ATRANSITION_FOLDER 2
112 #define AW_VTRANSITION_FOLDER 3
113 #define AW_LABEL_FOLDER 4
114 #define AW_CLIP_FOLDER 5
115 #define AW_MEDIA_FOLDER 6
116 #define AW_PROXY_FOLDER 7
117 #define AWINDOW_FOLDERS 8
118 #define AWINDOW_USER_FOLDERS 8
121 #define AWINDOW_MODES 2
122 // Modes for AWindow views
123 #define ASSETS_TEXT 0
124 #define ASSETS_ICONS 1
125 #define ASSETS_ICONS_PACKED 2
126 #define ASSETS_ICON_LIST 3
127 #define FOLDERS_TEXT 0
128 #define FOLDERS_ICONS 1
129 #define ASSET_MAX_WIDTH 32767
130 #define ASSET_MAX_HEIGHT 32767
132 #define ASSET_COLUMNS 2
134 // Active tool in CWindow corresponds to a member of the CPanel array
135 // and the current drag operation
137 #define CPANEL_OPERATIONS 10
140 #define CWINDOW_NONE -1
141 #define CWINDOW_PROTECT 0
142 #define CWINDOW_ZOOM 1
143 #define CWINDOW_MASK 2
144 #define CWINDOW_RULER 3
145 #define CWINDOW_CAMERA 4
146 #define CWINDOW_PROJECTOR 5
147 #define CWINDOW_CROP 6
148 #define CWINDOW_EYEDROP 7
149 #define CWINDOW_TOOL_WINDOW 8
150 #define CWINDOW_TITLESAFE 9
152 // Current dragging operations not available in the CPanel
153 #define CWINDOW_SCROLL 0x10
154 #define CWINDOW_MASK_CONTROL_IN 0x15
155 #define CWINDOW_MASK_CONTROL_OUT 0x16
156 #define CWINDOW_MASK_TRANSLATE 0x17
157 #define CWINDOW_MASK_ROTATE 0x18
158 #define CWINDOW_MASK_SCALE 0x19
160 // Inclusive limits for zoom panel
161 #define MIN_ZOOM_TIME 1
162 #define MAX_ZOOM_TIME 0x100000
163 #define DEFAULT_ZOOM_TIME 1024
164 #define DEFAULT_ZOOM_TRACK 64
165 #define MIN_AMP_ZOOM 8
166 #define MAX_AMP_ZOOM 8192
167 #define MIN_TRACK_ZOOM 8
168 #define MAX_TRACK_ZOOM 8192
171 #define PAN_RADIUS 50
173 #define COLLECT_EFFECTS_RECORD 1
174 #define COLLECT_EFFECTS_MULTIPLE 2
175 #define COLLECT_EFFECTS_MISSING 3
176 #define COLLECT_EFFECTS_EMPTY 4
177 #define COLLECT_EFFECTS_MASTER 5
179 #define INSERT_EFFECTS_RECORD 1
180 #define INSERT_EFFECTS_TYPE 2
181 #define INSERT_EFFECTS_MULTIPLE 3
182 #define INSERT_EFFECTS_MISSING 4
183 #define INSERT_EFFECTS_EXTRA 5
184 #define INSERT_EFFECTS_MASTER 6
186 #define PROXY_INACTIVE 0
187 #define PROXY_ACTIVE 1
188 #define PROXY_DISABLED 2