Layout alignment tweaks.
[dcpomatic.git] / src / wx / wx_util.cc
index 1a34e5fa808bc992d1bd14bb55368848f0080862..55de4b1c706286b9503bb868fca3cbb4439a378f 100644 (file)
 #include "lib/job_manager.h"
 #include "lib/util.h"
 #include "lib/version.h"
-#include "lib/warnings.h"
 #include <dcp/locale_convert.h>
-DCPOMATIC_DISABLE_WARNINGS
+#include <dcp/warnings.h>
+LIBDCP_DISABLE_WARNINGS
 #include <wx/spinctrl.h>
 #include <wx/splash.h>
 #include <wx/progdlg.h>
 #include <wx/filepicker.h>
 #include <wx/sizer.h>
-DCPOMATIC_ENABLE_WARNINGS
+LIBDCP_ENABLE_WARNINGS
 #include <boost/thread.hpp>
 
 
@@ -86,7 +86,7 @@ setup_osx_flags (wxSizer* s, bool left, int& flags)
 #endif
 
 
-/** Add a wxStaticText to a wxSizer, aligning it at vertical centre.
+/** Add a wxStaticText to a wxSizer.
  *  @param s Sizer to add to.
  *  @param p Parent window for the wxStaticText.
  *  @param t Text for the wxStaticText.
@@ -101,7 +101,7 @@ add_label_to_sizer (wxSizer* s, wxWindow* p, wxString t, bool left, int prop, in
        setup_osx_flags (s, left, flags);
 #endif
        auto m = create_label (p, t, left);
-       s->Add (m, prop, flags, 6);
+       s->Add (m, prop, flags, DCPOMATIC_SIZER_GAP);
        return m;
 }
 
@@ -116,7 +116,7 @@ add_label_to_sizer (wxSizer* s, wxStaticText* t, bool, int prop, int flags)
 #ifdef __WXOSX__
        setup_osx_flags (s, left, flags);
 #endif
-       s->Add (t, prop, flags, 6);
+       s->Add (t, prop, flags, DCPOMATIC_SIZER_GAP);
        return t;
 }
 
@@ -297,7 +297,7 @@ checked_set (wxChoice* widget, string value)
 
 
 void
-checked_set (wxChoice* widget, vector<pair<string, string> > items)
+checked_set (wxChoice* widget, vector<pair<string, string>> items)
 {
        vector<pair<string, string>> current;
        for (unsigned int i = 0; i < widget->GetCount(); ++i) {
@@ -657,7 +657,46 @@ small_button_size (wxWindow* parent, wxString text)
        wxClientDC dc (parent);
        auto size = dc.GetTextExtent (text);
        size.SetHeight (-1);
-       size.IncBy (24, 0);
+       size.IncBy (32, 0);
        return size;
 }
 
+
+bool
+gui_is_dark ()
+{
+#if defined(DCPOMATIC_OSX) && wxCHECK_VERSION(3, 1, 0)
+       auto appearance = wxSystemSettings::GetAppearance();
+       return appearance.IsDark();
+#else
+       return false;
+#endif
+}
+
+
+#if wxCHECK_VERSION(3,1,0)
+double
+dpi_scale_factor (wxWindow* window)
+{
+       return window->GetDPIScaleFactor();
+}
+#else
+double
+dpi_scale_factor (wxWindow*)
+{
+       return 1;
+}
+#endif
+
+
+
+int
+search_ctrl_height ()
+{
+#ifdef __WXGTK3__
+       return 30;
+#else
+       return -1;
+#endif
+}
+