Skip to content

agx/libhandy

Repository files navigation

Handy

Pipeline status Code coverage

The aim of The handy library is to help with developing UI for mobile devices using GTK/GNOME.

License

libhandy is licensed under the LGPL-2.1+.

Build dependencies

To build libhandy you need to first install the build-deps defined by the debian/control file

If you are running a Debian based distribution, you can easily install all those the dependencies making use of the following command

sudo apt-get build-dep .

Building

We use the Meson (and thereby Ninja) build system for libhandy. The quickest way to get going is to do the following:

meson . _build
ninja -C _build
ninja -C _build install

For build options see meson_options.txt. E.g. to enable documentation:

meson . _build -Dgtk_doc=true
ninja -C _build/ libhandy-doc

Usage

There's a C example:

_build/examples/example

and one in Python. When running from the built source tree it needs several environment varibles so use _build/run to set them:

_build/run examples/example.py

Glade

To be able to use Handy's widgets in the glade interface designer without installing the library use:

_build/run glade

Documentation

The documentation can be found online here. Further examples on how to use the widgets in your favorite programming language can be found here:

C

Python 3

  • Daty (HdyColumn, HdyLeaflet, HdySearchBar, HdyTitleBar)
  • HydraPaper (HdyActionRow, HdyHeaderBar, HdyPreferencesGroup, HdyPreferencesPage, HdyPreferencesRow, HdyPreferencesWindow, HdyViewSwitcher)
  • PasswordSafe (HdyColumn)
  • Unifydmin (HdyColumn, HdyLeaflet, HdyTitleBar)

Rust

Vala