This project is read-only.

Ease of Use & User Interface

Mar 21, 2008 at 2:30 PM
While impressed about the capabilities of this project, I certainly do not think it is simple to use. It took me three days to develop my first album with only 3 slides in it. After looking at dozens of discussions I still cannot figure out how to place a lengthy album description or increase the duration of the transition. Granted I am not a JavaScript programmer but do have a degree in Computer Science. Perhaps a well documented User Manual would have helped.

What concerns me most is that after developing the album I sent the URL (http://www.sjrcd.org/gallery/repaupo/) to my client and he was unable to view the album. He stated he received a prompt asking him to install "Silverlight.exe". For security reasons this completely turned him off!

What did I do wrong? When will the User Manual be available?

KP
Mar 25, 2008 at 6:05 AM
Edited Mar 25, 2008 at 6:06 AM
Yes, the user's guide is long overdue. I started it about 2 months ago and got about half way done with it and then got pulled off on a client project that has consumed 120% of my time ever since. It is still on my plate to complete and I will...

In the meantime, the Silverlight download is no different than the broswer asking to install the Flash executable. Both require a broswer plug-in. The only difference is that Flash was probably already installed and is better known for the moment. It's an unfortunate side effect of a start-up technology.
Apr 11, 2008 at 8:31 AM
You can increase the duration of the transition only by modifying the SlideShow.js file (at least that's what I've found). Search for: playTimerInterval: 3000, and you can change '3' to whatever number of seconds you want. As for lengthy description, you'd have to modify / extend the SlideShow.js file as well. I put a little effort into for the actual photos (not the albums) yet, but there are a few slight flaws but I didn't want to continue to dig through the code on where to fix it. But if you create a new *.js file with this declaration and include it after SlideShow.js, you'll get a 'little' better display of long descriptions for photos.

Disclaimer: I know next to nothing about Silverlight / Xaml / WPF concepts.

----------------------------------
var onSizeChangedBase = SlideShow.SlideDescription.prototype.onSizeChanged;

/*******************************************
* function: SlideShow.addTextToBlock
*******************************************/
SlideShow.addTextToBlock = function(textBlock, text)
{
/// <summary>Sets the text in the specified block.</summary>
/// <param name="textBlock">The element to modify.</param>
/// <param name="text">The text to set.</param>
/// <remarks>This version dynamically sets the height of the text box, so I do not truncate.</remarks>

if (text)
{
textBlock.text = text;
}
else
{
textBlock.text = null;
}
};

SlideShow.SlideDescription.prototype.setDescription = function(text)
{
/// <summary>Sets the description.</summary>
/// <param name="text">The description text.</param>
/// <remarks>Extended base functionality by resizing the description box / canvas so descriptions weren't cut off.</remarks>
SlideShow.addTextToBlock(this.descriptionTextBlock, text);
this.adjustDescriptionSize();
};

SlideShow.SlideDescription.prototype.onSizeChanged = function()
{
/// <summary>Handles the event fired when the control is resized.</summary>
/// <remarks>Extended base functionality by resizing the description box / canvas so descriptions weren't cut off.</remarks>
onSizeChangedBase.call(this);
this.adjustDescriptionSize();
};

SlideShow.SlideDescription.prototype.adjustDescriptionSize = function()
{
this.descriptionRectangle.height = this.descriptionTextBlock.text != "" ? this.descriptionTextBlock.actualHeight + this.options.descriptionPaddingTop * 2 : 0;
this.visibleCanvas.height = this.titleRectangle.height + this.descriptionRectangle.height;
this.visibleCanvas"Canvas.Top" = -this.visibleCanvas.height - this.options.top;
}