Rick Strahl's Weblog  

Wind, waves, code and everything in between...
.NET • C# • Markdown • WPF • All Things Web
Contact   •   Articles   •   Products   •   Support   •   Advertise
Sponsored by:
Markdown Monster - The Markdown Editor for Windows

wwHoverPanel/West Wind Ajax Toolkit Updated

On this page:

I've finally had a bit of time over the holidays to roll in a few updates into my wwHoverPanel library. In the process I decided that wwHoverPanel is not really a fitting name for the library anymore since it does quite a bit more than that by now, with the hover panel operation only being a part of the tools. So the renamed library is now the West Wind Ajax Toolkit - boring I know but at least it's descriptive. <g>

You can find the free library, source code and samples here:

What's New

There's a bunch of stuff that's been updated in this version. I've rolled the jQuery DatePicker control I talked about recently into the library. As a side issue I've also added jQuery loading support to the library in anticipation of forthcoming tighter integration and refactoring of wwScriptLibrary with the jQuery codebase.

There have also been many improvements in the JSON callback functionality of the library. The codebase for the wwMethodCallback ASP.NET control and the free standing wwCallbackHandler HttpHandler implementation now use a common Callback processor that handles all the details of handling inbound parameter parsing, method routing and execution and JSON conversion. There are now also options that allow calling the handler with raw JSON input parameters or raw POST data input which makes it easier to use the callback handler with any sort of AJAX client library.

Along the same lines the various Ajax client library functions have a few updates in regards to making JSON callbacks. The ajaxJson function now has options that allow more control over how the value parameter that is posted to server is passed with the default passing a JSON encoded value, but also with options for using raw POST or just plain GET operation.

All of this yields better interoperability with other AJAX implementations either on the client or server. For example, you can easily use ajaxJson to call say an ASP.NET AJAX method on the server.

Also related is the way that date parsing is handled - thanks to a recent discussion with Bertrand LeRoy I've rethought the way I've been pushing dates around in the callback implementation, I've ended up switching to the same Date format that ASP.NET AJAX and WCF uses which is a specially encoded string value ("\/Date(198123121)\/" where the value is the number of ticks. Both the client and server side serializers and deserializers now output and understand this date format as well as the dates compatible with toISODate() which is proposed for JavaScript 2. There are a few updates in the JSON client converter that deal with this date formatting.

If you're already using any of the callback mechanisms with the tools, don't worry - none of these changes should break any code if you are using both the client and server pieces. if you are using another AJAX library to call the server pieces you may have to format dates manually as the change from the new Date() to the date string format will not automatically parse into a date.

There have also been a number of small adjustments to the window/panel management code, which handles a few things like dealing with close buttons and certain drag scenarios better. Both wwDragPanel and wwModalPopup have a few improvements that make their behavior more predictable across a wider variety of layout scenarios.

There have also been a bunch of documentation updates, some of the samples in the help file have gotten a little out of sync with more recent updates and I've added a bunch more information to the Callback handler related topics.

Incidentally a lot of these changes have been driven through my heavy use of the Callback handler functionality in a couple of customer projects and it's been working out great. The flexibility and simplicity of making callbacks work has been a huge timesaver especially since one of these applications has various front ends mixed into one application.

Anyway, check it out and enjoy.

Posted in AJAX  ASP.NET  

The Voices of Reason


January 08, 2008

# re: wwHoverPanel/West Wind Ajax Toolkit Updated

What's in a name if it does good things. Look at International Business Machines :)

Rick Strahl
January 08, 2008

# re: wwHoverPanel/West Wind Ajax Toolkit Updated

well, I hope the tool qualifies then <g>...

January 10, 2008

# re: wwHoverPanel/West Wind Ajax Toolkit Updated

If you are defied by AJAX and want to have better experience, then you
may want to try AJAX Webshop because it features IDE and visualization
and allows beginners to develop Rich Web applications quickly. Let's
look at some of its features:

Based on standard component library it allows Ajax IDE in the pattern
of rapid application development (RAD)

Integrated development and management tools are available. Easy-to-use
visual Unified Modeling Language and visual IDE; complete component
and object-oriented development pattern

Rich Web component library

Troubleshooting IntelliSense support, code editing support, project
release and deployment support.

Java, PHP, C#, VB support

Compatible with IE, Firefox

January 11, 2008

# re: wwHoverPanel/West Wind Ajax Toolkit Updated

Hey Rick - just starting using your AJAX library in one of my projects to replace an ancient "remote server" procedure technique. I was about to go with the MS AJAX library, but the lack of dynamic page methods that support passing form data was a stopper. I'm still surprised they dropped that, but its old news. Thanks for providing and updated this. PS - hows maui? Looks like you've been getting good wind. Lots of rain and snow in HR.

ben (from HR)

Rick Strahl
January 11, 2008

# re: wwHoverPanel/West Wind Ajax Toolkit Updated

@Ben - yeah the MS AJAX page callback mechanism bites IMHO. There's the lack of postback support, plus the fact that you can't route callbacks to a specific control, so as a control developer who wants to handle callbacks you're SOL having to use either the old AJAX PageCallbacks or using the low level client library AJAX callbacks with manual routing in code both of which are a royal PITA. The inability to use POST data pretty much makes MS AJAX useless as a callback mechanism for any non MS AJAX client.

The windsurfing weather here's been weird this year. Lots of wind, not much surf so far - there's only been one really big swell so far this season which is unusual. Hopefully that'll change yet.

May 03, 2008

# re: wwHoverPanel/West Wind Ajax Toolkit Updated

Marvelous Tool, just one little question from a dummy
I want to have a postback when the drag ends (mouse up)that geves the absolute X Y position of the wwHoverPanel back to the server so action can be taken.
I have looked at the example but must be a little dense as I can not easily see how this is done.
Have you any simple code to show how this is implemented in the aspx and aspx.cs codebehind files


West Wind  © Rick Strahl, West Wind Technologies, 2005 - 2024