Wednesday, January 28, 2009

Visual Studio Google Gadget - Revisited

Since my last post on Google Gadgets, I have used my Visual Studio Recent Projects gadget on a daily basis.  It quickly occurred to me that there are enhancements to this gadget that would be useful immediately and not just to me, but to the general public.

Here's a quick rundown of the enhancements that I thought would greatly benefit my Google gadget:
  1. Change the blue underline (anchor link) to something more pleasant
  2. Highlight the item that you're over in a different color to see which one you're selecting
  3. Remove file extensions to the items listed
  4. Ability to see more than just the first 6 projects/solutions
The first 2 items is pretty self explanatory: it's ugly the way it is.  It's functional, but it detracts the eye and is esthetically unpleasant.  So I went in the code and changed it to be an off white color with no underline.  I then added code to change that color to a soft yellow when the mouse hovers over the item.

The 3rd item is simple to fix but then brings up a new issue: how do you tell the difference between a solution (.sln) and a C# project (.csproj) in the list?  My thoughts on this at the moment are:
  • add a tooltip to the items that would add the full path & filename and, to add a little bit more information, when was this item last opened.
  • add an icon in front of each item that would differentiate each item based on their extension.
I changed the code to remove all extensions, and added an icon based on the first 3 letters of the extension.
The 4th item is easy in concept: have pages of x items show up and a way to move between pages.  The implementation wasn't as easy.  It wasn't complex, but wasn't complying very well either.  Basically, I figured out how many items I wanted to display on a page (which is 7), then I used math and constants to figure out on which page the user is on to display the proper items out of all possible ones.  I gave the user 2 arrow buttons to allow the user to navigate forward and backwards in the pages.  The list is not sorted, just the same order that it is in the MRU registry.  I guess that could be a future enhancement.

The end result looks something like this:


As you can see, it looks much better than the 1st iteration of the gadget.  With all this, what's left to add you ask?  Where if you remember, I mention that a tooltip would be useful.  A tooltip with the full path of the item would be useful in cases where there multiple versions of the same project  How do you tell them apart?
 
If you have any suggestions as to what other enhancements this gadget could use, please leave a comment and I'll definitely consider it.

As always, you can download the most recent version of the gadget (Visual Studio Recent Projects-Sebastien Limoges.gg) and you can read up on what people have to say about it by going to it's Google page.

Until next time,

Sebastien Limoges

No comments:

Post a Comment