FlightGear next
fg_scene_commands.cxx File Reference
#include "config.h"
#include <string.h>
#include <simgear/compiler.h>
#include <string>
#include <fstream>
#include <simgear/sg_inlines.h>
#include <simgear/debug/logstream.hxx>
#include <simgear/math/sg_random.hxx>
#include <simgear/io/iostreams/sgstream.hxx>
#include <simgear/scene/material/mat.hxx>
#include <simgear/scene/material/matlib.hxx>
#include <simgear/structure/exception.hxx>
#include <simgear/structure/commands.hxx>
#include <simgear/props/props.hxx>
#include <simgear/props/props_io.hxx>
#include <simgear/structure/event_mgr.hxx>
#include <simgear/sound/soundmgr.hxx>
#include <simgear/timing/sg_time.hxx>
#include <Network/RemoteXMLRequest.hxx>
#include <FDM/flight.hxx>
#include <GUI/gui.h>
#include <GUI/new_gui.hxx>
#include <GUI/dialog.hxx>
#include <Aircraft/replay.hxx>
#include <Scenery/scenery.hxx>
#include <Scripting/NasalSys.hxx>
#include <Sound/sample_queue.hxx>
#include <Airports/xmlloader.hxx>
#include <Network/HTTPClient.hxx>
#include <Viewer/CameraGroup.hxx>
#include <Viewer/viewmgr.hxx>
#include <Viewer/view.hxx>
#include <Environment/presets.hxx>
#include <Navaids/NavDataCache.hxx>
#include "fg_init.hxx"
#include "fg_io.hxx"
#include "fg_os.hxx"
#include "fg_commands.hxx"
#include "fg_props.hxx"
#include "globals.hxx"
#include "logger.hxx"
#include "util.hxx"
#include "main.hxx"
#include "positioninit.hxx"

Go to the source code of this file.

Functions

static bool do_exit (const SGPropertyNode *arg, SGPropertyNode *root)
 Built-in command: exit FlightGear.
 
static bool do_reset (const SGPropertyNode *arg, SGPropertyNode *root)
 Reset FlightGear (Shift-Escape or Menu->File->Reset)
 
static bool do_switch_aircraft (const SGPropertyNode *arg, SGPropertyNode *root)
 Change aircraft.
 
static bool do_reposition (const SGPropertyNode *arg, SGPropertyNode *root)
 
static bool do_panel_load (const SGPropertyNode *arg, SGPropertyNode *root)
 Built-in command: (re)load the panel.
 
static bool do_preferences_load (const SGPropertyNode *arg, SGPropertyNode *root)
 Built-in command: (re)load preferences.
 
static bool do_toggle_fullscreen (const SGPropertyNode *, SGPropertyNode *)
 An fgcommand to toggle fullscreen mode.
 
static bool do_screen_capture (const SGPropertyNode *, SGPropertyNode *)
 Built-in command: capture screen.
 
static bool do_reload_shaders (const SGPropertyNode *, SGPropertyNode *)
 
static bool do_dump_scene_graph (const SGPropertyNode *, SGPropertyNode *)
 
static bool do_dump_terrain_branch (const SGPropertyNode *, SGPropertyNode *)
 
static bool do_print_visible_scene_info (const SGPropertyNode *, SGPropertyNode *)
 
static bool do_reload_compositor (const SGPropertyNode *, SGPropertyNode *)
 Reload all Compositor instances in the default CameraGroup.
 
static bool do_tile_cache_reload (const SGPropertyNode *arg, SGPropertyNode *root)
 Reload the tile cache.
 
static bool do_materials_reload (const SGPropertyNode *arg, SGPropertyNode *root)
 Reload the materials definition.
 
static bool do_dialog_new (const SGPropertyNode *arg, SGPropertyNode *root)
 Built-in command: Add a dialog to the GUI system.
 
static bool do_dialog_show (const SGPropertyNode *arg, SGPropertyNode *root)
 Built-in command: Show an XML-configured dialog.
 
