From: John W. <jwh...@gm...> - 2009-11-29 15:21:50
|
Nice! Yes, let's fix the regressions now. On the new task system (ex_xcsoar in git), all code has API documentation and there are test programs in Test/ that cover over 90% of the code. It's also about time that we decided how we are going to handle inter-thread communication. The blackboard model is fine for some parts but perhaps too much overhead or klunky for others. On Sun, 2009-11-29 at 00:45 +0100, Max Kellermann wrote: > So here it is, the RunMapWindow test program. It renders fine on > Windows, and displays "something" (i.e. some symbols and the > waypoints) on Linux/SDL! This is another major milestone for me. The > RunMapWindow code looks terrible, sorry ;-) > > More from this patch set: fixups for the Borland C++ compiler from > Samuel (he's back to XCSoar development!), the usual code cleanup, and > several fixes for regressions (broken hotkeys, broken focus on > airspace warning, airspace warning too verbose, ...). Might be the > right time now to fix the remaining regressions, to get the git > repository more stable. > > > Max Kellermann (49): > zzip: include zzip/_config.h for ZZIP_HAVE_UNISTD_H > jasper: don't define HAVE_IO_H on WINE > test: repaired all test programs > RasterTerrain: make read-only methods const > Waypointparser: pass WAYPOINT objects by reference, not pointer > Device/Drivers: pass WAYPOINT objects by reference, not pointer > Dialogs: pass WAYPOINT objects by reference, not pointer > TaskFile: pass WAYPOINT object by reference, not pointer > Dialogs: return early on error > Waypointparser: make the RasterTerrain argument const > Waypointparser: make the "terrain" argument optional > AirspaceWarning: pass NMEA_INFO by reference > GlideComputer: pass NMEA_INFO by reference > GlideSolvers: include cleanup > GlideSolvers: moved FinalGlideThroughTerrain() to GlideTerrain.cpp > GlideTerrain: pass RasterTerrain object to function > Atmosphere: include cleanup > Atmosphere: pass NMEA_INFO by reference > Atmosphere: get AGL altitude from DERIVED_INFO > GlideRatio: pass DERIVED_INFO by reference > GlideRatio: make LimitLD() static > GlideRatio: pass const object to CalculateLDRotary() > Components: removed StartupInfo() > InputEvents: re-enable hotkey handling (regression fix) > MapWindowEvents: restore the "default" mode from info box > dlgAirspaceWarning: don't restore old focus > WindowControls: moved code to is_user_input(), is_allowed_map() > WindowControls: block input events in the first 1000ms > dlgAirspaceWarning: reset dialog show flags > Screen/Fonts: moved InitializeOneFont() prototype to Fonts.hpp > Screen/Fonts: make internal functions static > Screen/Fonts: use _stprintf() instead of wsprintf() > Asset: added SetGlobalEllipse() > Asset: added fallback for GlobalEllipse > Appearance: added fallback for property InfoBoxGeom on !PNA > Screen/Fonts: use inline functions instead of platform macros > Registry: wrap all registry keys in a macro > japser: don't include Compatibility/string.h > Makefile: don't link with resource file on UNIX > jasper: use strdup() instead of _strdup() > Makefile: link with libm on UNIX > shapelib: removed unused function msWebDebug() > Screen/Window: call on_create() manually on SDL > Screen/Canvas: added assertions for SDL > Screen/Canvas: added another check to clip_range() (SDL) > Screen/Fonts: workarounds to compile with SDL > Registry: added UNIX implementation based on libgconf > install resources for UNIX > test: added program RunMapWindow > > Samuel Gisiger (12): > due to support of BDS 2010 ... > some beatify > due to support of BDS 2010 ... > hide warning about unused parameter in WinMain > fix missusing of LocalFree, feeing block allocatad with alloc() > zzip: due to support of BDS 2010 > WindowControls: (BDS sup.) make CallSpetial() and mDialogStyle public > asset: add IOCTL_HAL_GET_DEVICEID and FILE_DEVICE_HAL)to conditional compile > BDS sup. add missing headers > Registry: add missing vars > UpdateValuesTask: fix divide by zero on calculating dd > TopWindow::set: add top window creation parameter overwrite (for altair simulator) > > Common/Header/AirspaceWarning.h | 8 > Common/Header/Appearance.hpp | 4 > Common/Header/Asset.hpp | 16 > Common/Header/Atmosphere.h | 4 > Common/Header/Compatibility/string.h | 5 > Common/Header/Dialogs.h | 5 > Common/Header/GlideRatio.hpp | 10 > Common/Header/GlideSolvers.hpp | 24 > Common/Header/GlideTerrain.hpp | 33 - > Common/Header/Interface.hpp | 1 > Common/Header/RasterTerrain.h | 6 > Common/Header/Screen/Fonts.hpp | 9 > Common/Header/Screen/shapelib/maperror.h | 2 > Common/Header/Waypointparser.h | 8 > Common/Header/WindowControls.h | 4 > Common/Header/jasper/jas_config2.h | 7 > Common/Header/zzip/_msvc.h | 3 > Common/Source/Abort.cpp | 10 > Common/Source/AirspaceWarning.cpp | 36 - > Common/Source/Asset.cpp | 2 > Common/Source/Atmosphere.cpp | 40 - > Common/Source/BestAlternate.cpp | 9 > Common/Source/Components.cpp | 43 - > Common/Source/Device/Driver/CAI302.cpp | 14 > Common/Source/Device/Driver/EW.cpp | 12 > Common/Source/Device/Driver/EWMicroRecorder.cpp | 13 > Common/Source/Device/Driver/Volkslogger.cpp | 24 > Common/Source/Dialogs/XML.cpp | 1 > Common/Source/Dialogs/dlgAirspaceDetails.cpp | 24 > Common/Source/Dialogs/dlgAirspaceSelect.cpp | 24 > Common/Source/Dialogs/dlgAirspaceWarning.cpp | 63 -- > Common/Source/Dialogs/dlgBasicSettings.cpp | 57 +- > Common/Source/Dialogs/dlgBrightness.cpp | 34 - > Common/Source/Dialogs/dlgConfiguration.cpp | 9 > Common/Source/Dialogs/dlgFontEdit.cpp | 24 > Common/Source/Dialogs/dlgHelp.cpp | 29 - > Common/Source/Dialogs/dlgLoggerReplay.cpp | 39 - > Common/Source/Dialogs/dlgStartTask.cpp | 48 - > Common/Source/Dialogs/dlgStatus.cpp | 13 > Common/Source/Dialogs/dlgSwitches.cpp | 16 > Common/Source/Dialogs/dlgTaskCalculator.cpp | 7 > Common/Source/Dialogs/dlgWaypointEdit.cpp | 52 -- > Common/Source/Dialogs/dlgWeather.cpp | 87 +-- > Common/Source/Dialogs/dlgWindSettings.cpp | 59 +- > Common/Source/Gauge/GaugeVario.cpp | 23 > Common/Source/GlideComputerAirData.cpp | 29 - > Common/Source/GlideComputerTask.cpp | 25 - > Common/Source/GlideRatio.cpp | 17 > Common/Source/GlideSolvers.cpp | 225 +-------- > Common/Source/GlideTerrain.cpp | 208 ++++++++ > Common/Source/InputEvents.cpp | 3 > Common/Source/MapWindowEvents.cpp | 5 > Common/Source/RasterTerrain.cpp | 10 > Common/Source/Registry.cpp | 580 +++++++++++++----------- > Common/Source/Screen/Bitmap.cpp | 16 > Common/Source/Screen/Canvas.cpp | 18 > Common/Source/Screen/Fonts.cpp | 223 ++++----- > Common/Source/Screen/TopWindow.cpp | 12 > Common/Source/Screen/Window.cpp | 4 > Common/Source/Screen/shapelib/maperror.c | 20 > Common/Source/TaskFile.cpp | 19 > Common/Source/UtilsSettings.cpp | 4 > Common/Source/WayPointList.cpp | 4 > Common/Source/Waypointparser.cpp | 116 ++-- > Common/Source/WindowControls.cpp | 74 +-- > Common/Source/XCSoar.cpp | 1 > Common/Source/jasper/base/jas_cm.c | 20 > Common/Source/jasper/base/jas_debug.c | 2 > Common/Source/jasper/base/jas_icc.c | 46 - > Common/Source/jasper/base/jas_image.c | 20 > Common/Source/jasper/base/jas_seq.c | 8 > Common/Source/jasper/base/jas_stream.c | 28 - > Common/Source/jasper/base/jas_string.c | 2 > Common/Source/jasper/base/jas_tvp.c | 2 > Common/Source/jasper/jp2/jp2_cod.c | 18 > Common/Source/jasper/jp2/jp2_dec.c | 6 > Common/Source/jasper/jpc/jpc_bs.c | 2 > Common/Source/jasper/jpc/jpc_cs.c | 20 > Common/Source/jasper/jpc/jpc_dec.c | 46 - > Common/Source/jasper/jpc/jpc_mqdec.c | 4 > Common/Source/jasper/jpc/jpc_qmfb.c | 10 > Common/Source/jasper/jpc/jpc_t1enc.c | 2 > Common/Source/jasper/jpc/jpc_t2cod.c | 8 > Common/Source/jasper/jpc/jpc_t2dec.c | 6 > Common/Source/jasper/jpc/jpc_tagtree.c | 4 > Common/Source/jasper/jpc/jpc_tsfb.c | 4 > Common/Source/jasper/jpc/jpc_util.c | 2 > Common/Source/zzip/file.c | 8 > Common/Source/zzip/infback.c | 2 > Common/Source/zzip/inffast.c | 2 > Common/Source/zzip/inflate.c | 2 > Common/Source/zzip/inftrees.c | 2 > Common/Source/zzip/plugin.c | 6 > Common/Source/zzip/zip.c | 2 > Common/Source/zzip/zstat.c | 2 > Makefile | 7 > build/gconf.mk | 4 > build/targets.mk | 4 > install-resources.py | 34 + > test/Makefile | 115 ++++ > test/src/RunMapWindow.cpp | 429 +++++++++++++++++ > test/src/RunWayPointParser.cpp | 22 > 102 files changed, 2067 insertions(+), 1408 deletions(-) |