3/17/88 Screen Designer Version 2.04 Copyright (C) 1987, 1988 by Michael W. Cocke A Tool for Designing Screen Displays This program is being distributed under the `shareware' concept. You are freely encouraged to copy and distribute this program, provided that no changes are made to either the program or the documentation. This means that you can download this program from a bulletin board, get it through a mail order house, or copy it from a friend. If you don't find it worthwhile, you won't have risked anything. But, if you do find it useful, all I ask is that you send me a check for just $10.00. This buys you to a new copy of the program, WITH ALL updates. It will also buy you some peace of mind. I'm one person, not a giant software company, and the check you send may make the difference between feeding my cat this week and not feeding my cat this week. Please send a check for $10.00 to: Michael Cocke 11 Cedar Road Montville NJ 07045 Thank You, M.W.C. Technical support, upgrades and requests available upon payment of $ 10.00 (U.S.) registration fee. What is SCREEN DESIGNER: SCREEN DESIGNER is a program created to aid you in designing and producing screens for batch files, programs, and, if you have the right printer, title pages for word processor documents and spreadsheets. The graphics that SCREEN DESIGNER creates can be used on color or monochrome video systems, and on IBM (tm) compatible graphics printers. To give you an idea of some of the uses of SCREEN DESIGNER, all of the help screens and title pages in the program were created using the program. How to run SCREEN DESIGNER: SCREEN DESIGNER was designed to work on a monochrome, CGA, EGA or PGA equipped IBM (tm) compatible computer, with at least 256K Ram and one floppy disk drive. NOTE: I have not tested Screen Designer on a PGA system, but it should work. To run the program, all you need to do is type 'SD' at the DOS prompt, and press . How to use SCREEN DESIGNER: The Main Editor Screen This is the screen where you do the actual drawing, typing, etc. of your screen image. In addition to all of the function keys (explained below), the backspace, insert, delete and cursor keys all work normally. The other keys that work here are: + Insert a new line at the current line. + Delete the current line. + Center screen contents horizontally. + Center current line contents horizontally. + Center screen contents vertically. + Pops up a ruler line on whatever line the cursor is currently on. This WILL NOT Destroy the screen contents. To get rid of the ruler and restore your screen, just do a 'Screen Redraw'. + Erase to the left of the curser. + Erase to the right of the curser. + Erase to the top of the curser. + Erase to the bottom of the curser. In addition to the keys listed above, the following keys are used with the 'box' capability. Mark the upper left corner of a single line box. + Mark the upper left corner of a double line box. + Mark the upper left corner of a special box. Mark the lower right corner of all boxes. Screen Wrap The screen wraps in all directions. This means that if you move the cursor off the right side of the screen, it will re-appear on the left side, one line down. If you move the cursor off the top of the screen, it will re-appear on the bottom of the screen in the same column. The screen also wraps diagonally, so that if you run the cursor off the lower right corner of the screen, it will re-appear in the upper left corner. It is NOT possible to edit more than one screen at a time. A virtual screen will probably be implemented in version 3.0 (free to everyone who registers as a version 2.0 user). The Box Capability There is a sophisticated auto-box routine built into SCREEN DESIGNER, which will allow you to draw boxes of many different sizes and styles. All you need to do is mark the upper left corner of where you want to draw a box, using one of the key combinations listed above. Then move the cursor to where you wish the lower right corner of the box, and press . Presto, a box of the desired type and size! There are three separate box patterns available at any time in SCREEN DESIGNER. They are the SINGLE BOX, the DOUBLE BOX and the SPECIAL BOX. The single box is a single line box (-). The double box is a double line box (=). The special box is one of a number of possible patterns. There are eight pre-defined special boxes (that was the number of keys I had left over), and a user-defined option to allow you to set any type of box pattern you might wish. The Function Keys SCREEN DESIGNER makes use of the programmable function keys, F1-F10, in all of the sub-menu screens, as well as in the main edit screen and the line draw screen. Some of the function keys 'toggle' an effect. One example is F8, which toggles between Graphics & Text keyboard modes. In the case of such a toggle key, the function key label (on line 25 of the screen) will change to show what pressing the key will do. For example: in the case of F8, SCREEN DESIGNER starts in the default 'text' mode, with the label for F8 indicating that pressing F8 will switch to 'graphics' mode. After F8 has been pressed, the label will change to indicate that pressing F8 will switch back to 'text' mode. The labels always indicate what pressing the key WILL do; they do NOT show the current function of the key. F1 - HELP --------- The F1 key ALWAYS displays a help screen. There are help screens for each of the sub menus, the main edit screen, and the line draw screen. Function Keys from the Main Edit Screen --------------------------------------- F1 Main Screen Help F2 File Utilities Menu F3 Character Utility Menu F4 Programmers Utility F5 Horizontal and Vertical Screen Centering F6 Line Drawing Mode F7 Screen Re-draw F8 Graphics / Text Mode Toggle F9 Re-start the Program F10 Exit the Program F2 - File Utilities Menu ------------------------ The function keys that are used in this menu are: F1 File Menu Help F2 File Load F3 File Save F4 Directory List F10 Return to the Main Edit Screen F1 - File Menu Help This key is used to provide a quick reference to the file menu. F2 - File Load This key is used to load an already existing file for further editing. After pressing F2, you will be asked to enter the filename you want to edit. If you enter a filename longer than 12 characters, you will be asked to try again. If you press without entering any filename, you will be returned to the Main Editor Screen. The files are saved as normal ASCII text files, so you should be able to edit them with any word processor that supports a plain ASCII mode (such as Wordstar (in NON-document mode) or the editors in Turbo Pascal (tm) or Quickbasic (tm)). F3 - File Save This key is used to save a file that you have created. After you have pressed F2, you will be asked to enter the filename you want to save. If you enter a filename longer than 12 characters, you will be asked to try again. If you press without entering any filename, you will be returned to the Main Editor Screen. The files are saved as normal ASCII text files, so you should be able to edit them with any word processor that supports a plain ASCII mode (such as Wordstar (in NON-document mode) or the editors in Turbo Pascal (tm) or Quickbasic (tm)). F4 - Directory List This key is used to list the files in the current directory. The display stops every 24 lines and displays 'Press to continue' F10 - Return to Main Editor Screen This key is used to return to the Main Edit Screen. F3 - Character Utilities ------------------------ The function keys that are used in this menu are: F1 Character Utilities Help F2 Define the Special Box F3 Keyboard 'Graphics Mode' Map F10 Return to the Main Editor Screen F1 - Character Utilities Help This key is used to provide a quick reference to the Character Utilities Menu. F2 - Define the SPECIAL BOX This key is used to choose the border style for the SPECIAL BOX from one of a number of possible patterns. There are eight special boxes already defined in the menu, and a user-defined option to allow you to create any box pattern you want. The menu for selecting among the pre-defined boxes is self-explanatory. The screen will display the different box patterns along with a number for each one. Simply press the corresponding number and the correct pattern will be generated. If the user-defined box option is chosen (number 8), a new screen will appear. The left side of the screen shows a listing of keys with the corresponding character generated by each key. The right side of the screen prompts the user for the characters that will make up the various corners and sides of the user-defined box. Pressing after each selection will move to the next prompt. F3 - Keyboard 'Graphics Mode' Map This key is used to display a map of the graphics characters that are available when the 'graphics mode toggle' (F8 on main edit screen) is set. See the technical appendix for a detailed explanation. F10 - Return to Main Editor Screen This key returns you to the Main Edit Screen. F4 - Programmers Utility ------------------------ This is the function of the program that caused me to write SCREEN DESIGNER. I tend to write truly horrible screen interfaces. This is because, like many programmers, I'm more concerned with the program than with its appearance. SCREEN DESIGNER is designed to remedy those appalling interfaces. I have tried to make this function non-language specific, as I work in several different programming languages. As written, this function is adequate for BASIC, C and PASCAL coding conventions. I haven't tested any other languages with it. Suggestions and comments are welcome. You are asked a number of questions in this section, a detailed discussion follows. Number Lines (Y/N): Do you wish to have each line of the screen image numbered? For instance, GWBASIC requires line numbers, QUICKBASIC considers them optional, and C doesn't want to consider the prospect of numbered lines. If you answer this question 'yes' you will be asked for a starting number, and an increment between line numbers. The message "DO NOT ENTER QUOTES FOR THE FOLLOWING 2 QUESTIONS" will be displayed. If you are working in BASIC or a similar language which requires PRINT statements to be quoted, DO NOT type quotes (") here! I have no idea what will happen if anyone enters quotes here, but I can guarantee that the program WILL malfunction. The message 'Begin lines with:' will be displayed, this is the programming language statement you wish to have each line begin with. for example, if programming in BASIC, the answer would be 'PRINT' The message 'End lines with:' will be displayed, this is the programming language statement you wish to have each line end with. for example, in C you could use this capability in PRINTF statements. Next you will be asked if you need to have screen lines quoted, this is a yes/no question. (BASIC programmers, the answer is YES) The last question you will be asked is for the name of the file you wish to save the formatted screen image in. If you supply the name of a file that already exists, it will be OVERWRITTEN. If you enter a filename longer than 12 characters, you will be asked to try again. If you press without entering any filename, you will be returned to the Main Editor Screen. The files are saved as normal ASCII text files, so you should be able to edit them with any word processor. F5 - Center Screen Contents Horizontally & Vertically ----------------------------------------------------- This key is used to center the contents of the screen with one button. The program will center the screen contents both horizontally and vertically. The vertical centering is simple: the program finds the first and last non-blank lines and splits the difference. The horizontal center is a little more subtle, since boxes are multi-line constructs. Rather than try to explain what happens if there are two boxes of different heights on the same set of lines, I will suggest you try it. The insert and delete keys can be used to modify the results, if desired. You might want to do some experimenting here. F6 - Line Draw Mode ------------------- The function keys used from this menu are: F1 Line Draw Help F3 Single / Double Line Toggle F6 Pen Up / Down Toggle F7 Re-draw the Screen F10 Return to the Main Editor Screen All of the cursor arrow keys work normally (SEE NOTE BELOW), as do the backspace, insert and delete keys. The other keys that work here are: + Pops up a ruler line on whatever line the cursor is currently on. This WILL NOT Destroy the screen contents. To get rid of the ruler and restore your screen, just do a 'Screen Redraw'. + Erase to the left of the cursor. + Erase to the right of the cursor. + Erase to the top of the cursor. + Erase to the bottom of the cursor. NOTE: The cursor keys work as marked when the pen is UP. When the pen is down, a line of the selected type is drawn by the cursor. Some of the function keys 'toggle' an effect. One example is F8, which toggles between Graphics & Text keyboard modes. In the case of such a 'toggle' key, the function key label (on line 25 of the screen) will change to show what pressing the key will do. For example, in the case of F8, SCREEN DESIGNER starts in the default 'text' mode, the label for F8 indicates that pressing it will switch to 'graphics' mode. After F8 has been pressed, the label will change to indicate that pressing it will switch back to 'text' mode. The labels always indicate what pressing the key WILL do, NOT the current function of the key. F1 - Line Draw Help This key is used to provide a quick reference to the Line Draw Screen. F3 - Single / Double Line Toggle This key toggles between single line (-) and double line (=) mode. Note that the function key line changes to indicate what pressing the toggle key WILL do, not the current status of the toggle key. F5 - Pen Up / Down Toggle This key toggles between pen up (cursor movement) and pen down (line drawing) modes. The lines are actually drawn by moving the cursor (with the arrow keys) while the pen is DOWN. Appropriate corners will be supplied automatically. (Well, within limits - the program is not omniscient.) F7 - Re-draw the Screen This key is used to re-draw the screen after a RAM-resident program has messed it up. It is also useful for getting rid of the ruler line. F10 - Return to main Editor Screen This key returns you to the Main Edit Screen. F7 - Re-draw the Screen ----------------------- This key is used to re-draw the screen after a RAM-resident program has messed it up. It is also useful for getting rid of the ruler line. F8 - Graphics / Text Mode Toggle -------------------------------- This key toggles between 'TEXT' and 'GRAPHICS' keyboard mode. Note that the function key line changes to indicate what pressing the toggle key WILL do, not the current status of the toggle key. F9 - Clear Screen and Re-Start the Program ------------------------------------------ This key clears the screen and re-starts the program from the 'Donation Request' screen. If you have sent in your $ 10.00 donation, this key simply clears the screen. If you have not sent in your donation, WHY NOT? F10 - Exit the Program ---------------------- This key is used to exit the program. Technical Appendix: ------------------- The graphics characters produced by SCREEN DESIGNER are the extended ASCII character set incorporated in every video board as part of the standard (as defined by IBM) character set. On a CGA, EGA, PGA or other color board, SCREEN DESIGNER does not operate in the GRAPHICS mode, but rather in TEXT mode. This allows the graphics created by SCREEN DESIGNER to work properly on any type of computer / video system. All files produced by SCREEN DESIGNER are standard ASCII text files, with no tokenization. You can edit any of the image files you create with an ASCII word processor, such as WORDSTAR in NON-document mode, or the editors in Turbo Pascal and QuickBasic. The files created are 24 records long, with 80 characters per record. If you use column 80 for your screen design, be advised that there is a bug involving the video systems capability to wrap to the next line. SCREEN DESIGNER attempts to handle this problem with column 80 for you, but it will probably turn out strangely. I advise that you design your screens to use columns 1-79, and ignore column 80 entirely. If you attempt to read in a file that contains either short lines (less then 80 characters) or short files (less than 24 records) SCREEN DESIGNER will pad the records to the requisite length & number. This program is written in Microsoft QuickBasic 4.0, and makes use of the 'event trapping' features of that language. Attempting to use a RAM-resident program, such as Sidekick (tm), while running SCREEN DESIGNER may produce strange results. I have attempted to make this program as portable as possible. The screen redraw is a little slow, but keep in mind that SCREEN DESIGNER should work on 98% & 99% compatibles as well as 100% compatibles, and under Windows (tm) and DoubleDos (tm). I felt that the compromise was worth it. SCREEN DESIGNER has been tested on the following computer systems: (machine types are listed generically, to avoid having to list three pages of trademark credits) AT with CGA AT with EGA AT with monochrome XT with monochrome graphics XT with CGA XT with hercules These systems were run under various versions of MS-DOS (tm), from 2.11 through 3.2. Miscellaneous Notes and Release History: I'd like to take this opportunity to thank Anthony Scriffignano, whose program 'CHART' inspired SCREEN DESIGNER. I'd also like to thank my beta testers: Steve Nelson, Joseph P. DeSantis, and John Popovitch (who, as of this writing, don't know they're my beta testers). And, last but not least, I want to thank my fiancee, Evelyne Stalzer, for tolerating my living at this computer while I wrote SCREEN DESIGNER, and for editing the documentation. This will probably be the last shareware release of SCREEN DESIGNER because of the number of donations received (1). Although I can trace over 50 copies of SD being downloaded, only ONE person actually sent me a check. I think that's pretty sad. Revision History: Version .99 The boxer goes berserk, no line draw mode Version 1.00 Beta testing: added corrections for short files & short records, added ruler line, added blank left, right, up & down features Version 1.45 The virtual screen wins the battle, but I win the war.... Where is the cursor going ?, started docs. Version 1.75 I found the cursor, re-write the logical to physical screen connection. Version 2.0 First Release to the public (Software Society BBS) 2 Days later..... Version 2.02 Killed the idea of delay loops in the title display, made it a 'hit a key'. Version 2.03 Not released pending $, found minor bug in line draw, on line 24, going right to left, cursor goes to top of screen. Version 2.04 Incorporates 2.03 fix and a correction to the virtual-physical cursor link. Screen Designer Version 2.04 Copyright (C) 1987, 1988 Michael W. Cocke A Tool for Designing Screen Displays This program is being distributed under the `shareware' concept. You are freely encouraged to copy and distribute this program, provided that no changes are made to either the program or the documentation. This means that you can download this program from a bulletin board, get it through a mail order house, or copy it from a friend. If you don't find it worthwhile, you won't have risked anything. But, if you do find it useful, all I ask is that you send me a check for just $10.00. This buys you to a new copy of the program, WITH ALL updates. It will also buy you some peace of mind. I'm one person, not a giant software company, and the check you send may make the difference between feeding my cat this week and not feeding my cat this week. Please send a check for $10.00 to: Michael Cocke 11 Cedar Road Montville NJ 07045 Thank You, M.W.C. Technical support, upgrades and requests available upon payment of $ 10.00 (U.S.) registration fee. Source code available for $100.00 (U.S.) IBM is a registered trademark of International Business Machines Corp. Turbo Pascal is a registered trademark of Borland International. QuickBasic is a registered trademark of Microsoft, Inc. Wordstar is a registered trademark of Micropro International Corp. MS-DOS is a registered trademark of Microsoft, Inc.