Make your own free website on Tripod.com

X Window Object Library (Xwol)

Introduction

X window object library (Xwol) is an ease to use and easy to learn C++ class framework for rapid X window GUI application development. It provides a widget set and a collection of C++ classes which support creation of reusable graphical user interface components. Careful designing were exercised to make it as user friendly as possible. The library also strives to be as simple as possible without sacrificing any functionality and features. Xwol was started out to provide an object oriented interface to the motif library, however it was never an attempt to hide motif completely by providing a wrapper class for each of the motfi widgets. Such a layer only adds overhead and may probably cause inefficency. Instead it tries to complement the popular toolkit by implememting those missing features with reusable object oriented components.

Three years ago when I started coding the library, the motif widget set did not event have the combobox widget. Today motif is opened and a lot more widgets are contributed to the toolkit. Some of the graphical user interface elements I created such as the tooltip feature, the tab widget, and the tree control are all incorporated in the latest OpenMotif. It was encouraging to know that motif is getting a boost from the open source community even though some of my work seemed duplicated.

What is really important for mordern user interface application is the document/view class framework. The document/view architechture greatly simplifies the development process by automatically generate a working skeleton for the user application. The user only need to add his/her own features by customizing the document objects and their graphical representaion objects: the viewes. Another benefit from this architechture is multiple child windows. Mutliple child windows not only save a lot of desktop space, they also make copy/paste just an easy click when two windows are displayed side by side. The main goal for Xwol is to provide an implementation based on motif. Some of the graphical user interface components may not be conforming to the motif style guide. However whenever the library is breaking the guide, it is breaking it for a good reason. And I do think the guide needs an upgrade to incorporate new ideas.

Xwol Classes

Xwol Tutorial

A simple but powerful text editor

Help Wanted

Xwol is still at its very infant stage. I would like to invite every one who is interested to join me to make it a success. There is still a lot of things to be implemented. If you are a motif programmer, you could help me by writting your Xwol application and add it to the examples. You could also help with the related vxe project. You are welcome to send me your wish list that you would like to see in Xwol or vxe. I definetly need help in document these projects. I can be reached through email

Source code

Try it and have fun.