#include <patchbay.h>
Inherits BC_SubWindow.

Public Member Functions | |
| PatchBay (MWindow *mwindow, MWindowGUI *gui) | |
| ~PatchBay () | |
| int | delete_all_patches () |
| int | create_objects () |
| void | resize_event () |
| int | button_press_event () |
| int | cursor_motion_event () |
| BC_Pixmap * | mode_to_icon (int mode) |
| int | icon_to_mode (BC_Pixmap *icon) |
| PatchGUI * | get_patch_of (Track *track) |
| int | update () |
| void | update_meters (ArrayList< double > *module_levels) |
| void | stop_meters () |
| void | synchronize_nudge (int64_t value, Track *skip) |
| void | synchronize_faders (float value, int data_type, Track *skip) |
| void | change_meter_format (int mode, int min, int max) |
| void | reset_meters () |
| int | resize_event (int top, int bottom) |
| Track * | is_over_track () |
Data Fields | |
| ArrayList< PatchGUI * > | patches |
| MWindow * | mwindow |
| MWindowGUI * | gui |
| int | button_down |
| int | new_status |
| int | drag_operation |
| int | reconfigure_trigger |
| BC_Pixmap * | mode_icons [TRANSFER_TYPES] |
| NudgePopup * | nudge_popup |
Definition at line 17 of file patchbay.h.
| PatchBay::PatchBay | ( | MWindow * | mwindow, | |
| MWindowGUI * | gui | |||
| ) |
Definition at line 107 of file patchbay.C.
References button_down, drag_operation, Tracks::NONE, and reconfigure_trigger.
| PatchBay::~PatchBay | ( | ) |
Definition at line 120 of file patchbay.C.
| int PatchBay::delete_all_patches | ( | ) |
Definition at line 125 of file patchbay.C.
References patches, and ArrayList< TYPE >::remove_all_objects().

| int PatchBay::create_objects | ( | ) |
Definition at line 131 of file patchbay.C.
References BC_WindowBase::add_subwindow(), BC_WindowBase::BC_Pixmap, NudgePopup::create_objects(), BC_WindowBase::draw_top_background(), BC_WindowBase::flash(), BC_WindowBase::get_h(), BC_Theme::get_image(), BC_WindowBase::get_parent(), BC_WindowBase::get_w(), mode_icons, mwindow, nudge_popup, and MWindow::theme.
Referenced by MWindowGUI::create_objects().

| void PatchBay::resize_event | ( | ) |
Definition at line 177 of file patchbay.C.
References BC_WindowBase::draw_top_background(), BC_WindowBase::flash(), BC_WindowBase::get_h(), BC_WindowBase::get_parent(), BC_WindowBase::get_w(), mwindow, Theme::patchbay_h, Theme::patchbay_w, Theme::patchbay_x, Theme::patchbay_y, BC_WindowBase::reposition_window(), MWindow::theme, and update().
Referenced by MWindowGUI::resize_event().

| int PatchBay::button_press_event | ( | ) | [virtual] |
| int PatchBay::cursor_motion_event | ( | ) | [virtual] |
Reimplemented from BC_WindowBase.
Definition at line 225 of file patchbay.C.
References _, EDLSession::auto_conf, AutoConf::autos, MWindowGUI::canvas, BC_WindowBase::cursor_x, BC_WindowBase::cursor_y, drag_operation, Tracks::DRAW, TrackCanvas::draw_overlays(), MWindow::edl, Tracks::EXPAND, List< TYPE >::first, BC_WindowBase::flash(), Tracks::GANG, Autos::get_auto_for_editing(), BC_WindowBase::get_h(), Autos::get_prev_auto(), BC_WindowBase::get_relative_cursor_x(), BC_WindowBase::get_relative_cursor_y(), LocalSession::get_selectionstart(), MWindow::gui, BC_WindowBase::h, EDL::local_session, BC_WindowBase::lock_window(), Tracks::MUTE, mwindow, new_status, ListItem< TYPE >::next, Tracks::NONE, Tracks::PLAY, Tracks::RECORD, MWindow::restart_brender(), EDL::session, MWindow::sync_parameters(), MWindow::theme, LocalSession::track_start, MWindow::trackmovement(), EDL::tracks, MWindow::undo, BC_WindowBase::unlock_window(), update(), MainUndo::update_undo(), IntAuto::value, and BC_WindowBase::y.

