tm-dashboard
tm-dashboard copied to clipboard
Location/setup presets that are easily switchable
Primarily streamers but also other players might want to quickly change their Dashboard setup depending on game modes/warmup and other factors. The suggestion is to introduce several configurable preset slots that can be easily switched to (maybe at the press of a button or at least through a few clicks in the UI).
Currently you'd have to manually adjust each window's position, which is not consistent and can be time-consuming if you need precise layouts.
Background
Especially for streamers it's important Openplanet doesn't get hidden by their own stream overlays/cameras, so being able to set up two or three different presets ahead of time would make it very easy to prepare layouts that they can just switch to as needed.
Implementation suggestions
If Dashboard is able to serialize all the settings to export them, it could maybe use the same mechanism to save/load presets internally for easy switching. Somewhat related: https://github.com/codecat/tm-dashboard/issues/22
Perhaps this is an idea:

void RenderMenu()
{
if (UI::BeginMenu("\\$9f3" + Icons::BarChart + "\\$z Dashboard")) {
if (UI::MenuItem("Visible", "", g_visible)) {
g_visible = !g_visible;
}
if (UI::BeginMenu("Presets")) {
UI::MenuItem("Primary preset");
UI::Separator();
UI::MenuItem("\\$9f3" + Icons::Kenney::Save + "\\$z Save current to new preset...");
UI::EndMenu();
}
UI::EndMenu();
}
}
However, I still think a feature like this would be too specific to Dashboard, and would be nicer if this could cover all plugins. Not sure how that would look in the UI though.
Yeah, a generic solution for all plugins would be great - although right now I'm not sure what other plugins would really benefit from presets. Sounds like it might need its own UI section then 🤔
I'm currently working on a project to serialize settings to binary and the return a base64 string. Once I had something working I was planning to propose it as an addition here or possibly as a standalone plugin.
I really like that UI idea, also.
There is this plugin now. However I still think some "default presets" could be nice to have. Or perhaps new defaults for first-time users.