Skip to main content

Traits-capable user interfaces

Project description

The TraitsUI project provides a toolkit-independent GUI abstraction layer, which is used to support the “visualization” features of the Traits package. You can write a model using the Traits API and specify a GUI using the TraitsUI API (views, items, editors, etc.), and let TraitsUI and your selected toolkit back-end (Qt or Wx) take care of the details of displaying them.

Example

Given a Traits model like the following:

from traits.api import HasTraits, Str, Range, Enum

class Person(HasTraits):
    name = Str('Jane Doe')
    age = Range(low=0)
    gender = Enum('female', 'male')

person = Person(age=30)

And using TraitsUI to specify and display a GUI view:

from traitsui.api import Item, RangeEditor, View

person_view = View(
    Item('name'),
    Item('gender'),
    Item('age', editor=RangeEditor(mode='spinner', low=0, high=150)),
    buttons=['OK', 'Cancel'],
    resizable=True,
)

person.configure_traits(view=person_view)

It creates a GUI which looks like this:

https://raw.github.com/enthought/traitsui/main/README_example.png

Installation

If you want to run traitsui, you must also install:

You will also need one of the following backends:

  • wxPython

  • PySide2

  • PyQt5

Backends have additional dependencies and there are optional dependencies on NumPy and Pandas for some editors.

TraitsUI along with all dependencies can be installed in a straightforward way using the Enthought Deployment Manager, pip or other package managers.

Running the Test Suite

To run the test suite, you will need to install Git and EDM as well as have a Python environment which has install Click available. You can then follow the instructions in etstool.py. In particular:

> python etstool.py test_all

will run tests in all supported environments automatically.

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

traitsui-8.0.0.tar.gz (6.8 MB view details)

Uploaded Source

Built Distribution

traitsui-8.0.0-py3-none-any.whl (1.5 MB view details)

Uploaded Python 3

File details

Details for the file traitsui-8.0.0.tar.gz.

File metadata

  • Download URL: traitsui-8.0.0.tar.gz
  • Upload date:
  • Size: 6.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for traitsui-8.0.0.tar.gz
Algorithm Hash digest
SHA256 901b9d1cbc45513e00a7397677b098441b28774b688f30a159bad4801bf40364
MD5 800fad9a704f728583d9be106d72bf26
BLAKE2b-256 5ecef8f3d97659822cac8ff6b80b4636161126d3a13a86a8c0d407498611d506

See more details on using hashes here.

Provenance

File details

Details for the file traitsui-8.0.0-py3-none-any.whl.

File metadata

  • Download URL: traitsui-8.0.0-py3-none-any.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.16

File hashes

Hashes for traitsui-8.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0e09c0965a8de12dd05e0b4bbdae31bdd576fa551fdaaf2f4e13ac4aa51980ee
MD5 527331a33a61e31d083bb73dab4d661a
BLAKE2b-256 6ec7c96fcb966c1c61fbf2b58219cfa394d2c7160f31c9f4728402ead8f9a17c

See more details on using hashes here.

Provenance

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