home *** CD-ROM | disk | FTP | other *** search
-
-
- *****************************************************************************
-
- FormEd2 3.04 - by Acorn Computers/RISC squad/Paul Hobbs
-
- *****************************************************************************
-
- Paul Hobbs commentary
- ---------------------
-
- This is RISC Squad's FormEd version 2.84b enhanced to include Interface 3D
- icons and some extra options to make it easier to use. The template 'Filer'
- and the 'Handles' code were extracted from version 2.87 of Risc Squad's effort.
-
- If I knew who 'Risc Squad' were I'd ask permission before hacking their
- program, but they are so modest they don't even give an address. I intend
- eventually to create !FormEd+ (hows that for originality) using my EvntShell
- library and even more features when I can get around to it.
-
- New Features Include:
- - Resizing of icons without dragging for more accuracy
- - The addition of Left/Right/Top/Bottom alignment options for selected icons
- - The 'Arrange' option for selected icons
- - Interface style icons may be created directly from the menus, including
- new borders introduced with v2.00 of the Interface module
- - DragASprite solid dragging for RISC-OS 3.1 (wow!)
- - Support for RISC-OS 3 boot message
- - Template 'Filer' window (no more windows opening all over your desktop!)
-
- RISC Squad commentary
- ---------------------
-
- Completed 21st September 1990 to version 2.80. Here's a list of all the
- things I did, as far as I can remember - I didn't make a list as I went
- along.
-
- i) Icons can now be selected/deselected by clicking the menu button
- on them whilst holding the SHIFT key down.
- ii) The icon dragging procedure - with the left button - now moves
- all of the selected icons in the window. Dragging with the
- right button (re-sizing) is unchanged.
- iii) The main menu structure has been split into an Icon menu and a
- Window menu - for convenience and for speed. Previous
- releases of FormEd were notoriously slow at creating their
- menus. Each of the two menus includes an option for calling
- up the other, which will then be opened as default on each
- subsequent occasion.
- iv) The Window menu is largely unaltered, but does include a 'save'
- option for saving only one template at a time. Be warned,
- font freaks - the save routine will check for anti-aliased
- fonts in all other windows too, so I don't know what will
- happen in that situation. Whatever it is, it shouldn't be
- fatal.
- v) The Icons menu is now far more versatile than before. Many
- choices are now available for all selected icons (in that
- window only) including specific choices from the EDIT ICONS
- submenu structure - notably BUTTON TYPE !!
- vi) The RENUMBER option is virtually as before, but the renumbering
- process can be optimised by the use of the MENU button whilst
- depressing the CONTROL key. This is identical to choosing the
- 'Renumber #nn' option directly.
- vii) The DESELECT ALL option deselects all the icons in the current
- window.
- viii) The COPY and MOVE choices may now be performed on either single
- icons or on all the selected icons.
- ix) The WIPE option may now be on selected icons, on a single icon or
- on any icon number specified. I find this useful in two
- instances - (i) When I import templates which have 'missing'
- icons that aren't used - see Paint's 'save' box, icon #1 is
- to the right and is '<CRAP>' (ii) If I can't find one of my
- own icons !!
- x) Note that any options which are either on 'selected' icons or on
- a specific icon can be controlled by clicking MENU over a
- specific icon for the latter, or on no icons (the window's
- work area) for the former. In such a case, if no icons are
- selected, you will be informed, eg. 'Wipe No Icons' - which
- will also be 'shaded out'.
-
- All in all, the lesson to be learned from this is - if you want any icons
- to be selected (in the finished template) - leave them to the end, so they
- don't screw up your work !
-
- PS I also put in an 'Info' box and attached it to the icon bar menu as
- expected. Plus, while checking up on the 'Save one template' job I
- re-enabled the facility to save off the entire file merely by choosing
- the 'Save templates' option on the icon bar menu. - this had been
- REMd out !
-
- *****************************************************************************
-
- Updates, Version 2.81 - 24/11/90
-
- The main problem bugging those people I knew of who were using this was
- that of the un-named windows not being saved. I have therefore included a
- new error in the 'save' routine such that the error 'Only the named windows
- were saved' occurs if any of the templates were un-named.
- I also fixed the 'Move Selected' option from the 'Icons' menu, which did
- absolutely nothing in version 2.80.
-
- *****************************************************************************
-
- Updates, Version 2.82 - 02/12/90
-
- Oops, version 2.81 was chronically buggered ! The aforementioned error
- occurred on every occasion, without exception. This is now completely
- fixed ! The extra features are as follows :
-
- i) It is now impossible to create un-named templates.
- ii) The identifiers of windows must be different on a non
- case-sensitive basis, i.e. It is not now possible to call one
- template 'Save' and a different template 'save' even though
- the names, strictly speaking, are distinct.
- iii) Clicking on the icon bar icon opens a dialogue box, prompting the
- user to enter the identifier of the new template. Press ENTER
- or click on OK to confirm; press ESCAPE or close the box to
- cancel.
- iv) Alternatively, a new template may still be created by the use of
- the icon bar menu structure. The normal rules for identifiers
- still apply.
- v) Any new template has its title bar icon set to text as before,
- but the text defaults to the identifier at the time of
- creation. This allows easy reference on a set of newly
- created templates.
- vi) As a result of all this, the errors such as 'Only named windows
- can be saved' and 'Only the named windows were saved' are now
- a thing of the past !
- vii) On a completely different point : newly created icons now appear
- directly underneath the pointer rather than a small distance
- above it.
-
- *****************************************************************************
-
- Updates, Version 2.83 - 23/12/90
-
- Aha, welcome back to all template designers. It's been exactly three weeks
- since v2.82 and in such a short time I found a lot to do to the program, it
- wan't hard. Have you noticed how all of these have been issued at weekends,
- i.e. Friday, Saturday, then Sunday twice ?
- I suppose I should tell you what I've done to it again - well, in order of
- appearance . . .
-
- i) The icon bar menu is restructured so that the templates and the
- sprites are handled independently. This also makes the main
- menu less tall, which looked very silly.
- ii) You will of course have noticed an unfamiliar option on this menu
- as soon as you tried it out after you'd read through part (i)
- i.e. the new 'Clear' option. Fairly self-explanatory, all it
- does is asks for confirmation, then clears all templates from
- memory. This is mainly useful for loading a new file etc.
- For example, if you want to pinch the save box from Edit, then
- you would load the templates from Edit, save off just the one
- template you wanted, clear the templates then re-load the old
- file, eg from RAM:. This saves either (a) deleting all of the
- templates in the file 'by hand' or (b) quitting FormEd and
- waiting for another copy to load and initialise (very slow)!
- iii) The next idea I had was to add a facility for certain 'default'
- icons, rather than the <Untitled> icon as before. This became
- a thorough restructure of the icons menu, to become a more
- filer-type menu tree. Here's how the new 'icons' menu looks.
- iv) Create icon - On its own, this creates the old <Untitled> icon,
- almost. The submenu has a variety of goodies on offer ;
- Text - Colour 12 bordered text icon (Click/Drag)
- Sprite - 'Free-standing' sprite icon (Click/Drag)
- Arrow - Colour 12 bordered arrow icon (Click/Drag)
- Option - Normal 'Optoff,Opton' icon (Radio)
- Radio - Normal 'Radiooff,Radioon' icon (Radio)
- Writeable - Normal text entry icon (Write/Click/Drag)
- Menu - Normal menu icon, eg 'OK' box (Menu)
- Comment - 'Free-standing' text icon (Click/Drag)
- e.g. the 'Name:' icon in a
- ProgInfo window.
-
- v) This is where the similarities to the Filer start. The third
- choice is either 'No Icons' or 'Selected Icons' or 'Icon #0'
- for example. The submenu yields to present the choices :
- Edit, Copy, Move, Wipe, and Renumber - all as in v2.82
- vi) By the way, the 'Button type' menu has been rigged to disallow
- types 12 & 13 (reserved) and type 11 is once again referred
- to as 'Radio'
- vii) Back to the filer, the next two choices are 'Select All' and
- 'Deselect All'
- viii) Lastly, 'Tidy Icons' removes any spurious icons that lie wholly
- outside the window's Work Area. Note that this is NOT the
- same as outside the opened window space. For example, in
- Paint's notorious SaveBox [see v2.80, (ix),(i)] the CRAP icon
- is within the Work Area, but the lack of scroll bars on these
- windows sometimes makes it seem to lie beyond these bounds.
-
- NB when using the default icons on the 'Create' submenu, make sure that
- you remember to set the button types of the icons, particularly the
- arrow icons (usually Auto-Repeat). The icons default to Click/Drag
- because they rarely appear in exactly the right place, so need moving.
-
- Happy templating ! !
-
- *****************************************************************************
-
- Updates, Version 2.84 - 07/02/91
-
- Thought for the day :
- When I use this - and I do, despite the bugs - I nearly always use the
- icons menu rather than the windows menu, but this poses an annoying problem.
- How does a lazy programmer (contradiction ?) like me delete a window without
- using the other menu ? Answer - put the 'Delete window' choice on BOTH.
- Completely against the idea of separating the two menus, but I don't care.
- I was quite stunned when I happened to notice how Acorn handled their icon
- indirection workspace - it goes like this. (i) DIM a large block of memory.
- (ii) Set a pointer to the start of this area. (iii) Whenever workspace is
- needed, use the memory at the pointer, and move the pointer on. (iv) When
- the pointer reaches the end of the buffer, annoy the user by generating
- errors. Actually, (iv) might have been 'by crashing without explanation' -
- but if it was, I've already 'corrected' this.
- To counteract this problem, the pointer is moved back to the beginning
- when the last template is deleted, or if 'Clear' is chosen from the icon bar
- menu. Crude, but still better than Acorn.
- I've been hassled a lot recently by my friend Anonymous 'Rabbit' Unknown
- 'cos he was getting worked up about the indirection buggy bits - apparently,
- when large, multi-indirected templates are used (waffle) the indirection
- buggers up so the icons start to contain bits of the !RunImage, i.e. it
- points to the WRONG BIT of application workspace. As a result, when you wipe
- it, bits of your (still running) program go missing, and crashes ensue.
- Alternatively, all the icons are inter-connected, so when you delete the
- unwanted bit of one, the other one does spurious things too.
- I think I've sussed it though; I looked at the code, changed a few things
- and now it seems to work, so to quote the ISV docs, 'Everyone is happy'.
- Rabbit was also whining about the way that the files were saved
- 'backwards' so that the window stacking is reversed. Big template files have
- to be kept tidy in this respect, it was annoying !
- I've just done another detail - when a single template was saved before,
- the 'Original' filename, as appears off the icon bar 'save' box, was changed
- to become that of the single template just saved. It was wrong, it's not
- now.
- The other (trivial) bug was that the colours menus did odd things;
- sometimes the icon colours menu was in monochrome, and always there were
- problems with mobile tick on the currently selected colour - particularly if
- a menu choice was made with ADJUST. This is fixed too. Acorn were previously
- reading the palette each time the tick moved, to decide which colours
- contrasted with which others - this is now, of course, done on the WIMP
- message which has something to do with palette changes, and it's faster too.
- Typical.
-
- *****************************************************************************
-
- Updates, Version 2.84b - 01/03/91
-
- Nothing fascinating, as usual - a minor bug fix to do with the
- 'Icon #nn.Edit.Text' bit of a submenu, from where the text sometimes goes
- walkies. The usual un-recreatable bug sort of idea, the icon would contain
- text, but the menu would suggest that it had a null text string.
- Also I added a new choice to the icon bar menu, 'Finish', which is exactly
- equivalent to 'Save Templates' then 'Clear Templates'. Some choices, i.e.
- 'Finish', 'Clear' and 'Save' are now shaded whenever there are no templates
- loaded into FormEd.
- I thought it would be a nice idea to be able to load an application's
- 'Templates' file by merely dragging the application to FormEd, so it now
- attempts to load the file '!ApplName.Templates', failing if it is not found,
- or if it does not have the file type &FEC (Templates). I was right about the
- nice idea, it's very convenient ! The slight fib is that the normal error
- 'This application has no Templates file' occurs even if it exists, but with
- the wrong file type. So who cares anyway ? Not my problem.
- Lastly, the general icons menu now opens such that the pointer is usually
- over the 'Selected icons' jobbie, making editing slightly easier, ta very
- much Mister WIMP, see you on the next version of FormEd.
-
- *****************************************************************************
-
- For those interested, here's Acorn's crap on the subject, as found in my
- application directory. Anything subsequently in this text file is unedited,
- excepting the last few lines (blanks and asterisks).
-
- *****************************************************************************
-
- Notes on using FormEd, 16-May-89
-
- FormEd is an editor of Template files. To understand this you need to
- understand the program interface of the Window System, as described in the
- Programmer's Reference Manual. The description here assumes an understanding
- of template files.
-
- FormEd is started by double-clicking on a template file after the FormEd
- icon has been "seen". This will cause FormEd to be loaded, and to display
- all of the windows in the template file. Alternatively, double-click on
- FormEd itself and it will be loaded with no current windows. If a template
- file does not appear to load properly, give more memory to FormEd before it
- starts using the Task Manager window.
-
- A template file is often constructed with reference to a specific set of
- sprites. A sprite file can be dragged onto the FormEd icon on the icon bar
- to set the available sprites. These are displayed in a window. Some previous
- versions of FormEd used to provide facilities for editing sprites, these are
- now provided only in the Paint application.
-
- Clicking on the FormEd icon creates a new window in the current template
- file, and displays it on the screen.
-
- The menu provided from the icon on the icon bar provides the following
- functions:
-
- Create window - similar to clicking on the FormEd icon, except that a name
- may be specified for the template.
-
- Load templates - allows you to type in the filename of a template file to be
- loaded, instead of dragging an icon from the Filer.
-
- Save templates - a save box for the templates being edited.
-
- Quit - quit FormEd. Beware that this has no "confirm" option, so any edits
- will be discarded instantly if you choose this menu entry.
-
- The template windows displayed by FormEd mirror precisely the size, position
- and properties of the windows in the Template file. The following actions
- directly affect the stored values:
-
- Close the window - deletes it from the template file.
-
- Move/scroll/resize the window - moves the default setup of the window in the
- template file.
-
- Clicking MENU on a template window produces a menu tree that allows a wide
- variety of alterations to the menu structure, based on the various control
- fields of a window structure as described in the Wimp documentation. It also
- allows you to create icons in the window. An icon, once created, can be
- moved and resized using drag-SELECT and drag-ADJUST. It can also have its
- properties adjusted by pointing at it and then clicking MENU, and following
- the "amend icon" submenu.
-
- The best way to experiment is to examine and update the template files
- belonging to the Applications Suite (saving the original first!). It's also
- possible to update the template files used by ROM utilities. These reside in
- the deskfs: filing system in the ROM. They are accessed via the environment
- variable Wimp$Path, so by updating this to search a directory of your own
- first where your updated template files reside, you can replace the window
- templates used by the utilities in the ROM.
-
- Your ability to drag and resize icons may be affected by a button type
- affixed to an icon: only those button types which generate the appropriate
- Wimp events can be dragged and resized directly. It's interesting to note
- that FormEd keeps no data structures describing each template window,
- relying on the Wimp to keep and manipulate each structure.
-
- FormEd keeps a file of sprites in memory which can be used in icons in the
- template being edited. The default sprite file used is the file Default
- inside !FormEd, which is in fact a copy of the sprites found in the RISC OS
- ROM. To load in a separate sprite file to use with your template file, drag
- the sprite file onto the FormEd icon.
-
- *****************************************************************************
-