next up previous contents
Next: Validator Up: Editor Previous: Overview   Contents


Drawing Area

The Drawing Area is the main component of the Editor module. It is a GTK drawing area which is described in Appendix B. There are four important events which Drawing Area handles:

Dealing with many graphical objects forces to arrange them in such a way that helps to manipulate them. Doubly-linked lists are chosen to arrange a graphical layer. Each object is a separate element in the list and each element in the list has information about where is the next and the previous element. Such a structure allows to keep all objects together using dynamic memory allocation and provides an easy way to perform operations on a separate object or on a group of objects.

What is more, doubly-linked lists technology is fully supported by the GLib library described in Appendix B which is very helpful.

There are several support functions to manipulate graphical objects e.g. create, move or draw, and are declared in the header file main.h in the Osiris source code tree. They all use doubly-linked lists from Glib library.


next up previous contents
Next: Validator Up: Editor Previous: Overview   Contents
Igor Wojnicki 2001-02-21