{"id":27389078,"url":"https://github.com/eternityx/deadcell-gui","last_synced_at":"2025-04-13T19:11:53.209Z","repository":{"id":184746343,"uuid":"624336834","full_name":"EternityX/deadcell-gui","owner":"EternityX","description":"GUI written for the remake that never was","archived":false,"fork":false,"pushed_at":"2024-12-30T03:19:14.000Z","size":1990,"stargazers_count":56,"open_issues_count":0,"forks_count":10,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-10T19:43:32.517Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/EternityX.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-06T08:44:14.000Z","updated_at":"2025-04-10T11:47:28.000Z","dependencies_parsed_at":"2023-11-26T02:27:05.598Z","dependency_job_id":"912501fb-e1b6-4625-9489-94510fe45f89","html_url":"https://github.com/EternityX/deadcell-gui","commit_stats":null,"previous_names":["eternityx/deadcell-gui"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EternityX%2Fdeadcell-gui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EternityX%2Fdeadcell-gui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EternityX%2Fdeadcell-gui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/EternityX%2Fdeadcell-gui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/EternityX","download_url":"https://codeload.github.com/EternityX/deadcell-gui/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248766739,"owners_count":21158301,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-13T19:11:49.049Z","updated_at":"2025-04-13T19:11:53.186Z","avatar_url":"https://github.com/EternityX.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Notice\nFor a more feature complete project, see:\nhttps://github.com/EternityX/deadcell-gui-2\n\n# DEADCELL GUI\n[![GitHub license](https://img.shields.io/badge/license-BSD3-red)](https://github.com/EternityX/DEADCELL-GUI/blob/master/LICENSE)\n\nUnfortunately the DEADCELL 'remake' was never finished, therefore this GUI is lacking a lot of features. I believe it is a good base to build from into something nice. It features some nice things such as window managing, event handling, and some other small things.\n\nEvent-driven UI library for gamehacking. Platform and rendering independent code is handled by [ImGui](https://github.com/ocornut/imgui).\n\n## Setup\nClone the project and submodules.\n```\ngit clone --recurse-submodules --remote-submodules https://github.com/EternityX/deadcell-gui.git\n```\n\nOr clone the project and manually clone the submodules.\n\n```\ngit clone https://github.com/EternityX/deadcell-gui.git\ngit submodule init\ngit submodule update\n```\n\n## Usage\n1. Link and include the project\n```cpp\n#include \u003cdeadcell_gui.h\u003e\n```\n\n2. Initialize\n```cpp\nauto dc_gui = std::make_shared\u003cgui::deadcell_gui\u003e();\n```\n\n3. Add a window\n```cpp\nauto main_window = dc_gui-\u003eadd\u003cgui::window\u003e(\"Window title\", \"unique_window_id\");\n```\n\n4. Add controls\n```cpp\nbool test_var = false;\nauto checkbox1 = dc_gui-\u003eadd\u003cgui::checkbox\u003e(\"Checkbox\", \"unique_checkbox_id\", \u0026test_var, [\u0026]() {\n    test_var = !test_var;\n});\n\nmain_window-\u003eadd_child(checkbox1);\n```\n\n4. Inside your render loop\n```cpp\ngui::drawing::set_draw_list(gui::drawing::draw_list_foreground);\ndc_gui-\u003enew_frame();\n```\n\n## `imconfig.h`\nHere are some recommended options to enable/disable in `imconfig.h`.\n\n```cpp\n#define IMGUI_DISABLE_OBSOLETE_FUNCTIONS\n#define IMGUI_DISABLE_DEMO_WINDOWS\n#define IMGUI_DISABLE_METRICS_WINDOW\n#define IMGUI_DISABLE_FILE_FUNCTIONS\n#define IMGUI_USE_WCHAR32\n#define IMGUI_ENABLE_FREETYPE\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feternityx%2Fdeadcell-gui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feternityx%2Fdeadcell-gui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feternityx%2Fdeadcell-gui/lists"}