#include <port_matrix.h>
|
void | hscroll_changed () |
|
void | vscroll_changed () |
|
void | routes_changed () |
|
void | reconnect_to_routes () |
|
void | select_arrangement () |
|
void | add_channel_proxy (boost::weak_ptr< ARDOUR::Bundle >, ARDOUR::DataType) |
|
void | remove_channel_proxy (boost::weak_ptr< ARDOUR::Bundle >, uint32_t) |
|
void | rename_channel_proxy (boost::weak_ptr< ARDOUR::Bundle >, uint32_t) |
|
void | disassociate_all_on_channel (boost::weak_ptr< ARDOUR::Bundle >, uint32_t, int) |
|
void | disassociate_all_on_bundle (boost::weak_ptr< ARDOUR::Bundle >, int) |
|
void | setup_global_ports () |
|
void | setup_global_ports_proxy () |
|
void | toggle_show_only_bundles () |
|
bool | on_scroll_event (GdkEventScroll *) |
|
boost::shared_ptr< ARDOUR::IO > | io_from_bundle (boost::shared_ptr< ARDOUR::Bundle >) const |
|
void | setup_notebooks () |
|
void | remove_notebook_pages (Gtk::Notebook &) |
|
void | notebook_page_selected (GtkNotebookPage *, guint) |
|
void | route_processors_changed (ARDOUR::RouteProcessorChange) |
|
void | body_dimensions_changed () |
|
void | session_going_away () |
|
void | add_remove_option (Gtk::Menu_Helpers::MenuList &, boost::weak_ptr< ARDOUR::Bundle >, int) |
|
void | add_disassociate_option (Gtk::Menu_Helpers::MenuList &, boost::weak_ptr< ARDOUR::Bundle >, int, int) |
|
void | port_connected_or_disconnected () |
|
void | update_tab_highlighting () |
|
std::pair< int, int > | check_flip () const |
|
bool | can_flip () const |
|
Definition at line 60 of file port_matrix.h.
Enumerator |
---|
TOP_TO_RIGHT |
column labels on top, row labels to the right
|
LEFT_TO_BOTTOM |
row labels to the left, column labels on the bottom
|
Definition at line 83 of file port_matrix.h.
PortMatrix constructor.
- Parameters
-
session | Our session. |
type | Port type that we are handling. |
Definition at line 52 of file port_matrix.cc.
PortMatrix::~PortMatrix |
( |
| ) |
|
void PortMatrix::body_dimensions_changed |
( |
| ) |
|
|
private |
- Returns
- true if b is a non-zero pointer and the bundle it points to has some channels
Definition at line 1156 of file port_matrix.cc.
bool PortMatrix::can_flip |
( |
| ) |
const |
|
private |
string PortMatrix::channel_noun |
( |
| ) |
const |
|
virtual |
pair< int, int > PortMatrix::check_flip |
( |
| ) |
const |
|
private |
See if a `flip' is possible.
- Returns
- If flip is possible, the new (row, column) notebook indices that should be selected; otherwise, (-1, -1)
Definition at line 1166 of file port_matrix.cc.
int PortMatrix::column_index |
( |
| ) |
const |
|
inline |
- Returns
- index into the _ports array for the list which is displayed as columns
Definition at line 102 of file port_matrix.h.
- Returns
- The number of ports of our type in the given channel count, but returning 1 if there are no ports.
Definition at line 1079 of file port_matrix.cc.
void PortMatrix::disassociate_all |
( |
| ) |
|
Disassociate all of our ports from each other
Definition at line 275 of file port_matrix.cc.
virtual std::string PortMatrix::disassociation_verb |
( |
| ) |
const |
|
pure virtual |
void PortMatrix::flip |
( |
| ) |
|
Flip the column and row pages around, if possible
Definition at line 1211 of file port_matrix.cc.
void PortMatrix::hscroll_changed |
( |
| ) |
|
|
private |
void PortMatrix::init |
( |
| ) |
|
Perform initial and once-only setup. This must be called by subclasses after they have set up _ports[] to at least some reasonable extent. Two-part initialisation is necessary because setting up _ports is largely done by virtual functions in subclasses.
Definition at line 122 of file port_matrix.cc.
bool PortMatrix::key_press |
( |
GdkEventKey * |
k | ) |
|
virtual bool PortMatrix::list_is_global |
( |
int |
| ) |
const |
|
pure virtual |
pair< uint32_t, uint32_t > PortMatrix::max_size |
( |
| ) |
const |
int PortMatrix::min_height_divisor |
( |
| ) |
const |
|
inline |
void PortMatrix::notebook_page_selected |
( |
GtkNotebookPage * |
, |
|
|
guint |
|
|
) |
| |
|
private |
bool PortMatrix::on_scroll_event |
( |
GdkEventScroll * |
ev | ) |
|
|
private |
- Parameters
-
column | Column; its bundle may be 0 if we are over a row heading. |
row | Row; its bundle may be 0 if we are over a column heading. |
Definition at line 418 of file port_matrix.cc.
void PortMatrix::port_connected_or_disconnected |
( |
| ) |
|
|
private |
void PortMatrix::reconnect_to_routes |
( |
| ) |
|
|
private |
Disconnect from and reconnect to routes' signals that we need to watch for things that affect the matrix
Definition at line 177 of file port_matrix.cc.
void PortMatrix::remove_notebook_pages |
( |
Gtk::Notebook & |
n | ) |
|
|
private |
void PortMatrix::routes_changed |
( |
| ) |
|
|
private |
A route has been added to or removed from the session
Definition at line 201 of file port_matrix.cc.
int PortMatrix::row_index |
( |
| ) |
const |
|
inline |
- Returns
- index into the _ports array for the list which is displayed as rows
Definition at line 110 of file port_matrix.h.
void PortMatrix::select_arrangement |
( |
| ) |
|
|
private |
void PortMatrix::session_going_away |
( |
| ) |
|
|
privatevirtual |
void PortMatrix::set_min_height_divisor |
( |
int |
f | ) |
|
|
inline |
void PortMatrix::setup |
( |
| ) |
|
Set up everything that depends on the content of _ports[]
Definition at line 210 of file port_matrix.cc.
void PortMatrix::setup_all_ports |
( |
| ) |
|
void PortMatrix::setup_global_ports |
( |
| ) |
|
|
private |
void PortMatrix::setup_global_ports_proxy |
( |
| ) |
|
|
private |
void PortMatrix::setup_notebooks |
( |
| ) |
|
|
private |
virtual void PortMatrix::setup_ports |
( |
int |
| ) |
|
|
pure virtual |
void PortMatrix::setup_scrollbars |
( |
| ) |
|
- Returns
- true if this matrix should show bundles / ports of type
Definition at line 1060 of file port_matrix.cc.
bool PortMatrix::show_only_bundles |
( |
| ) |
const |
|
inline |
void PortMatrix::toggle_show_only_bundles |
( |
| ) |
|
|
private |
void PortMatrix::update_tab_highlighting |
( |
| ) |
|
|
private |
Update the highlighting of tab names to reflect which ones have connections. This is pretty inefficient, unfortunately, but maybe that doesn't matter too much.
Definition at line 1005 of file port_matrix.cc.
void PortMatrix::vscroll_changed |
( |
| ) |
|
|
private |
int PortMatrix::_column_index |
|
private |
Gtk::HBox PortMatrix::_hbox |
|
private |
Gtk::Label PortMatrix::_hlabel |
|
private |
Gtk::Notebook PortMatrix::_hnotebook |
|
private |
Gtk::HScrollbar PortMatrix::_hscroll |
|
private |
Gtk::Label PortMatrix::_hspacer |
|
private |
bool PortMatrix::_ignore_notebook_page_selected |
|
private |
bool PortMatrix::_inhibit_toggle_show_only_bundles |
|
private |
Gtk::Menu* PortMatrix::_menu |
|
private |
int PortMatrix::_min_height_divisor |
|
private |
Gtk::Window* PortMatrix::_parent |
|
private |
We have two port group lists. One will be presented on the rows of the matrix, the other on the columns. The PortMatrix chooses the arrangement based on which has more ports in it. Subclasses must fill these two lists with the port groups that they wish to present. The PortMatrix will arrange its layout such that signal flow is vaguely from left to right as you go from list 0 to list 1. Hence subclasses which deal with inputs and outputs should put outputs in list 0 and inputs in list 1.
Definition at line 176 of file port_matrix.h.
int PortMatrix::_row_index |
|
private |
bool PortMatrix::_show_only_bundles |
|
private |
port type that we are working with, or NIL if we are working with all of them
Definition at line 211 of file port_matrix.h.
Gtk::VBox PortMatrix::_vbox |
|
private |
Gtk::Label PortMatrix::_vlabel |
|
private |
Gtk::Notebook PortMatrix::_vnotebook |
|
private |
Gtk::VScrollbar PortMatrix::_vscroll |
|
private |
Gtk::Label PortMatrix::_vspacer |
|
private |
sigc::signal<void, Result> PortMatrix::Finished |
The documentation for this class was generated from the following files: