X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Fwx%2Faudio_mapping_view.h;h=05255ed307950612ddceb658cc7bd2004e1f64e8;hb=aeb835a18c8df347e0ed68fb24631b320abeb611;hp=7ed6994633c111a7813951ae92c78dcca3023410;hpb=1f82930e73679d6aec5223caa255f564339a1a2a;p=dcpomatic.git diff --git a/src/wx/audio_mapping_view.h b/src/wx/audio_mapping_view.h index 7ed699463..05255ed30 100644 --- a/src/wx/audio_mapping_view.h +++ b/src/wx/audio_mapping_view.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2013-2014 Carl Hetherington + Copyright (C) 2013-2015 Carl Hetherington This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -18,10 +18,8 @@ */ /** @file src/wx/audio_mapping_view.h - * @brief AudioMappingView class + * @brief AudioMappingView class. * - * This class displays the mapping of one set of audio channels to another, - * with gain values on each node of the map. */ #include @@ -29,13 +27,29 @@ #include #include "lib/audio_mapping.h" +/** @class AudioMappingView + * @brief This class displays the mapping of one set of audio channels to another, + * with gain values on each node of the map. + * + * The AudioMapping passed to set() describes the actual channel mapping, + * and the names passed to set_input_channels() and set_output_channels() are + * used to label the rows and columns. + * + * The display's row count is equal to the AudioMapping's input channel count, + * and the column count is equal to the number of name passed to + * set_output_channels(). Any other output channels in the AudioMapping are + * hidden from view. Thus input channels are never hidden but output channels + * might be. + */ + class AudioMappingView : public wxPanel { public: AudioMappingView (wxWindow *); void set (AudioMapping); - void set_channels (int); + void set_input_channels (std::vector const & names); + void set_output_channels (std::vector const & names); boost::signals2::signal Changed; @@ -43,9 +57,9 @@ private: void left_click (wxGridEvent &); void right_click (wxGridEvent &); void mouse_moved (wxMouseEvent &); - void set_column_labels (); void update_cells (); - void map_changed (); + void map_values_changed (); + void sized (wxSizeEvent &); void off (); void full ();