Jente Hidskes 8d77e4bf6c Window: use GtkTemplate to instantiate from a GtkBuilder template
In C/GTK+, templates allow one to define the UI in .ui files, from which
implementations can be instantiated. This significantly reduces
boilerplate code that creates widgets, sets their desired properties and
connects their signals[1, 2].

For several reasons, this does not work in Python[3]. gi_composites.py[4] is an
implementation in Python that does make this work. It's been used by
several projects for a few months now and none report issues. See the
project's README for more information[5].

Taking these facts into mind, let's experiment for a bit and see how it
can serve Piper.

[1]: https://wiki.gnome.org/HowDoI/CustomWidgets#Templates
[2]: https://blogs.gnome.org/tvb/2013/04/09/announcing-composite-widget-templates/
[3]: https://bugzilla.gnome.org/show_bug.cgi?id=701843
[4]: https://github.com/virtuald/pygi-composite-templates/
[5]: https://github.com/virtuald/pygi-composite-templates/blob/master/README.rst
2017-07-27 09:36:39 +02:00
2017-07-26 10:07:28 +02:00
2017-07-06 15:23:18 +02:00
2017-07-26 10:07:28 +02:00
2016-03-08 10:38:20 +10:00
2017-06-07 17:07:13 +02:00
2017-06-30 13:45:01 +02:00

Piper CircleCI

Piper is a GTK+ application to configure gaming mice, using libratbag via ratbagd. For the design mockups, see the Redesign Wiki.

In order to run Piper, ratbagd has to be running (without it, you'll get to see a pretty mouse trap). To see how, see its README.

Installing Piper

Piper uses the meson build system which in turn uses ninja to build and install itself. Run the following commands to clone Piper and initialize the build:

$ git clone https://github.com/libratbag/piper.git
$ cd piper
$ meson builddir --prefix=/usr/

To build or re-build after code-changes, run:

$ ninja -C builddir
$ sudo ninja -C builddir install

Note: builddir is the build output directory and can be changed to any other directory name.

Contributing

Yes please. It's best to contact us first to see what you could do. Note that the devices displayed by Piper come from libratbag.

Piper tries to conform to Python's PEP8 style guide. To verify your code before opening a PR, please install flake8 and run the following commands to install its pre-commit hook:

$ flake8 --install-hook git
$ git config --bool flake8.strict true

Source

git clone https://github.com/libratbag/piper.git

Bugs

Bugs can be reported in the issue tracker on our GitHub repo: https://github.com/libratbag/piper/issues

License

Licensed under the GPLv2. See the COPYING file for the full license information.

Description
No description provided
Readme 4.3 MiB
Languages
Python 93.1%
Meson 5.1%
Shell 1.6%
Roff 0.2%