Since I started this project I learned a lot about designing header-only libraries. At first it was a very thin wrapper for the Windows API. But over time more and features come together, and the library moved towards its goal of being easy to use. I never moved away from the goal of efficiency though. I also noticed some things that could have been better. That why the switch to Version 1.0 contains some changes that might break old code. Not that this library has seen much use except by me.
- The library is no longer contained in a single file.
- Previously, controls were created as HWND, and the user had to send raw messages to manipulate them. Now we have Control and derived classes, which greatly simplify the work with controls.
- Functions that took const TCHAR* as parameter now always take const tstring&. std::string does not check null pointers, so you can't pass null pointers to these functions anymore. So check your Window::Create() and CreateControl(), etc., because the compiler cannot detect this as an error.