static bool do_dialog_toggle (const SGPropertyNode *arg, SGPropertyNode *root)
 Built-in command: Show an XML-configured dialog.
 
static bool do_dialog_close (const SGPropertyNode *arg, SGPropertyNode *root)
 Built-in Command: Hide the active XML-configured dialog.
 
static bool do_dialog_update (const SGPropertyNode *arg, SGPropertyNode *root)
 Update a value in the active XML-configured dialog.
 
static bool do_open_browser (const SGPropertyNode *arg, SGPropertyNode *root)
 
static bool do_open_launcher (const SGPropertyNode *, SGPropertyNode *)
 
static bool do_dialog_apply (const SGPropertyNode *arg, SGPropertyNode *root)
 Apply a value in the active XML-configured dialog.
 
static bool do_gui_redraw (const SGPropertyNode *arg, SGPropertyNode *root)
 Redraw GUI (applying new widget colors).
 
static bool do_add_model (const SGPropertyNode *arg, SGPropertyNode *root)
 Adds model to the scenery.
 
static bool do_presets_commit (const SGPropertyNode *arg, SGPropertyNode *root)
 Built-in command: commit presets (read from in /sim/presets/)
 
static bool do_press_cockpit_button (const SGPropertyNode *arg, SGPropertyNode *root)
 
static bool do_release_cockpit_button (const SGPropertyNode *arg, SGPropertyNode *root)
 
void fgInitSceneCommands ()
 Initialize the default built-in commands.
 

Variables

struct { 
 
   const char *   name 
 
