Skip to main content

GUI extension for the Python game library Arcade https://arcade.academy/

Project description

Build Status

GUI Library for Python Arcade

This project targets to offer simple to complex ui elements to use in games and software written with the Python Arcade library.

Some UI components were copied over to adjust and fix them.

This project could also end up in a PR to integrate within Arcade.

Basic Components

UIView

Central class to manager the ui components. Converts on_ callback functions into events, so that UIElements just have to contain one method to interact with user input.

UIElement

A general interface of an UI element.

Examples

Examples providing an overview of features, there will be dedicated documentation soon.

Screenshots

Example with ID Screenshot

Features for first release

  • UILabel
    • Align with UITextInput
  • UIButton
  • Focused element tracked
  • ID reference system for UIElements
  • CI/CD
  • UITextInput
    • Basic setup
    • Scroll text with cursor
    • Set max length
    • Emit event on ENTER
  • UIElements emit own UIEvents
    • UIButton
    • UITextInput
  • UIImageButton
  • UITexturedInputBox
  • FlatButtons (https://codepen.io/maziarzamani/full/YXgvjv)
  • UITextArea
  • Theme support
    • Provide different standard themes for flat buttons
  • Add documentation and doc strings (sphinx)
    • release notes
    • setup readthedocs
  • track new features and issues in Github

Chores

  • harmonize constructors x, y vs center_x, center_y
  • figure out, how UIView.find_by_id does not produce typing warnings
  • improve docs
    • fix reference to examples
    • include screenshots (at least one)
  • make 3D Button more realistic, or change to flat buttons
  • support Python 3.7
  • test examples render the expected screen

Background information and other frameworks

Reference Pygame GUI projects

Overview

Ideas

  • Create own implementation
  • Build adapter for PyGame GUI

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

arcade_gui-0.1.0a3.tar.gz (8.5 kB view hashes)

Uploaded Source

Built Distribution

arcade_gui-0.1.0a3-py3-none-any.whl (9.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page