Use wxDC for all drawing of the audio mapping view, removing
[dcpomatic.git] / src / wx / audio_mapping_view.h
index fd8a16d5c667d3645c1b02e4aaabe1d12104d136..3057416b29c623e1ad7b7c8fc06b223e89ccf221 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2013-2019 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2013-2020 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
@@ -45,7 +45,7 @@
 class AudioMappingView : public wxPanel
 {
 public:
-       explicit AudioMappingView (wxWindow *);
+       explicit AudioMappingView (wxWindow *, wxString left_label, wxString from, wxString top_label, wxString to);
 
        void set (AudioMapping);
        void set_input_channels (std::vector<std::string> const & names);
@@ -75,11 +75,11 @@ private:
        void map_values_changed ();
        void setup_sizes ();
        void paint ();
-       void paint_static (wxDC& dc, wxGraphicsContext* gc);
-       void paint_column_labels (wxDC& dc, wxGraphicsContext* gc);
-       void paint_column_lines (wxGraphicsContext* gc);
-       void paint_row_labels (wxDC& dc, wxGraphicsContext* gc);
-       void paint_row_lines (wxGraphicsContext* gc);
+       void paint_static (wxDC& dc);
+       void paint_column_labels (wxDC& dc);
+       void paint_column_lines (wxDC& dc);
+       void paint_row_labels (wxDC& dc);
+       void paint_row_lines (wxDC& dc);
        void paint_indicators (wxDC& dc);
        void size (wxSizeEvent &);
        void scroll ();
@@ -93,9 +93,7 @@ private:
        wxString safe_input_channel_name (int n) const;
        wxString safe_output_channel_name (int n) const;
 
-       void off ();
-       void full ();
-       void minus6dB ();
+       void set_gain_from_menu (double linear);
        void edit ();
 
        AudioMapping _map;
@@ -107,6 +105,11 @@ private:
        int _menu_input;
        int _menu_output;
 
+       wxString _left_label;
+       wxString _from;
+       wxString _top_label;
+       wxString _to;
+
        std::vector<std::string> _input_channels;
        std::vector<std::string> _output_channels;
        std::vector<Group> _input_groups;