4 class PluginDialogTextBox
;
5 class PluginDialogDetach
;
7 class PluginDialogShared
;
8 class PluginDialogModules
;
9 class PluginDialogAttachNew
;
10 class PluginDialogAttachShared
;
11 class PluginDialogAttachModule
;
12 class PluginDialogChangeNew
;
13 class PluginDialogChangeShared
;
14 class PluginDialogChangeModule
;
16 class PluginDialogOut
;
17 class PluginDialogThru
;
20 #include "condition.inc"
23 #include "mwindow.inc"
25 #include "sharedlocation.h"
27 #include "transition.inc"
29 class PluginDialogThread
: public Thread
32 PluginDialogThread(MWindow
*mwindow
);
33 ~PluginDialogThread();
35 // Set up parameters for a transition menu.
36 void start_window(Track
*track
,
39 int set_dialog(Transition
*transition
, char *title
);
47 Transition
*transition
;
49 // Plugin being modified if there is one
51 Condition
*completion
;
53 char window_title
[BCTEXTLEN
];
56 // type of attached plugin
57 int plugin_type
; // 0: none 1: plugin 2: shared plugin 3: module
59 // location of attached plugin if shared
60 SharedLocation shared_location
;
62 // Title of attached plugin if new
63 char plugin_title
[BCTEXTLEN
];
66 class PluginDialog
: public BC_Window
69 PluginDialog(MWindow
*mwindow
,
70 PluginDialogThread
*thread
,
78 int attach_new(int number
);
79 int attach_shared(int number
);
80 int attach_module(int number
);
82 int resize_event(int w
, int h
);
84 BC_Title
*standalone_title
;
85 PluginDialogNew
*standalone_list
;
86 BC_Title
*shared_title
;
87 PluginDialogShared
*shared_list
;
88 BC_Title
*module_title
;
89 PluginDialogModules
*module_list
;
93 * PluginDialogAttachNew *standalone_attach;
94 * PluginDialogAttachShared *shared_attach;
95 * PluginDialogAttachModule *module_attach;
97 * PluginDialogChangeNew *standalone_change;
98 * PluginDialogChangeShared *shared_change;
99 * PluginDialogChangeModule *module_change;
102 PluginDialogThru
*thru
;
104 PluginDialogThread
*thread
;
106 ArrayList
<BC_ListBoxItem
*> standalone_data
;
107 ArrayList
<BC_ListBoxItem
*> shared_data
;
108 ArrayList
<BC_ListBoxItem
*> module_data
;
109 ArrayList
<SharedLocation
*> plugin_locations
; // locations of all shared plugins
110 ArrayList
<SharedLocation
*> module_locations
; // locations of all shared modules
111 ArrayList
<PluginServer
*> plugindb
; // locations of all simple plugins, no need for memory freeing!
113 int selected_available
;
115 int selected_modules
;
117 int inoutthru
; // flag for button slide
118 int new_value
; // value for button slide
124 * class PluginDialogTextBox : public BC_TextBox
127 * PluginDialogTextBox(PluginDialog *dialog, char *text, int x, int y);
128 * ~PluginDialogTextBox();
130 * int handle_event();
131 * PluginDialog *dialog;
136 * class PluginDialogDetach : public BC_GenericButton
139 * PluginDialogDetach(MWindow *mwindow, PluginDialog *dialog, int x, int y);
140 * ~PluginDialogDetach();
142 * int handle_event();
143 * PluginDialog *dialog;
148 * class PluginDialogAttachNew : public BC_GenericButton
151 * PluginDialogAttachNew(MWindow *mwindow, PluginDialog *dialog, int x, int y);
152 * ~PluginDialogAttachNew();
154 * int handle_event();
155 * PluginDialog *dialog;
158 * class PluginDialogChangeNew : public BC_GenericButton
161 * PluginDialogChangeNew(MWindow *mwindow, PluginDialog *dialog, int x, int y);
162 * ~PluginDialogChangeNew();
164 * int handle_event();
165 * PluginDialog *dialog;
170 class PluginDialogNew
: public BC_ListBox
173 PluginDialogNew(PluginDialog
*dialog
,
174 ArrayList
<BC_ListBoxItem
*> *standalone_data
,
182 int selection_changed();
183 PluginDialog
*dialog
;
186 class PluginDialogShared
: public BC_ListBox
189 PluginDialogShared(PluginDialog
*dialog
,
190 ArrayList
<BC_ListBoxItem
*> *shared_data
,
195 ~PluginDialogShared();
198 int selection_changed();
199 PluginDialog
*dialog
;
202 class PluginDialogModules
: public BC_ListBox
205 PluginDialogModules(PluginDialog
*dialog
,
206 ArrayList
<BC_ListBoxItem
*> *module_data
,
211 ~PluginDialogModules();
214 int selection_changed();
215 PluginDialog
*dialog
;
219 * class PluginDialogAttachShared : public BC_GenericButton
222 * PluginDialogAttachShared(MWindow *mwindow, PluginDialog *dialog, int x, int y);
223 * ~PluginDialogAttachShared();
225 * int handle_event();
226 * PluginDialog *dialog;
229 * class PluginDialogChangeShared : public BC_GenericButton
232 * PluginDialogChangeShared(MWindow *mwindow, PluginDialog *dialog, int x, int y);
233 * ~PluginDialogChangeShared();
235 * int handle_event();
236 * PluginDialog *dialog;
240 * class PluginDialogAttachModule : public BC_GenericButton
243 * PluginDialogAttachModule(MWindow *mwindow, PluginDialog *dialog, int x, int y);
244 * ~PluginDialogAttachModule();
246 * int handle_event();
247 * PluginDialog *dialog;
250 * class PluginDialogChangeModule : public BC_GenericButton
253 * PluginDialogChangeModule(MWindow *mwindow, PluginDialog *dialog, int x, int y);
254 * ~PluginDialogChangeModule();
256 * int handle_event();
257 * PluginDialog *dialog;