4 * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
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.
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.
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
25 #include "assetedit.inc"
26 #include "assetpopup.inc"
27 #include "awindowgui.inc"
31 #include "mwindow.inc"
35 class AssetPopup : public BC_PopupMenu
38 AssetPopup(MWindow *mwindow, AWindowGUI *gui);
41 void create_objects();
42 // Set mainsession with the current selections
54 AssetPopupBuildIndex *index;
56 AssetPopupViewWindow *view_window;
57 AWindowListFormat *format;
60 class AssetPopupInfo : public BC_MenuItem
63 AssetPopupInfo(MWindow *mwindow, AssetPopup *popup);
67 int button_press_event();
73 class AssetPopupSort : public BC_MenuItem
76 AssetPopupSort(MWindow *mwindow, AssetPopup *popup);
85 class AssetPopupBuildIndex : public BC_MenuItem
88 AssetPopupBuildIndex(MWindow *mwindow, AssetPopup *popup);
89 ~AssetPopupBuildIndex();
98 class AssetPopupView : public BC_MenuItem
101 AssetPopupView(MWindow *mwindow, AssetPopup *popup);
111 class AssetPopupViewWindow : public BC_MenuItem
114 AssetPopupViewWindow(MWindow *mwindow, AssetPopup *popup);
115 ~AssetPopupViewWindow();
123 class AssetPopupPaste : public BC_MenuItem
126 AssetPopupPaste(MWindow *mwindow, AssetPopup *popup);
135 class AssetMatchSize : public BC_MenuItem
138 AssetMatchSize(MWindow *mwindow, AssetPopup *popup);
146 class AssetMatchRate : public BC_MenuItem
149 AssetMatchRate(MWindow *mwindow, AssetPopup *popup);
157 class AssetMatchAll : public BC_MenuItem
160 AssetMatchAll(MWindow *mwindow, AssetPopup *popup);
168 class AssetPopupProjectRemove : public BC_MenuItem
171 AssetPopupProjectRemove(MWindow *mwindow, AssetPopup *popup);
172 ~AssetPopupProjectRemove();
180 class AssetPopupDiskRemove : public BC_MenuItem
183 AssetPopupDiskRemove(MWindow *mwindow, AssetPopup *popup);
184 ~AssetPopupDiskRemove();
192 class AssetListMenu : public BC_PopupMenu
195 AssetListMenu(MWindow *mwindow, AWindowGUI *gui);
198 void create_objects();
199 void update_titles();
203 AWindowListFormat *format;
206 class AssetListCopy : public BC_MenuItem
209 AssetListCopy(MWindow *mwindow, AWindowGUI *gui);
216 AssetCopyDialog *copy_dialog;
219 class AssetCopyDialog : public BC_DialogThread
222 AssetCopyDialog(AssetListCopy *copy);
225 void start(char *text, int x, int y);
226 BC_Window* new_gui();
227 void handle_done_event(int result);
228 void handle_close_event(int result);
233 AssetCopyWindow *copy_window;
236 class AssetCopyWindow : public BC_Window
239 AssetCopyWindow(AssetCopyDialog *copy_dialog);
242 void create_objects();
243 int resize_event(int w, int h);
245 AssetCopyDialog *copy_dialog;
246 BC_ScrollTextBox *file_list;
249 class AssetListPaste : public BC_MenuItem
252 AssetListPaste(MWindow *mwindow, AWindowGUI *gui);
259 AssetPasteDialog *paste_dialog;
262 class AssetPasteDialog : public BC_DialogThread
265 AssetPasteDialog(AssetListPaste *paste);
268 BC_Window* new_gui();
269 void handle_done_event(int result);
270 void handle_close_event(int result);
271 void start(int x, int y);
273 AssetListPaste *paste;
274 AssetPasteWindow *paste_window;
278 class AssetPasteWindow : public BC_Window
281 AssetPasteWindow(AssetPasteDialog *paste_dialog);
284 void create_objects();
285 int resize_event(int w, int h);
287 AssetPasteDialog *paste_dialog;
288 BC_ScrollTextBox *file_list;