- _left_labels = new wxScrolledCanvas (this, wxID_ANY);
- _left_labels->Bind (wxEVT_PAINT, boost::bind (&AudioMappingView::paint_left_labels, this));
- _top_labels = new wxScrolledCanvas (this, wxID_ANY);
- _top_labels->Bind (wxEVT_PAINT, boost::bind (&AudioMappingView::paint_top_labels, this));
-
- _left_labels->ShowScrollbars (wxSHOW_SB_NEVER, wxSHOW_SB_NEVER);
- _top_labels->ShowScrollbars (wxSHOW_SB_NEVER, wxSHOW_SB_NEVER);
-
- _grid = new wxGrid (this, wxID_ANY);
-
- _grid->CreateGrid (0, MAX_DCP_AUDIO_CHANNELS + 1);
- _grid->HideRowLabels ();
- _grid->DisableDragRowSize ();
- _grid->DisableDragColSize ();
- _grid->EnableEditing (false);
- _grid->SetCellHighlightPenWidth (0);
- _grid->SetDefaultRenderer (new NoSelectionStringRenderer);
- _grid->EnableScrolling (true, true);
- _grid->AutoSize ();
-
- wxSizer* vertical_sizer = new wxBoxSizer (wxVERTICAL);
- vertical_sizer->Add (_top_labels);
- wxSizer* horizontal_sizer = new wxBoxSizer (wxHORIZONTAL);
- horizontal_sizer->Add (_left_labels);
- horizontal_sizer->Add (_grid, 1, wxEXPAND | wxALL);
- vertical_sizer->Add (horizontal_sizer);
- SetSizerAndFit (vertical_sizer);
-
- Bind (wxEVT_GRID_CELL_LEFT_CLICK, boost::bind (&AudioMappingView::left_click, this, _1));
- Bind (wxEVT_GRID_CELL_RIGHT_CLICK, boost::bind (&AudioMappingView::right_click, this, _1));
- _grid->GetGridWindow()->Bind (wxEVT_MOTION, boost::bind (&AudioMappingView::mouse_moved_grid, this, _1));
- _grid->Bind (wxEVT_SCROLLWIN_TOP, boost::bind (&AudioMappingView::grid_scrolled, this, _1));
- _grid->Bind (wxEVT_SCROLLWIN_BOTTOM, boost::bind (&AudioMappingView::grid_scrolled, this, _1));
- _grid->Bind (wxEVT_SCROLLWIN_LINEUP, boost::bind (&AudioMappingView::grid_scrolled, this, _1));
- _grid->Bind (wxEVT_SCROLLWIN_LINEDOWN, boost::bind (&AudioMappingView::grid_scrolled, this, _1));
- _grid->Bind (wxEVT_SCROLLWIN_PAGEUP, boost::bind (&AudioMappingView::grid_scrolled, this, _1));
- _grid->Bind (wxEVT_SCROLLWIN_PAGEDOWN, boost::bind (&AudioMappingView::grid_scrolled, this, _1));
- _grid->Bind (wxEVT_SCROLLWIN_THUMBTRACK, boost::bind (&AudioMappingView::grid_scrolled, this, _1));
- _grid->Bind (wxEVT_SCROLLWIN_THUMBRELEASE, boost::bind (&AudioMappingView::grid_scrolled, this, _1));
- Bind (wxEVT_SIZE, boost::bind (&AudioMappingView::sized, this, _1));
-