Better. Smarter. Faster.
I started Desktop Gallery Plus, or DG+, to address some of Desktop Gallery 2’s shortcomings, namely:
- Photos were required to be of a specific size and aspect ratio
- Frames were also non-sizable, fixed images
- Framed photos appeared at the center of the screen only
- The desktop image was an integral part of the application, and as such, desktop icons overlapped framed photos
- While fading was possible with JavaScript, as it was, Desktop Gallery 2 only jump cut between images
While I am a big fan of Visual Basic 6, I decided to join the 21st century and develop DG+ in VB.NET 2003. VB.NET was a radical departure from VB6, and I was learning as I went. To be fair, VB.NET offered some great capabilities. For instance, the methods available for manipulating graphics in VB.NET far outclassed anything you could possibly do with VB6. I put a number of them to use in sizing and smoothing my photos, adding drop shadows, et cetera.
A Small Rant
That being said, overall, I loathed VB.NET 2003. Even on a fast Pentium 4 with 2 GB of RAM, it ran like an asthmatic three-legged dog. The online help was so abysmally slow. You could almost get quicker answers to your questions by driving to Borders and looking them up there. Aside from the plodding performance of its IDE, there were numerous other nitnoy issues. Text on forms and dialogs looked awful because VB.NET 2003 spaced and kerned fonts like a 1st grader. VB.NET 2003 couldn’t create buttons and other interface elements in XP’s style without a third-party extension. A neat feature: you could minimize your application to an icon in the tray with very little coding, but the icon rendered in only 16 lousy colors — Windows95-style! It’s like VB.NET 2003 would point at some great feature and then kick you in the shins as soon as you looked. Like the two applications I’m describing in this subsection, VB.NET 2003 felt half-baked. (VB.NET 2005 still has raw spots in the middle, but that’s another story.)
Unplanned Obsolescence
I got so far in the application as to address the issues I listed above. Instead of having to create a folder of specially sized images of the photos I wished to display on the desktop, I could simply point DG+ at our photo library, and it would resize the images and smooth them on-the-fly for display. Frames were also drawn dynamically from tiles that I had painstakingly