Skip to main content

low-level drawing and interaction

Project description

http://github.enthought.com/enable

Build status Coverage status

The Enable project provides two related multi-platform packages for drawing GUI objects.

  • Enable: An object drawing library that supports containment and event notification.

  • Kiva: A multi-platform DisplayPDF vector drawing engine.

Enable

The Enable package is a multi-platform object drawing library built on top of Kiva. The core of Enable is a container/component model for drawing and event notification. The core concepts of Enable are:

  • Component

  • Container

  • Events (mouse, drag, and key events)

Enable provides a high-level interface for creating GUI objects, while enabling a high level of control over user interaction. Enable is a supporting technology for the Chaco and BlockCanvas projects.

Kiva

Kiva is a multi-platform DisplayPDF vector drawing engine that supports multiple output backends, including Windows, GTK, and Macintosh native windowing systems, a variety of raster image formats, PDF, and Postscript.

DisplayPDF is more of a convention than an actual specification. It is a path-based drawing API based on a subset of the Adobe PDF specification. Besides basic vector drawing concepts such as paths, rects, line sytles, and the graphics state stack, it also supports pattern fills, antialiasing, and transparency. Perhaps the most popular implementation of DisplayPDF is Apple’s Quartz 2-D graphics API in Mac OS X.

Kiva Features

Kiva currently implements the following features:

  • paths and compiled paths; arcs, bezier curves, rectangles

  • graphics state stack

  • clip stack, disjoint rectangular clip regions

  • raster image blitting

  • arbitrary affine transforms of the graphics context

  • bevelled and mitered joins

  • line width, line dash

  • Freetype or native fonts

  • RGB, RGBA, or grayscale color depths

  • transparency

Prerequisites

You must have the following libraries installed before building the Enable/Kiva project:

Enable/Kiva also have the following requirements:

Runtime:

Optional:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

enable-4.5.1.zip (2.6 MB view details)

Uploaded Source

enable-4.5.1.tar.gz (2.0 MB view details)

Uploaded Source

File details

Details for the file enable-4.5.1.zip.

File metadata

  • Download URL: enable-4.5.1.zip
  • Upload date:
  • Size: 2.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for enable-4.5.1.zip
Algorithm Hash digest
SHA256 9def5514eba6179c096502f99f64b279fb463e052eec8b108861c1a4e39ac5a3
MD5 01d8a986871bd13cbea5231a4c523c78
BLAKE2b-256 911852999680de5f55432ddc5a1aacbc61b31b48dcfb9ec3e1d043f1b2ee4f1d

See more details on using hashes here.

File details

Details for the file enable-4.5.1.tar.gz.

File metadata

  • Download URL: enable-4.5.1.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for enable-4.5.1.tar.gz
Algorithm Hash digest
SHA256 06f739d5f619889306edd25ffdbe8650d401a0f35034a571488417cb4ab61cb2
MD5 bfc6d30198265deee9dedaebebdf21b9
BLAKE2b-256 84e30180b0974a89b67d1b2b3a9ec4e42c8eb43353becefd47261ec164862af1

See more details on using hashes here.

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