═══ 1. General Help ═══ Welcome to Air Traffic Control Container, a very simple ATC radar simulator whose main purpose is to provide an interesting example of OS/2 PM Container programming. Its design was stimulated by the author's visit in October, 1993, to Bay TRACON, the main air traffic control location for the San Francisco Bay Area. ATC Container was originally written for a presentation by the author to the OS/2 Bay Area User Group's Developers SIG, on container programming. ATC Container illustrates several areas of container programming: o Multiple views o Inserting multiple container records o Explicitly positioning records o Enumerating container contents o Using a PM Timer to move the container objects at regular intervals o Multiple context menus o Container background owner-drawing o Bitmaps for screen drawing performance o Randomly generating aircraft (always good to know) Dave Briccetti & Associates P.O. Box 1713 Lafayette, CA 94549-7013 USA 510 945-7565 CompuServe: 74475,1072, Internet: daveb@netcom.com Copyright (c) 1993, David C. Briccetti All Rights Reserved. ═══ 2. Views ═══ ATC Container starts up in the Radar View, which bears a slight resemblance to the ARTS III radar scopes in use in some facilities. The jet icons represent targets being tracked, and the numbers below each icon represent the aircraft's altitude and speed. The altitude shown has the two rightmost zeroes removed for brevity. The speed has one zero removed. The other views do not provide positional information. The Name view just shows the icons and title text. The Text view just shows the title text. The Details view shows much more information about each aircraft, including the current and assigned heading, altitude, and speed. To change views, click in the container with the context menu mouse button when the mouse pointer is not over an aircraft. ═══ 3. Controlling Aircraft ═══ ATC Container allows you to control aircraft. Click on an aircraft to bring up a context menu. Select the Control Aircraft menu item. A dialog box appears with spin buttons which allow you to assign a new heading, altitude, and speed. The aircraft will gradually maneuver to comply with your instructions. ═══ 4. Limitations ═══ ATC Container has many limitations. Aircraft Maneuvering Rates The rates at which the aircraft change heading, altitude, and speed are not realistic. For example, a standard rate turn is 3 degrees per second, and these aircraft turn at 1 degree per second. Also, the program doesn't know enough about the compass to know that in order to change from heading 010 to 350 a 20 degree left turn would be appropriate. Instead, it will turn right. Scroll Bars As aircraft move off the scope, scroll bars appear. The program does not have proper support for scrolling. Crashing The program crashes occasionally Lack of cleanup The program does not free the memory it allocates, but sloppily relies on the C runtime library and/or OS/2 to clean up at program termination. Limited Usefulness ATC Container is an interesting container example, but it is far from a real ATC simulator. ═══ ═══ Dave Briccetti & Associates has been developing sophisticated OS/2 applications for users and clients since 1987. As you might have guessed, Dave Briccetti is a private pilot. ═══ ═══ The Developers SIG is a very technical subset of the OS/2 Bay Area User Group membership. The group meets once a month in Silicon Valley, and covers such topics as: o PM Programming o Workplace Shell programming o SOM programming o C++ and other object-oriented languages and facilities o Productive application development For more information about the Developers SIG, contact Dave Briccetti.