X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fassetpopup.h;h=0720d9d2b57d5143e546ed00121cbf5312fbaef1;hp=b9191a77c765b09f629a2d6b51f2c9c19a6eb8a1;hb=502b6f3b6fd04f6b01c6d70dcb81aa304dd0db1c;hpb=a6369311556cc1e1877142181d8606e4f68aa803 diff --git a/cinelerra-5.1/cinelerra/assetpopup.h b/cinelerra-5.1/cinelerra/assetpopup.h index b9191a77..0720d9d2 100644 --- a/cinelerra-5.1/cinelerra/assetpopup.h +++ b/cinelerra-5.1/cinelerra/assetpopup.h @@ -221,11 +221,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 @@ -313,4 +329,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