An open API service indexing awesome lists of open source software.

https://github.com/enthought/traitsui

TraitsUI: Traits-capable windowing framework
https://github.com/enthought/traitsui

Last synced: about 1 year ago
JSON representation

TraitsUI: Traits-capable windowing framework

Awesome Lists containing this project

README

          

============================================
TraitsUI: Traits-capable windowing framework
============================================

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:

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

Important Links
---------------

- Website and Documentation: ``__

* User Manual ``__
* Tutorial ``__
* API Documentation ``__

- Source code repository: ``__

* Issue tracker: ``__

- Download releases: ``__

- Mailing list: ``__

Installation
------------

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

- Traits ``__
- Pyface ``__

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.

.. end_of_long_description

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.