Copyright © 2007-2013

IDE

The File menu’s Open project option allows selection of a specific project folder - within which a set of default sub-folders are created. Those sub-folders are used to store various files of interest to ProSpecs programs. The main screen of the IDE consists of three panes - the Editor pane, the Selector pane and the Reporter pane.

The Editor pane is used to create or open text files for use with ProSpecs user programs. From the File menu, the New option opens a tab in the Editor pane for the creation of a new file’s contents.  The Open option leads to three sub-options: Program, Report and Other, each of which leads to an open file dialog in the appropriate (to ProSpecs) progect sub-folder. Thence, the file (or files) to open are selected and, when the dialog’s Open button is clicked, each selected file is opened for editing in a separate tab in the Editor window.

The Selector pane contains three tabs for the selection of Programs, Databases and Messages to be used for user program execution. Each tab consists of a list box (for the selected files of that type) and a combo box of file selection options. The common file selection options are ones to select files for inclusion in the list box or selected clear files from the list box. In some cases there are other options - e.g. to check database integrity or compile or run user program files

The Reporter pane is used to report the progress of activities invoked by any selected Programs tab combo box operation. This includes output of progress reports generated by executing user programs.

The View menu options allow the user to view or hide a Diagrams window, which contains a tab for each of the ten (0 to 9) allowed diagrams available for diplay by user programs. A second option of the View menu allows display, during pauses in user program execution, of an Inspector window. The Inspector window contains three tabs which allow inspection of key data groups at the time of a user program pause. The three data types are Grid values (tabular data), Structure member values (the basic data elements of ProSpecs programs) and Message field values (the data passed into, out of and between executing user programs.

Editing Files

When editing a file in an Editor window tab the ProSpecs user can use the Edit menu’s options to do the usual edition operations of cut/copy/paste, undo/redo and find/goto. The find option includes the chance to find and replace specified text in the tab being edited.

One special option available from the Edit menu is Insert fields. This leads to a dialog box in which any of the message definitions known to ProSpecs can be selected and its fields displayed in a list box. Then the user can select field names s/he wishes to use in the Editor tab and, when closing the dialog, the selected field names are entered into the tab at the current edit cursor position (the entered names are each separated by a single space character).

Diagram Files

The Diagrams window allows display of diagrammatic data read of defined by a user program. ProSpecs allows executing user programs to define and update the contents of up to ten diagrams to be displayed to the program’s user during or after its execution.  The diagrammatic information can be any two-dimensional form (subject to the limitations of the ProSpecs languages diagram shape definition types).

The principal reason for providing this feature is to allow user programs which process messages (from equipment trials or simulation programs) to display diagrammatic representations of the progress of the analysis. For example, it might be used to display the movement of vehicles as recognised by movement messages recorded during a system trial, or the progress of graphical representations like bar charts.

ProSpecs user programs can save and load diagram definitions in files, so that a diagram (such as a map or an environment layout) can be defined once and then re-used in as many user programs which have a need for it.

Grid Data Display

The Inspector windows Grid values tab allows the user to see a display of all the grid row and column values for a specified grid.

The dialog allows the ProSpecs user to append grid data from a file or from the top currently open edit window and to write the current grid data to a file. It also allows the grid's current contents to be cleared. A row's columns are written to a single line of the output file, with column values delimited by a specified separator character.

Similarly, on reading, each new row's column data is expected to appear on a single line, with its column data delimited by the specified character separator.

The dialog allows the ProSpecs user to identify which grid number's details to display, the number of columns in that grid (it must first be cleared of data) and the character to be used as a column separator.

After specifying one of these the changes in the appropriate text box, they are implemented in the display by clicking an apply button.

Structure Data Display

The Inspector window’s Structure values tab allows the user see a display of the accessible structure member values of the structure whose procedure formed the entry point for a currently executing user program.

The user can select any currently executing user program for display of its entry point structure's member values.  All its current member values – including sub-member values to any available depth – are displayed.

The ProSpecs user can which program’s structure members s/he wishes to inspect.

Message Data Display

The Inspector window’s Message field values tab allows the user to see a display of the field values of a message visible to a currently executing user program.

The user can select for display any of the currently executing user programs and, for the selected user program, a message from the message stream currently being processed or one of the new messages declared for that program.  Whichever user program/message combination is selected, all its current field values – including sub-field values to any available depth – are displayed to the ProSpecs user.

Data Entry Dialogs

A user program can request data from the ProSpecs user by using a User Input Dialog. The form of the dialog contents and the values entered by the user are specified in various forms of the user program's userInput statement.

The facilities for data entry and layout are a subset of the facilities provided by the Java Swing environment’s gridbag layout feature. The types of component which can be specified are labels, edit boxes, text areas, lists (single and multiple selection), combo lists, checkboxes and radio buttons. Components of a user dialog can be defined in terms of grid cell position and size and whether they grow in either or both vertical and horizontal size as the dialog frame is resized.

Apart from radio buttons, each component is allocated to a distinct panel and the size and position definitions apply to the panel. For radio buttons, multiple radio buttons can be allocated to a panel (and there can be several such panels). In a given panel of radio buttons, only one radio button can be selected. The size definition of a radio button panel is applied to each radio button and the radio buttons are always vertically aligned in their panel.

All except labels, text fields and text areas are active, in the sense that the user program is informed whenever a selection is made in one of the other components, The user program can interrogate and change the contents and selection state of all components and can determine which is the latest component selected by the program’s user - and if appropriate, which list element or button was clicked.

The user program can specify a title for the user dialog when it is displayed and can enable or disable the contents of any active panel.


The User Interface

top of page