summaryrefslogtreecommitdiffstats
path: root/src/osd/winui/directories.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/winui/directories.h')
-rw-r--r--src/osd/winui/directories.h84
1 files changed, 84 insertions, 0 deletions
diff --git a/src/osd/winui/directories.h b/src/osd/winui/directories.h
new file mode 100644
index 00000000000..4f6af0707e0
--- /dev/null
+++ b/src/osd/winui/directories.h
@@ -0,0 +1,84 @@
+// For licensing and usage information, read docs/winui_license.txt
+// MASTER
+//****************************************************************************
+
+#ifndef WINUI_DIRECTORIES_H
+#define WINUI_DIRECTORIES_H
+
+/* Dialog return codes - do these do anything??? */
+#define DIRDLG_ROMS 0x0010 // this one does
+#define DIRDLG_SAMPLES 0x0020 // this one does
+//#define DIRDLG_INI 0x0040
+//#define DIRDLG_CFG 0x0100
+//#define DIRDLG_IMG 0x0400
+//#define DIRDLG_INP 0x0800
+//#define DIRDLG_CTRLR 0x1000
+#define DIRDLG_SW 0x4000 // this one does
+//#define DIRDLG_CHEAT 0x8000
+
+#define DIRLIST_NEWENTRYTEXT "< >"
+
+#include "mui_opts.h"
+
+typedef struct
+{
+ LPCSTR lpName; // name to display
+ const std::string (*pfnGetTheseDirs)(void); // function to get existing setting
+ void (*pfnSetTheseDirs)(LPCSTR lpDirs); // function to save new setting
+ int dir_index; // entry number in emu_opts:dir_map
+ BOOL bMulti; // true = it supports multiple directories
+ int nDirDlgFlags; // if changed, a refresh needs to be done
+}
+DIRECTORYINFO;
+
+const DIRECTORYINFO g_directoryInfo[] =
+{
+ { "ROMs", nullptr, nullptr, 2, true, DIRDLG_ROMS },
+ { "Samples", nullptr, nullptr, 4, true, DIRDLG_SAMPLES },
+ { "Software File Base", nullptr, nullptr, 13, false, DIRDLG_SW }, // core cannot handle multiple path, even though we can.
+ { "Artwork", nullptr, nullptr, 5, true, 0 },
+ { "Artwork Previews", nullptr, nullptr, 32, true, 0 },
+ { "Bosses", nullptr, nullptr, 33, true, 0 },
+ { "Cabinets", nullptr, nullptr, 25, true, 0 },
+ { "Cheats", nullptr, nullptr, 9, true, 0 }, //DIRDLG_CHEAT }, //not used anywhere
+ { "Config", nullptr, nullptr, 14, false, 0 }, //DIRDLG_CFG }, //not used anywhere
+ { "Control Panels", nullptr, nullptr, 26, true, 0 },
+ { "Controller Files", nullptr, nullptr, 6, true, 0 }, //DIRDLG_CTRLR }, //not used anywhere
+ { "Covers", nullptr, nullptr, 41, true, 0 },
+ { "Crosshairs", nullptr, nullptr, 10, true, 0 },
+ { "DAT files", nullptr, nullptr, 23, false, 0 },
+ { "Ends", nullptr, nullptr, 30, true, 0 },
+ { "Flyers", nullptr, nullptr, 28, true, 0 },
+ { "Folders", nullptr, nullptr, 24, false, 0 },
+ { "Fonts", nullptr, nullptr, 8, true, 0 },
+ { "Game Overs", nullptr, nullptr, 37, true, 0 },
+ { "Hash", nullptr, nullptr, 3, true, 0 },
+ { "Hard Drive Difference", nullptr, nullptr, 19, true, 0 },
+ { "HLSL", nullptr, nullptr, 22, false, 0 },
+ { "How To", nullptr, nullptr, 38, true, 0 },
+ { "Icons", nullptr, nullptr, 40, true, 0 },
+// { "Ini Files", GetIniDir, nullptr, 7, false, DIRDLG_INI }, // 2017-02-03 hardcoded to 'ini' now
+ { "Input files", nullptr, nullptr, 16, true, 0 }, //DIRDLG_INP }, //not used anywhere
+ { "Language", nullptr, nullptr, 12, false, 0 },
+ { "Logos", nullptr, nullptr, 34, true, 0 },
+ { "Manuals (PDF)", GetManualsDir, SetManualsDir, 0, false, 0 },
+ { "Marquees", nullptr, nullptr, 31, true, 0 },
+ { "NVRAM", nullptr, nullptr, 15, true, 0 },
+ { "PCBs", nullptr, nullptr, 27, true, 0 },
+ { "Plugins", nullptr, nullptr, 11, false, 0 },
+ { "Scores", nullptr, nullptr, 35, true, 0 },
+ { "Selects", nullptr, nullptr, 39, true, 0 },
+ { "Snapshots", nullptr, nullptr, 18, true, 0 }, //DIRDLG_IMG }, //not used anywhere
+ { "State", nullptr, nullptr, 17, true, 0 },
+ { "Titles", nullptr, nullptr, 29, true, 0 },
+ { "Versus", nullptr, nullptr, 36, true, 0 },
+ { "Videos and Movies", GetVideoDir, SetVideoDir, 0, false, 0 },
+ { NULL }
+};
+
+
+INT_PTR CALLBACK DirectoriesDialogProc(HWND hDlg, UINT Msg, WPARAM wParam, LPARAM lParam);
+
+#endif /* DIRECTORIES_H */
+
+