{"id":20294142,"url":"https://github.com/realchrisdebon/pdcursesgui","last_synced_at":"2025-03-04T05:25:30.471Z","repository":{"id":231635493,"uuid":"782280289","full_name":"realChrisDeBon/PDCursesGUI","owner":"realChrisDeBon","description":"A starter template for making some basic GUI elements in PDCurses","archived":false,"fork":false,"pushed_at":"2024-04-05T02:11:50.000Z","size":11,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-14T09:36:04.816Z","etag":null,"topics":["console-application","console-gui","console-ui","pdcurses"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/realChrisDeBon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-04-05T01:34:14.000Z","updated_at":"2024-04-05T01:59:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"959fb32f-2f04-4e24-84bd-c83e231bf50d","html_url":"https://github.com/realChrisDeBon/PDCursesGUI","commit_stats":null,"previous_names":["realchrisdebon/pdcursesgui"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/realChrisDeBon%2FPDCursesGUI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/realChrisDeBon%2FPDCursesGUI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/realChrisDeBon%2FPDCursesGUI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/realChrisDeBon%2FPDCursesGUI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/realChrisDeBon","download_url":"https://codeload.github.com/realChrisDeBon/PDCursesGUI/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241789334,"owners_count":20020456,"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":["console-application","console-gui","console-ui","pdcurses"],"created_at":"2024-11-14T15:27:58.296Z","updated_at":"2025-03-04T05:25:30.451Z","avatar_url":"https://github.com/realChrisDeBon.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PDCursesGUI\nA starter template for making some basic GUI elements in PDCurses.\n\nThis is a very preliminary sample program I've put together that implements features in PDCurses to create basic GUI elements.\nSome of the basic elements are working near perfect. The textbox still has some glitchy behavior with the scrolling I'm working on and \nthe button click event needs some closer examination. At some point once all the kinks are worked out, I'll likely refactor this into \n.DLL  class library for portability. Feel free to use this for your own projects.\n\nElements are derived from either `BaseVisualElement` *or* `BaseVisualElement_Scroller` and their constructor will usually take a reference to the target window first,\ntypically followed by any element-specific parameters (ie text, string vector as options, ect) then finally the X, Y, width and height values. An example of\na simple label:\n```cpp\n    // Example label implementation\n    Label *label1 = new Label(mainWindow, \"Label testing!\", 8, 3, 10, 1);\n    label1-\u003esubwindow = subwin(mainWindow, label1-\u003egetHeight(), label1-\u003egetWidth(), label1-\u003egetY() , label1-\u003egetX() );\n```\n\nTo add an element, you must push it to the elements vector:\n```cpp\n    elements.push_back(std::unique_ptr\u003cBaseVisualElement\u003e(YOU_NEW_ELEMENT));\n```\n\n**Demonstration:**\n\nhttps://github.com/realChrisDeBon/PDCursesGUI/assets/97779307/842da802-7e78-4a09-b8ec-2c96ac730ad7\n\n**Note:** The Windows tone can be removed on-click, it's placed in for debugging and demonstration reasons.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frealchrisdebon%2Fpdcursesgui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frealchrisdebon%2Fpdcursesgui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frealchrisdebon%2Fpdcursesgui/lists"}