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
27 #include "editpopup.inc"
28 #include "mwindow.inc"
29 #include "mwindowgui.inc"
30 #include "plugindialog.inc"
31 #include "resizetrackthread.inc"
33 class EditPopup : public BC_PopupMenu
36 EditPopup(MWindow *mwindow, MWindowGUI *gui);
39 void create_objects();
40 int update(Edit *edit);
48 class EditPopupClear : public BC_MenuItem
51 EditPopupClear(MWindow *mwindow, EditPopup *popup);
58 class EditPopupDelete : public BC_MenuItem
61 EditPopupDelete(MWindow *mwindow, EditPopup *popup);
68 class EditPopupCopy : public BC_MenuItem
71 EditPopupCopy(MWindow *mwindow, EditPopup *popup);
78 class EditPopupCut : public BC_MenuItem
81 EditPopupCut(MWindow *mwindow, EditPopup *popup);
88 class EditPopupCopyCut : public BC_MenuItem
91 EditPopupCopyCut(MWindow *mwindow, EditPopup *popup);
98 class EditPopupPaste : public BC_MenuItem
101 EditPopupPaste(MWindow *mwindow, EditPopup *popup);
108 class EditPopupFindAsset : public BC_MenuItem
111 EditPopupFindAsset(MWindow *mwindow, EditPopup *popup);
117 class EditPopupTitle : public BC_MenuItem
120 EditPopupTitle(MWindow *mwindow, EditPopup *popup);
127 EditTitleDialogThread *dialog_thread;
130 class EditTitleDialogThread : public BC_DialogThread
133 EditTitleDialogThread(EditPopupTitle *edit_title);
134 ~EditTitleDialogThread();
135 BC_Window* new_gui();
136 void start(int wx, int wy);
137 void handle_close_event(int result);
138 void handle_done_event(int result);
141 EditPopupTitle *edit_title;
142 EditPopupTitleWindow *window;
145 class EditPopupTitleText : public BC_TextBox
148 EditPopupTitleText(EditPopupTitleWindow *window,
149 MWindow *mwindow, int x, int y, const char *text);
150 ~EditPopupTitleText();
154 EditPopupTitleWindow *window;
157 class EditPopupTitleWindow : public BC_Window
160 EditPopupTitleWindow(MWindow *mwindow, EditPopup *popup, int wx, int wy);
161 ~EditPopupTitleWindow();
163 void create_objects();
164 void handle_close_event(int result);
166 EditPopupTitleText *title_text;
169 char new_text[BCTEXTLEN];
173 class EditPopupShow : public BC_MenuItem
176 EditPopupShow(MWindow *mwindow, EditPopup *popup);
183 EditShowDialogThread *dialog_thread;
186 class EditShowDialogThread : public BC_DialogThread
189 EditShowDialogThread(EditPopupShow *edit_show);
190 ~EditShowDialogThread();
191 BC_Window* new_gui();
192 void start(int wx, int wy);
193 void handle_close_event(int result);
196 EditPopupShow *edit_show;
197 EditPopupShowWindow *window;
200 class EditPopupShowText : public BC_TextBox
203 EditPopupShowText(EditPopupShowWindow *window,
204 MWindow *mwindow, int x, int y, const char *text);
205 ~EditPopupShowText();
207 EditPopupShowWindow *window;
211 class EditPopupShowWindow : public BC_Window
214 EditPopupShowWindow(MWindow *mwindow, EditPopup *popup, int wx, int wy);
215 ~EditPopupShowWindow();
217 void create_objects();
219 EditPopupShowText *show_text;