X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Fmotion.new%2Fmotionwindow.h;fp=cinelerra-5.1%2Fplugins%2Fmotion.new%2Fmotionwindow.h;h=a03843da6af6ecb54ebb70b7a7167a457252ea9c;hb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;hp=0000000000000000000000000000000000000000;hpb=52fcc46226f9df46f9ce9d0566dc568455a7db0b;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/plugins/motion.new/motionwindow.h b/cinelerra-5.1/plugins/motion.new/motionwindow.h new file mode 100644 index 00000000..a03843da --- /dev/null +++ b/cinelerra-5.1/plugins/motion.new/motionwindow.h @@ -0,0 +1,373 @@ + +/* + * CINELERRA + * Copyright (C) 2008 Adam Williams + * + * 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + */ + +#include "guicast.h" +#include "motion.inc" + +class MasterLayer : public BC_PopupMenu +{ +public: + MasterLayer(MotionMain *plugin, MotionWindow *gui, int x, int y); + int handle_event(); + void create_objects(); + static int calculate_w(MotionWindow *gui); + static int from_text(char *text); + static char* to_text(int mode); + MotionMain *plugin; + MotionWindow *gui; +}; + +class ActionType : public BC_PopupMenu +{ +public: + ActionType(MotionMain *plugin, MotionWindow *gui, int x, int y); + int handle_event(); + void create_objects(); + static int calculate_w(MotionWindow *gui); + static int from_text(char *text); + static char* to_text(int mode); + MotionMain *plugin; + MotionWindow *gui; +}; + +class TrackingType : public BC_PopupMenu +{ +public: + TrackingType(MotionMain *plugin, MotionWindow *gui, int x, int y); + int handle_event(); + void create_objects(); + static int calculate_w(MotionWindow *gui); + static int from_text(char *text); + static char* to_text(int mode); + MotionMain *plugin; + MotionWindow *gui; +}; + +class TrackDirection : public BC_PopupMenu +{ +public: + TrackDirection(MotionMain *plugin, MotionWindow *gui, int x, int y); + int handle_event(); + void create_objects(); + static int calculate_w(MotionWindow *gui); + static void from_text(int *horizontal_only, int *vertical_only, char *text); + static char* to_text(int horizontal_only, int vertical_only); + MotionMain *plugin; + MotionWindow *gui; +}; + + +class TrackSingleFrame : public BC_Radial +{ +public: + TrackSingleFrame(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionMain *plugin; + MotionWindow *gui; +}; + +class TrackFrameNumber : public BC_TextBox +{ +public: + TrackFrameNumber(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionMain *plugin; + MotionWindow *gui; +}; + +class TrackPreviousFrame : public BC_Radial +{ +public: + TrackPreviousFrame(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionMain *plugin; + MotionWindow *gui; +}; + +class PreviousFrameSameBlock : public BC_Radial +{ +public: + PreviousFrameSameBlock(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionMain *plugin; + MotionWindow *gui; +}; + +class GlobalRange : public BC_IPot +{ +public: + GlobalRange(MotionMain *plugin, + int x, + int y, + int *value); + int handle_event(); + MotionMain *plugin; + int *value; +}; + +class RotationRange : public BC_IPot +{ +public: + RotationRange(MotionMain *plugin, + int x, + int y); + int handle_event(); + MotionMain *plugin; +}; + +class RotationCenter : public BC_IPot +{ +public: + RotationCenter(MotionMain *plugin, + int x, + int y); + int handle_event(); + MotionMain *plugin; +}; + +class BlockSize : public BC_IPot +{ +public: + BlockSize(MotionMain *plugin, + int x, + int y, + int *value); + int handle_event(); + MotionMain *plugin; + int *value; +}; + +class MotionBlockX : public BC_FPot +{ +public: + MotionBlockX(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionWindow *gui; + MotionMain *plugin; +}; + +class MotionBlockY : public BC_FPot +{ +public: + MotionBlockY(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionWindow *gui; + MotionMain *plugin; +}; + +class MotionBlockXText : public BC_TextBox +{ +public: + MotionBlockXText(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionWindow *gui; + MotionMain *plugin; +}; + +class MotionBlockYText : public BC_TextBox +{ +public: + MotionBlockYText(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionWindow *gui; + MotionMain *plugin; +}; + +class GlobalSearchPositions : public BC_PopupMenu +{ +public: + GlobalSearchPositions(MotionMain *plugin, + int x, + int y, + int w); + void create_objects(); + int handle_event(); + MotionMain *plugin; +}; + +class RotationSearchPositions : public BC_PopupMenu +{ +public: + RotationSearchPositions(MotionMain *plugin, + int x, + int y, + int w); + void create_objects(); + int handle_event(); + MotionMain *plugin; +}; + +class MotionMagnitude : public BC_IPot +{ +public: + MotionMagnitude(MotionMain *plugin, + int x, + int y); + int handle_event(); + MotionMain *plugin; +}; + +class MotionRMagnitude : public BC_IPot +{ +public: + MotionRMagnitude(MotionMain *plugin, + int x, + int y); + int handle_event(); + MotionMain *plugin; +}; + +class MotionReturnSpeed : public BC_IPot +{ +public: + MotionReturnSpeed(MotionMain *plugin, + int x, + int y); + int handle_event(); + MotionMain *plugin; +}; + + +class MotionRReturnSpeed : public BC_IPot +{ +public: + MotionRReturnSpeed(MotionMain *plugin, + int x, + int y); + int handle_event(); + MotionMain *plugin; +}; + + +class MotionDrawVectors : public BC_CheckBox +{ +public: + MotionDrawVectors(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionMain *plugin; + MotionWindow *gui; +}; + + +class MotionGlobal : public BC_CheckBox +{ +public: + MotionGlobal(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionWindow *gui; + MotionMain *plugin; +}; + +class MotionRotate : public BC_CheckBox +{ +public: + MotionRotate(MotionMain *plugin, + MotionWindow *gui, + int x, + int y); + int handle_event(); + MotionWindow *gui; + MotionMain *plugin; +}; + + + +class MotionWindow : public PluginClientWindow +{ +public: + MotionWindow(MotionMain *plugin); + ~MotionWindow(); + + void create_objects(); + void update_mode(); + char* get_radius_title(); + + GlobalRange *global_range_w; + GlobalRange *global_range_h; + RotationRange *rotation_range; + RotationCenter *rotation_center; + BlockSize *global_block_w; + BlockSize *global_block_h; + BlockSize *rotation_block_w; + BlockSize *rotation_block_h; + MotionBlockX *block_x; + MotionBlockY *block_y; + MotionBlockXText *block_x_text; + MotionBlockYText *block_y_text; + GlobalSearchPositions *global_search_positions; + RotationSearchPositions *rotation_search_positions; + MotionMagnitude *magnitude; + MotionRMagnitude *rotate_magnitude; + MotionReturnSpeed *return_speed; + MotionRReturnSpeed *rotate_return_speed; + ActionType *action_type; + MotionDrawVectors *vectors; + MotionGlobal *global; + MotionRotate *rotate; + TrackSingleFrame *track_single; + TrackFrameNumber *track_frame_number; + TrackPreviousFrame *track_previous; + PreviousFrameSameBlock *previous_same; + MasterLayer *master_layer; + TrackingType *tracking_type; + TrackDirection *track_direction; + + MotionMain *plugin; +}; + + + + + + + + +