Zero Memory Widget 0.2.1

A widget library without a single bit of storage per widget.
Zero Memory Widget
  1 Screenshot
Widget libraries have now been developed and used for years. In all these libraries, widget instances require computer memory. But this memory is not really required, We have implemented a widget library to prove that it is possible to use zero bytes of memory per widget.

In such a library, there is no widget reference, so widget programming is easier even in a low level language such as C. Programs are more robust because they do not use pointers, make no memory management and do not translate data between application and widget.

To set the attributes of a widget, it is not possible to use the widget's pointer so a current state is used as in OpenGL. Most classic widgets were integrated into the library, and it is possible to integrate widgets of all kinds without any problem.

The Zero Memory Widget library license is the GNU GPL.

Main features:

  • Base widgets:
  • text, text_editable, int, int_editable,
  • anchor,
  • button, tearoff, button_with_accelerator,
  • image, image_from_file,
  • scrollbar2, scrollbar_vertical, scrollbar_horizontal,
  • toggle (bit or int or char) with or without label. Same for radio button. Really easy to use.
  • Container widgets:
  • window, window_drag, window_popup_right, window_popup_bottom
  • anchor_box,
  • box_horizontal, box_vertical, box,
  • decorator,
  • notebook,
  • scrolledview (can contains billions of children)
  • viewport
  • table, table_with_width,
  • void, if, popup : base system to make transient widgets. The menu are constructed with "popup"
  • Composite widgets:
  • alert (container),
  • message (container),
  • filechooser,
  • Widget attributes:
  • Choice of the focus group.
  • Width: padding, border, focus
  • Expand: vertical, horizontal
  • Alignment: vertical, horizontal
  • Font: family, size, weight, style
  • Geometry: x, y, width, height
  • Window auto resize
  • Sensibility (to overide the value computed automaticaly)
  • Debug level
  • Other features:
  • a drag and drop working only inside the application.
  • fully working text cut and paste (UTF8 or not).
  • simple animation possible.
  • the library runs a web server allowing to debug.
  • accelerators. If a modifier key is pressed, a list of short-cut with this key is displayed in a bubble tip.

last updated on:
February 16th, 2009, 8:17 GMT
developed by:
Thierry Excoffier
license type:
GPL (GNU General Public License) 
ROOT \ Programming \ Widgets
Zero Memory Widget
Download Button

In a hurry? Add it to your Download Basket!

user rating 14



Rate it!
What's New in This Release:
  • This release works with the current GDK/GTK versions.
read full changelog

Add your review!