Archive

Archive for September, 2015

XTaskDialog v1.15

September 29, 2015 Comments off

Just to let everyone know that v1.15 of XTaskDialog has been released. Updates for this version include:

  • Updated the code to clean compile on VC 2013 & VC 2015.
  • Updated the code to include the latest _TASKDIALOG_FLAGS enums from the Windows SDK
  • Updated the code to correctly handle High DPI settings.
  • CXTaskDialog::AddItem now uses MulDiv to convert between pixels and dialog template units
  • Fixed a bug in CXTaskDialog::Layout in the positioning of the footer icon
  • CXTaskDialogMFCClient::DoModalNative and CXTaskDialogMFCClient::DoModalEmulatedDLL are now virtual methods.
  • Code no longer uses LoadLibrary without an absolute path in CXTaskDialogMFCClient::DoModalEmulatedDLL. This avoids DLL planting security issues.
Advertisements
Categories: Web Site Updates

DtWinVer v1.97

September 19, 2015 Comments off

Just to let everyone know that v1.97 of DtWinVer has been released. Updates for this version include:

  • Code now always tries to use "RTLGetVersion" to get the underlying OS details. Previously it would only do this if the code detected that it was running on Windows 8.1 or greater. Also removed the GetRealVersionNumbersFromRegistry method as this returns 6.3 on Windows 10 and as such is just unreliable. Please note that DtWinVer will still report incorrect OS details if compatibility mode is enabled for your application. Thanks to Dave Silber for prompting this investigation.
Categories: Web Site Updates

CScintillaCtrl, CScintillaView & CScintillaDoc v1.34

September 19, 2015 Comments off

Just to let everyone know that v1.34 of CScintillaCtrl, CScintillaView & CScintillaDoc has been released. Updates for this version include:

  • Updated the code to clean compile on VC 2015
  • Updated class to work with Scintilla v3.6.1. New messages wrapped include: SCI_INDICSETHOVERSTYLE, SCI_INDICGETHOVERSTYLE, SCI_INDICSETHOVERFORE, SCI_INDICGETHOVERFORE, SCI_INDICSETFLAGS, SCI_INDICGETFLAGS, SCI_SETTARGETRANGE, SCI_GETTARGETTEXT, SCI_TARGETWHOLEDOCUMENT, SCI_ISRANGEWORD. SCI_MULTIPLESELECTADDNEXT & SCI_MULTIPLESELECTADDEACH. Removed messages include: SCI_SETKEYSUNICODE & SCI_GETKEYSUNICODE.
  • Added virtual methods for SCN_AUTOCCOMPLETED notification.
  • All APIs which use a logical document position which previously used a C long has now been replaced with the Scintilla define "Sci_Position". This is to mirror the ongoing changes in Scintilla to enable support for documents larger than 2GB.
Categories: Web Site Updates

AA+ v1.63

September 16, 2015 Comments off

Just to let everyone know that v1.63 of AA+ has been released. Updates for this version include:

  • AA+ now includes complete support for the VSOP87 theory (ftp://cdsarc.u-strasbg.fr/pub/cats/VI/81/) in addition to the truncated VSOP87 theory as presented in Meeus’s book. This theory is used throughout the AA+ codebase to calculate the positions of the planets and the Sun. The full VSOP87 theory is implemented by the new AAVSOP*.cpp/h files included in the AA+ download. For a good introduction to VSOP87, please see https://en.wikipedia.org/wiki/VSOP_(planets). The classes in AA+ to support VSOP87 have been machine generated by parsing the VSOP87 files with a custom C++ app to generate the new header and source modules. The results have been comprehensively spot checked against the VSOP87 test values provided in the "vsop87.chk" file in the VSOP87 files. Each VSOP theory (VSOP87, VSOP87A, VSOP87B, VSOP87C, VSOP87D, & VSOP87E) for each of the objects (Sun, Mercury, Venus, Earth, Earth-Moon Barycenter, Mars, Jupiter, Saturn, Uranus & Neptune) are implemented in separate header and source modules so client applications can decide which modules to include. The existing AA+ codebase will now optionally call into these new modules as required. With this addition AA+ has gone from 840 Kilobytes and 16 thousand lines of C++ source code library to 20 Megabytes and 291 thousand lines of a C++ source code library. In one fell swoop I have almost doubled the amount of open source code I distribute on my web site. Please note that if you want to compile AA+ to not pull in a dependency on the new and quite large VSOP87 modules, then you can define the preprocessor value "AAPLUS_VSOP87_NO_HIGH_PRECISION" in your project. This will revert the AA+ classes to just depend on the truncated VSOP87 theory as presented in Meeus’s book.
  • Updated the CAACoordinateTransformation::MapTo0To360Range to use the fmod C runtime function.
  • Updated the CAACoordinateTransformation::MapTo0To24Range to use the fmod C runtime function.
  • Added new CAACoordinateTransformation::MapTo0To2PIRange and MapToMinus90To90Range methods.
  • CAAAberration::EclipticAberration, EarthVelocity and EquatorialAberration now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAEarth::EclipticLongitude, EclipticLatitude, RadiusVector, EclipticLongitudeJ2000 & EclipticLatitudeJ2000 now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAElliptical::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAEquationOfTime::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • All the methods in CAAEquinoxesAndSolstices now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAGalileanMoons::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAJupiter::EclipticLongitude, EclipticLatitude & RadiusVector now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAMars::EclipticLongitude, EclipticLatitude & RadiusVector now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAMercury::EclipticLongitude, EclipticLatitude & RadiusVector now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAANearParabolic::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAANeptune::EclipticLongitude, EclipticLatitude & RadiusVector now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAParabolic::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAPhysicalJupiter::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAPhysicalMars::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAPhysicalMoon::CalculateSelenographicPositionOfSun, AltitudeOfSun, TimeOfSunrise and TimeOfSunset methods now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAPhysicalSun::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAASaturn::EclipticLongitude, EclipticLatitude & RadiusVector now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAASaturnMoons::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAASaturnRings::Calculate now includes a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • All the methods in CAASun now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAUranus::EclipticLongitude, EclipticLatitude & RadiusVector now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • CAAVenus::EclipticLongitude, EclipticLatitude & RadiusVector now include a "bool bHighPrecision" parameter which if set to true means the code uses the full VSOP87 theory rather than the truncated theory as presented in Meeus’s book.
  • Verfied the code compiles cleanly on Visual C++ 2015.
  • Updated the observed DeltaT values from http://maia.usno.navy.mil/ser7/deltat.data to 1st July 2015.
  • Updated the predicted DeltaT values from http://maia.usno.navy.mil/ser7/deltat.preds to 1st January 2025.
Categories: Web Site Updates