   SGCommandMgr::command_t   command 
 
built_ins [] 
 Table of built-in commands.
 

Function Documentation

◆ do_add_model()

static bool do_add_model ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Adds model to the scenery.

The path to the added branch (/models/model[*]) is returned in property "property".

Definition at line 444 of file fg_scene_commands.cxx.

◆ do_dialog_apply()

static bool do_dialog_apply ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Apply a value in the active XML-configured dialog.

object-name: The name of the GUI object(s) (all GUI objects if omitted).

Definition at line 408 of file fg_scene_commands.cxx.

◆ do_dialog_close()

static bool do_dialog_close ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Built-in Command: Hide the active XML-configured dialog.

Definition at line 340 of file fg_scene_commands.cxx.

◆ do_dialog_new()

static bool do_dialog_new ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Built-in command: Add a dialog to the GUI system.

Does not display the dialog. The property node should have the same format as a dialog XML configuration. It must include:

name: the name of the GUI dialog for future reference.

Definition at line 291 of file fg_scene_commands.cxx.

◆ do_dialog_show()

static bool do_dialog_show ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Built-in command: Show an XML-configured dialog.

dialog-name: the name of the GUI dialog to display.

Definition at line 315 of file fg_scene_commands.cxx.

◆ do_dialog_toggle()

static bool do_dialog_toggle ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Built-in command: Show an XML-configured dialog.

dialog-name: the name of the GUI dialog to display.

Definition at line 328 of file fg_scene_commands.cxx.

◆ do_dialog_update()

static bool do_dialog_update ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Update a value in the active XML-configured dialog.

object-name: The name of the GUI object(s) (all GUI objects if omitted).

Definition at line 355 of file fg_scene_commands.cxx.

◆ do_dump_scene_graph()

static bool do_dump_scene_graph ( const SGPropertyNode * ,
SGPropertyNode *  )
static

Definition at line 195 of file fg_scene_commands.cxx.

◆ do_dump_terrain_branch()

static bool do_dump_terrain_branch ( const SGPropertyNode * ,
SGPropertyNode *  )
static

Definition at line 202 of file fg_scene_commands.cxx.

◆ do_exit()

static bool do_exit ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Built-in command: exit FlightGear.

status: the exit status to return to the operating system (defaults to 0)

Definition at line 76 of file fg_scene_commands.cxx.

◆ do_gui_redraw()

static bool do_gui_redraw ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Redraw GUI (applying new widget colors).

Doesn't reload the dialogs, unlike reinit().

Definition at line 431 of file fg_scene_commands.cxx.

◆ do_materials_reload()

static bool do_materials_reload ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Reload the materials definition.

Definition at line 260 of file fg_scene_commands.cxx.

◆ do_open_browser()

static bool do_open_browser ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Definition at line 373 of file fg_scene_commands.cxx.

◆ do_open_launcher()

static bool do_open_launcher ( const SGPropertyNode * ,
SGPropertyNode *  )
static

Definition at line 388 of file fg_scene_commands.cxx.

◆ do_panel_load()

static bool do_panel_load ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Built-in command: (re)load the panel.

path (optional): the file name to load the panel from (relative to FG_ROOT). Defaults to the value of /sim/panel/path, and if that's unspecified, to "Panels/Default/default.xml".

Definition at line 139 of file fg_scene_commands.cxx.

◆ do_preferences_load()

static bool do_preferences_load ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Built-in command: (re)load preferences.

path (optional): the file name to load the panel from (relative to FG_ROOT). Defaults to "preferences.xml".

Definition at line 157 of file fg_scene_commands.cxx.

◆ do_presets_commit()

static bool do_presets_commit ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Built-in command: commit presets (read from in /sim/presets/)

Definition at line 464 of file fg_scene_commands.cxx.

◆ do_press_cockpit_button()

static bool do_press_cockpit_button ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Definition at line 479 of file fg_scene_commands.cxx.

◆ do_print_visible_scene_info()

static bool do_print_visible_scene_info ( const SGPropertyNode * ,
SGPropertyNode *  )
static

Definition at line 219 of file fg_scene_commands.cxx.

◆ do_release_cockpit_button()

static bool do_release_cockpit_button ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Definition at line 501 of file fg_scene_commands.cxx.

◆ do_reload_compositor()

static bool do_reload_compositor ( const SGPropertyNode * ,
SGPropertyNode *  )
static

Reload all Compositor instances in the default CameraGroup.

Definition at line 229 of file fg_scene_commands.cxx.

◆ do_reload_shaders()

static bool do_reload_shaders ( const SGPropertyNode * ,
SGPropertyNode *  )
static

Definition at line 188 of file fg_scene_commands.cxx.

◆ do_reposition()

static bool do_reposition ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Definition at line 125 of file fg_scene_commands.cxx.

◆ do_reset()

static bool do_reset ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Reset FlightGear (Shift-Escape or Menu->File->Reset)

Definition at line 90 of file fg_scene_commands.cxx.

◆ do_screen_capture()

static bool do_screen_capture ( const SGPropertyNode * ,
SGPropertyNode *  )
static

Built-in command: capture screen.

Definition at line 182 of file fg_scene_commands.cxx.

◆ do_switch_aircraft()

static bool do_switch_aircraft ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Change aircraft.

Definition at line 101 of file fg_scene_commands.cxx.

◆ do_tile_cache_reload()

static bool do_tile_cache_reload ( const SGPropertyNode * arg,
SGPropertyNode * root )
static

Reload the tile cache.

Definition at line 239 of file fg_scene_commands.cxx.

◆ do_toggle_fullscreen()

static bool do_toggle_fullscreen ( const SGPropertyNode * ,
SGPropertyNode *  )
static

An fgcommand to toggle fullscreen mode.

No parameters.

Definition at line 172 of file fg_scene_commands.cxx.

◆ fgInitSceneCommands()

void fgInitSceneCommands ( )

Initialize the default built-in commands.

Other commands may be added by other parts of the application.

Definition at line 574 of file fg_scene_commands.cxx.

Variable Documentation

◆ [struct]

struct { ... } built_ins[]

Table of built-in commands.

New commands do not have to be added here; any module in the application can add a new command using globals->get_commands()->addCommand(...).

◆ command

SGCommandMgr::command_t command

Definition at line 534 of file fg_scene_commands.cxx.

◆ name

const char* name

Definition at line 533 of file fg_scene_commands.cxx.