| BC_Pixmap * PatchBay::mode_to_icon | ( | int | mode | ) |
Definition at line 165 of file patchbay.C.
References mode_icons.
Referenced by VModePatch::update(), and VModePatch::VModePatch().
| int PatchBay::icon_to_mode | ( | BC_Pixmap * | icon | ) |
Definition at line 513 of file patchbay.C.
References patches, ArrayList< TYPE >::total, PatchGUI::track, and ArrayList< TYPE >::values.
Referenced by synchronize_faders(), and synchronize_nudge().
| int PatchBay::update | ( | ) |
Definition at line 401 of file patchbay.C.
References ArrayList< TYPE >::append(), PatchGUI::create_objects(), MWindow::edl, List< TYPE >::first, mwindow, NEXT, PATCH_X, patches, ArrayList< TYPE >::remove_number(), ArrayList< TYPE >::total, TRACK_AUDIO, PatchGUI::track_id, TRACK_VIDEO, EDL::tracks, PatchGUI::update(), ArrayList< TYPE >::values, and BC_WindowBase::y.
Referenced by MWindow::add_audio_track_entry(), MWindow::add_video_track_entry(), ZoomTextBox::button_press_event(), TrackCanvas::button_press_event(), MWindow::clear_automation(), MWindow::clear_default_keyframe(), MWindow::create_objects(), TrackCanvas::cursor_motion_event(), cursor_motion_event(), MWindow::cut_automation(), MWindow::cut_default_keyframe(), TrackCanvas::drag_stop(), MWindow::expand_autos(), MWindow::goto_end(), MWindow::goto_start(), AutoZoom::handle_down_event(), ZoomTextBox::handle_event(), TrackScroll::handle_event(), SampleScroll::handle_event(), NudgePopupNative::handle_event(), NudgePopupSeconds::handle_event(), AutoZoom::handle_up_event(), MWindow::next_edit_handle(), MWindow::next_label(), MWindow::paste_automation(), MWindow::paste_default_keyframe(), MWindow::prev_edit_handle(), MWindow::prev_label(), TrackCanvas::repeat_event(), resize_event(), MTimeBar::select_label(), MWindow::select_point(), MWindow::shrink_autos(), MWindow::straighten_automation(), PatchGUI::toggle_behavior(), MWindow::trackmovement(), CTracking::update_tracker(), and MWindow::zoom_amp().

| void PatchBay::update_meters | ( | ArrayList< double > * | module_levels | ) |
Definition at line 349 of file patchbay.C.
References PatchGUI::data_type, level, APatchGUI::meter, patches, ArrayList< TYPE >::total, TRACK_AUDIO, BC_Meter::update(), and ArrayList< TYPE >::values.
Referenced by Tracking::update_meters().

| void PatchBay::stop_meters | ( | ) |
Definition at line 384 of file patchbay.C.
References PatchGUI::data_type, APatchGUI::meter, patches, BC_Meter::reset(), ArrayList< TYPE >::total, TRACK_AUDIO, and ArrayList< TYPE >::values.
Referenced by Tracking::stop_meters().

| void PatchBay::synchronize_nudge | ( | int64_t | value, | |
| Track * | skip | |||
| ) |
Definition at line 495 of file patchbay.C.
References Track::data_type, MWindow::edl, List< TYPE >::first, get_patch_of(), mwindow, NEXT, EDL::tracks, PatchGUI::update(), PatchGUI::x, and PatchGUI::y.
Referenced by NudgePatch::set_value().

| void PatchBay::synchronize_faders | ( | float | value, | |
| int | data_type, | |||
| Track * | skip | |||
| ) |
Definition at line 462 of file patchbay.C.
References LocalSession::automation_maxs, LocalSession::automation_mins, CLAMP, MWindow::edl, List< TYPE >::first, Autos::get_auto_for_editing(), get_patch_of(), LocalSession::get_selectionstart(), EDL::local_session, mwindow, NEXT, TRACK_AUDIO, EDL::tracks, PatchGUI::update(), FloatAuto::value, PatchGUI::x, and PatchGUI::y.
Referenced by VFadePatch::handle_event(), and AFadePatch::handle_event().

