Project 3
This project focused on making a Yahoo! Widget (also known as Konfabulator). I have made a Magic: The Gathering Power 10 Price Watcher widget, which retrieves daily prices from the Magic Online Trading League (MOTL).
Technically, there are only nine power cards:
- Ancestral Recall
- Black Lotus
- Mox Emerald
- Mox Jet
- Mox Pearl
- Mox Ruby
- Mox Sapphire
- Timetwister
- Time Walk
Since I can't draw a straight line with a ruler, let alone with a graphic editing program, I liberally borrowed graphics from a program called the MTG Editor, which apparently got a Cease & Desist from Wizard of the Coast. I invoke the right of fair educational use!
There are two known bugs in my widget so far:
- When first loaded, an image error message appears and the background defaults to the "no image" placeholder.
- The loading window does not always appear to be visible to the user because of the timing delay the update_prices() code uses.
I also have a to-do list in order of priority if I ever want to release this widget publically:
- Fix loading window
- Fix default image error
- If you change the theme and only the theme, don't re-calculate prices (reduce lag)
- Improve the lag time by only updating cards that actually need updating
I tried to implement these functions, but they didn't make the final cut:
- Loading window fade-out caused too much lag
- Price change style (color-coded arrows vs. color-coded backgrounds) didn't work with the current card image implementation
And for version two's future options:
- Slider to select how many cards you want to show (max 20)
- User-selected card and edition from ALL cards
If you don't want to download Yahoo! Widgets, here are screenshots of every aspect of my widget!
You can change skin colors in the preference options.
These are the other colors:
White

Blue

Black

Green

Default
All themes except Default are transparent,
as you can see the scrollbar behind the widget:
When you update a card's edition,
the associated price and arrows change too!
You update each card's edition in the preferences panel:
Every time you update the prices, or the one-day ticker goes off, you should see the loading screen briefly while the prices are retrieved.
Everyone needs a brag screen ;)