in agdk/game_controller/common/demo_scene.cpp [264:331]
bool DemoScene::RenderPreferences() {
if (!mPreferencesActive) {
if (ImGui::Button("Preferences...")) {
mPreferencesActive = true;
}
}
if (mPreferencesActive) {
ImGuiManager *imguiManager = NativeEngine::GetInstance()->GetImGuiManager();
float fontScale = imguiManager->GetFontScale();
float uiScale = mControllerPanelScale;
ImGui::Text("Preferences");
ImGui::Spacing();
ImGui::Text("Font scale: ");
ImGui::SameLine();
const float alignLeftX = ImGui::GetCursorPosX();
if (ImGui::Button(" + ##font")) {
fontScale += FONT_SCALE_STEP;
if (fontScale > FONT_SCALE_MAX) {
fontScale = FONT_SCALE_MAX;
}
imguiManager->SetFontScale(fontScale);
}
ImGui::SameLine();
ImGui::Text("%2.1f", fontScale);
ImGui::SameLine();
if (ImGui::Button(" - ##font")) {
fontScale -= FONT_SCALE_STEP;
if (fontScale < FONT_SCALE_MIN) {
fontScale = FONT_SCALE_MIN;
}
imguiManager->SetFontScale(fontScale);
}
ImGui::Spacing();
ImGui::Text("UI scale: ");
ImGui::SameLine();
ImGui::SetCursorPosX(alignLeftX);
if (ImGui::Button(" + ##ui")) {
uiScale += UI_SCALE_STEP;
if (uiScale > UI_SCALE_MAX) {
uiScale = UI_SCALE_MAX;
}
mControllerPanelScale = uiScale;
}
ImGui::SameLine();
ImGui::Text("%2.1f", uiScale);
ImGui::SameLine();
if (ImGui::Button(" - ##ui")) {
uiScale -= UI_SCALE_STEP;
if (uiScale < UI_SCALE_MIN) {
uiScale = UI_SCALE_MIN;
}
mControllerPanelScale = uiScale;
}
ImGui::Spacing();
ImGui::Checkbox("Raw deadzone", &mDontTrimDeadzone);
ImGui::SetCursorPosY(ImGui::GetCursorPosY() + 16.0f);
if (ImGui::Button(" OK ")) {
mPreferencesActive = false;
}
}
return mPreferencesActive;
}