tm-dashboard icon indicating copy to clipboard operation
tm-dashboard copied to clipboard

Location/setup presets that are easily switchable

Open davidbmaier opened this issue 4 years ago • 4 comments
trafficstars

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

davidbmaier avatar Sep 22 '21 15:09 davidbmaier

Perhaps this is an idea:

image

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.

codecat avatar Oct 13 '21 09:10 codecat

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 🤔

davidbmaier avatar Oct 13 '21 09:10 davidbmaier

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.

skybaks avatar Oct 13 '21 10:10 skybaks

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.

codecat avatar Dec 18 '21 03:12 codecat