summaryrefslogtreecommitdiff
path: root/src/tools
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2013-06-02 23:03:08 +0100
committerCarl Hetherington <cth@carlh.net>2013-06-02 23:03:08 +0100
commita0856e3fbef17f24073b01cb96be6bbcb229ecbc (patch)
tree13fd6191f2c4d82943cbcfa1f34688552cfc1f8e /src/tools
parente6d086fff404d9fe5ac080f9e75334eeb315c1da (diff)
parent42866530db49e0faf367ad28a55c658be60951bf (diff)
Merge master.
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/dcpomatic.cc38
-rw-r--r--src/tools/dcpomatic_server.cc5
-rw-r--r--src/tools/wscript2
3 files changed, 33 insertions, 12 deletions
diff --git a/src/tools/dcpomatic.cc b/src/tools/dcpomatic.cc
index 8d3de53ff..ebd647861 100644
--- a/src/tools/dcpomatic.cc
+++ b/src/tools/dcpomatic.cc
@@ -23,6 +23,9 @@
#ifdef __WXMSW__
#include <shellapi.h>
#endif
+#ifdef __WXOSX__
+#include <ApplicationServices/ApplicationServices.h>
+#endif
#include <wx/aboutdlg.h>
#include <wx/stdpaths.h>
#include <wx/cmdline.h>
@@ -142,13 +145,10 @@ enum {
ID_file_open,
ID_file_save,
ID_file_properties,
- ID_file_quit,
- ID_edit_preferences,
ID_jobs_make_dcp,
ID_jobs_send_dcp_to_tms,
ID_jobs_show_dcp,
ID_jobs_analyse_audio,
- ID_help_about
};
void
@@ -161,11 +161,17 @@ setup_menu (wxMenuBar* m)
add_item (file, _("&Save"), ID_file_save, NEEDS_FILM);
file->AppendSeparator ();
add_item (file, _("&Properties..."), ID_file_properties, NEEDS_FILM);
+#ifndef __WXOSX__
file->AppendSeparator ();
- add_item (file, _("&Quit"), ID_file_quit, ALWAYS);
+#endif
+ add_item (file, _("&Exit"), wxID_EXIT, ALWAYS);
+#ifdef __WXOSX__
+ add_item (file, _("&Preferences..."), wxID_PREFERENCES, ALWAYS);
+#else
wxMenu* edit = new wxMenu;
- add_item (edit, _("&Preferences..."), ID_edit_preferences, ALWAYS);
+ add_item (edit, _("&Preferences..."), wxID_PREFERENCES, ALWAYS);
+#endif
jobs_menu = new wxMenu;
add_item (jobs_menu, _("&Make DCP"), ID_jobs_make_dcp, NEEDS_FILM);
@@ -175,10 +181,16 @@ setup_menu (wxMenuBar* m)
add_item (jobs_menu, _("&Analyse audio"), ID_jobs_analyse_audio, NEEDS_FILM);
wxMenu* help = new wxMenu;
- add_item (help, _("About"), ID_help_about, ALWAYS);
+#ifdef __WXOSX__
+ add_item (help, _("About DVD-o-matic"), wxID_ABOUT, ALWAYS);
+#else
+ add_item (help, _("About"), wxID_ABOUT, ALWAYS);
+#endif
m->Append (file, _("&File"));
+#ifndef __WXOSX__
m->Append (edit, _("&Edit"));
+#endif
m->Append (jobs_menu, _("&Jobs"));
m->Append (help, _("&Help"));
}
@@ -204,13 +216,13 @@ public:
Connect (ID_file_open, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::file_open));
Connect (ID_file_save, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::file_save));
Connect (ID_file_properties, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::file_properties));
- Connect (ID_file_quit, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::file_quit));
- Connect (ID_edit_preferences, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::edit_preferences));
+ Connect (wxID_EXIT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::file_exit));
+ Connect (wxID_PREFERENCES, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::edit_preferences));
Connect (ID_jobs_make_dcp, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::jobs_make_dcp));
Connect (ID_jobs_send_dcp_to_tms, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::jobs_send_dcp_to_tms));
Connect (ID_jobs_show_dcp, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::jobs_show_dcp));
Connect (ID_jobs_analyse_audio, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::jobs_analyse_audio));
- Connect (ID_help_about, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::help_about));
+ Connect (wxID_ABOUT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (Frame::help_about));
Connect (wxID_ANY, wxEVT_MENU_OPEN, wxMenuEventHandler (Frame::menu_opened));
@@ -342,7 +354,7 @@ private:
d->Destroy ();
}
- void file_quit (wxCommandEvent &)
+ void file_exit (wxCommandEvent &)
{
maybe_save_then_delete_film ();
Close (true);
@@ -450,6 +462,12 @@ class App : public wxApp
#ifdef DCPOMATIC_POSIX
unsetenv ("UBUNTU_MENUPROXY");
+#endif
+
+#ifdef __WXOSX__
+ ProcessSerialNumber serial;
+ GetCurrentProcess (&serial);
+ TransformProcessType (&serial, kProcessTransformToForegroundApplication);
#endif
wxInitAllImageHandlers ();
diff --git a/src/tools/dcpomatic_server.cc b/src/tools/dcpomatic_server.cc
index 152e063c1..d3a353154 100644
--- a/src/tools/dcpomatic_server.cc
+++ b/src/tools/dcpomatic_server.cc
@@ -102,8 +102,11 @@ public:
wxBitmap bitmap (wxString::Format (wxT ("%s/taskbar_icon.png"), POSIX_ICON_PREFIX), wxBITMAP_TYPE_PNG);
wxIcon icon;
icon.CopyFromBitmap (bitmap);
-#endif
+#endif
+#ifndef __WXOSX__
+ /* XXX: fix this for OS X */
SetIcon (icon, std_to_wx ("DCP-o-matic encode server"));
+#endif
Connect (ID_status, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (TaskBarIcon::status));
Connect (ID_quit, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler (TaskBarIcon::quit));
diff --git a/src/tools/wscript b/src/tools/wscript
index cddd07b7d..38d986f25 100644
--- a/src/tools/wscript
+++ b/src/tools/wscript
@@ -20,7 +20,7 @@ def build(bld):
obj.use = ['libdcpomatic', 'libdcpomatic-wx']
obj.source = '%s.cc' % t
if bld.env.TARGET_WINDOWS:
- obj.source += ' ../../windows/dcpomatic.rc'
+ obj.source += ' ../../platform/windows/dcpomatic.rc'
obj.target = t
i18n.po_to_mo(os.path.join('src', 'tools'), 'dcpomatic', bld)