(Win32) Pass initial dir to win32_browser_dir

This commit is contained in:
twinaphex 2015-01-15 06:51:30 +01:00
parent fe5b4e90fb
commit 6f5ee8be51

View File

@ -227,20 +227,21 @@ static void *dinput_wgl;
#include "../../retroarch.h" #include "../../retroarch.h"
static bool win32_browser(char *filename, const char *extensions, static bool win32_browser(char *filename, const char *extensions,
const char *title) const char *title, const char *initial_dir)
{ {
OPENFILENAME ofn; OPENFILENAME ofn;
memset((void*)&ofn, 0, sizeof(OPENFILENAME)); memset((void*)&ofn, 0, sizeof(OPENFILENAME));
ofn.lStructSize = sizeof(OPENFILENAME); ofn.lStructSize = sizeof(OPENFILENAME);
ofn.hwndOwner = g_hwnd; ofn.hwndOwner = g_hwnd;
ofn.lpstrFilter = extensions; ofn.lpstrFilter = extensions;
ofn.lpstrFile = filename; ofn.lpstrFile = filename;
ofn.lpstrTitle = title; ofn.lpstrTitle = title;
ofn.lpstrDefExt = ""; ofn.lpstrInitialDir = TEXT(initial_dir);
ofn.nMaxFile = PATH_MAX; ofn.lpstrDefExt = "";
ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY; ofn.nMaxFile = PATH_MAX;
ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
if (GetOpenFileName(&ofn)) if (GetOpenFileName(&ofn))
return true; return true;
@ -260,21 +261,24 @@ static LRESULT win32_menu_loop(WPARAM wparam)
case ID_M_LOAD_CONTENT: case ID_M_LOAD_CONTENT:
{ {
char win32_file[PATH_MAX_LENGTH] = {0}; char win32_file[PATH_MAX_LENGTH] = {0};
const char *extensions = NULL; const char *extensions = NULL;
const char *title = NULL; const char *title = NULL;
const char *initial_dir = NULL;
if (mode == ID_M_LOAD_CORE) if (mode == ID_M_LOAD_CORE)
{ {
extensions = "All Files\0*.*\0 Libretro core(.dll)\0*.dll\0"; extensions = "All Files\0*.*\0 Libretro core(.dll)\0*.dll\0";
title = "Load Core"; title = "Load Core";
initial_dir = g_settings.libretro_directory;
} }
else if (mode == ID_M_LOAD_CONTENT) else if (mode == ID_M_LOAD_CONTENT)
{ {
extensions = "All Files\0*.*\0\0"; extensions = "All Files\0*.*\0\0";
title = "Load Content"; title = "Load Content";
initial_dir = g_settings.menu_content_directory;
} }
if (win32_browser(win32_file, extensions, title)) if (win32_browser(win32_file, extensions, title, initial_dir))
{ {
switch (mode) switch (mode)
{ {