7 #include "mwindowgui.inc"
8 #include "overlayframe.inc"
10 #include "patchbay.inc"
11 #include "patchgui.inc"
13 class NudgePopupSeconds
;
14 class NudgePopupNative
;
17 class PatchBay
: public BC_SubWindow
20 PatchBay(MWindow
*mwindow
, MWindowGUI
*gui
);
23 int delete_all_patches();
26 int button_press_event();
27 int cursor_motion_event();
28 BC_Pixmap
* mode_to_icon(int mode
);
29 int icon_to_mode(BC_Pixmap
*icon
);
31 // Synchronize with Master EDL
33 void update_meters(ArrayList
<double> *module_levels
);
35 void synchronize_faders(float value
, int data_type
, Track
*skip
);
36 void change_meter_format(int mode
, float min
);
39 ArrayList
<PatchGUI
*> patches
;
46 // =========================================== drawing
48 int resize_event(int top
, int bottom
);
54 int button_down
, new_status
, drag_operation
, reconfigure_trigger
;
55 BC_Pixmap
*mode_icons
[TRANSFER_TYPES
];
57 NudgePopup
*nudge_popup
;
61 class NudgePopup
: public BC_PopupMenu
64 NudgePopup(MWindow
*mwindow
, PatchBay
*patchbay
);
67 void create_objects();
68 void activate_menu(PatchGUI
*gui
);
72 NudgePopupSeconds
*seconds_item
;
73 NudgePopupNative
*native_item
;
77 class NudgePopupSeconds
: public BC_MenuItem
80 NudgePopupSeconds(NudgePopup
*popup
);
86 class NudgePopupNative
: public BC_MenuItem
89 NudgePopupNative(NudgePopup
*popup
);