Various bits related to subtitle font handling, particularly copying fonts to the...
[dcpomatic.git] / src / lib / cross.cc
index e30cf64598f57e717745cc22291022ebbb0eccac..7f95d1f71885fd07f172d53ddc3c1e928335005e 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2012 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2012-2015 Carl Hetherington <cth@carlh.net>
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
 
 */
 
-#include <fstream>
-#include <boost/algorithm/string.hpp>
 #include "cross.h"
 #include "compose.hpp"
 #include "log.h"
+#include "exceptions.h"
+#include <boost/algorithm/string.hpp>
 #ifdef DCPOMATIC_LINUX
 #include <unistd.h>
 #include <mntent.h>
@@ -42,7 +42,7 @@
 #include <netinet/in.h>
 #include <arpa/inet.h>
 #endif
-#include "exceptions.h"
+#include <fstream>
 
 #include "i18n.h"
 
@@ -151,6 +151,23 @@ app_contents ()
 }
 #endif
 
+boost::filesystem::path
+shared_path ()
+{
+#ifdef DCPOMATIC_LINUX
+       return boost::filesystem::canonical (LINUX_SHARE_PREFIX);
+#endif
+#ifdef DCPOMATIC_WINDOWS
+       wchar_t dir[512];
+       GetModuleFileName (GetModuleHandle (0), dir, sizeof (dir));
+       PathRemoveFileSpec (dir);
+       return dir.parent_path();
+#endif
+#ifdef DCPOMATIC_OSX
+       return app_contents();
+#endif 
+}
+
 void
 run_ffprobe (boost::filesystem::path content, boost::filesystem::path out, shared_ptr<Log> log)
 {
@@ -310,7 +327,7 @@ void
 Waker::nudge ()
 {
 #ifdef DCPOMATIC_WINDOWS
-       SetThreadExecutionState (ES_CONTINUOUS);
+       SetThreadExecutionState (ES_SYSTEM_REQUIRED);
 #endif 
 }