gamepad: add option to disable icon and show capacity instead

xone-gamepad
Alessandro Toia 2 years ago
parent 5c92c32491
commit 74b328d209

@ -136,6 +136,8 @@ void gamepad_info () {
//Get device Battery
if (fs::exists(capacity)) {
if (std::getline(input_capacity, line)) {
gamepad_data[gamepad_count].battery_percent = line;
gamepad_data[gamepad_count].report_percent = true;
switch(std::stoi(line)) {
case 0 ... 25:
gamepad_data[gamepad_count].battery = "Low";

@ -8,6 +8,8 @@ struct gamepad {
std::string battery;
std::string state;
std::string name;
bool report_percent;
std::string battery_percent;
};
extern std::vector<gamepad> gamepad_data;

@ -864,23 +864,43 @@ void HudElements::gamepad_battery()
std::string battery = gamepad_data[i].battery;
std::string state = gamepad_data[i].state;
std::string name = gamepad_data[i].name;
std::string battery_percent = gamepad_data[i].battery_percent;
bool report_percent = gamepad_data[i].report_percent;
ImGui::TableNextRow(); ImGui::TableNextColumn();
ImGui::PushFont(HUDElements.sw_stats->font1);
ImGui::TextColored(HUDElements.colors.engine, "%s", name.c_str());
ImGui::TableNextColumn();
if (state == "Charging")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_USB);
if (HUDElements.params->enabled[OVERLAY_PARAM_ENABLED_gamepad_battery_icon]) {
if (state == "Charging" || state == "Full")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_USB);
else {
if (battery == "Full")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_BATTERY_FULL);
else if (battery == "High")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_BATTERY_THREE_QUARTERS);
else if (battery == "Normal")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_BATTERY_HALF);
else if (battery == "Low")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_BATTERY_QUARTER);
else if (battery == "Unknown")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_USB);
}
}
else {
if (battery == "Full")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_BATTERY_FULL);
else if (battery == "High")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_BATTERY_THREE_QUARTERS);
else if (battery == "Normal")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_BATTERY_HALF);
else if (battery == "Low")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_BATTERY_QUARTER);
else
if (state == "Charging" || state == "Full")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_USB);
else if (report_percent) {
right_aligned_text(HUDElements.colors.text,HUDElements.ralign_width, "%s", battery_percent.c_str());
ImGui::SameLine(0,1.0f);
ImGui::Text("%%");
}
else {
if (battery == "Unknown")
right_aligned_text(HUDElements.colors.text, HUDElements.ralign_width, "%s", ICON_FK_USB);
else
right_aligned_text(HUDElements.colors.text,HUDElements.ralign_width, "%s", battery.c_str());
}
}
ImGui::PopFont();
}

@ -583,6 +583,7 @@ parse_overlay_config(struct overlay_params *params,
params->enabled[OVERLAY_PARAM_ENABLED_frametime] = true;
params->enabled[OVERLAY_PARAM_ENABLED_fps_only] = false;
params->enabled[OVERLAY_PARAM_ENABLED_gamepad_battery] = false;
params->enabled[OVERLAY_PARAM_ENABLED_gamepad_battery_icon] = true;
params->fps_sampling_period = 500000000; /* 500ms */
params->width = 0;
params->height = 140;

@ -79,6 +79,7 @@ typedef unsigned long KeySym;
OVERLAY_PARAM_BOOL(mangoapp_steam) \
OVERLAY_PARAM_BOOL(debug) \
OVERLAY_PARAM_BOOL(gamepad_battery) \
OVERLAY_PARAM_BOOL(gamepad_battery_icon) \
OVERLAY_PARAM_CUSTOM(fps_sampling_period) \
OVERLAY_PARAM_CUSTOM(output_folder) \
OVERLAY_PARAM_CUSTOM(output_file) \

Loading…
Cancel
Save