apps-gorm/README
Richard Frith-MacDonald 725c20fd36 Updated
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/gorm/trunk@5573 72102866-910b-0410-8b05-ffd578937521
1999-12-18 06:44:11 +00:00

89 lines
3.2 KiB
Text

Acknowledgements -
Icons - Mostly by Andrew Lindsay.
Code - GormViewKnobs.m adapted from code by Gerrit van Dyk.
8th December 1999
This is Gorm version 0.0 ... a very pre-pre-alpha release.
Please note - to build this code you will need the latest library source
from the CVS repository, and it may be that you also need to be using the
xgps backend rather than xdps (I don't have xdps running to test it on).
Gorm is an acronym for Graphic Object Relationship modeler (or perhaps
GNUstep Object Relationship Modeler).
Gorm is a clone of the NeXTstep 'Interface Builder' application for GNUstep.
Gorm is not 'gormless' (a Yorkshire dialect word that my parents used when they
spotted me staring, slack-jawed, at the TV).
My aim in writing this is to get a usable IB clone working before the new
millenium, so there is not much time left.
By 'usable' I mean that, at least for simple user interfaces, it should be
possible to create/edit/test archived representations of an interface more
easily using Gorm than by coding by hand.
This initial version of the software doesn't come close to that goal - so
don't go expecting very much.
Current state -
Save/Load 'nib' documents (binary archived data)
This works so far as it can be tested - but that's just archives containing
windows or panels so far.
Load palettes
Loading of palettes works. You can load palettes from the 'Tools' menu.
Gorm automatically loads all the palettes from its Resources directory.
Basic framework
So far, the app provides a basic framework that needs fleshing out.
It has a palettes manager object that allows you to select a palette and
drag items from the palette into your document.
It has a special per-document editor object, which keeps track of a matrix
of icons representing the top-level objects in the document.
It has an inspector manager class, which updates the inspector panel
when the selected object is changed by an editor.
It has special inspectors for handling an empty selection or a multiple
selection.
Palettes
Four palettes (three of which are empty at present) are built and installed
in the apps Resources directory.
The Window palette is more fully fleshed out than the other palettes.
It permits windows and panels to be created in Gorm.
If provides the start of a window attributes inspector.
18 December 1999
You can drag views from a palette into a window or panel.
You can select views in a window by clicking on them, shift-clicking
(for multiple selection), or click-drag on the window background to select
views in a box.
You can delete/cut/copy/paste views betwen windows.
You can move views in a window by clicking on them and dragging.
You can resize views by clicking on their knobs and dragging.
You can control-drag to mark source and destination views for a connection.
Next task - inspectors.
The connection inspector needs to be implemented to complete the process of
establishing connections.
The size inspector needs to be implemented to set autosizing parameters for
a view.
Once these are done, the object editor needs to be made to support connections
so that we can connect between objects other than views, then we need to write
a menu editor.