|
|
||||||||||||
|
|||||||||||||
The Matrix class has been partly implemented. A screenshot of the Matrix in action is available.
The following classes have been implemented: ScrollView, ClipView, and Scroller. A screenshot of the new views in action is available.
The user interface of BIT now handles intra-window link dragging. A partial screenshot, showing a window with a link from one control to another, is available. Minor improvements today include the ability to shift-select objects.
BIT is the TAG equivalent of NeXT/Apple's Interface Builder. BIT Builds Interfaces for TAG. It currently displays a window of which the View objects can be manipulated. When going into interface-testing mode, this window is archived and unarchived, and the result is a fully functional window which is an exact copy of the original; all Control objects behave as they should. The code needed for BIT's functionality of selecting and moving the View objects is barely 5k source, consisting of posing subclasses for TAG's View and Window which add some instance variables and three and two methods, respectively. This is an excellent showcase for TOM's extensibility: making objects behave as desired instead of handling those objects in a way you would handle abstract data types in a procedural language, an undesired modus operandi one is forced to revert to with most, if not all, other object oriented languages.
The current implementation has not yet grown beyond a proof-of-concept. X11 is the only interactive target; PostScript is a supported printing target; classes which have been (at least partly) implemented include Window, Screen, Display, Application, View, Box, Control, Button and Slider (with their cells), Color, Font, Image, BitmapImageRep, and CachedImageRep. The functionality currently offered includes multiple displays and
screens which may be simultaneously open (all X11, since it
currently is the only target), and simple color, font, image, and
graphics primitives.
An early test program will run a simple window with a few controls on every open display. The test program is absolutely unaware of the fact it is running on a particular kind of display; it is programmed for the TAG interface. A screenshot of the running test is available; the window outline in this picture is the outline of the window displaying the original grabbed window image. The outline is present since a window without an outline looks rather silly (as can be seen by looking at the original). |
|||||||||||||
|
|