summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2014-03-16 22:30:27 +0000
committerCarl Hetherington <cth@carlh.net>2014-03-16 22:30:27 +0000
commit6deca3038ff7a9f2067ff266a21133e8181c56ce (patch)
tree29e56947311e59ae035117655b2506ceadaead03
parent122eccd147203d2ee7d622ba57db895fe219050c (diff)
parent816b3c2dda2c5e33900f5d90a001284045040b5f (diff)
Merge branch 'master' into prefs
-rw-r--r--ChangeLog6
-rw-r--r--platform/osx/Info.plist.in1
-rwxr-xr-xrun/dcpomatic119
-rw-r--r--src/wx/kdm_dialog.cc22
-rw-r--r--src/wx/new_film_dialog.cc2
5 files changed, 116 insertions, 34 deletions
diff --git a/ChangeLog b/ChangeLog
index 2820a2ff4..6783464c6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2014-03-15 Carl Hetherington <cth@carlh.net>
+ * Improve appearance of new film and KDM dialogs on OS X.
+
+ * Fix KDM dialog to predictably set up its initial range to
+ a week from now.
+
* Remove support for FFmpeg post-processing filters as they apparently
do not support > 8bpp. I don't think they are worth the pain of
quantizing and then telling the user what has happened.
@@ -7,6 +12,7 @@
2014-03-12 Carl Hetherington <cth@carlh.net>
* Version 1.66.1 released.
+>>>>>>> 80faa28d7fd23ad811a9b837622f7e0cff1f2335
2014-03-12 Carl Hetherington <cth@carlh.net>
diff --git a/platform/osx/Info.plist.in b/platform/osx/Info.plist.in
index 0f6774138..f2675e3f6 100644
--- a/platform/osx/Info.plist.in
+++ b/platform/osx/Info.plist.in
@@ -30,6 +30,5 @@
<string>MainMenu</string>
<key>NSPrincipalClass</key>
<string>NSApplication</string>
- @ENV@
</dict>
</plist>
diff --git a/run/dcpomatic b/run/dcpomatic
index fff9783e5..65cca4205 100755
--- a/run/dcpomatic
+++ b/run/dcpomatic
@@ -1,29 +1,100 @@
#!/bin/bash
-export LD_LIBRARY_PATH=build/src/lib:build/src/wx:build/src/asdcplib/src:$LD_LIBRARY_PATH
-export DYLD_LIBRARY_PATH=/Users/carl/Environments/osx/64/lib:build/src/lib:build/src/wx:build/src/asdcplib/src:$DYLD_LIBRARY_PATH
-if [ "$1" == "--debug" ]; then
- shift
- if [ `which gdb` ]; then
- gdb --args build/src/tools/dcpomatic $*
- else
- lldb build/src/tools/dcpomatic $*
+if [ `uname -s` == "Darwin" ]; then
+ # Some time ago we could start DCP-o-matic on OS X just by running the executable, in
+ # the same way as Linux. This doesn't work any more.
+
+ ENV=$HOME/Environments/osx/64/lib
+ DEP=$HOME/cdist/64/lib
+
+ app=build/platform/osx/DCP-o-matic.app
+ macos=$app/Contents/MacOS
+ lib=$app/Contents/lib
+ mkdir -p $macos $lib
+
+ cp build/src/tools/dcpomatic $macos
+ cp build/src/lib/libdcpomatic.dylib $lib
+ cp build/src/wx/libdcpomatic-wx.dylib $lib
+ cp $DEP/libcxml.dylib $lib
+ cp $DEP/libdcp.dylib $lib
+ cp $DEP/libasdcp-libdcp.dylib $lib
+ cp $DEP/libkumu-libdcp.dylib $lib
+ cp $DEP/libopenjpeg*.dylib $lib
+ cp $DEP/libavdevice*.dylib $lib
+ cp $DEP/libavformat*.dylib $lib
+ cp $DEP/libavfilter*.dylib $lib
+ cp $DEP/libavutil*.dylib $lib
+ cp $DEP/libavcodec*.dylib $lib
+ cp $DEP/libswscale*.dylib $lib
+ cp $DEP/libpostproc*.dylib $lib
+ cp $DEP/libswresample*.dylib $lib
+ cp $ENV/libboost_system.dylib $lib
+ cp $ENV/libboost_filesystem.dylib $lib
+ cp $ENV/libboost_thread.dylib $lib
+ cp $ENV/libboost_date_time.dylib $lib
+ cp $ENV/libxml++-2.6*.dylib $lib
+ cp $ENV/libxml2*.dylib $lib
+ cp $ENV/libglibmm-2.4*.dylib $lib
+ cp $ENV/libgobject*.dylib $lib
+ cp $ENV/libgthread*.dylib $lib
+ cp $ENV/libgmodule*.dylib $lib
+ cp $ENV/libsigc*.dylib $lib
+ cp $ENV/libglib-2*.dylib $lib
+ cp $ENV/libintl*.dylib $lib
+ cp $ENV/libsndfile*.dylib $lib
+ cp $ENV/libMagick++*.dylib $lib
+ cp $ENV/libMagickCore*.dylib $lib
+ cp $ENV/libMagickWand*.dylib $lib
+ cp $ENV/libssh*.dylib $lib
+ cp $ENV/libwx*.dylib $lib
+ cp $ENV/libfontconfig*.dylib $lib
+ cp $ENV/libfreetype*.dylib $lib
+ cp $ENV/libexpat*.dylib $lib
+ cp $ENV/libltdl*.dylib $lib
+ cp $ENV/libxmlsec1*.dylib $lib
+ cp $ENV/libzip*.dylib $lib
+ cp $ENV/libquickmail*.dylib $lib
+ cp $ENV/libcurl*.dylib $lib
+ cp $ENV/libffi*.dylib $lib
+
+ sed -e "s/@VERSION@/test/g" platform/osx/Info.plist.in > $app/Contents/Info.plist
+
+ for obj in $macos/dcpomatic $lib/*.dylib; do
+ deps=`otool -L $obj | awk '{print $1}' | egrep "(/Users/carl|libboost|libssh|libltdl)"`
+ changes=""
+ for dep in $deps; do
+ base=`basename $dep`
+ changes="$changes -change $dep @executable_path/../lib/$base"
+ done
+ if test "x$changes" != "x"; then
+ install_name_tool $changes $obj
fi
-elif [ "$1" == "--valgrind" ]; then
- shift
- valgrind --tool="memcheck" build/src/tools/dcpomatic $*
-elif [ "$1" == "--callgrind" ]; then
- shift
- valgrind --tool="callgrind" build/src/tools/dcpomatic $*
-elif [ "$1" == "--massif" ]; then
- shift
- valgrind --tool="massif" build/src/tools/dcpomatic $*
-elif [ "$1" == "--i18n" ]; then
- shift
- LANGUAGE=de_DE.UTF8 LANG=de_DE.UTF8 LC_ALL=de_DE.UTF8 build/src/tools/dcpomatic "$*"
-elif [ "$1" == "--perf" ]; then
- shift
- perf record build/src/tools/dcpomatic $*
+ done
+
+ open $app
+
else
- build/src/tools/dcpomatic $*
+ export LD_LIBRARY_PATH=build/src/lib:build/src/wx:build/src/asdcplib/src:$LD_LIBRARY_PATH
+ if [ "$1" == "--debug" ]; then
+ shift
+ gdb --args build/src/tools/dcpomatic $*
+ elif [ "$1" == "--valgrind" ]; then
+ shift
+ valgrind --tool="memcheck" build/src/tools/dcpomatic $*
+ elif [ "$1" == "--callgrind" ]; then
+ shift
+ valgrind --tool="callgrind" build/src/tools/dcpomatic $*
+ elif [ "$1" == "--massif" ]; then
+ shift
+ valgrind --tool="massif" build/src/tools/dcpomatic $*
+ elif [ "$1" == "--i18n" ]; then
+ shift
+ LANGUAGE=de_DE.UTF8 LANG=de_DE.UTF8 LC_ALL=de_DE.UTF8 build/src/tools/dcpomatic "$*"
+ elif [ "$1" == "--perf" ]; then
+ shift
+ perf record build/src/tools/dcpomatic $*
+ else
+ build/src/tools/dcpomatic $*
+ fi
fi
+
diff --git a/src/wx/kdm_dialog.cc b/src/wx/kdm_dialog.cc
index 5410f6cec..1f4d62bde 100644
--- a/src/wx/kdm_dialog.cc
+++ b/src/wx/kdm_dialog.cc
@@ -83,15 +83,20 @@ KDMDialog::KDMDialog (wxWindow* parent, boost::shared_ptr<const Film> film)
wxFlexGridSizer* table = new wxFlexGridSizer (3, 2, 6);
add_label_to_sizer (table, this, _("From"), true);
- _from_date = new wxDatePickerCtrl (this, wxID_ANY);
+ wxDateTime from;
+ from.SetToCurrent ();
+ _from_date = new wxDatePickerCtrl (this, wxID_ANY, from);
table->Add (_from_date, 1, wxEXPAND);
- _from_time = new wxTimePickerCtrl (this, wxID_ANY);
+ _from_time = new wxTimePickerCtrl (this, wxID_ANY, from);
table->Add (_from_time, 1, wxEXPAND);
-
+
add_label_to_sizer (table, this, _("Until"), true);
- _until_date = new wxDatePickerCtrl (this, wxID_ANY);
+ wxDateTime to = from;
+ /* 1 week from now */
+ to.Add (wxDateSpan (0, 0, 1, 0));
+ _until_date = new wxDatePickerCtrl (this, wxID_ANY, to);
table->Add (_until_date, 1, wxEXPAND);
- _until_time = new wxTimePickerCtrl (this, wxID_ANY);
+ _until_time = new wxTimePickerCtrl (this, wxID_ANY, to);
table->Add (_until_time, 1, wxEXPAND);
vertical->Add (table, 0, wxEXPAND | wxALL, 6);
@@ -117,7 +122,7 @@ KDMDialog::KDMDialog (wxWindow* parent, boost::shared_ptr<const Film> film)
}
}
- table = new wxFlexGridSizer (3, 2, 6);
+ table = new wxFlexGridSizer (2, 2, 6);
_write_to = new wxRadioButton (this, wxID_ANY, _("Write to"));
table->Add (_write_to, 1, wxEXPAND);
@@ -125,13 +130,12 @@ KDMDialog::KDMDialog (wxWindow* parent, boost::shared_ptr<const Film> film)
#ifdef DCPOMATIC_USE_OWN_DIR_PICKER
_folder = new DirPickerCtrl (this);
#else
- _folder = new wxDirPickerCtrl (this, wxID_ANY);
+ _folder = new wxDirPickerCtrl (this, wxID_ANY, wxEmptyString, wxDirSelectorPromptStr, wxDefaultPosition, wxSize (300, -1));
#endif
_folder->SetPath (wxStandardPaths::Get().GetDocumentsDir());
table->Add (_folder, 1, wxEXPAND);
- table->AddSpacer (0);
_email = new wxRadioButton (this, wxID_ANY, _("Send by email"));
table->Add (_email, 1, wxEXPAND);
@@ -144,6 +148,8 @@ KDMDialog::KDMDialog (wxWindow* parent, boost::shared_ptr<const Film> film)
vertical->Add (buttons, wxSizerFlags().Expand().DoubleBorder());
}
+ _write_to->SetValue (true);
+
_targets->Bind (wxEVT_COMMAND_TREE_SEL_CHANGED, boost::bind (&KDMDialog::setup_sensitivity, this));
_add_cinema->Bind (wxEVT_COMMAND_BUTTON_CLICKED, boost::bind (&KDMDialog::add_cinema_clicked, this));
diff --git a/src/wx/new_film_dialog.cc b/src/wx/new_film_dialog.cc
index e0ad2c457..f6d910282 100644
--- a/src/wx/new_film_dialog.cc
+++ b/src/wx/new_film_dialog.cc
@@ -50,7 +50,7 @@ NewFilmDialog::NewFilmDialog (wxWindow* parent)
#ifdef DCPOMATIC_USE_OWN_DIR_PICKER
_folder = new DirPickerCtrl (this);
#else
- _folder = new wxDirPickerCtrl (this, wxID_ANY);
+ _folder = new wxDirPickerCtrl (this, wxID_ANY, wxEmptyString, wxDirSelectorPromptStr, wxDefaultPosition, wxSize (300, -1));
#endif
if (!_directory) {