{"id":21432049,"url":"https://github.com/lebogoo/pygametext","last_synced_at":"2025-03-16T22:34:19.970Z","repository":{"id":62580521,"uuid":"243745400","full_name":"LeBogoo/pygametext","owner":"LeBogoo","description":"This Package adds UI Elements like Buttons and Textboxes to PyGame.","archived":false,"fork":false,"pushed_at":"2020-03-08T16:28:43.000Z","size":32,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-09T18:12:06.094Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LeBogoo.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}},"created_at":"2020-02-28T11:19:33.000Z","updated_at":"2022-02-16T20:15:46.000Z","dependencies_parsed_at":"2022-11-03T21:20:09.998Z","dependency_job_id":null,"html_url":"https://github.com/LeBogoo/pygametext","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LeBogoo%2Fpygametext","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LeBogoo%2Fpygametext/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LeBogoo%2Fpygametext/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LeBogoo%2Fpygametext/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LeBogoo","download_url":"https://codeload.github.com/LeBogoo/pygametext/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225976196,"owners_count":17554197,"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":"2024-11-22T23:15:58.699Z","updated_at":"2024-11-22T23:15:59.271Z","avatar_url":"https://github.com/LeBogoo.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"### Changelog:\n* Fixed Bugs\n* Added pgt.square() function (for more information look at the Elements section)\n\n\n# pygametext\nThis Package adds UI Elements to PyGame.\n\n## Install\npip install pygametext\n\n## Import\n`import pygametext`\n\n\n## Initiate pygametext\n`pgt = pygametext.PGT(screen)`\n\n\n## Elements\n`pgt.button(x,y,width,height,buttonColor,\"Text\",textColor,onClickFunction,onClickArguments,layer)`\n-\u003e Returns True\n\n`pgt.switch(x,y,width,height,buttonColor,\"Text\",textColor,activeFunction,activeArguments,layer)`\n-\u003e Returns True\n\n`pgt.checkbox(x,y,scale,color,activeFunction,activeArguments,layer)`\n-\u003e Returns True\n\n`pgt.text(x,y,\"Text\",textColor,textSize,layer)`\n-\u003e Returns True\n\n`pgt.square(x,y,width,height,color,layer)`\n-\u003e Returns True\n\n`pgt.textbox(x,y,width,height,textColor,layer)`\n-\u003e Returns True\n\n\n## Process inputs and events\nThis function needs to be called if you want that the elements on specified layer to be interactive.\n`pgt.update(layer)`\n\n## Draw elements to screen\nThis function needs to be called if you want that the elements on specified layer to be drawn.\n`pgt.draw(layer)`\n\n## Utitilty functions\n`pgt.getLayer(layer)`\n-\u003e Returns list of PGT Objects on specified Layer\n\n`pgt.clear(id,layer)`\n-\u003e Returns True or False\n\n`pgt.rebuild(layer)`\n-\u003e Returns True\n\n``` python\nimport pygame\nimport pygametext\n\nrunning = True\n\npygame.init()\n\nscreen = pygame.display.set_mode((640, 360))\nclock = pygame.time.Clock()\n\npgt = pygametext.PGT(screen) # Define pygametext object.\n\npgt.button(10,10,100,50,(255,0,0),\"Hello!\",(0,0,0),print,\"Hello World!\",0) # Add pgt Button\npgt.button(120,10,100,50,(255,255,0),\"Bye bye\",(0,0,0),print,\"Goodbye World!\",0) # Add pgt Button\npgt.text(10,70,\"Simple pygametext example.\",(0,120,0),20,0) # Add pgt Text\n\ndef update(): # Update \u0026 Eventd\n\tevents = pygame.event.get()\n\n\tpgt.update(events, 0) # Update all pgt elements from layer 0. Takes events arg to process some elements.\n\n\tfor event in events:\n\t\tif event.type == pygame.QUIT:\n\t\t\trunning = False\n\t\t\tpygame.quit()\n\t\t\tquit()\n\ndef draw():\n\tscreen.fill((255,255,255)) # Clear screen\n\tpgt.draw() # Draw all pgt elements from layer 0\n\t\n\tpygame.display.flip()\n\nwhile running:\n\tupdate()\n\tdraw()\n\tclock.tick(60)\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flebogoo%2Fpygametext","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flebogoo%2Fpygametext","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flebogoo%2Fpygametext/lists"}