Fix crop control alignment on macOS (#1864).
authorCarl Hetherington <cth@carlh.net>
Tue, 8 Dec 2020 18:31:28 +0000 (19:31 +0100)
committerCarl Hetherington <cth@carlh.net>
Tue, 8 Dec 2020 18:31:28 +0000 (19:31 +0100)
src/wx/content_widget.h
src/wx/video_panel.cc

index 52a5e5851a9b09ecaef7bcea415b1c7b66007be5..6505d08da75cc1344b5cede040035fdfa9f9df9b 100644 (file)
@@ -117,12 +117,12 @@ public:
        }
 
        /** Add this widget to a wxGridBagSizer */
-       void add (wxGridBagSizer* sizer, wxGBPosition position, wxGBSpan span = wxDefaultSpan)
+       void add (wxGridBagSizer* sizer, wxGBPosition position, wxGBSpan span = wxDefaultSpan, int flag = 0)
        {
                _sizer = sizer;
                _position = position;
                _span = span;
-               _sizer->Add (_wrapped, _position, _span);
+               _sizer->Add (_wrapped, _position, _span, flag);
        }
 
        /** Update the view from the model */
index e58c8e4f57b986ac8146c0fef9cfe1d8cc995481..f5e514fab867e08bb81535215d9f3651e9459c15 100644 (file)
@@ -86,10 +86,14 @@ VideoPanel::VideoPanel (ContentPanel* p)
 
        _crop_label = create_label (this, _("Crop"), true);
 
-#ifdef __WXGTK3__
+#if defined(__WXGTK3__)
        int const crop_width = 128;
        int const link_width = 32;
        int const link_height = 64;
+#elif defined(DCPOMATIC_OSX)
+       int const crop_width = 56;
+       int const link_width = 24;
+       int const link_height = 28;
 #else
        int const crop_width = 56;
        int const link_width = 22;
@@ -231,30 +235,31 @@ VideoPanel::add_to_grid ()
 
        int cr = 0;
        wxGridBagSizer* crop = new wxGridBagSizer (DCPOMATIC_SIZER_X_GAP, DCPOMATIC_SIZER_Y_GAP);
+
        add_label_to_sizer (crop, _left_crop_label, true, wxGBPosition (cr, 0));
-       _left_crop->add (crop, wxGBPosition (cr, 1));
+       _left_crop->add (crop, wxGBPosition(cr, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
 #ifdef __WXGTK3__
        crop->Add (_left_right_link, wxGBPosition(cr, 2), wxGBSpan(2, 1));
        ++cr;
        add_label_to_sizer (crop, _right_crop_label, true, wxGBPosition(cr, 0));
        _right_crop->add (crop, wxGBPosition(cr, 1));
 #else
-       crop->Add (_left_right_link, wxGBPosition(cr, 2));
+       crop->Add (_left_right_link, wxGBPosition(cr, 2), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
        add_label_to_sizer (crop, _right_crop_label, true, wxGBPosition (cr, 3));
-       _right_crop->add (crop, wxGBPosition (cr, 4));
+       _right_crop->add (crop, wxGBPosition (cr, 4), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
 #endif
        ++cr;
        add_label_to_sizer (crop, _top_crop_label, true, wxGBPosition (cr, 0));
-       _top_crop->add (crop, wxGBPosition (cr, 1));
+       _top_crop->add (crop, wxGBPosition (cr, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
 #ifdef __WXGTK3__
        crop->Add (_top_bottom_link, wxGBPosition(cr, 2), wxGBSpan(2, 1));
        ++cr;
        add_label_to_sizer (crop, _bottom_crop_label, true, wxGBPosition(cr, 0));
-       _bottom_crop->add (crop, wxGBPosition(cr, 1));
+       _bottom_crop->add (crop, wxGBPosition(cr, 1), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
 #else
-       crop->Add (_top_bottom_link, wxGBPosition(cr, 2));
+       crop->Add (_top_bottom_link, wxGBPosition(cr, 2), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
        add_label_to_sizer (crop, _bottom_crop_label, true, wxGBPosition (cr, 3));
-       _bottom_crop->add (crop, wxGBPosition (cr, 4));
+       _bottom_crop->add (crop, wxGBPosition (cr, 4), wxDefaultSpan, wxALIGN_CENTER_VERTICAL);
 #endif
        add_label_to_sizer (_grid, _crop_label, true, wxGBPosition(r, 0));
        _grid->Add (crop, wxGBPosition(r, 1));