X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fassetpopup.h;h=129cd335f0ff29e44c67db6098b4577512c90195;hb=c279e21fc2394a7908bbd1ba8c79b116fe9fb14a;hp=e0611ecf8ba81d9c5d46b6a7d07388daec49f9c5;hpb=4b6c39e6cf4a3fd9c1b347db6de686ab55d6cac8;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/assetpopup.h b/cinelerra-5.1/cinelerra/assetpopup.h index e0611ecf..129cd335 100644 --- a/cinelerra-5.1/cinelerra/assetpopup.h +++ b/cinelerra-5.1/cinelerra/assetpopup.h @@ -54,6 +54,7 @@ public: AssetPopupBuildIndex *index; AssetPopupView *view; AssetPopupViewWindow *view_window; + AssetPopupMixer *mixer; AWindowListFormat *format; }; @@ -120,6 +121,18 @@ public: AssetPopup *popup; }; +class AssetPopupMixer : public BC_MenuItem +{ +public: + AssetPopupMixer(MWindow *mwindow, AssetPopup *popup); + ~AssetPopupMixer(); + + int handle_event(); + + MWindow *mwindow; + AssetPopup *popup; +}; + class AssetPopupPaste : public BC_MenuItem { public: @@ -196,22 +209,39 @@ public: ~AssetListMenu(); void create_objects(); - void update_titles(); + void update_titles(int shots); MWindow *mwindow; AWindowGUI *gui; + AssetPopupLoadFile *load_file; AWindowListFormat *format; + AssetSnapshot *asset_snapshot; + AssetGrabshot *asset_grabshot; + int shots_displayed; +}; + +class AssetPopupLoadFile : public BC_MenuItem +{ +public: + AssetPopupLoadFile(MWindow *mwindow, AWindowGUI *gui); + ~AssetPopupLoadFile(); + + int handle_event(); + + MWindow *mwindow; + AWindowGUI *gui; }; class AssetListCopy : public BC_MenuItem { public: - AssetListCopy(MWindow *mwindow); + AssetListCopy(MWindow *mwindow, AWindowGUI *gui); ~AssetListCopy(); int handle_event(); MWindow *mwindow; + AWindowGUI *gui; AssetCopyDialog *copy_dialog; }; @@ -221,12 +251,13 @@ public: AssetCopyDialog(AssetListCopy *copy); ~AssetCopyDialog(); - void start(char *text); + void start(char *text, int x, int y); BC_Window* new_gui(); void handle_done_event(int result); void handle_close_event(int result); char *text; + int x, y; AssetListCopy *copy; AssetCopyWindow *copy_window; }; @@ -234,10 +265,11 @@ public: class AssetCopyWindow : public BC_Window { public: - AssetCopyWindow(AssetCopyDialog *copy_dialog, int x, int y); + AssetCopyWindow(AssetCopyDialog *copy_dialog); ~AssetCopyWindow(); void create_objects(); + int resize_event(int w, int h); AssetCopyDialog *copy_dialog; BC_ScrollTextBox *file_list; @@ -246,12 +278,13 @@ public: class AssetListPaste : public BC_MenuItem { public: - AssetListPaste(MWindow *mwindow); + AssetListPaste(MWindow *mwindow, AWindowGUI *gui); ~AssetListPaste(); int handle_event(); MWindow *mwindow; + AWindowGUI *gui; AssetPasteDialog *paste_dialog; }; @@ -264,21 +297,118 @@ public: BC_Window* new_gui(); void handle_done_event(int result); void handle_close_event(int result); + void start(int x, int y); AssetListPaste *paste; AssetPasteWindow *paste_window; + int x, y; }; class AssetPasteWindow : public BC_Window { public: - AssetPasteWindow(AssetPasteDialog *paste_dialog, int x, int y); + AssetPasteWindow(AssetPasteDialog *paste_dialog); ~AssetPasteWindow(); void create_objects(); + int resize_event(int w, int h); AssetPasteDialog *paste_dialog; BC_ScrollTextBox *file_list; }; +class AssetSnapshot : public BC_MenuItem +{ +public: + AssetSnapshot(MWindow *mwindow, AssetListMenu *asset_list_menu); + ~AssetSnapshot(); + + MWindow *mwindow; + AssetListMenu *asset_list_menu; +}; + +class SnapshotSubMenu : public BC_SubMenu +{ +public: + SnapshotSubMenu(AssetSnapshot *asset_snapshot); + ~SnapshotSubMenu(); + + AssetSnapshot *asset_snapshot; +}; + +class SnapshotMenuItem : public BC_MenuItem +{ +public: + SnapshotMenuItem(SnapshotSubMenu *submenu, const char *text, int mode); + ~SnapshotMenuItem(); + + int handle_event(); + SnapshotSubMenu *submenu; + int mode; +}; + + +class AssetGrabshot : public BC_MenuItem +{ +public: + AssetGrabshot(MWindow *mwindow, AssetListMenu *asset_list_menu); + ~AssetGrabshot(); + + MWindow *mwindow; + AssetListMenu *asset_list_menu; +}; + +class GrabshotSubMenu : public BC_SubMenu +{ +public: + GrabshotSubMenu(AssetGrabshot *asset_grabshot); + ~GrabshotSubMenu(); + + AssetGrabshot *asset_grabshot; +}; + +class GrabshotMenuItem : public BC_MenuItem +{ +public: + GrabshotMenuItem(GrabshotSubMenu *submenu, const char *text, int mode); + ~GrabshotMenuItem(); + + int handle_event(); + GrabshotSubMenu *submenu; + int mode; + GrabshotThread *grab_thread; +}; + +class GrabshotThread : public Thread +{ +public: + GrabshotThread(MWindow* mwindow); + ~GrabshotThread(); + + MWindow *mwindow; + GrabshotPopup *popup; + BC_Popup *edge[4]; + int done; + + void start(GrabshotMenuItem *menu_item); + void run(); +}; + +class GrabshotPopup : public BC_Popup +{ +public: + GrabshotPopup(GrabshotThread *grab_thread, int mode); + ~GrabshotPopup(); + int grab_event(XEvent *event); + void draw_selection(int invert); + void update(); + + GrabshotThread *grab_thread; + int mode; + int dragging; + int grab_color; + int x0, y0, x1, y1; + int lx0, ly0, lx1, ly1; +}; + #endif