Windows 98     - Win4Ada
                                                                                         Windows 2000 - Win4Ada2000

Simple pleasure of my life - The Windcatcher Garden
Ada Programming For Windows XP
It has been a long time since Win4Ada had been created.  With experience gained from Windows 2000, it is time to move on to Windows XP.  The Ada compiler is still Aonix - ObjectAda 7.2.2. Email me if you have questions.

Unlike the earlier OS, there are no new controls implemented as I have no need for them at this time.  These pages are devoted to strengthening and adding more capabilities to the existing packages.  Higher level abstraction packages are created to make programming life easier.  These are found in the Dialogs.* packages.  Examples of their usage are found in the Test folder of the
source code directory.

Changing Background Colors
Changing Control Colors                      
Dialogs
Dialogs.Boxes
                                     Rogue
Dialogs.EditBoxes

Dialogs.ListBoxes

Dialogs.TreeViews

Dialogs.Columns
Dialogs.PushButtons
Changing Trackbar Colors & Customization
Changing Statusbar Colors & Fonts
Changing Caret Color

Notes:
There are two main problems in porting from Windows 2000 to XP:

1.   shBrowseForFolder customization is no longer possible.  This is because the
      application crashes with a cryptic exception message of "Invalid Context" after
      leaving the post initialization subprogram.

2.   Some of the values in GetOpenFileName in OS.Windows.Controls.Common.Files
      had been changed.  These new values were determined by enumerating
      OS.IDs'Range until ControlOf(Container, Id) is valid.  Then by process of
      elimination, which id belongs to which control is then determined. 

3.   Main menu items are not visible in the dialog box when it comes into view.  After
      much experimentation, the problem is fixed bychanging the dialog box window style
      to OS.Windows.Styles.Overlapped_Windows.

There will be compilation errors if the source code is compiled as is since the more basic packages are not included.  For example capitalization of a string value, operations of a link list etc. They can be implemented easily from any Ada text book.  If you absolutely have to have them, 
Email me.  For a discussion of these packages click here.

Documentation is kept accurately as sanely possible given to continual changes as new capabilities are added. The package specification is always the final arbitor.