| <html> |
| |
| <head> |
| <meta http-equiv="Content-Language" content="en-us"> |
| <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> |
| <title>Windows Template Library</title> |
| <style type="text/css"> |
| .style1 { |
| font-family: Arial; |
| font-weight: bold; |
| font-size: x-small; |
| } |
| .style2 { |
| font-family: Arial; |
| font-size: x-small; |
| } |
| .style3 { |
| text-align: right; |
| } |
| </style> |
| </head> |
| |
| <body> |
| |
| <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber3"> |
| <tr> |
| <td class="style3"> |
| <p style="text-align: left"><font face="Arial"><b>Windows Template Library - WTL Version 8.0</b></font><font face="Arial" size="2"> |
| (build 7161) 6/10/07</font></td> |
| </tr> |
| <tr> |
| <td><hr></td> |
| </tr> |
| <tr> |
| <td><font face="Arial" size="2">Copyright © 2007 Microsoft Corporation. |
| All rights reserved.</font></td> |
| </tr> |
| <tr> |
| <td> </td> |
| </tr> |
| <tr> |
| <td><font face="Arial" size="2">This file is a part of the Windows Template |
| Library.<br> |
| The use and distribution terms for this software are covered by the<br> |
| Microsoft Permissive License (Ms-PL) which can be found in the file<br> |
| Ms-PL.txt at the root of this distribution.</font></td> |
| </tr> |
| <tr> |
| <td><hr></td> |
| </tr> |
| </table> |
| |
| <p style=margin:0in> </p> |
| |
| <p style=margin:0in> </p> |
| |
| <p style=margin:0in><font face="Arial" size="2">Welcome to the Windows Template Library, version |
| 8.0. This document contains the following topics:</font></p> |
| <p style=margin:0in> </p> |
| <ul style="margin-top:0in;margin-bottom:0in"> |
| <li><font face="Arial" size="2"><a href="#Introduction">Introduction</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Features And Installation">Features |
| And Installation</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Packing List">Packing List</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Class Overview">Class Overview</a></font></li> |
| <li><font face="Arial" size="2"><a href="#ATL/WTL AppWizard">ATL/WTL AppWizard</a></font></li> |
| <li><a href="#Support for Windows CE"><font face="Arial" size="2">S</font></a><font face="Arial" size="2"><a href="#Support for Windows CE">upport |
| for Windows CE</a></font></li> |
| <li><font face="Arial" size="2"> |
| <a href="#Support for Visual C++ 2005 Express">Support for Visual C++ 2005 |
| Express</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Notes">Notes</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Changes Between WTL 8.0 And 7.5">Changes Between WTL |
| 8.0 And 7.5</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Changes Between WTL 7.5 And 7.1">Changes Between WTL 7.5 And 7.1</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Changes Between WTL 7.1 And 7.0">Changes Between WTL |
| 7.1 And 7.0</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Changes Between WTL 7.0 And 3.1">Changes Between WTL |
| 7.0 And 3.1</a></font></li> |
| <li><font face="Arial" size="2"><a href="#Changes Between WTL 3.1 And 3.0">Changes Between WTL 3.1 And 3.0</a></font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial"> |
| <b><a name="Introduction"></a>Introduction</b></font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Windows Template Library, or WTL, is a set of |
| classes that extend ATL to support more complex user interfaces for either |
| applications or various UI components, while maintaining the big advantage of |
| ATL - small and fast code. WTL classes were designed to be the best and the |
| easiest way to implement rich Win32 based UI for ATL based applications, |
| servers, components, and controls.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">WTL provides support for implementing |
| many |
| user interface elements, from frame and popup windows, to MDI, standard and |
| common controls, common dialogs, property sheets and pages, GDI objects, UI |
| updating, scrollable windows, splitter windows, command bars, etc. The WTL |
| classes are mostly templated and use minimal instance data and inline functions. |
| They were not designed as a framework, so they do not force a particular |
| application model, and can accommodate any. The classes do not use hooks or |
| thread local storage, so they have no restrictions that those techniques impose. |
| They also have no inter-dependencies and can be freely mixed with straight SDK |
| code. In summary, WTL delivers very small and efficient code, very close in size |
| and speed to SDK programs, while presenting a more logical, object oriented |
| model to a programmer.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial"> |
| <b><a name="Features And Installation"></a>Features And Installation</b></font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">This is the sixth public release |
| of WTL, after WTL 3.0, 3.1, 7.0, 7.1, and 7.5. It is also the second release of WTL |
| under the open license, enabling developers from the WTL community to |
| contribute to the library.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">WTL classes can be used with either VC++ 6.0 and ATL 3.0, VC++ .NET |
| 2002 and ATL 7.0, VC++ .NET 2003 and ATL 7.1, VC++ 2005 with ATL 8.0, or EVC++ 4.0 or 3.0 with ATL for |
| Windows CE. AppWizard for VC++ .NET 2002 and 2003, and Visual C++ 2005 is |
| included.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">The WTL classes are provided in |
| header files located in the include directory. The only header files that must |
| be included is atlapp.h, while others can be used when needed. The name of the |
| file doesn't mean that you have to create an application, just that |
| atlapp.h contains base definitions required for WTL projects.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">To install WTL, just copy the whole directory |
| structure, or unpack the archive file, to the location of your choice. Please be sure to |
| <b>add the WTL\include |
| directory</b> to the list of include directories in VC++, so that the compiler |
| can find them when you include them in your projects..</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Setup programs for the AppWizard are provided. After executing the setup scripts, ATL/WTL AppWizard will appear in the list of AppWizards when you select File.New.Project |
| in VC++ IDE. The file AppWiz\setup70.js is the setup script for VC++ .NET 2002, AppWiz\setup71.js is for VC++ |
| .NET 2003, and AppWiz\setup80.js is for VC++ 2005. AppWizCE\setup80.js is setup |
| script for VC++ 2005 SmartDevice projects.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">To manually install AppWizard |
| for VC++ .NET 2002/2003, copy all WTLAppWiz.* files from AppWiz\Files to VC++ .NET |
| projects directory, %VC7DIR%\Vc7\vcprojects, where %VC7DIR% is the directory |
| where VC++ .NET 2002/2003 is installed. After that, open WTLAppWiz.vsz and modify the |
| like that contains ABSOLUTE_PATH to contain %WTLDIR%\AppWiz\Files, where |
| %WTLDIR% is the directory where WTL files are.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Platform support and |
| requirements:</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"> Compiler/IDE/ATL:</font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| Visual C++ 6.0 (ATL 3.0)</font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| Visual C++.NET 2002 (ATL 7.0)</font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| Visual C++.NET 2003 (ATL 7.1)</font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| Visual C++ 2005 (ATL 8.0)</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"> SDK |
| (optional):</font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| Any Platform SDK from January 2000 release up to the latest Windows SDK</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"> Windows CE |
| development:</font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| eMbedded Visual C++ 3.0 - Pocket PC, Pocket PC 2002</font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| eMbedded Visual C++ 4.0 - STANDARDSDK_410, Pocket PC 2003, Smartphone 2003, |
| </font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| STANDARDSDK_500, Pocket PC 2003 SE, Smartphone 2003 SE</font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| Visual C++ 2005 - Pocket PC 2003 SE, Smartphone 2003 SE, STANDARDSDK_500,</font></p> |
| <p style=margin:0in><span class="style2"> |
| </span><font face="Arial" size="2">Windows Mobile 5.0 (Pocket PC and Smartphone),<br> |
| |
| Windows Mobile 6.0 (Standard and Professional)</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial"> |
| <b><a name="Packing List"></a>Packing List</b></font></p> |
| <p style=margin:0in> </p> |
| <table border="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="497" id="AutoNumber2"> |
| <tr> |
| <td width="136"><font face="Arial" size="2">File Name</font><font face="Arial">:</font></td> |
| <td width="358"><font face="Arial" size="2">Description:</font></td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"><hr></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2">readme.htm</font></td> |
| <td width="358"><font face="Arial" size="2">this file</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2">Ms-PL.txt</font></td> |
| <td width="358"><font face="Arial" size="2">license</font></td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"> </td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"><font face="Arial" size="2">include\</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlapp.h</font></td> |
| <td width="358"><font face="Arial" size="2">message loop, interfaces, |
| general app stuff</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlcrack.h</font></td> |
| <td width="358"><font face="Arial" size="2">message cracker macros</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlctrls.h</font></td> |
| <td width="358"><font face="Arial" size="2">standard and common control |
| classes</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlctrlw.h</font></td> |
| <td width="358"><font face="Arial" size="2">command bar class</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlctrlx.h</font></td> |
| <td width="358"><font face="Arial" size="2">bitmap button, check list view, |
| and other controls</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlddx.h</font></td> |
| <td width="358"><font face="Arial" size="2">data exchange for dialogs and |
| windows</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atldlgs.h</font></td> |
| <td width="358"><font face="Arial" size="2">common dialog classes, property |
| sheet and page classes</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlfind.h</font></td> |
| <td width="358"><font face="Arial" size="2">Find/Replace support for Edit |
| and RichEdit</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlframe.h</font></td> |
| <td width="358"><font face="Arial" size="2">frame window classes, MDI, |
| update UI classes</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlgdi.h</font></td> |
| <td width="358"><font face="Arial" size="2">DC classes, GDI object classes</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlmisc.h</font></td> |
| <td width="358"><font face="Arial" size="2">WTL ports of CPoint, CRect, |
| CSize, CString, etc.</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlprint.h</font></td> |
| <td width="358"><font face="Arial" size="2">printing and print preview</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlres.h</font></td> |
| <td width="358"><font face="Arial" size="2">standard resource IDs</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlresce.h</font></td> |
| <td width="358"><font face="Arial" size="2">standard resource IDs for |
| Windows CE</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlscrl.h</font></td> |
| <td width="358"><font face="Arial" size="2">scrollable windows</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlsplit.h</font></td> |
| <td width="358"><font face="Arial" size="2">splitter windows</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atltheme.h</font></td> |
| <td width="358"><font face="Arial" size="2">Windows XP theme classes</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atluser.h</font></td> |
| <td width="358"><font face="Arial" size="2">menu class, USER object classes</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlwince.h</font></td> |
| <td width="358"><font face="Arial" size="2">specific support for Windows CE |
| Mobile platforms</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> atlwinx.h</font></td> |
| <td width="358"><font face="Arial" size="2">extensions of ATL windowing |
| support</font></td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"> </td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"><font face="Arial" size="2">Samples\</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> Aero\...</font></td> |
| <td width="358"><font face="Arial" size="2">Vista Aero glass showcase</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> Alpha\...</font></td> |
| <td width="358"><font face="Arial" size="2">Windows XP 32-bit (alpha) |
| toolbar images</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> BmpView\...</font></td> |
| <td width="358"><font face="Arial" size="2">bitmap file view sample</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> GuidGen\...</font></td> |
| <td width="358"><font face="Arial" size="2">WTL version of the GuidGen |
| sample</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> ImageView\...</font></td> |
| <td width="358"><font face="Arial" size="2">Full-featured PPC frame-view |
| application</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> MDIDocVw\...</font></td> |
| <td width="358"><font face="Arial" size="2">WTL version of the MDI sample</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> MiniPie\...</font></td> |
| <td width="358" class="style2">p<font size="2">ort of the SDK sample for |
| Mobile devices</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> MTPad\...</font></td> |
| <td width="358"><font face="Arial" size="2">multithreaded notepad sample</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> SPControls\...</font></td> |
| <td width="358"><font face="Arial" size="2">Barebone SmartPhone dialog |
| application</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> TabBrowser\...</font></td> |
| <td width="358"><font face="Arial" size="2">Web browser using TabView</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> Wizard97Test\...</font></td> |
| <td width="358"><font face="Arial" size="2">Wizard97 showcase |
| sample</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> WTLExplorer\...</font></td> |
| <td width="358"><font face="Arial" size="2">Explorer-like application |
| sample</font></td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"> </td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"><font face="Arial" size="2">AppWiz\</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> setup70.js</font></td> |
| <td width="358"><font face="Arial" size="2">AppWizard setup program for VC++ |
| .NET 2002</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> setup71.js</font></td> |
| <td width="358"><font face="Arial" size="2">AppWizard setup program for VC++ |
| .NET 2003</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> setup80.js</font></td> |
| <td width="358"><font face="Arial" size="2">AppWizard setup program for VC++ |
| 2005</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> setup80x.js</font></td> |
| <td width="358"><font face="Arial" size="2">AppWizard setup program for VC++ |
| 2005 Express</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> Files\...</font></td> |
| <td width="358"><font face="Arial" size="2">WTL AppWizard for VC++ .NET 2002 and |
| 2003 files</font></td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"> </td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"><font face="Arial" size="2">AppWizCE\</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> setup80.js</font></td> |
| <td width="358"><font face="Arial" size="2">AppWizard setup program for VC++ |
| 2005</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> Files\...</font></td> |
| <td width="358"><font face="Arial" size="2">WTL AppWizard for VC++ 2005 files</font></td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"> </td> |
| </tr> |
| <tr> |
| <td width="494" colspan="2"><font face="Arial" size="2">AppWizMobile\</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> setup80.js</font></td> |
| <td width="358"><font face="Arial" size="2">AppWizard Mobile setup program for VC++ |
| 2005</font></td> |
| </tr> |
| <tr> |
| <td width="136"><font face="Arial" size="2"> Files\...</font></td> |
| <td width="358"><font face="Arial" size="2">WTL AppWizard Mobile for VC++ 2005 files</font></td> |
| </tr> |
| </table> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial"> |
| <b><a name="Class Overview"></a>Class Overview</b></font></p> |
| <p style=margin:0in> </p> |
| <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber4"> |
| <tr> |
| <td><font face="Arial" size="2">usage: |
| </font></td> |
| <td><font face="Arial" size="2"><b>mi base</b></font></td> |
| <td> -</td> |
| <td><font face="Arial" size="2"> a base class (multiple |
| inheritance)</font></td> |
| </tr> |
| <tr> |
| <td> </td> |
| <td><font face="Arial" size="2"><b>client</b></font></td> |
| <td> -</td> |
| <td><font face="Arial" size="2"> wrapper class for a handle</font></td> |
| </tr> |
| <tr> |
| <td> </td> |
| <td><font face="Arial" size="2"><b>as-is</b></font></td> |
| <td> -</td> |
| <td><font face="Arial" size="2"> to be used directly</font></td> |
| </tr> |
| <tr> |
| <td> </td> |
| <td><font face="Arial" size="2"><b>impl</b></font></td> |
| <td> -</td> |
| <td><font face="Arial" size="2"> implements a window (has |
| WindowProc) or other support</font></td> |
| </tr> |
| <tr> |
| <td> </td> |
| <td><font face="Arial" size="2"><b>helper</b></font></td> |
| <td> -</td> |
| <td><font face="Arial" size="2"> a helper class</font></td> |
| </tr> |
| <tr> |
| <td> </td> |
| <td><font face="Arial" size="2"><b>base</b></font></td> |
| <td> -</td> |
| <td><font face="Arial" size="2"> implementation base class</font></td> |
| </tr> |
| </table> |
| <p style=margin:0in> </p> |
| <table border="1" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" id="AutoNumber1" width="600"> |
| <tr> |
| <td width="220"><b><font face="Arial" size="2">class name:</font></b></td> |
| <td width="114"><b><font face="Arial" size="2">usage:</font></b></td> |
| <td width="253"><b><font face="Arial" size="2">description:</font></b></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font size="2" face="Arial"><br>App/module support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAppModule</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">app support, CComModule derived</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CServerAppModule</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">module for COM servers</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMessageLoop</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">message loop</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMessageFilter</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi base</font></td> |
| <td width="255"><font face="Arial" size="2">message filter interface</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CIdleHandler</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi base</font></td> |
| <td width="255"><font face="Arial" size="2">idle time handler interface</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Frame windows</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFrameWindowImplBase</font></b></td> |
| <td width="115"><font face="Arial" size="2">base</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFrameWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">frame window support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">COwnerDraw</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi base</font></td> |
| <td width="255"><font face="Arial" size="2">owner-draw msg map and handlers</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDialogResize</font> |
| </b></td> |
| <td width="115"><font face="Arial" size="2">impl mi base</font></td> |
| <td width="255"><font face="Arial" size="2">support for resizing dialogs</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDoubleBufferImpl</font> |
| </b></td> |
| <td width="115"><font face="Arial" size="2">impl mi</font></td> |
| <td width="255"><font face="Arial" size="2">double-buffer painting support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDoubleBufferWindowImpl</font> |
| </b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">double-buffer painting window</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>MDI windows</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMDIWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">MDI methods</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMDIFrameWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">MDI frame window</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMDIChildWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">MDI child window</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Update UI</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CUpdateUIBase</font></b></td> |
| <td width="115"><font face="Arial" size="2">base</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CUpdateUI</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi base class</font></td> |
| <td width="255"><font face="Arial" size="2">provides support for UI update</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDynamicUpdateUI</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi base class</font></td> |
| <td width="255"><font face="Arial" size="2">provides dynamic support for UI update</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Standard controls</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStatic</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">static ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CButton</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">button ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CListBox</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">list box ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CComboBox</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">combo box ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CEdit</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">edit ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CEditCommands</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255"><font face="Arial" size="2">standard edit command support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CScrollBar</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">scroll bar ctrl</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Common controls</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CImageList</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">image list</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CListViewCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">list view ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTreeViewCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">tree view ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTreeItem</font></b></td> |
| <td width="115"><font face="Arial" size="2">helper</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTreeViewCtrlEx</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">uses CTreeItem</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CHeaderCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">header bar ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CToolBarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">toolbar ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStatusBarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">status bar ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTabCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">tab ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CToolTipCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">tool tip ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CToolInfo</font></b></td> |
| <td width="115"><font face="Arial" size="2">helper</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTrackBarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">trackbar ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CUpDownCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">up-down ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CProgressBarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">progress bar ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CHotKeyCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">hot key ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAnimateCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">animation ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRichEditCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">rich edit ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRichEditCommands</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255"><font face="Arial" size="2">std rich edit commands support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDragListBox</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">drag list box</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDragListNotifyImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi class</font></td> |
| <td width="255"><font face="Arial" size="2">support for notifications</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CReBarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">rebar ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CComboBoxEx</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">extended combo box</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDateTimePickerCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">date-time ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFlatScrollBarImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi impl</font></td> |
| <td width="255"><font face="Arial" size="2">flat scroll bars support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFlatScrollBar</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">flat scroll bars support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CIPAddressCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">IP address ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMonthCalendarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">month calendar ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCustomDraw</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi class</font></td> |
| <td width="255"><font face="Arial" size="2">custom draw handling support</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Windows CE controls</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCECommandBarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">command bar ctrl</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCECommandBandsCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">command bands ctrl</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Property sheet & page</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPropertySheetWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPropertySheetImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">property sheet </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPropertySheet</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPropertyPageWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPropertyPageImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">property page</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPropertyPage</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAxPropertyPageImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">property page with ActiveX</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAxPropertyPage</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWizard97SheetWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWizard97SheetImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Wizard97 property sheet</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWizard97Sheet</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWizard97PageWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWizard97PageImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Wizard97 property page</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWizard97ExteriorPageImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Wizard97 exterior page</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWizard97InteriorPageImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Wizard97 interior page</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAeroWizardFrameWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAeroWizardFrameImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Aero Wizard frame</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAeroWizardFrame</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAeroWizardPageWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAeroWizardPageImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Aero Wizard page</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAeroWizardPage</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAeroWizardAxPageImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Aero Wizard page with ActiveX</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAeroWizardAxPage</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Common dialogs</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFileDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">GetOpenFileName/GetSaveFileName</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFileDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMultiFileDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Multi-select GetOpenFileName</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMultiFileDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CShellFileDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">base</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CShellFileOpenDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Shell File Open dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CShellFileOpenDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CShellFileSaveDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Shell File Save dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CShellFileSaveDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFolderDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">directory picker</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFolderDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFontDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">ChooseFont common dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFontDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRichEditFontDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">ChooseFont for rich edit</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRichEditFontDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CColorDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">ChooseColor common dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CColorDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">PrintDlg common dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintDialogExImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">new Win2000 print dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintDialogEx</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPageSetupDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">PageSetupDlg common dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPageSetupDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFindReplaceDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">FindText/ReplaceText</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFindReplaceDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>User support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMenu</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">menu support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMenuItemInfo</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">MENUITEMINFO wrapper</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAccelerator</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">accelerator table</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CIcon</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">icon object</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCursor</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">cursor object</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CResource</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">generic resource object</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>GDI support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDC</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">DC support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPaintDC</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">for handling WM_PAINT</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CClientDC</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">for GetDC</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWindowDC</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">for GetWindowDC</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMemoryDC</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">in-memory DC</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPen</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">GDI pen object</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBrush</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">GDI brush object</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CLogFont</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">LOGFONT wrapper</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFont</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">GDI font object</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBitmap</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">GDI bitmap object</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPalette</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">GDI palette object</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRgn</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">GDI region object</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Enhanced controls</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCommandBarCtrlImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">command bar</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCommandBarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBitmapButtonImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">bitmap button</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBitmapButton</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCheckListViewCtrlImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">check list box</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCheckListViewCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CHyperLinkImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">hyper link control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CHyperLink</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWaitCursor</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">wait cursor</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCustomWaitCursor</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">custom and animated wait cursor</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMultiPaneStatusBarCtrlImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">status bar with multiple panes</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMultiPaneStatusBarCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPaneContainerImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">pane window container</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPaneContainer</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSortListViewImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">sorting list view control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSortListViewCtrlImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSortListViewCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTabViewImpl;</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">tab view window</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTabView</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Scrolling window support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CScrollImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi</font></td> |
| <td width="255"><font face="Arial" size="2">scrolling support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CScrollWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">scrollable window</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMapScrollImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi</font></td> |
| <td width="255"><font face="Arial" size="2">scrolling support with map modes</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMapScrollWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">scrollable window with map modes</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CZoomScrollImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi</font></td> |
| <td width="255"><font face="Arial" size="2">zooming support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CZoomScrollWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">zooming window</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CScrollContainerImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">scroll container window</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CScrollContainer</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Splitter window support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSplitterImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi</font></td> |
| <td width="255"><font face="Arial" size="2">splitter support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSplitterWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">splitter window</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSplitterWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Theming support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTheme</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">Windows XP theme</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CThemeImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">theming support for a window</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Buffered paint and animation support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBufferedPaint</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">buffered paint</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBufferedPaintImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi</font></td> |
| <td width="255"><font face="Arial" size="2">buffered paint support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBufferedPaintWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">window with buffered paint</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBufferedAnimation</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255" class="style2">b<font size="2">uffered animation</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBufferedAnimationImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl mi</font></td> |
| <td width="255"><font face="Arial" size="2">buffered animation support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CBufferedAnimationWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">window with buffered animation</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Edit and RichEdit Find/Replace support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CEditFindReplaceImplBase</font></b></td> |
| <td width="115"><font face="Arial" size="2">base</font></td> |
| <td width="255" class="style2"> </td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CEditFindReplaceImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255"><font face="Arial" size="2">Edit Find/Replace support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRichEditFindReplaceImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255" class="style2"><font face="Arial" size="2">RichEdit Find/Replace support</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Printing support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrinterInfo</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">print info support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrinter</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">printer handle wrapper</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDevMode</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">DEVMODE wrapper</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrinterDC</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">printing DC support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintJobInfo</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">print job info</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintJob</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">print job support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintPreview</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255"><font face="Arial" size="2">print preview support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintPreviewWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">print preview window</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPrintPreviewWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CZoomPrintPreviewWindowImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">zooming print preview window</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CZoomPrintPreviewWindow</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Miscellaneous</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSize</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">WTL port of MFC's CSize</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CPoint</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">WTL port of MFC's CPoint</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRect</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">WTL port of MFC's CRect</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CString</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">WTL port of MFC's CString</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CWinDataExchange</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255"><font face="Arial" size="2">data exchange for controls</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRecentDocumentList</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi or as-is</font></td> |
| <td width="255"><font face="Arial" size="2">support for MRU list</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFindFile</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">file search support</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>In-memory dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CMemDlgTemplate</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">In-memory dialog template</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CIndirectDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">In-memory dialog class</font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Task dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTaskDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Task Dialog in Vista</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTaskDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2"> </font></td> |
| </tr> |
| <tr> |
| <td colspan="3" width="593"><font face="Arial" size="2"><br>Windows CE support</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdDialogBase</font></b></td> |
| <td width="115"><font face="Arial" size="2">base</font></td> |
| <td width="255"><font face="Arial" size="2">standard dialog base class</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">standard dialog implementation</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdSimpleDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">standard simple dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdDialogResizeBase</font></b></td> |
| <td width="115"><font face="Arial" size="2">base</font></td> |
| <td width="255"><font face="Arial" size="2">orientation aware standard dialog base class</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdDialogResizeImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">orientation aware standard dialog implementation</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdSimpleDialogResizeImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">standard resizing simple dialog implementation</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdOrientedDialogBase</font></b></td> |
| <td width="115"><font face="Arial" size="2">base</font></td> |
| <td width="255"><font face="Arial" size="2">oriented dialog base class</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdOrientedDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">oriented dialog implementation</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CStdSimpleOrientedDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">as-is</font></td> |
| <td width="255"><font face="Arial" size="2">standard simple oriented dialog</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAppInfoBase</font></b></td> |
| <td width="115"><font face="Arial" size="2">base</font></td> |
| <td width="255"><font face="Arial" size="2">application state save/restore to registry</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAppInfoT</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">CAppInfoBase constructed from a CAppWindow<T></font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAppWindow<></font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255"><font face="Arial" size="2">PPC/SmartPhone well-behaved application window class</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAppDialog</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255"><font face="Arial" size="2">PPC/SmartPhone well-behaved application non-modal dialog class</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CAppStdDialogImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">PPC/SmartPhone implementation of non-modal standard dialog application</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CFullScreenFrame</font></b></td> |
| <td width="115"><font face="Arial" size="2">impl</font></td> |
| <td width="255"><font face="Arial" size="2">Full screen frame class</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CZoomScrollImpl</font></b></td> |
| <td width="115"><font face="Arial" size="2">mi</font></td> |
| <td width="255"><font face="Arial" size="2">WinCE zooming implementation</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CHtmlCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">HTML control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CRichInkCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">RichInk control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CInkXCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">InkX control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CVoiceRecorderCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">VoiceRecorder control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CDocListCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">DocList control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CCapEdit</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">CapEdit control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTTStatic</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">TT Static control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CTTButton</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">TT Button control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSpinCtrl</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">Spin control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CSpinListBox</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">Spin List Box control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CExpandListBox</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">Expand List Box control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CExpandEdit</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">Expand Edit control</font></td> |
| </tr> |
| <tr> |
| <td width="221"><b><font face="Arial" size="2">CExpandCapEdit</font></b></td> |
| <td width="115"><font face="Arial" size="2">client</font></td> |
| <td width="255"><font face="Arial" size="2">Expand CapEdit control</font></td> |
| </tr> |
| </table> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial"> |
| <b><a name="ATL/WTL AppWizard"></a>ATL/WTL AppWizard</b></font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">ATL/WTL AppWizard generates starting code for a |
| WTL application. It has options to create code for different application types and features.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">You can choose the following options:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Application type (SDI, multi thread SDI, MDI, |
| TabView, Explorer, dialog based)</font></li> |
| <li><font face="Arial" size="2">Support for hosting ActiveX controls</font></li> |
| <li><font face="Arial" size="2">COM server support</font></li> |
| <li><font face="Arial" size="2">Class implementation in .CPP files</font></li> |
| <li><font face="Arial" size="2">Common Control manifest</font></li> |
| <li class="style2">U<font size="2">nicode character set</font></li> |
| <li><font face="Arial" size="2">Toolbar, rebar, command bar, status bar</font></li> |
| <li><font face="Arial" size="2">View window, and it's type (generic, dialog |
| based form, or a list box, edit, list view, tree view, rich edit based, HTML |
| page, scroll window)</font></li> |
| <li><font face="Arial" size="2">For dialog based apps or a form based view |
| window - support for hosting ActiveX controls in the dialog</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">ATL/WTL AppWizard supports VC++ |
| .NET 2002 and 2003,and VC++ 2005.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><b><font face="Arial"> |
| <a name="Support for Windows CE"></a>Support for |
| Windows CE</font></b></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">WTL now fully supports building |
| projects for the Windows CE platforms. This initial support for Windows CE was implemented primarily for |
| eMbedded Visual C++ 4.0 with Pocket PC 2003 and |
| SmartPhone 2003 SDKs. However, it can be used with other versions and |
| configurations. For instance, Standard SDK 4.1 or 5.0 is supported as well. Considerable effort was made to provide the best Windows CE support, |
| however, there might be some limitations because different platforms provide different |
| programming support. SmartDevice projects with Visual Studio 2005 are also |
| supported, and it also includes an AppWizard for VS2005.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">The support for Windows CE was |
| not designed to port projects for the desktop version of Windows as-is to the |
| Windows CE platforms, but to allow use of the same library, WTL, for both |
| desktop Windows and Windows CE. Applications for Windows CE are often designed |
| in a different way, and they use different platform services. WTL depends on the |
| version of ATL provided with each Windows CE platform, and supports controls and |
| services that are appropriate and supported for each Windows CE platform.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><b><font face="Arial"> |
| <a name="Support for Visual C++ 2005 Express"></a>Support for |
| Visual C++ 2005 Express</font></b></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">WTL 8.0 supports using Visual |
| C++ Express Edition to build projects. Since Visual C++ 2005 Express ships without ATL, you have |
| to use a version of ATL that ships with the Platform SDK.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">The WTL App Wizard can be |
| installed by running AppWiz\setup80x.js program. The App Wizard generates code |
| in the stdafx.h file that allows use of ATL3 from the Platform SDK. That code is |
| used if WTL_USE_SDK_ATL3 is defined, so you can comment the line in stdafx.h |
| that defines WTL_USE_SDK_ATL3 to use the project with different versions of |
| Visual C++ or ATL.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Note that Release builds will |
| generate some warnings, since ATL3 from Platform SDK is an old version of ATL |
| which doesn't quite match the newer compiler and CRT files. You can ignore those |
| warnings, as they do not indicate any real problems with the code.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><b><font face="Arial"> |
| <a name="Notes"></a>Notes</font></b></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"><b>~</b> WTL provides |
| several classes that are also present in ATL 7.0 and 7.1. The classes are: <b> |
| CSize</b>, <b>CPoint</b>, <b>CRect</b>, and <b>CString</b> in atlmisc.h. |
| While their existence will not cause any problems, their usage might. You should |
| qualify the class you want to use with a namespace to resolve ambiguity, either |
| ATL or WTL namespace, depending on which implementation you want to use. |
| Alternatively, you can conditionally exclude WTL implementations, by defining |
| preprocessor symbol <b>_WTL_NO_WTYPES</b> for CSize, CPoint, and CRect; and <b>_WTL_NO_CSTRING</b> |
| for CString.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"><b>~</b> If |
| you use WTL 8.0 with VC++ 6.0/ATL 3.0 and define _ATL_STATIC_REGISTRY, you'll |
| get errors referring to the ambiguous symbol ATL. This is caused by a bug in ATL |
| 3.0 - in atlbase.h, the file statreg.h is included inside of the ATL namespace, |
| and it contains another namespace ATL declaration. Because of that, the compiler |
| cannot decide between ATL:: and ATL::ATL:: namespaces. The solution is either to |
| fix the atlbase.h, or to surround atlbase.h include declaration with following |
| statements:</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"><b> #define |
| ATL ATLFIX</b></font></p> |
| <p style=margin:0in><font face="Arial" size="2"> #include <atlapp.h></font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| <b> #undef ATL</b></font></p> |
| <p style=margin:0in><font face="Arial" size="2"> |
| <b> namespace ATL = ::ATLFIX;</b></font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"><b>~</b> |
| Windows XP allows applications to use Common Controls version 6, which supports |
| only Unicode applications. While WTL allows creation of Ansi applications that |
| use Common Controls 6, that should be used only for test programs and is not |
| recommended or supported for released projects. If you want to use Common |
| Controls 6, build your application as Unicode.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"><b>~</b> |
| If you build your app that hosts ActiveX controls |
| with VC++ 7.x, you can see this assert failing:<br> |
| <span class="style2"><strong><br> |
| !InlineIsEqualGUID(*m_plibid, GUID_NULL) && "Did you forget |
| to pass the LIBID to CComModule::Init?"<br> |
| <br> |
| </strong></span>There are two ways to fix this:</font></p> |
| <ul> |
| <li> |
| <p style=margin:0in><span class="style2">In the main .CPP file of your |
| project, replace the line<br> |
| <strong> hRes = _Module.Init(NULL, hInstance);<br> |
| </strong>with this one<br> |
| <strong> hRes = _Module.Init(NULL, hInstance, &LIBID_ATLLib);<br> |
| </strong></span></p> |
| </li> |
| <li> |
| <p style=margin:0in><span class="style2">Compile you project with _ATL_DLL |
| defined (dynamic link to ATL)</span></p> |
| </li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2"><b>~</b> |
| Several of the sample programs included with WTL were extended to support |
| building for Windows CE. These samples are not specially redesigned for Windows |
| CE, but just modified to allow you to compile and run them on the Windows CE |
| platforms. The samples are: BmpView, GuidGen, and MTPad.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"><b>~</b> WTL |
| supports building projects with EVC++ 3.0 only for Pocket PC and Pocket PC 2002 |
| platforms, as other platforms don't provide minimum support for ATL or other |
| required libraries.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2"><b>~</b> The |
| old AppWizards for VC++ 6.0 and eVC++ 4.0/3.0 are not included in this version |
| of WTL because they cannot be a part of an Open Source project. They are still |
| available in the previous release, WTL 7.1.</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><b><font face="Arial"> |
| <a name="Changes Between WTL 8.0 And 7.5"></a>Changes Between WTL 8.0 And 7.5</font></b></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">New and improved:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">RunTimeHelper functions for |
| correct struct sizes on different versions of Windows<br>ModuleHelper functions for uniform support of ATL3 and ATL7 module classes<br>SecureHelper functions for support of secure and non-secure run-time |
| functions<br>Support for new Vista features:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Support for new messages for common controls, dialogs, etc.</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Support for TaskDialog</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">New Shell file dialogs (IFileOpenDialog and IFileSaveDialog)</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">New Aero Wizard support classes</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">New classes for Buffered Paint and Buffered Animation</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2">New TabView classes<br>New dialog class that uses in-memory dialog templates<br>New CMultiFileDialogImpl and CMultiFileDialog classes that support |
| multi-select file dialogs<br>Added message cracker handler prototypes for all handlers<br>Replaced use of _alloca with CTempBuffer everywhere (and added CTempBuffer |
| version for ATL3)<br>New classes for find/replace support for Edit or RichEdit<br>New class CFileDialogEx that supports GetOpenFileNameEx for Windows Mobile 5<br> |
| New features for the App Wizard:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">New default version values</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Unicode build option</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Support for TabView applications</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Support for Explorer applications</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2">Updates for the desktop App Wizard:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added calls to set font for views based on controls that use font</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added scroll window as another view type</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2">Support for VC2005 Express:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Setup for VS2005x</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Changes in default.js to take into account that VC2005x does not have a |
| resource editor</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Generated code allows use of ATL3 from the Platform SDK</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2">New AppWizard for Mobile 2003 and 2005 platforms<br> |
| New samples:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Aero - demonstrates the |
| Vista Glass UI</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">MiniPie - Windows Mobile 2005 PPC and Smartphone sample</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">TabBrowser - a web browser using TabView class</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2">MTPad sample updated to show usage of CRichEditFindReplaceImpl and |
| CEditCommands/CRichEditComma</font></p> |
| </blockquote> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Fixes and enhancements:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">Command Bar:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added support for menu items |
| with bitmaps on Vista</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Keyboard cues shown |
| even if the window is disabled</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CFolderDialog:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added support for PIDLs in |
| addition to the file path</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Replaced use of SHGetMalloc |
| with CoTaskMemFree</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Scroll Windows:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CZoomScrollImpl - some |
| methods should be overridable</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added support for |
| WM_MOUSEHWHEEL in CScrollImpl</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">App Wizard:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: AppWizard fails to add |
| files if C:\Temp does not exist</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: App Wizard generates |
| security warning when loaded</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: App Wizard generates |
| level 4 warning for modal dlg project</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: App Wizard setupXX.js |
| scripts silently fail on Vista</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Added code to |
| unregister message filer and idle processing</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Added WS_CLIPSIBLINGS |
| to dialog forms to avoid rebar drawing problems</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">App Wizard CE:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: App Wizard CE should |
| not have rich edit as a view option</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: App Wizard CE generates |
| level 4 warnings for single instance apps</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added support for Windows |
| Mobile 6 SDKs</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Cracked Handlers:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Corrected MSG_WM_TIMER |
| and handler prototype, removed unused argument (breaking change)</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: atlcrack.h does not |
| support WTL namespace</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CDialogResize:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added SetIcon(NULL, FALSE) |
| for CDialogResize to remove the generic icon for resizable dialogs</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Enabled size/move for |
| both X and Y</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added center flags for |
| controls</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CFrameWindowImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Const issue with title |
| argument of AddSimpleReBarBand</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: DECLARE_FRAME_WND_CLASS |
| definition missing WTL namespace</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Windows CE:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Some symbols not |
| defined for CE 4.0</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Incorrect WinCE |
| exclusions</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Pocket PC - assert |
| after navigating a CHyperLink</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Property sheet with |
| listview on WM5.0 causes stack overflow</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CFindFile::GetFilePath() |
| fails on diskless root requests</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: VS 2005 dialog editor |
| bug - DS_FIXEDSYS used but not defined</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Windows Mobile 2005 |
| compatibility issues</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CFullScreenFrame on |
| Smartphone 20003</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: SmartPhone back key |
| handling in CAppWindow</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added orientation aware |
| support to CAppStdDialogImpl</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added CAxDialogImpl base for |
| CStdDialogImpl, CStdDialogResizeImpl and CStdOrientedDialogImpl</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added various CStdDialogxxx |
| enhancements</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CStdDialogBase does not |
| scale dialog title on VGA</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: DIBINFO16 triggers code |
| analysis warning</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added LPCTSTR |
| AtlLoadString(UINT uID) - CE only overload</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added imaging draw support |
| to CZoomScrollImpl</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added CBottomTabViewImpl and |
| CBottomTabView classes for PPC</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CFindFile:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CFindFile class uses |
| CRT functions</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: FindFile() uses lstrcpy |
| without checking length</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">General:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Adding ReBar bands |
| fails with new Windows SDK</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added support for relative |
| include paths</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Using std::min and |
| std::max</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Problems using WTL with |
| MFC</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Improved support for Secure |
| CRT</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Changed implementation of |
| CSize, CPoint, CRect, and CString to be inside class definitions</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">atltheme.h: Corrected method |
| signatures for differences in uxtheme.h versions</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Replaced malloc/free with |
| new/delete where appropriate</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Misc:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CString::FormatV can |
| cause GPF with Unicode strings</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CHyperLink: Added handler |
| for WM_SIZE</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CTheme needs |
| constructor from HTHEME handle</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added Add* methods to |
| several control classes in atlctrls.h to augment Insert* methods</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Incorrect casting in |
| CRichEditCtrl::GetLine()</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: |
| CTreeViewCtrl::GetItemState changed to return only state-bits as specified |
| by mask</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CBitmapButton::DoPaint |
| - wrong button image</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added another variant of |
| CDCT::Drawtext with LPTSTR argument that allows text change</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: |
| CRecentDocumentListBase::AddToList() uses lstrcpy</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: AtlLoadString(uID, |
| lpBuffer, nBufferMax) has unnecessary code</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: CCursor::LoadOEMCursor |
| asserts on IDC_HAND</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Memory leak when using |
| CRT functions while printing</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix: Undefined CString |
| namespace</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CPaneContainer: Added border |
| styles</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CSplitterImpl: Added |
| SetSplitterPosPct, and changed App Wizard code to use it</font></p></li> |
| </ul> |
| </blockquote> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><b><font face="Arial"> |
| <a name="Changes Between WTL 7.5 And 7.1"></a>Changes Between WTL 7.5 And 7.1</font></b></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">New and improved:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">VS2005 Compatibility: |
| Added support for Visual Studio 2005 - both desktop and Windows CE<br> |
| Classes for icons, cursors, accelerator tables<br> |
| CSortListViewImpl, CSortListViewCtrlImpl, and CSortListViewCtrl classes<br> |
| Impl classes for Wizard 97 style wizards: CWizard97Sheet, |
| CWizard97Page, CWizard97ExteriorPage, CWizard97InteriorPage<br> |
| CMemoryDC and CDoubleBufferWindowImpl classes<br> |
| Windows CE specific classes in new header, atlwince.h<br> |
| CScrollContainer class<br> |
| CZoomScrollImpl and CZoomScrollWindowImpl classes<br> |
| CZoomPrintPreviewWindowImpl and CZoomPrintPreviewWindow classes<br> |
| Global functions: AtlGetBitmapResourceInfo, |
| AtlGetBitmapResourceBitsPerPixel<br> |
| New REFLECT_* macros to enable selective reflection of messages<br> |
| App Wizard: Added App Wizard for VS2005<br> |
| App Wizard: Added App Wizard for Windows CE for VS2005<br> |
| New samples: WTLExplorer, ImageView, SPControls<br> |
| </font></p> |
| </blockquote> |
| <p style=margin:0in><font face="Arial" size="2">Fixes and enhancements:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">Command Bar:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">DrawBitmapDisabled() |
| doesn't work correctly on Longhorn</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Submenu size not correct if |
| command bar is off-screen</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added handler for |
| WM_SETTINGCHANGE to improve theme color changes</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Better support for |
| 8/16/24-bit images</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Command Bar with 2 Levels of |
| submenus remains active</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Hook procedure fails to call |
| next hook</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">OnDestroy() should not |
| decrement hook use if AttachToWindow() is used</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">MDI Command Bar:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Grows bigger if you |
| switch between two maximized MDI child window types</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Move all hook messages |
| processing to a separate function and use pT</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">MDI icon & buttons should |
| have themed background</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Should make MDI buttons gray |
| when inactive<br> </font></p></li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2">CString:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Helper functions not |
| overloaded properly</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Some return types are |
| 'const CString&' and could be just 'CString&'</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">FormatV() passes size in |
| characters to _alloca, should be in bytes</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fixed stack corruption in |
| FormatV()</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Improved boundaries checking |
| for integer overflows/underflows<br> </font></p></li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2">CScrollImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Scroll bars problem when |
| changing range</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">SetScrollOffset() doesn't |
| move child windows</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Range and thumb drawing |
| problems</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Possible overflow in |
| OnMouseWheel()</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Support for |
| SIF_DISABLENOSCROLL</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added ScrollToView methods</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CMapScrollImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">SetScrollSize() incorrectly |
| inverts xMin and xMax</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">SetScrollSize() uses bRedraw |
| = NULL</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CTheme:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">GetThemeFont() bad parameter |
| ordering</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Uses LOGFONT and TEXTMETRIC |
| incorrectly (SDK header problem)</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CFrameWindowImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Improved sizing for Windows |
| CE</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CreateSimpleToolBarCtrl() |
| should handle 24-bit bitmaps</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Changed WinCE |
| CCECommandBarCtrl typedef and added a PPC CMenuBarCtrl</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">UpdatesBarPosition() doesn't |
| take Windows CE command bar into account</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CDialogResize:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Enabled use for Windows CE</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Add WS_EX_DLGMODALFRAME to |
| prevent empty icon</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CReBarCtrl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Background not painted when |
| resized</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fixed typo in LockBands()</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">MaximizeBand needs BOOL |
| fIdeal argument</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CRichEdit:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">GetSelText() should |
| support UNICODE strings</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">GetSelText() uses lpstr instead of lpstrText</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CHyperLink:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added _xttoi() helper to |
| avoid CRT in _ATL_MIN_CRT</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fixed resource leak by |
| destroying tooltip window<br> </font></p></li> |
| </ul> |
| <p style=margin:0in><font face="Arial" size="2">CPropertySheetImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Improved support for Windows |
| CE</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Sheet without title |
| generates a memory fault on Windows CE</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CFolderDialog:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Add a way to set an initial |
| folder</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Uses BFFM_IUNKNOWN which is |
| not always defined</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Update UI:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Add support to |
| dynamically add UpdateUI elements</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">UIUpdateMenuBarElement() |
| should use EnableMenu() instead of SetMenuItemInfo() for Windows CE</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CDC:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">FillSolidRect() should |
| restore background color</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">GetClipRgn() method |
| missing</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Printing:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2"> |
| CPrinter::CreatePrinterDC() and CreatePrinterIC() members should be |
| const</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CDevMode::CopyToHDEVMODE() is missing a call to GlobalUnlock()</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">AppWizard:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Use WTL subfolder to |
| create WTL category for VC7.x and VC8</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Rename files from |
| WTLApp7x to WTLAppWiz, and add VS2005 setup file</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fixed setup |
| for x64</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">General:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Redefinition of _MAX_FNAME |
| with Dinkumware Standard C++ Library on Windows CE</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added ATLVERIFY macro |
| for ATL3</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Support warning level 4</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Missing methods |
| CToolBarCtrl::SetButtonInfo, InsertButton, CTabCtrl::SetItem, |
| CComboBoxEx::InsertItem, SetItem</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Missing support for |
| WM_PRINTCLIENT</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Removed usage of IsBad* |
| functions</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fixed various compiler |
| warnings</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">TCHAR bugs in various |
| files</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Improved Windows CE support and changes for Visual Studio 2005</font></p></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Misc:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CMDIChildWindowImpl: |
| HMENU should be destroyed in OnDestroy()</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CStatic: Should use |
| STM_SETIMAGE instead of STM_SETICON for SetIcon() on Windows CE</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CButton: GetButtonStyle() |
| uses wrong mask</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CImageList: Made |
| Duplicate() method const</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CListViewCtrl: Made |
| SubItemHitTest() method const</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CTreeViewCtrl: GetItem() |
| and SetItem() incorrectly restricted to _WIN32_IE >= 0x0500</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CMonthCalendarCtrl: |
| GetMonthRange() should be GetMaxTodayWidth()</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CDateTimePickerCtrl: |
| SetFormat() should have const argument</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CBitmapButtonImpl: Fixed |
| resource leak by destroying tooltip window</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2"> |
| CMultiPaneStatusBarCtrlImpl: Cannot handle wide panes without resource |
| strings</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CCheckListViewCtrlImpl: |
| Call CheckSelectedItems() through pT</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CPaneContainerImpl: |
| SetPaneContainerExtendedStyle() should use pT to call CalcSize()</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CFindFile: Enabled for |
| Windows CE</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CPropertyPageImpl: Added |
| handlers for callback messages</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">atlcrack.h: Added return |
| value for MSG_WM_APPCOMMAND</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CMenu: New method variants: AppendMenu, InsterMenu, ModifyMenu</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CFont: Added arguments |
| for bold and italic to CreatePointFont()</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CSize: Added scalar |
| operators for WTL::CSize and ATL::CSize</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CRecentDocumentList: |
| Allow changing the "DocumentCount" and "Document%i" registry values |
| strings</font></p></li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CSplitterWindowImpl: |
| Enabled use for Windows CE</font></p></li> |
| </ul> |
| </blockquote> |
| <p style=margin:0in><br> |
| </p> |
| <p style=margin:0in><b><font face="Arial"> |
| <a name="Changes Between WTL 7.1 And 7.0"></a>Changes Between WTL 7.1 And 7.0</font></b></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">New and improved:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">VC7 Compatibility: Support for |
| ATL7 Module classes and critical sections and AppWizard setup for VC++ 7.1</font></p> |
| <p style=margin:0in><font face="Arial" size="2">Windows CE Support: Full |
| compatibility with Windows CE platforms and AppWizard for eMbedded Visual C++</font></p> |
| <p style=margin:0in><font face="Arial" size="2">Namespace Support: Automatic |
| "using ATL" (ATL7 only) or "using WTL" can now be turned off</font></p> |
| <p style=margin:0in><font face="Arial" size="2">CHyperLink New Features: not |
| underlined, underlined when hover, command button, link tags</font></p> |
| <p style=margin:0in><font face="Arial" size="2">CCustomWaitCursor class |
| supports custom and animated wait cursors</font></p> |
| <p style=margin:0in><font face="Arial" size="2">AtlCreateBoldFont() for |
| creating bold version of an existing font</font></p> |
| </blockquote> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Fixes and enhancements:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">CFrameWindowImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CreateSimpleToolBarCtrl() - |
| remove dead code, improve error checking, add a global function that uses it</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - PrepareChevronMenu() fails to |
| get toolbar strings for Unicode</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CFrameWindowImplBase::Create() |
| - improve ASSERT not to use m_hWnd if creation fails</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CFrameWndClassInfo::Register - |
| should use %p formatting only for _WIN32_WINNT >= 0x0500 or for _WIN64</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Chevron menus not positioned |
| correctly with RTL</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CMDIChildWindowImpl: Problems |
| creating maximized child windows and handling focus</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CMDIChildWindowImpl: Should |
| activate on WM_MOUSEACTIVATE</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">UpdateUI:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Incorrectly clears default |
| item from the system menu in MDI apps</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added UISetCheck with bool |
| instead of int for the check state</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">DDX:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Doesn't provide a way to |
| change floating point precision</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added DDX_CONTROL_HANDLE for |
| non-CWindowImpl objects</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Added DDX_Check variant with |
| bool instead of int for the check state</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Command Bar:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - OnDrawItem() and OnMeasureItem() |
| don't do a good check for owner-draw menu items</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Disabled 32-bit images not |
| painted correctly in 3D menu mode</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Popup menus not positioned |
| correctly with RTL</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Uses GCL_HICONSM instead of |
| GCLP_HICONSM with GetClassLongPtr()</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">MDI Command Bar:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Doesn't refresh icon if MDI |
| children are different</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">OnAllHookMessages() - improve |
| code to handle MDI child window class icon</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - OnNcLButtonDown() uses |
| TPM_VERPOSANIMATION without checking Windows version</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Maximized MDI buttons in wrong |
| place for RTL</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Should adjust cxIdeal for |
| rebar bands for IE4</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Add support for different |
| top-level menu widths by handling ideal size for rebar bands</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">AppWizard:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Doesn't support MSDI |
| application as a COM Server</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - MDI with Form View - stack |
| overflow closing maximized MDI child windows</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Generates VERSION resource |
| name 'test1' regardless of the project name</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Dialog project with control |
| hosting doesn't derive a dialog from CAxDialogImpl</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - COM Server doesn't register |
| type library</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - COM Server doesn't register |
| AppID properly</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CTreeViewCtrl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - GetItemData() needs better |
| return value</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - GetItemState() should use |
| TVM_GETITEMSTATE instead of TVM_GETITEM for IE5</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">GetItem() and SetItem() - |
| added |
| new variants that use TVITEMEX</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - SortChildren() should add |
| recurse flag argument</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CTreeItem doesn't support |
| CTreeViewCtrlExT that has different TBase than CWindow</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CThemeImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Uses scalar delete instead of |
| the vector one</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - EnableThemeDialogTexture() |
| argument is BOOL instead of DWORD</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CFolderDialog:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - EnableOK() passes wrong |
| arguments to BFFM_ENABLEOK</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Always clears m_hWnd, which |
| causes problem for nested messages</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CDialogResize:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - DlgResize_Init() forces dialog |
| to be visible by using SetRedraw()</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Forcing WS_THICKFRAME is not |
| enough to make dialog resizable</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Min track size should be used |
| for child dialogs as well</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - DlgResize_PositionControl() |
| incorrectly checks return value from MapWindowPoints()</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CAppModule:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CAppModule methods not |
| thread-safe</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - AddSettingChangeNotify() |
| unusable in multithreaded apps because of delayed initialization</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CString:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Delete() doesn't allow |
| deleting more than the length of the string</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Append() can cause buffer |
| overrun</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - MakeReverse() can cause an |
| infinite loop</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - _cstrstr() unnecessarily |
| inefficient</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - FindOneOf() is not DBCS-aware</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Format() does not recognize %E</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - TrimLeft() and TrimRight() are |
| only half-way DBCS-aware</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - May cause assertions or |
| undefined behavior with SBCS</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CRecentDocumentList:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - SetMaxEntries() has an |
| incorrect ASSERT</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Add CString variant of the |
| GetFromList() method</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Add a way to replace command |
| IDs used for the MRU list</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Add a way to replace registry |
| key name</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Misc:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CMessageLoop::Run() - improve |
| the loop by checking bDoIdle before calling PeekMessage()</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CServerAppModule: Clean-up |
| unused code</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CServerAppModule::MonitorProc() |
| - no need to call _endthreadex()</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CListBox::GetText() and |
| CComboBox::GetLBText() (CString variants) don't check for LBERR/CB_ERR</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CAxPropertyPageImpl doesn't |
| create ActiveX controls with ATL7</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CDC::GetTextExtentExPoint() |
| missing</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CDC::SetWindowExt() should |
| have default value NULL for the lpSizeRet argument</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CPropertySheetWindow missing |
| methods for PSM_INSERTPAGE, PSM_SETHEADERTITLE, and PSM_SETHEADERSUBTITLE; |
| AddPage should return BOOL</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CMapScrollImpl::SetScrollSize() |
| uses wrong variable</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CHyperLink: WM_UPDATEUISTATE |
| causes repaint without WM_PAINT</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CUpDownCtrl::GetPos() returns |
| incorrect value</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CUpDownCtrl::GetPos32() |
| doesn't have default arg value</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CMultiPaneStatusBarCtrl: |
| Always uses size grip for positioning panes</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CTabCtrl::InsertItem() should |
| return int, not BOOL</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CReBarCtrl: Added LockBands() |
| method</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CFont: uninitialized variable |
| passed to DPtoLP</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CPrintDialogImpl: Crash when |
| displaying Print Setup dialog</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - |
| CPageSetupDialogImpl::PaintHookProc() - should use T* and return UINT_PTR |
| instead of UINT</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CPrintJob doesn't support |
| printing to a file</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CSplitterImpl: Doesn't handle |
| WM_CAPTURECHANGED - can get in an invalid state</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CRichEditCtrl: Add method for |
| EM_SETTABSTOPS</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - CFindFile::GetFilePath() |
| checks for a trailing slash, but doesn't use that info</font></p> |
| </li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">General:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Problems compiling with /Zc:forScope |
| ('for' loop scope conformance)</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Use named constants instead of |
| values for pixel sizes, buffer lengths, etc.</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Support building with Managed |
| C++ (/CLR)</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CMenuItemInfo - add run-time |
| support for different versions of Windows</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">CommCtrl.h change - additional |
| fields in IMAGELISTDRAWPARAMS now depend on _WIN32_IE instead of _WIN32_WINNT</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Incorrect usage of CRegKey::QueryStringValue()</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Operator = for GDI and USER |
| wrappers leaks handle if it's managed variant</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - GDI and USER wrappers break |
| under self-assignments</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Fix - Chaining messages with cracked |
| handlers broken with ATL7</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Initialize all variables and |
| structures prior to use</font></p> |
| </li> |
| <li> |
| <p style=margin:0in><font face="Arial" size="2">Use new common control struct |
| names</font></p> |
| </li> |
| </ul> |
| </blockquote> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><b><font face="Arial"> |
| <a name="Changes Between WTL 7.0 And 3.1"></a>Changes Between WTL 7.0 And 3.1</font></b></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">New classes and features:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">Support for new Common Controls v6 messages</font></p> |
| <p style=margin:0in><font face="Arial" size="2">Support for Visual Studio .NET and ATL 7.0</font></p> |
| <p style=margin:0in><font face="Arial" size="2">WTLApp70 - new AppWizard for Visual Studio |
| .NET</font></p> |
| <p style=margin:0in><font face="Arial" size="2">CThemeImpl - implements support for Windows XP |
| themes</font></p> |
| <p style=margin:0in><font face="Arial" size="2">CMDICommandBarCtrl - implements Command Bar for |
| MDI applications</font></p> |
| </blockquote> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Fixes and enhancements:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">Command Bar:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Bogus assert in OnDestroy</font></li> |
| <li><font face="Arial" size="2">Check marks can be truncated in large font |
| settings</font></li> |
| <li><font face="Arial" size="2">Use pT to access GetSystemSettings, |
| DrawMenuText, DrawBitmapDisabled, Draw3DCheckmark, DoPopupMenu, |
| DoTrackPopupMenu, TakeFocus, GiveFocusBack, so they can be overridden</font></li> |
| <li><font face="Arial" size="2">No hot-tracking if main window is not active</font></li> |
| <li><font face="Arial" size="2">Top level items not painted inactive if app |
| looses activation while drop down menu is displayed</font></li> |
| <li><font face="Arial" size="2">Added Windows XP flat menus support</font></li> |
| <li><font face="Arial" size="2">Drop-down menu doesn't close if clicked |
| again (Windows XP only)</font></li> |
| <li><font face="Arial" size="2">Menu item text and accelerator text too |
| close with some settings</font></li> |
| <li><font face="Arial" size="2">Keyboard can still access clipped menu items</font></li> |
| <li><font face="Arial" size="2">Added support for hiding keyboard navigation |
| indicators until Alt key is pressed (system setting)</font></li> |
| <li><font face="Arial" size="2">Added AddIcon and ReplaceIcon variants for |
| icon resources</font></li> |
| <li><font face="Arial" size="2">Image size calculated differently in |
| different places</font></li> |
| <li><font face="Arial" size="2">Add support for 32-bit (alpha channel) |
| bitmaps for Windows XP</font></li> |
| <li><font face="Arial" size="2">Fixed width calculation for default menu |
| items</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CFrameWindowImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">AddSimpleReBarBandCtrl sets toolbar extended |
| styles without preserving old ones</font></li> |
| <li><font face="Arial" size="2">PrepareChevronMenu should not create menu |
| items for buttons with TBSTATE_HIDDEN</font></li> |
| <li><font face="Arial" size="2">TPM_VERPOSANIMATION will not be defined in |
| atlframe.h if atlctrlw.h is included first</font></li> |
| <li><font face="Arial" size="2">CreateSimpleToolBarCtrl - height might be |
| too small if large font is used</font></li> |
| <li><font face="Arial" size="2">PrepareChevronMenu uses TB_GETBUTTONTEXT, |
| better use TB_GETBUTTONINFO</font></li> |
| <li><font face="Arial" size="2">Chevron menu doesn't close if clicked again |
| (Windows XP only)</font></li> |
| <li><font face="Arial" size="2">Should check local classes for superclassing</font></li> |
| <li><font face="Arial" size="2">Add support for 32-bit (alpha channel) |
| bitmaps for Windows XP</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Update UI:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">UISetText can clear other menu item flags</font></li> |
| <li><font face="Arial" size="2">CUpdateUI::UIUpdateState assigns value with |
| |= instead of =</font></li> |
| <li><font face="Arial" size="2">Added UISetDefault() and fix default state |
| to work with menus</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CString:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">GetBuffer() and GetBufferSetLength() should |
| return NULL in out-of-memory condition</font></li> |
| <li><font face="Arial" size="2">Added missing methods: separate c-tors for |
| LPCSTR and LPCWSTR, CollateNoCase, TrimRight and TrimLeft variants, Find |
| variants, moved FormatV to public</font></li> |
| <li><font face="Arial" size="2">Fix _IsValidString usage</font></li> |
| <li><font face="Arial" size="2">FormatV incorrectly calculates buffer size |
| (too big)</font></li> |
| <li><font face="Arial" size="2">Usage of _ttoi causes problems with _ATL_MIN_CRT |
| in VC7</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CDC:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">GetTabbedTextExtent() should return DWORD |
| instead of BOOL</font></li> |
| <li><font face="Arial" size="2">Add FillRect() that accept color index |
| instead of a brush handle</font></li> |
| <li><font face="Arial" size="2">DrawDragRect() leaks regions and a brush</font></li> |
| <li><font face="Arial" size="2">Improved DitherBlt() - added brushes as |
| arguments for used colors</font></li> |
| <li><font face="Arial" size="2">Added DrawShadowText() (uses LoadLibrary/GetProcAddress |
| to run on older Windows)</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CListViewCtrl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">SetItemState should use LVM_SETITEMSTATE</font></li> |
| <li><font face="Arial" size="2">SetItemCount should return a BOOL</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CRichEditCtrl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Added SetCharFormat() variant that accepts |
| flags (for SCF_ALL)</font></li> |
| <li><font face="Arial" size="2">CharFromPos() should pass a pointer to |
| POINTL in lParam</font></li> |
| <li><font face="Arial" size="2">GetTextRange() - should add Unicode variant |
| for rich edit version >= 2</font></li> |
| <li><font face="Arial" size="2">Added another FormatRange() that can accept |
| a pointer to FORMATRANGE (needed for passing NULL to clear cache)</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CHyperLink:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Allow overriding of Navigate and |
| CalcLabelRect</font></li> |
| <li><font face="Arial" size="2">Doesn't handle right or center alignment</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CColorDialog:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Has static variables that were not |
| initialized with _ATL_MIN_CRT</font></li> |
| <li><font face="Arial" size="2">Fixed HookProc for ColorOK message - the |
| message is not sent, but the hook proc is called directly</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">atlcrack.h:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">MSG_WM_TIMER crack macro should cast to |
| TIMERPROC instead of TIMERPROC*</font></li> |
| <li><font face="Arial" size="2">Add cracked handlers for all new messages in |
| Common Controls 6</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">atlapp.h:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Fixed problems with atlTraceUI with ATL7</font></li> |
| <li><font face="Arial" size="2">#ifdefs for ATL7 were in the wrong place</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">atlctrls.h:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Add support in control classes for all new |
| messages in Common Controls 6</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CRecentDocumentList:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">AtlCompactPath corrupts memory if filename |
| is longer than requested compact size</font></li> |
| <li><font face="Arial" size="2">ReadFromRegistry incorrectly checks for |
| error when reading from registry</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CSplitterWindow:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Incorrect calculation of middle position</font></li> |
| <li><font face="Arial" size="2">3D border now drawn only if WS_EX_CLIENTEDGE |
| is set</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Printing:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Uses DWORD instead of an int for a job ID</font></li> |
| <li><font face="Arial" size="2">CPrintJob::CancelPrintJob shouldn't have a |
| return value</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Misc:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">CRegKey::QueryValue and SetValue are |
| deprecated in ATL7</font></li> |
| <li><font face="Arial" size="2">Added direct support for ATL7</font></li> |
| <li><font face="Arial" size="2">Replace ScreenToClient and ClientToScreen |
| with MapWindowPoints to support RTL layout</font></li> |
| <li><font face="Arial" size="2">CFindFile::GetFilePath(LPTSTR...) returns |
| path without the file name</font></li> |
| <li><font face="Arial" size="2">MDI: Updating client edge in |
| WM_WINDOWPOSCHANGING causes minimize/maximize/restore animation problems, |
| use WM_WINDOWPOSCHANGED</font></li> |
| <li><font face="Arial" size="2">Custom Draw: Added |
| CCustomDraw::OnSubItemPrePaint() overrideable method</font></li> |
| <li><font face="Arial" size="2">CFolderDialogImpl uses 'this' for |
| BROWSEINFO.lParam instead of T*</font></li> |
| <li><font face="Arial" size="2">CImageList::Destroy shouldn't use Detach()</font></li> |
| <li><font face="Arial" size="2">ATL7 has its own AtlLoadString</font></li> |
| <li><font face="Arial" size="2">CPropertySheet doesn't close when you press |
| X button</font></li> |
| <li><font face="Arial" size="2">Fixed problems for _U_STRINGorID and others |
| that moved from atlbase.h to atlwin.h in ATL7</font></li> |
| <li><font face="Arial" size="2">Add AtlMessageBox() that accepts either |
| in-memory or resource strings</font></li> |
| <li><font face="Arial" size="2">CScrollImpl: fixed bug with scrolling child |
| windows</font></li> |
| <li><font face="Arial" size="2">CPropertyPageImpl: Add new notification |
| handlers to enable direct return values (use #ifdef _WTL_NEW_PAGE_NOTIFY_HANDLERS |
| to use them)</font></li> |
| <li><font face="Arial" size="2">Add AtlInitCommonControls() to simplify use</font></li> |
| <li><font face="Arial" size="2">DDX: Fixed usage of the size of char arrays |
| for DDX</font></li> |
| <li><font face="Arial" size="2">CPageSetupDialog: changed usage of |
| CWndProcThunk because of changes in ATL7</font></li> |
| <li><font face="Arial" size="2">Fix confusing precedence in expressions</font></li> |
| <li><font face="Arial" size="2">Removed forward declarations because default |
| values for template arguments shouldn't be specified in two places (we don't |
| need them anyway)</font></li> |
| <li><font face="Arial" size="2">Win64: Fix /Wp64 warnings from 32-bit VC7 |
| compiler caused by SDK headers</font></li> |
| <li><font face="Arial" size="2">Fix direct usage of English strings (they |
| can be #defined to something else now)</font></li> |
| <li><font face="Arial" size="2">AtlGetCommCtrlVersion not defined if _ATL_DLL |
| is in ATL 3.0 (and CmdBar is using it)</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">AppWizard:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Added manifest for Common Controls 6</font></li> |
| <li><font face="Arial" size="2">Loading Rich Edit DLL should use HMODULE</font></li> |
| <li><font face="Arial" size="2">Should not use atlimpl.cpp for ATL7</font></li> |
| <li><font face="Arial" size="2">Added message handler prototypes to |
| generated files</font></li> |
| <li><font face="Arial" size="2">VERSION resource always has VALUE "OLESelfRegister" |
| (now only for COM servers)</font></li> |
| <li><font face="Arial" size="2">Added option for putting implementation in |
| CPP files</font></li> |
| <li><font face="Arial" size="2">d-tor for the thread manager class in MSDI |
| project executed after the heap is destroyed</font></li> |
| <li><font face="Arial" size="2">Wrong settings when changing to a dialog |
| project and back (AppWizard 6.0 only)</font></li> |
| <li><font face="Arial" size="2">Remove cut/copy/paste accelerators for form |
| view and dialogs projects</font></li> |
| <li><font face="Arial" size="2">Fix toolbar bitmaps so they are not |
| transparent (problem with Windows XP flat menus only)</font></li> |
| <li><font face="Arial" size="2">Used CMDICommandBarCtrl for MDI apps</font></li> |
| <li><font face="Arial" size="2">Add symbols required for VC7 Class Wizard to |
| recognize an ATL project</font></li> |
| <li><font face="Arial" size="2">Changed default styles for the rebar, so it |
| does look OK without CmdBar and with manifest</font></li> |
| <li><font face="Arial" size="2">Added setup programs for both AppWizards</font></li> |
| <li><font face="Arial" size="2">Remove ignored resource attributes: |
| MOVEABLE, PURE, etc. (AppWizard 7.0 only)</font></li> |
| <li><font face="Arial" size="2">Add call to DefWindowProc to WinMain to |
| resolve possible problems if MSLU is used</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Samples:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Updated toolbar bitmaps, added #ifdefs for |
| ATL7, added manifest file for CommCtrl6, qualified _U_RECT with WTL |
| namespace, updated use of deprecated CRegKey functions, added VC7 projects</font></li> |
| <li><font face="Arial" size="2">Added Alpha sample</font></li> |
| </ul> |
| </blockquote> |
| <p style=margin:0in> </p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><b><font face="Arial"> |
| <a name="Changes Between WTL 3.1 And 3.0"></a>Changes Between WTL 3.1 And |
| 3.0</font></b></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">New classes:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">CPaneContainer - implements a window that |
| provides a title bar and a close button (like Explorer)</font></p> |
| <p style=margin:0in><font face="Arial" size="2">CDialogResize - an MI class that allows |
| resizing of dialogs (or any windows with child windows/controls)</font></p> |
| <p style=margin:0in><font face="Arial" size="2">CAxPropertyPageImpl - implements a property |
| page that can host ActiveX controls</font></p> |
| </blockquote> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Fixes and enhancements:</font></p> |
| <blockquote style='margin-top:0in;margin-bottom:0in'> |
| <p style=margin:0in><font face="Arial" size="2">CServerAppModule now clears m_hEventShutdown to |
| avoid calling CloseHandle twice</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CString:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">operator += now leaves original string |
| intact if it's out of memory</font></li> |
| <li><font face="Arial" size="2">Fixed bad DWORD_PTR usage in TrimRight, |
| TrimLeft, Replace, Remove</font></li> |
| <li><font face="Arial" size="2">Removed dependencies on CRT for projects |
| that don't use it</font></li> |
| <li><font face="Arial" size="2">Insert - fixed string corruption in release |
| builds</font></li> |
| <li><font face="Arial" size="2">Added optional floating point formatting |
| (for projects that use CRT)</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CEdit and CRichEditCtrl: SetSelAll and |
| SetSelNone had reversed implementation</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">atlres.h: Changed IDs so that they are |
| compatible with MFC's afxres.h</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Command Bar:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Added LoadMappedImages()</font></li> |
| <li><font face="Arial" size="2">Changed handling of left and right arrow |
| keys so that they don't close context menus</font></li> |
| <li><font face="Arial" size="2">Add code to handle left/right arrow keys |
| correctly on mirrored (RTL) systems</font></li> |
| <li><font face="Arial" size="2">Removed handler that eats parent window's |
| WM_SETTINGCHANGE</font></li> |
| <li><font face="Arial" size="2">Fixed bitmap resource leak in |
| Draw3DCheckmark</font></li> |
| <li><font face="Arial" size="2">Fixed incorrect usage of CharLower in |
| OnMenuChar</font></li> |
| <li><font face="Arial" size="2">Fixed wrong color for the disabled items in |
| hi-contrast mode</font></li> |
| <li><font face="Arial" size="2">Added code to gray menu items if main window |
| is inactive</font></li> |
| <li><font face="Arial" size="2">Fixed keyboard mnemonic handling for IE 4</font></li> |
| <li><font face="Arial" size="2">Fixed hook problems with multiple cmdbars in |
| the same thread</font></li> |
| <li><font face="Arial" size="2">Added support for radio menu items</font></li> |
| <li><font face="Arial" size="2">Added support for disabled top-level menu |
| items (also added in CFrameWindowImpl::PrepareChevronMenu)</font></li> |
| <li><font face="Arial" size="2">Added keyboard shortcut (Alt+/) to invoke |
| chevron menu</font></li> |
| <li><font face="Arial" size="2">Added support to override menu item length |
| in a derived class</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CBitmapButton:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Bypassed BUTTON DefWindowProc for hover |
| style so that the button doesn't take focus</font></li> |
| <li><font face="Arial" size="2">Added BMPBTN_AUTOFIRE extended style</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CDC:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Added _WTL_FORWARD_DECLARE_CSTRING define to |
| allow usage of methods that accept CString</font></li> |
| <li><font face="Arial" size="2">Fixed errors in GetTextFace and |
| GetMenuItemString</font></li> |
| <li><font face="Arial" size="2">Added GetCharWidth32</font></li> |
| <li><font face="Arial" size="2">Added DrawIconEx method</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CMenu:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Implement following missing methods:<br> |
| GetMenuDefaultItem<br> |
| GetMenuInfo<br> |
| GetMenuItemRect<br> |
| HiliteMenuItem<br> |
| IsMenu<br> |
| MenuItemFromPoint<br> |
| SetMenuDefaultItem<br> |
| SetMenuInfo</font></li> |
| <li><font face="Arial" size="2">GetMenuString - fixed to include space for |
| terminating NULL character in returning string</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">GDI and USER classes should destroy the |
| GDI/USER objects in Attach if GDI/USER resource is managed</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CFrameWindowImpl:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">OnToolTipText shouldn't save tool tip text |
| if it's not for a menu</font></li> |
| <li><font face="Arial" size="2">AddSimpleReBarBandCtrl now adds chevron |
| style only for toolbars with buttons</font></li> |
| <li><font face="Arial" size="2">AddSimpleReBarBand(Ctrl) - calc band ID if |
| not specified</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CRecentDocumentList:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Fix - UpdateMenu deletes wrong menu item |
| when the list is empty</font></li> |
| <li><font face="Arial" size="2">Added code to allow restricting the number |
| of characters displayed by MRU menu items</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Update UI:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Added support for blocking accelerators for |
| disabled items</font></li> |
| <li><font face="Arial" size="2">Improved search code assuming there are no |
| duplicate entries (and added checks for duplicates)</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">CSplitterWindow:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">CSplitterWindowImpl should derive from |
| CSplitterImpl<T , t_bVertical> to allow overriding of methods</font></li> |
| <li><font face="Arial" size="2">Added single pane mode and SetSinglePaneMode/GetSinglePaneMode</font></li> |
| <li><font face="Arial" size="2">Added right/bottom aligned resize mode using |
| extended styles SPLIT_RIGHTALIGNED/SPLIT_BOTTOMALIGNED</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">atlcrack.h: Added handlers for following new |
| messages:<br> |
| WM_APPCOMMAND<br> |
| WM_NCXBUTTONDOWN<br> |
| WM_NCXBUTTONUP<br> |
| WM_NCXBUTTONDBLCLK<br> |
| WM_XBUTTONDOWN<br> |
| WM_XBUTTONUP<br> |
| WM_XBUTTONDBLCLK</font></p> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Win64:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Dialog return value should use |
| DWLP_MSGRESULT and SetWindowLongPtr</font></li> |
| <li><font face="Arial" size="2">CMenu::InsertMenu, AppendMenu, ModifyMenu |
| should have UINT_PTR for the menu ID</font></li> |
| <li><font face="Arial" size="2">Added appropriate type casts</font></li> |
| <li><font face="Arial" size="2">CFrameWindowImpl::m_szAutoName - changed the |
| size to fit the pointer value size</font></li> |
| <li><font face="Arial" size="2">CListViewCtrl::SortItems should use LPARAM |
| for user data instead of DWORD</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">Misc:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">Added optional mask argument to all methods |
| for setting extended styles</font></li> |
| <li><font face="Arial" size="2">CMDIWindow::MDIRestore - fixed to send |
| WM_MDIRESTORE instead of WM_MDIICONARRANGE</font></li> |
| <li><font face="Arial" size="2">CListViewCtrl: Added SortItemsEx method</font></li> |
| <li><font face="Arial" size="2">CToolBarCtrl::GetButtonInfo - fixed to |
| return int instead of BOOL</font></li> |
| <li><font face="Arial" size="2">Added CToolBarCtrl::SetButtonSize and |
| SetBitmapSize that accept cx and cy instead of SIZE</font></li> |
| <li><font face="Arial" size="2">Printing: Changed how GetNewDevModeForPage |
| works (comments in code)</font></li> |
| <li><font face="Arial" size="2">CFileDialogImpl::_OnTypeChange incorrectly |
| calls pT->OnSelChange instead of pT->OnTypeChange</font></li> |
| <li><font face="Arial" size="2">CMultiPaneStatusBarCtrl::GetPaneTipText - |
| fixed to use index instead of and ID internally</font></li> |
| <li><font face="Arial" size="2">CWinDataExchange: Added references to |
| arguments of DoDataExchange, so there are no level 4 warning even if the map |
| is empty</font></li> |
| <li><font face="Arial" size="2">CPropertySheetWindow: Added new, IE 5.0 |
| specific methods</font></li> |
| <li><font face="Arial" size="2">CPropertyPageImpl: Added new, IE 5.0 |
| specific methods</font></li> |
| </ul> |
| <p style=margin:0in> </p> |
| <p style=margin:0in><font face="Arial" size="2">AppWizard:</font></p> |
| <ul style='margin-top:0in;margin-bottom:0in'> |
| <li><font face="Arial" size="2">added calls to RemoveMessageFilter and |
| RemoveIdleHandler in CMainFrame::OnDestroy for COM server projects</font></li> |
| <li><font face="Arial" size="2">added scroll bars for HTML view</font></li> |
| <li><font face="Arial" size="2">CAppServerModule now handles -embedding as |
| well as -automation</font></li> |
| <li><font face="Arial" size="2">corrected code in CMainFrame::OnShowToolBar |
| to correctly identify the toolbar in a rebar</font></li> |
| <li><font face="Arial" size="2">dialog based app code now derives from |
| CUpdateUI as public</font></li> |
| </ul> |
| </blockquote> |
| <p style=margin:0in> </p> |
| |
| <p style=margin:0in><font face="Arial" size="2">- end of readme.htm -</font></p> |
| |
| </body> |
| |
| </html> |