ChangesLog.txt 3.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. Changes Between V0.1.1 and V0.1.0
  2. New and improved:
  3. Full compatibility with VS2017 and VS2019
  4. Full C++ Standards compliance and support for compiling with /permissive- flag
  5. Full support for strict const-qualification conformance (/Zc:strictStrings)
  6. New classes: CRegProperty and CRegPropertyImpl<> for properties stored in registry
  7. New class: CSimpleFileDialog - fixed common dialog that does not use OFN_ENABLEHOOK
  8. Added support for MFC Dynamic Dialog Layout resource format
  9. App Wizard:
  10. Added support for VS2017 and VS2019
  11. Removed options for manifest (always there) and Unicode (always on)
  12. Added option for WinXP support
  13. Added support for _NO_AUTOMATIC_NAMESPACE
  14. Fixes and enhancements:
  15. General:
  16. Added AtlGetStringPtr() function - get a pointer to read-only resource string
  17. Changed CMessageLoop::IsIdleMessage() to be virtual, so it can be overridden in a derived class
  18. Added DECLARE_FRAME_WND_CLASS2(), DECLARE_FRAME_WND_CLASS_EX2(), and DECLARE_FRAME_WND_SUPERCLASS2() for templated classes, and used DECLARE_FRAME_WND_CLASS2() for CFrameWindowImplBase
  19. CMemDlgTemplateT: Added new window traits for dialog controls to avoid painting problems with WS_CLIPCHILDREN and WS_CLIPSIBLINGS
  20. CWindowEx: Added methods for Dialog-only messages
  21. Fix for #315 WTL::RunTimeHelper::IsWin7 works incorrectly on Windows 10 if versionhelpers.h is not used
  22. Fix for bug #300 Error in CZoomScrollWindowImpl with setting SetZoomMode(ZOOMMODE_IN)
  23. Fix for bug #298 InitDialogBaseUnits takes LOGFONT by value
  24. Fix for CResource::LoadEx() - wrong order for parameters to ::FindResourceEx()
  25. Fix for warning C4555: expression has no effect when using BEGIN_MSG_MAP_EX and BEGIN_DDX_MAP
  26. Fix for bug #266 Icon loading for hi-dpi environments
  27. Fix for bug #319 atlprint.h: Incorrect offsets in DEVNAMES struct
  28. Samples: Updated for WTL10, renamed project files to indicate VS version, code and file cleanup
  29. Controls:
  30. Added CListViewCtrl::SelectAllItems()
  31. Improved CListViewCtrl::SelectItem() to call SetSelectionMark() and remove selection
  32. Added another variant of CListViewCtrl::Scroll()
  33. Fix for bug #321 Missing HTREEITEM parameter to TreeView GetNextSelected() methods
  34. Added CEdit methods for new Edit messages added in Windows 10.0.17763
  35. CRichEditCtrl: Added GetTypographyOptions() and SetTypographyOptions() that were missing
  36. Added CString variant of CMultiPaneStatusBarCtrlImpl::GetPaneText()
  37. Fix for bug #268 CImageListManaged throws ATL assert when using attach or operator =
  38. Splitter:
  39. CSplitterImpl: Increased m_nPropMax to handle super-high resolutions
  40. CSplitterWindowImpl: Added new 'flat' splitter bar drawing style
  41. Used DECLARE_WND_CLASS_EX2() for CSplitterWindowT
  42. TabView:
  43. Added support for auto scroll when dragging tabs to reposition them
  44. Extended drag area to the whole client area of CTabViewImpl
  45. Added hover close buttons to tabs
  46. SetActivePage() - set focus only if main window is active
  47. OnTabContextMenu() to pass the correct tab item to OnContextMenu()
  48. CTabViewImpl: Uses ShowWindow() with TRUE/FALSE instead of SW_SHOW/SW_HIDE
  49. Ribbon:
  50. Fix for bug #317 SpinnerCtrlImpl - Failed to update string properties
  51. Don't use function pointers to templated functions
  52. Cracked Handlers:
  53. Added MSG_WM_NCMOUSEHOVER() and MSG_WM_NCMOUSELEAVE()
  54. Added MSG_WM_GESTURE, MSG_WM_GESTURENOTIFY, MSG_WM_DPICHANGED, MSG_WM_APPCOMMAND
  55. Fix for bug #322 atlcrack.h: Incorrect signature in comment for MSG_WM_MDIACTIVATE
  56. Fix for bug #302 MSG_WM_WTSSESSION_CHANGE should crack lParam as session Id
  57. Fix for bug #284 MSG_WM_XBUTTONDOWN inconsistent with MSDN
  58. Fix for bug #286 MSG_WM_KEYDOWN cracks wParam as TCHAR, should be a virtual key
  59. Clang specific fixes:
  60. Use C++-style instead of C-style struct initialization
  61. Remove superfluous semicolons
  62. Add comment for implicit fallthrough in switch statements