Eiffel Windowing System - EWS


  • Transparency (alpha channel) support
  • Can load most standard image formats via libSDL_image (PNG, JPEG, GIF, Windows bitmap...)
  • Mostly coded in OO Eiffel. Only a small C module handling SDL interface. All the API is OO.
  • Complete control over application appearance.
  • Simple design, easily extendible for new event kinds, new widgets, etc.
  • Quite fast even in old slow computers (if you compile at require_check level or lower).
  • Licensed under the LGPL

Supported widgets

The UI toolkit coming with EWS includes

  • Buttons: push buttons triggering commands
  • Toggle buttons: controls that toggle its state (they may be used to implement checkboxes and radio buttons)
  • Text entries: One line text entries, handling cursor keys. Selection not implemented yet (the core is selection capable, but the UI not).
  • Labels: A simple text label
  • Multiline labels: Labels spanning several lines with optional word-wrapping
  • Marquees: Like a label, but scrolling a longer message sideways
  • Images: A fixed image
  • Animations: An animated area of the screen
  • Drag handles: An area that can be dragged to move other window. Useful as titlebars.
  • Scrollbars: The usual thing, with buttons at the end and a slider which can be dragged. (only vertical scrollbar implemented now)

Adding widgets to the toolkit is very simple