X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fplugins%2Ffindobj%2Ffindobjwindow.h;h=02feee23bd21941503372df59e011acc8b7634d8;hp=3c2aa634f26786bb40fc77b6a7e4e586a6ba8824;hb=a94468d6de897136e77c70662177f4b8b4454b6b;hpb=9a16c85641dee9f15136f40c8a3195d88d45513f diff --git a/cinelerra-5.1/plugins/findobj/findobjwindow.h b/cinelerra-5.1/plugins/findobj/findobjwindow.h index 3c2aa634..02feee23 100644 --- a/cinelerra-5.1/plugins/findobj/findobjwindow.h +++ b/cinelerra-5.1/plugins/findobj/findobjwindow.h @@ -27,6 +27,7 @@ #include "findobj.inc" #include "guicast.h" +class FindObjReset; class FindObjLayer; class FindObjScanFloat; class FindObjScanFloatText; @@ -34,12 +35,27 @@ class FindObjDrawSceneBorder; class FindObjDrawKeypoints; class FindObjReplace; class FindObjDrawObjectBorder; +class FindObjDrawReplaceBorder; class FindObjDragObject; class FindObjDragScene; +class FindObjDragReplace; class FindObjAlgorithm; +class FindObjMode; +class FindObjScale; +class FindObjRotate; +class FindObjTranslate; class FindObjBlend; class FindObjWindow; +class FindObjReset : public BC_GenericButton +{ +public: + FindObjReset(FindObjMain *plugin, FindObjWindow *gui, int x, int y); + int handle_event(); + FindObjMain *plugin; + FindObjWindow *gui; +}; + class FindObjLayer : public BC_TumbleTextBox { public: @@ -55,7 +71,8 @@ public: class FindObjScanFloat : public BC_FPot { public: - FindObjScanFloat(FindObjMain *plugin, FindObjWindow *gui, int x, int y, float *value); + FindObjScanFloat(FindObjMain *plugin, FindObjWindow *gui, int x, int y, + float *value, float min=0., float max=100.); int handle_event(); void update(float v); FindObjMain *plugin; @@ -94,6 +111,15 @@ public: FindObjWindow *gui; }; +class FindObjDrawReplaceBorder : public BC_CheckBox +{ +public: + FindObjDrawReplaceBorder(FindObjMain *plugin, FindObjWindow *gui, int x, int y); + int handle_event(); + FindObjMain *plugin; + FindObjWindow *gui; +}; + class FindObjDrawKeypoints : public BC_CheckBox { public: @@ -144,12 +170,29 @@ public: FindObjWindow *gui; }; +class FindObjDragReplace : public DragCheckBox +{ +public: + FindObjDragReplace(FindObjMain *plugin, FindObjWindow *gui, int x, int y, + float drag_x, float drag_y, float drag_w, float drag_h); + ~FindObjDragReplace(); + + int handle_event(); + Track *get_drag_track(); + int64_t get_drag_position(); + void update_gui(); + + FindObjMain *plugin; + FindObjWindow *gui; +}; + class FindObjAlgorithm : public BC_PopupMenu { public: FindObjAlgorithm(FindObjMain *plugin, FindObjWindow *gui, int x, int y); int handle_event(); void create_objects(); + void update(int mode); static int calculate_w(FindObjWindow *gui); static int from_text(char *text); static char* to_text(int mode); @@ -166,6 +209,47 @@ public: FindObjWindow *gui; }; +class FindObjScale : public BC_CheckBox +{ +public: + FindObjScale(FindObjMain *plugin, FindObjWindow *gui, int x, int y); + int handle_event(); + FindObjMain *plugin; + FindObjWindow *gui; +}; + +class FindObjRotate : public BC_CheckBox +{ +public: + FindObjRotate(FindObjMain *plugin, FindObjWindow *gui, int x, int y); + int handle_event(); + FindObjMain *plugin; + FindObjWindow *gui; +}; + +class FindObjTranslate : public BC_CheckBox +{ +public: + FindObjTranslate(FindObjMain *plugin, FindObjWindow *gui, int x, int y); + int handle_event(); + FindObjMain *plugin; + FindObjWindow *gui; +}; + +class FindObjMode : public BC_PopupMenu +{ +public: + FindObjMode(FindObjMain *plugin, FindObjWindow *gui, int x, int y); + int handle_event(); + void create_objects(); + void update(int mode); + static int calculate_w(FindObjWindow *gui); + static int from_text(char *text); + static char *to_text(int mode); + FindObjMain *plugin; + FindObjWindow *gui; +}; + class FindObjBlend : public BC_IPot { public: @@ -182,19 +266,31 @@ public: ~FindObjWindow(); void create_objects(); void update_drag(); + void update_gui(); + FindObjReset *reset; FindObjAlgorithm *algorithm; FindObjUseFlann *use_flann; + FindObjMode *mode; + FindObjScale *scale; + FindObjRotate *rotate; + FindObjTranslate *translate; FindObjScanFloat *object_x, *object_y, *object_w, *object_h; FindObjScanFloatText *object_x_text, *object_y_text, *object_w_text, *object_h_text; FindObjScanFloat *scene_x, *scene_y, *scene_w, *scene_h; FindObjScanFloatText *scene_x_text, *scene_y_text, *scene_w_text, *scene_h_text; + FindObjScanFloat *replace_x, *replace_y, *replace_w, *replace_h; + FindObjScanFloatText *replace_x_text, *replace_y_text, *replace_w_text, *replace_h_text; + FindObjScanFloat *replace_dx, *replace_dy; + FindObjScanFloatText *replace_dx_text, *replace_dy_text; FindObjDrawKeypoints *draw_keypoints; FindObjDrawSceneBorder *draw_scene_border; FindObjReplace *replace_object; FindObjDrawObjectBorder *draw_object_border; + FindObjDrawReplaceBorder *draw_replace_border; FindObjDragObject *drag_object; FindObjDragScene *drag_scene; + FindObjDragReplace *drag_replace; FindObjLayer *object_layer; FindObjLayer *scene_layer; FindObjLayer *replace_layer;