Gorm is a clone of the Cocoa (OpenStep/NeXTSTEP) `Interface Builder' application for GNUstep
Find a file
Richard Frith-MacDonald 2a6f2299ed Connection management code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/gorm/trunk@5587 72102866-910b-0410-8b05-ffd578937521
1999-12-20 14:20:06 +00:00
Documentation Tidying 1999-12-18 11:08:18 +00:00
Images Link image 1999-12-17 21:34:20 +00:00
Palettes Connection management code. 1999-12-20 14:20:06 +00:00
.cvsignore Added .cvsignore 1999-12-13 23:39:08 +00:00
ChangeLog Connection management code. 1999-12-20 14:20:06 +00:00
ClassInformation.plist Connection management code. 1999-12-20 14:20:06 +00:00
GNUmakefile Connection management code. 1999-12-20 14:20:06 +00:00
Gorm.h Tidying 1999-12-18 11:08:18 +00:00
Gorm.m Connection management code. 1999-12-20 14:20:06 +00:00
GormClassManager.h Connection management code. 1999-12-20 14:20:06 +00:00
GormClassManager.m Connection management code. 1999-12-20 14:20:06 +00:00
GormDocument.h Loads of stuff! 1999-12-16 18:06:22 +00:00
GormDocument.m Connection management code. 1999-12-20 14:20:06 +00:00
GormInspectorsManager.h Connection mechanism started. 1999-12-17 17:22:18 +00:00
GormInspectorsManager.m Connection management code. 1999-12-20 14:20:06 +00:00
GormObjectEditor.m Connection management code. 1999-12-20 14:20:06 +00:00
GormPalettesManager.h Stuff for testing mode. 1999-12-15 15:29:27 +00:00
GormPalettesManager.m Image info for connecting 1999-12-17 12:48:37 +00:00
GormPrivate.h Connection management code. 1999-12-20 14:20:06 +00:00
GormViewKnobs.m Loads of stuff! 1999-12-16 18:06:22 +00:00
GormWindowEditor.m Bugfixes 1999-12-18 21:27:22 +00:00
IBInspector.m Update to correct version 1999-12-08 15:19:11 +00:00
IBPalette.m Gorm source 1999-12-08 15:04:57 +00:00
InfoPanel.m Gorm source 1999-12-08 15:04:57 +00:00
README Updated 1999-12-18 06:44:11 +00:00

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.