Flightgear UI overview
Flightgear's User interface consists of the usual Menus, Dialogs, and Keybindings, but it has some specialized components that make it a bit more complex. The flight simulation is part of the Graphics User Interface and responds to mouse events within the simulation's window. Also, Flightgear accepts input from locally and remotely attached devices. This is not limited to joystick devices such as Yokes and Pedals. It might include information from a physical cockpit or instrument panel. While we may mention aspects of the simulation that display the results of specific user actions, these will not be treated as part of the user interface.
Only items the user can directly affect are part of the user interface. For example, the adjustment knob on the altimeter is part of the user interface, but the barometer dial, and the needles indicating the altitude are not.
From a programming standpoint, an element of the user interface begins with its construction and continues later with a triggering mechanism and the triggered routines. It ends when the last routine returns and the element is ready for additional triggers.
The Types of user interfaces found in Flightgear are:
- Presentation of visual elements in a display sensitive to mouse actions and pointer location.
- Presentation of visual elements in a display that can be changed as a direct result of mouse actions at a specific location
- A set of keystrokes mapped to specific program actions
- A physical device that allows an external physical action to trigger events that can be interpreted to produce a specific program action
- Visual elements in the Flighgear Window:
- Menu Bar
- Dropdown Menus
- Pop-Up Dialogs
- Regions of the Simulation display that can be manipulated
- Mouse Actions (click, release, drag)
- A keyboard map of specific keystrokes and Flightgear actions
- USB-attached devices such as Yokes, Pedals, and Joysticks. (if these are not User Interfaces, What are they?)
- Network attached devices simulating
- Instruments with adjusting knobs,
- Radio Stack devices with toggle, rotary, pushbutton switches, rheostats, and encoders, both rotary and magnetic.
- Other devices such as Parking Brakes, Throttles, Mixture Controls, Primers, Start Switches, Lighting Switches, Circuit Breakers, Cabin Air and Heat
ToDO: Examples of each type of Visual Element, Interaction Style, Action, with specific examples of Flightgear and Simgear code implementing such a type.