[Windows Mobile Apps and Games] Osprey00:
tronikos,

Nice new version. As expected, the quality and speed are back to the zippiness of 1.4.7. In fact, the "30% speed increase with AlphaBlend disabled" is absolutely true, as it's insanely slick when I turn AlphaBlend off now. Of course, I wouldn't, since it's not terribly pretty and "AlphaBlend on Black" is smooth enough to use, but it's nice to know that there's room for more speed, especially for users of slower devices.

1. I came back to post about the broken background, but your re-upload fixes that, so scratch this item. Bravo.

2. Oh, nice. I see that, at some point, you made it so that the background scrolls vertically, as well. I had been thinking of suggesting that, but never remembered. Thanks.

3. The RoundedRect feature is nice. Is it possible to AlphaBlend that? On my device, at least, there's no blending. To be honest, I'll probably leave the feature off, but others would likely appreciate blending on it, if it's possible.

4. Since you showed some interest in the idea of supporting multiple skins, here's my initial idea for how that could be arranged...

\iPhoneToday
\Skins
\Common
\Icons
\Sounds
\iPhone
\Icons
\Sounds
icons.xml
settings.xml
\Android
\Icons
\Sounds
icons.xml
settings.xml
iPhoneToday.exe
iPhoneToday.xml

...where iPhoneToday.xml (or whatever you'd want to call it) would contain pretty much only the name of the skin to use (default: "iPhone" in this example). iPT would read the skin from there, then process the settings.xml and icons.xml for the skin that it was told to use. Each skin could have its own icons and sounds under its folder for organization and to make adding/sharing skins easy. If icons or sounds are defined in icons.xml or settings.xml that don't exist in the skin's own folders, they would be looked for under the "Common" folder. Then, you could add a "skin selector" dialog to Options (perhaps with a drop-down menu) that lists all of the folder names under "\Skins" (except for "Common"). Additionally, if anyone wanted to write their own script or skin changer app, all that they'd need to do is replace the skin name in iPhoneToday.xml and, if iPT is running, do a --reload. There are other ways to support multiple skins, and you may have a different idea, but that's my idea if it's any use to you.

5. There might be nothing that you can do about it, but you may've noticed that 96x96 images resized to 32x32 or smaller don't look terribly good. It appears that the resizing engine isn't so great at reducing an image that much. It looks like it's using a "nearest neighbor" algorithm, rather than something like bicubic or bilinear. I'm just wondering if there's any way to increase the quality so that we don't have to use smaller images (which would negate some of the power of iPT: its principle of one-image-size-fits-all). Perhaps, if the imaging API supports other resizing algorithms (ex. bicubic/bilinear) or has adjustable image quality values, you might find that another produces better images at smaller sizes without a noticeable speed hit. If need be, you could define the other algorithm/values to be used only when re-sizing to 40x40 and smaller. EDIT: Even 64x64 images look much better at 32x32 than 96x96 ones do, so I'll probably be tempted to simply go with 64x64 images, unless you can get better quality from 96x96 resized small (hopefully, you can).

6. As you know, I like the idea of using buttons on the top bar to switch between pages because it adds structure (as a graphical menu). I'm noticing, though, that it's not very clear, currently, which page you're on. There's only the optional page text header, which isn't very visual. Perhaps you could come up with a way to have the icons change in appearance when iPT is showing the page that they're linked to (ex. if iPT is on page 2, change the appearance of any icons with the "--page:2" command) for as long as that page is shown. If that can be done, then, obviously, the "pressed" overlay would be the easiest to use with it, since you've already implemented that functionality. Allowing for the image to be completely replaced by another image would be even better, but I doubt that you'd go for that, so the overlay system would be enough... if you can even get iPT to do what I described. Thanks if you at least look into it.

Keep up the great work.