Fourth set of 50 GPL attribution for CV-Contributors added +
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / proxypopup.h
1
2 /*
3  * CINELERRA
4  * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * This program is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  *
20  */
21
22 #ifndef PROXYPOPUP_H
23 #define PROXYPOPUP_H
24
25 #include "assetedit.inc"
26 #include "awindowgui.inc"
27 #include "proxypopup.inc"
28 #include "edl.inc"
29 #include "guicast.h"
30 #include "assets.inc"
31 #include "mwindow.inc"
32
33
34
35 class ProxyPopup : public BC_PopupMenu
36 {
37 public:
38         ProxyPopup(MWindow *mwindow, AWindowGUI *gui);
39         ~ProxyPopup();
40
41         void create_objects();
42 // Set mainsession with the current selections
43         int update();
44         void paste_assets();
45
46         MWindow *mwindow;
47         AWindowGUI *gui;
48
49         ProxyPopupInfo *info;
50         ProxyPopupView *view;
51         ProxyPopupViewWindow *view_window;
52         AWindowListFormat *format;
53 };
54
55 class ProxyPopupInfo : public BC_MenuItem
56 {
57 public:
58         ProxyPopupInfo(MWindow *mwindow, ProxyPopup *popup);
59         ~ProxyPopupInfo();
60
61         int handle_event();
62         int button_press_event();
63
64         MWindow *mwindow;
65         ProxyPopup *popup;
66 };
67
68 class ProxyPopupSort : public BC_MenuItem
69 {
70 public:
71         ProxyPopupSort(MWindow *mwindow, ProxyPopup *popup);
72         ~ProxyPopupSort();
73
74         int handle_event();
75
76         MWindow *mwindow;
77         ProxyPopup *popup;
78 };
79
80 class ProxyPopupView : public BC_MenuItem
81 {
82 public:
83         ProxyPopupView(MWindow *mwindow, ProxyPopup *popup);
84         ~ProxyPopupView();
85
86         int handle_event();
87
88         MWindow *mwindow;
89         ProxyPopup *popup;
90 };
91
92
93 class ProxyPopupViewWindow : public BC_MenuItem
94 {
95 public:
96         ProxyPopupViewWindow(MWindow *mwindow, ProxyPopup *popup);
97         ~ProxyPopupViewWindow();
98
99         int handle_event();
100
101         MWindow *mwindow;
102         ProxyPopup *popup;
103 };
104
105 class ProxyPopupCopy : public BC_MenuItem
106 {
107 public:
108         ProxyPopupCopy(MWindow *mwindow, ProxyPopup *popup);
109         ~ProxyPopupCopy();
110
111         int handle_event();
112
113         MWindow *mwindow;
114         ProxyPopup *popup;
115 };
116
117 class ProxyPopupPaste : public BC_MenuItem
118 {
119 public:
120         ProxyPopupPaste(MWindow *mwindow, ProxyPopup *popup);
121         ~ProxyPopupPaste();
122
123         int handle_event();
124
125         MWindow *mwindow;
126         ProxyPopup *popup;
127 };
128
129 class ProxyPopupProjectRemove : public BC_MenuItem
130 {
131 public:
132         ProxyPopupProjectRemove(MWindow *mwindow, ProxyPopup *popup);
133         ~ProxyPopupProjectRemove();
134
135         int handle_event();
136
137         MWindow *mwindow;
138         ProxyPopup *popup;
139 };
140
141 class ProxyPopupDiskRemove : public BC_MenuItem
142 {
143 public:
144         ProxyPopupDiskRemove(MWindow *mwindow, ProxyPopup *popup);
145         ~ProxyPopupDiskRemove();
146
147         int handle_event();
148
149         MWindow *mwindow;
150         ProxyPopup *popup;
151 };
152
153 class ProxyListMenu : public BC_PopupMenu
154 {
155 public:
156         ProxyListMenu(MWindow *mwindow, AWindowGUI *gui);
157         ~ProxyListMenu();
158
159         void create_objects();
160         void update();
161         AWindowListFormat *format;
162         AssetSelectUsed *select_used;
163         MWindow *mwindow;
164         AWindowGUI *gui;
165 };
166
167 #endif