From cb75e79607e5c989693d00e6283d722678311143 Mon Sep 17 00:00:00 2001 From: souldbminersmwc Date: Sun, 18 Jan 2026 17:05:48 -0500 Subject: [PATCH] hocclk: add about gui --- .../sys-clk/overlay/src/ui/gui/about_gui.cpp | 191 ++++++++++++++++++ Source/sys-clk/overlay/src/ui/gui/about_gui.h | 37 ++++ .../sys-clk/overlay/src/ui/gui/main_gui.cpp | 14 ++ 3 files changed, 242 insertions(+) create mode 100644 Source/sys-clk/overlay/src/ui/gui/about_gui.cpp create mode 100644 Source/sys-clk/overlay/src/ui/gui/about_gui.h diff --git a/Source/sys-clk/overlay/src/ui/gui/about_gui.cpp b/Source/sys-clk/overlay/src/ui/gui/about_gui.cpp new file mode 100644 index 00000000..ee443dac --- /dev/null +++ b/Source/sys-clk/overlay/src/ui/gui/about_gui.cpp @@ -0,0 +1,191 @@ +/* + * Copyright (c) Souldbminer and Horizon OC Contributors + * + * This program is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#include "about_gui.h" +#include "../format.h" +#include +#include + + +AboutGui::AboutGui() +{ +} + +AboutGui::~AboutGui() +{ +} + +void AboutGui::listUI() +{ + this->listElement->addItem( + new tsl::elm::CategoryHeader("Developers") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Souldbminer") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Lightos_") + ); + + // ---- Contributors ---- + this->listElement->addItem( + new tsl::elm::CategoryHeader("Contributors") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Dom") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Blaise25") + ); + + // ---- Testers ---- + this->listElement->addItem( + new tsl::elm::CategoryHeader("Testers") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Dom") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Samybigio2011") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Delta") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Miki1305") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Happy") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Flopsider") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Winnerboi77") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Blaise25") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("WE1ZARD") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Alvise") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("TDRR") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("agjeococh") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Xenshen") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("Frost") + ); + + // ---- Special Thanks ---- + this->listElement->addItem( + new tsl::elm::CategoryHeader("Special Thanks") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("ScriesM - Atmosphere CFW") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("KazushiMe - Switch OC Suite") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("hanai3bi - Switch OC Suite & EOS") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("NaGaa95 - L4T-OC-Kernel") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("B3711 - EOS") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("RetroNX - sys-clk") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("b0rd2death - Ultrahand") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("MasaGratoR - Status Monitor") + ); + + this->listElement->addItem( + new tsl::elm::ListItem("The Switch Homebrew Community") + ); + +} + +void AboutGui::update() +{ + BaseMenuGui::update(); +} + +void AboutGui::refresh() +{ + BaseMenuGui::refresh(); + + if (!this->context) + return; + +} +/* +## Credits +* **Lightos's Cat** - Cat + +* **Souldbminer** – hoc-clk and loader development +* **Lightos** – loader patches development +* **SciresM** - Atmosphere CFW +* **KazushiMe** – Switch OC Suite +* **hanai3bi (meha)** – Switch OC Suite, EOS, sys-clk-eos +* **NaGaa95** – L4T-OC-kernel +* **B3711 (halop)** – EOS +* **sys-clk team (m4xw, p-sam, nautalis)** – sys-clk +* **b0rd2death** – Ultrahand sys-clk & Status Monitor fork +* **MasaGratoR and ZachyCatGames** - General help +* **MasaGratoR** - Status Monitor & Display Refresh Rate Driver +* **Dom, Samybigio, Arcdelta, Miki, Happy, Flopsider, Winnerboi77, Blaise, Alvise, TDRR, agjeococh and Xenshen** - Testing +* **Samybigio2011** - Italian translations +*/ \ No newline at end of file diff --git a/Source/sys-clk/overlay/src/ui/gui/about_gui.h b/Source/sys-clk/overlay/src/ui/gui/about_gui.h new file mode 100644 index 00000000..4056e6ec --- /dev/null +++ b/Source/sys-clk/overlay/src/ui/gui/about_gui.h @@ -0,0 +1,37 @@ +/* + * Copyright (c) Souldbminer and Horizon OC Contributors + * + * This program is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ +#pragma once +#include "../../ipc.h" +#include "base_menu_gui.h" +#include "freq_choice_gui.h" +#include "value_choice_gui.h" +#include "fatal_gui.h" +#include +#include + +class AboutGui : public BaseMenuGui +{ +protected: + // char strings[32][32]; // Pre-formatted strings + +public: + AboutGui(); + ~AboutGui(); + + void listUI() override; + void update() override; + void refresh() override; +}; \ No newline at end of file diff --git a/Source/sys-clk/overlay/src/ui/gui/main_gui.cpp b/Source/sys-clk/overlay/src/ui/gui/main_gui.cpp index 119d358e..f8d08a52 100644 --- a/Source/sys-clk/overlay/src/ui/gui/main_gui.cpp +++ b/Source/sys-clk/overlay/src/ui/gui/main_gui.cpp @@ -32,6 +32,8 @@ #include "global_override_gui.h" #include "misc_gui.h" #include "info_gui.h" +#include "about_gui.h" + void MainGui::listUI() { // this->enabledToggle = new tsl::elm::ToggleListItem("Enable", false); @@ -110,6 +112,18 @@ void MainGui::listUI() }); this->listElement->addItem(infoItem); #endif + tsl::elm::ListItem* aboutItem = new tsl::elm::ListItem("About"); + aboutItem->setClickListener([this](u64 keys) { + if((keys & HidNpadButton_A) == HidNpadButton_A && this->context) + { + tsl::changeTo(); + return true; + } + + return false; + }); + this->listElement->addItem(aboutItem); + } void MainGui::refresh()