| void PatchBay::change_meter_format | ( | int | mode, | |
| int | min, | |||
| int | max | |||
| ) |
Definition at line 333 of file patchbay.C.
References BC_Meter::change_format(), PatchGUI::data_type, APatchGUI::meter, patches, ArrayList< TYPE >::total, TRACK_AUDIO, and ArrayList< TYPE >::values.
Referenced by PreferencesThread::apply_settings().

| void PatchBay::reset_meters | ( | ) |
Definition at line 370 of file patchbay.C.
References PatchGUI::data_type, APatchGUI::meter, patches, BC_Meter::reset_over(), ArrayList< TYPE >::total, TRACK_AUDIO, and ArrayList< TYPE >::values.
Referenced by MWindow::reset_meters().

| int PatchBay::resize_event | ( | int | top, | |
| int | bottom | |||
| ) | [virtual] |
Reimplemented from BC_WindowBase.
Definition at line 523 of file patchbay.C.
References mwindow, Theme::patchbay_h, Theme::patchbay_w, Theme::patchbay_x, Theme::patchbay_y, BC_WindowBase::reposition_window(), and MWindow::theme.

| Track * PatchBay::is_over_track | ( | ) |
Definition at line 196 of file patchbay.C.
References BC_WindowBase::cursor_x, BC_WindowBase::cursor_y, MWindow::edl, List< TYPE >::first, BC_WindowBase::get_cursor_over_window(), BC_WindowBase::get_h(), BC_WindowBase::get_relative_cursor_x(), BC_WindowBase::get_relative_cursor_y(), BC_WindowBase::get_w(), BC_WindowBase::h, mwindow, ListItem< TYPE >::next, MWindow::theme, EDL::tracks, and BC_WindowBase::y.
Referenced by TrackCanvas::drag_motion().

Definition at line 42 of file patchbay.h.
Referenced by change_meter_format(), delete_all_patches(), get_patch_of(), reset_meters(), stop_meters(), update(), and update_meters().
Definition at line 54 of file patchbay.h.
Referenced by create_objects(), cursor_motion_event(), is_over_track(), resize_event(), synchronize_faders(), synchronize_nudge(), and update().
Definition at line 55 of file patchbay.h.
Reimplemented from BC_WindowBase.
Definition at line 57 of file patchbay.h.
Referenced by DrawPatchOld::cursor_moved_over(), RecordPatchOld::cursor_moved_over(), PlayPatchOld::cursor_moved_over(), DrawPatchOld::handle_event(), RecordPatchOld::handle_event(), PlayPatchOld::handle_event(), PatchBay(), and PatchGUI::toggle_behavior().
Definition at line 57 of file patchbay.h.
Referenced by cursor_motion_event(), DrawPatchOld::cursor_moved_over(), RecordPatchOld::cursor_moved_over(), PlayPatchOld::cursor_moved_over(), DrawPatchOld::handle_event(), RecordPatchOld::handle_event(), PlayPatchOld::handle_event(), and PatchGUI::toggle_behavior().
Definition at line 57 of file patchbay.h.
Referenced by ExpandPatch::button_release_event(), MutePatch::button_release_event(), DrawPatch::button_release_event(), GangPatch::button_release_event(), RecordPatch::button_release_event(), PlayPatch::button_release_event(), cursor_motion_event(), PatchBay(), and PatchGUI::toggle_behavior().
Definition at line 57 of file patchbay.h.
Referenced by PlayPatchOld::handle_event(), and PatchBay().
| BC_Pixmap* PatchBay::mode_icons[TRANSFER_TYPES] |
Definition at line 58 of file patchbay.h.
Referenced by create_objects(), icon_to_mode(), and mode_to_icon().
Definition at line 60 of file patchbay.h.
Referenced by NudgePatch::button_press_event(), and create_objects().
1.5.5