4 * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 class MasterLayer : public BC_PopupMenu
28 MasterLayer(MotionMain *plugin, MotionWindow *gui, int x, int y);
30 void create_objects();
31 static int calculate_w(MotionWindow *gui);
32 static int from_text(char *text);
33 static char* to_text(int mode);
38 class ActionType : public BC_PopupMenu
41 ActionType(MotionMain *plugin, MotionWindow *gui, int x, int y);
43 void create_objects();
44 static int calculate_w(MotionWindow *gui);
45 static int from_text(char *text);
46 static char* to_text(int mode);
51 class TrackingType : public BC_PopupMenu
54 TrackingType(MotionMain *plugin, MotionWindow *gui, int x, int y);
56 void create_objects();
57 static int calculate_w(MotionWindow *gui);
58 static int from_text(char *text);
59 static char* to_text(int mode);
64 class TrackDirection : public BC_PopupMenu
67 TrackDirection(MotionMain *plugin, MotionWindow *gui, int x, int y);
69 void create_objects();
70 static int calculate_w(MotionWindow *gui);
71 static void from_text(int *horizontal_only, int *vertical_only, char *text);
72 static char* to_text(int horizontal_only, int vertical_only);
78 class TrackSingleFrame : public BC_Radial
81 TrackSingleFrame(MotionMain *plugin,
90 class TrackFrameNumber : public BC_TextBox
93 TrackFrameNumber(MotionMain *plugin,
102 class TrackPreviousFrame : public BC_Radial
105 TrackPreviousFrame(MotionMain *plugin,
114 class PreviousFrameSameBlock : public BC_Radial
117 PreviousFrameSameBlock(MotionMain *plugin,
126 class GlobalRange : public BC_IPot
129 GlobalRange(MotionMain *plugin,
138 class RotationRange : public BC_IPot
141 RotationRange(MotionMain *plugin,
148 class RotationCenter : public BC_IPot
151 RotationCenter(MotionMain *plugin,
158 class BlockSize : public BC_IPot
161 BlockSize(MotionMain *plugin,
170 class MotionBlockX : public BC_FPot
173 MotionBlockX(MotionMain *plugin,
182 class MotionBlockY : public BC_FPot
185 MotionBlockY(MotionMain *plugin,
194 class MotionBlockXText : public BC_TextBox
197 MotionBlockXText(MotionMain *plugin,
206 class MotionBlockYText : public BC_TextBox
209 MotionBlockYText(MotionMain *plugin,
218 class GlobalSearchPositions : public BC_PopupMenu
221 GlobalSearchPositions(MotionMain *plugin,
225 void create_objects();
230 class RotationSearchPositions : public BC_PopupMenu
233 RotationSearchPositions(MotionMain *plugin,
237 void create_objects();
242 class MotionMagnitude : public BC_IPot
245 MotionMagnitude(MotionMain *plugin,
252 class MotionRMagnitude : public BC_IPot
255 MotionRMagnitude(MotionMain *plugin,
262 class MotionReturnSpeed : public BC_IPot
265 MotionReturnSpeed(MotionMain *plugin,
273 class MotionRReturnSpeed : public BC_IPot
276 MotionRReturnSpeed(MotionMain *plugin,
284 class MotionDrawVectors : public BC_CheckBox
287 MotionDrawVectors(MotionMain *plugin,
296 class AddTrackedFrameOffset : public BC_CheckBox
299 AddTrackedFrameOffset(MotionMain *plugin,
308 class MotionGlobal : public BC_CheckBox
311 MotionGlobal(MotionMain *plugin,
320 class MotionRotate : public BC_CheckBox
323 MotionRotate(MotionMain *plugin,
334 class MotionWindow : public PluginClientWindow
337 MotionWindow(MotionMain *plugin);
340 void create_objects();
342 char* get_radius_title();
344 GlobalRange *global_range_w;
345 GlobalRange *global_range_h;
346 RotationRange *rotation_range;
347 RotationCenter *rotation_center;
348 BlockSize *global_block_w;
349 BlockSize *global_block_h;
350 BlockSize *rotation_block_w;
351 BlockSize *rotation_block_h;
352 MotionBlockX *block_x;
353 MotionBlockY *block_y;
354 MotionBlockXText *block_x_text;
355 MotionBlockYText *block_y_text;
356 GlobalSearchPositions *global_search_positions;
357 RotationSearchPositions *rotation_search_positions;
358 MotionMagnitude *magnitude;
359 MotionRMagnitude *rotate_magnitude;
360 MotionReturnSpeed *return_speed;
361 MotionRReturnSpeed *rotate_return_speed;
362 ActionType *action_type;
363 MotionDrawVectors *vectors;
364 MotionGlobal *global;
365 MotionRotate *rotate;
366 AddTrackedFrameOffset *addtrackedframeoffset;
367 TrackSingleFrame *track_single;
368 TrackFrameNumber *track_frame_number;
369 TrackPreviousFrame *track_previous;
370 PreviousFrameSameBlock *previous_same;
371 MasterLayer *master_layer;
372 TrackingType *tracking_type;
373 TrackDirection *track_direction;