Skip to main content

aio_wx_widgets

Project description

CI codecov Code style: black

aio_wx_widgets

Wx python app structure using MVC model. Work in progress, adding widgets when I need them. See the demo folder for usage.

Features:

  • Add widgets using context managers.
  • Two-way or one-way Property binding from controller properties to the view.
  • Proper Margins and alignment of items

The example below is a bit outdated, but gives a rough idea. Please see the demo for more.

```python
# Use a context manager for container types like a group or grid.
# A group is a container with a label and a sizer inside. Inside
# this sizer widgets, or other containers can be placed.
with self.add(Group("A labelled container.")) as group:
    group.add(Text(text="A horizontal grid."))

    with group.add(Grid()) as grd:
        # the binding binds to an attribute defined in the controller
        # the weight determines how much space a specific item should consume
        # with respect to the other members of the container.
        grd.add(IntEntry(binding=self.bind("value_1")), weight=6, margin=3)
        grd.add(IntEntry(binding=self.bind("value_1")), weight=4, margin=3)
        grd.add(IntEntry(binding=self.bind("value_1")), weight=4, margin=3)
```


```python 
vert_grid.add(
    Text(text="Center aligned text with a large margin."),
    margin=(10, 10, 30, 5),  # (left,right,top,below)
    align_horizontal=AlignHorizontal.center,)
```

Installation

  • Create a virtual env, activate it and pip install aio_wx_widgets

Running the demo

  • Install the libary as described above.
  • clone the repo.
  • from the activated virtualenv: python -m demo

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

aio_wx_widgets-1.2.0.tar.gz (79.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

aio_wx_widgets-1.2.0-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file aio_wx_widgets-1.2.0.tar.gz.

File metadata

  • Download URL: aio_wx_widgets-1.2.0.tar.gz
  • Upload date:
  • Size: 79.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.25.1

File hashes

Hashes for aio_wx_widgets-1.2.0.tar.gz
Algorithm Hash digest
SHA256 26b18accf75e7c118c8c8d143237b6e5ab22027f05d9fa138da95e239e1b76f8
MD5 4e109a83b10f43871b1b2e95b42458d6
BLAKE2b-256 cb4212155648d47f20a3f60fae5b6bfff6ae7972fb2ebc3977b1cf3854ed0679

See more details on using hashes here.

File details

Details for the file aio_wx_widgets-1.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aio_wx_widgets-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a748b2c29d606f449089c4e30d6740d231c0f0cc9017a7d140904b6ac528ef3c
MD5 6ca52dea6d9cedca21ba7f15a12aa005
BLAKE2b-256 d871269689a03311fc84ec88f9ce6796dd8e35b7ea34bc66ea1685fa0220b406

See more details on using hashes here.

Supported by

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