X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fassetpopup.h;h=129cd335f0ff29e44c67db6098b4577512c90195;hp=ee1a3d1f719ec78c98027fb1fdbafc8a644d996c;hb=7e5a0760f40ff787cc3d93cb7768a901ebe52809;hpb=0513350234a8dcd08e5a0117d5121724ef7b76b6 diff --git a/cinelerra-5.1/cinelerra/assetpopup.h b/cinelerra-5.1/cinelerra/assetpopup.h index ee1a3d1f..129cd335 100644 --- a/cinelerra-5.1/cinelerra/assetpopup.h +++ b/cinelerra-5.1/cinelerra/assetpopup.h @@ -209,11 +209,27 @@ 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 @@ -301,4 +317,98 @@ public: 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