UI: Add function to find default video save path

On windows this will return the documents\video directory, but on
linux/mac it'll just return $HOME for the time being because I don't
know if there really are any other appropriate adequate paths to use.
Perhaps someone else can be willing to fill this in if they wish.
This commit is contained in:
jp9000 2014-05-20 23:08:47 -07:00
parent 1e525c4713
commit 765ac2a76b
4 changed files with 24 additions and 0 deletions

View File

@ -77,3 +77,7 @@ bool InitApplicationBundle()
#endif
}
string GetDefaultVideoSavePath()
{
return string(getenv("HOME"));
}

View File

@ -23,6 +23,8 @@ using namespace std;
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <shellapi.h>
#include <shlobj.h>
static inline bool check_path(const char* data, const char *path,
string &output)
@ -67,3 +69,15 @@ bool InitApplicationBundle()
{
return true;
}
string GetDefaultVideoSavePath()
{
wchar_t path_utf16[MAX_PATH];
char path_utf8[MAX_PATH];
SHGetFolderPathW(NULL, CSIDL_MYVIDEO, NULL, SHGFP_TYPE_CURRENT,
path_utf16);
os_wcs_to_utf8(path_utf16, MAX_PATH, path_utf8);
return string(path_utf8);
}

View File

@ -101,3 +101,8 @@ bool InitApplicationBundle()
{
return true;
}
string GetDefaultVideoSavePath()
{
return string(getenv("HOME"));
}

View File

@ -39,3 +39,4 @@ void GetMonitors(std::vector<MonitorInfo> &monitors);
/* Updates the working directory for OSX application bundles */
bool InitApplicationBundle();
std::string GetDefaultVideoSavePath();