X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FGUI%2Fgui.h;h=5b8478e95f2023cf21db372f9c358742017279ed;hb=1ae2b59333dc914d10bcc726bc94e71cbf3e411e;hp=03afb28e1f42d2e0f6fb89f9ffddcfbd797a8c99;hpb=8d1ecbfa1b44d7f857b0ef8681553c6779fc821d;p=flightgear.git diff --git a/src/GUI/gui.h b/src/GUI/gui.h index 03afb28e1..5b8478e95 100644 --- a/src/GUI/gui.h +++ b/src/GUI/gui.h @@ -29,107 +29,47 @@ # include #endif -#ifdef HAVE_WINDOWS_H -# include -#endif - #include #include #define TR_HIRES_SNAP 1 - +namespace osg +{ +class GraphicsContext; +} // gui.cxx -extern void guiInit(); +extern void guiStartInit(osg::GraphicsContext*); +extern bool guiFinishInit(); extern void mkDialog(const char *txt); extern void guiErrorMessage(const char *txt); extern void guiErrorMessage(const char *txt, const sg_throwable &throwable); -extern void fgDumpSnapShot(); +extern bool fgDumpSnapShot(); +extern void fgDumpSceneGraph(); +extern void fgDumpTerrainBranch(); extern puFont guiFnt; extern fntTexFont *guiFntHandle; extern int gui_menu_on; // from gui_funcs.cxx -extern void saveFlight(puObject *); -extern void loadFlight(puObject *); -extern void reInit(puObject *); -extern void fgDumpSnapShotWrapper(puObject *); +extern void reInit(void); +extern void fgDumpSnapShotWrapper(); #ifdef TR_HIRES_SNAP -extern void fgHiResDumpWrapper(puObject *); +extern void fgHiResDumpWrapper(); extern void fgHiResDump(); #endif #if defined( WIN32 ) && !defined( __CYGWIN__) && !defined(__MINGW32__) -extern void printScreen(puObject *); +extern void printScreen(); #endif -extern void PilotOffsetAdjust(puObject *); -extern void fgHUDalphaAdjust(puObject *); -extern void NewAirport(puObject *); -#ifdef FG_NETWORK_OLK -extern void net_display_toggle(puObject *); -extern void NewCallSign(puObject *); -extern void net_fgd_scan(puObject *); -extern void net_register(puObject *); -extern void net_unregister(puObject *); -#endif -extern void NewAltitude(puObject *); -extern void AddWayPoint(puObject *); -extern void PopWayPoint(puObject *); -extern void ClearRoute(puObject *); -extern void fgAPAdjust(puObject *); -extern void fgLatLonFormatToggle(puObject *); -extern void helpCb(puObject *); -extern void fgReshape(int, int); +extern void helpCb(); typedef struct { - char *name; - void (*fn)(puObject *); + const char *name; + void (*fn)(); } __fg_gui_fn_t; extern const __fg_gui_fn_t __fg_gui_fn[]; -// GLOBAL COMMON DIALOG BOX TEXT STRINGS -extern char *gui_msg_OK; // "OK" -extern char *gui_msg_NO; // "NO" -extern char *gui_msg_YES; // "YES" -extern char *gui_msg_CANCEL; // "CANCEL" -extern char *gui_msg_RESET; // "RESET" - -// mouse.cxx -extern void guiInitMouse(int width, int height); -extern void guiMotionFunc ( int x, int y ); -extern void guiMouseFunc(int button, int updown, int x, int y); -extern void maybeToggleMouse( void ); -extern void BusyCursor( int restore ); -extern void CenterView( void ); -extern void TurnCursorOn( void ); -extern void TurnCursorOff( void ); - -// MACROS TO HELP KEEP PUI LIVE INTERFACE STACK IN SYNC -// These insure that the mouse is active when dialog is shown -// and try to the maintain the original mouse state when hidden -// These will also repair any damage done to the Panel if active - -// Activate Dialog Box -inline void FG_PUSH_PUI_DIALOG( puObject *X ) { - maybeToggleMouse(); - puPushLiveInterface( (puInterface *)X ) ; - X->reveal() ; -} - -// Deactivate Dialog Box -inline void FG_POP_PUI_DIALOG( puObject *X ) { - X->hide(); - puPopLiveInterface(); - maybeToggleMouse(); -} - -// Finalize Dialog Box Construction -inline void FG_FINALIZE_PUI_DIALOG( puObject *X ) { - ((puGroup *)X)->close(); - X->hide(); - puPopLiveInterface(); -} - #endif // _GUI_H_