Blog About Contact

visural-wicket 0.6.5 release is available!

Published Thu, 25 Nov 2010 • 7 comments

It's taken longer than I'd hoped, but the next release of the visural-wicket library for Apache Wicket is now available - 0.6.5

This version is mostly a minor enhancement and fix release, but includes almost 6 months worth of patches based on production use of the library.

There are a number of fixes and enhancements based on user requests, and some new features and fixes based on my own work.

Note: this release separates the visural-common and visural-wicket library JARs.

Previously they were bundled together into a single JAR file, however this caused issues with release cycles for each library. However, I have included a visural-common-and-wicket-0.6.5.jar in the release package which leaves them bundled if you'd rather not have two JAR files attached to your project.

Enhancements

New Component: Client-side Tab-pages component

This is a javascript based tab control, which renders all tabs contents into the page at render time, allowing instant tab switching after render.

Unlike other implementations I've seen, this tab control retains tab state even when updating via Ajax.

It also has an intuitive implementation pattern that requires only adding a wicket:id to a single wrapping <div> tag containing the tab's <div>'s.

example of how the tab control looks

Fancybox updated to latest v1.3.1

The new version of Fancybox (the image gallery component) has been integrated into visural-wicket, and it features an improved API with more options.

These options have been exposed in visural-wicket and javadoc has been included for each based on Fancybox's API docs.

Example app includes InputHint example

The "InputHintBehavior" hasn't changed at all, but there is now an example for it in the "live demo site" and examples application.

DropDown control changes

The DropDown control has had several fixes and improvements.

Dialog's Open / Close Javascript methods now protected access

The dialog open and close Javascript generation methods are now protected. This allows developers to pre-fix or post-fix the open and close events with their own Javascript callbacks.

All Components - Allow disable of JS & CSS static header contributions

To assist with static resource packing and packaging all components now have a -

    /**
     * Override and return false to suppress static Javascript and CSS contributions.
     * (May be desired if you are concatenating / compressing resources as part of build process)
     * @return
     */
    protected boolean autoAddToHeader() {
        return true;
    }

Overriding, and returning false here will cause the component to avoid adding it's resource contributions during construction. You are then free to repackage them as you see fit as part of your build process.

No longer necessary to manually add excanvas.js for BeautyTipsBehavior

Previously users had to manually add the ExCanvas.js header contributor for Internet Explorer support for the tool-tip behaviour - BeautyTips. This contributor will now be added automatically, so everything works "out of the box". This won't affect code that adds it manually, so it's just a simplification for new users.

JQuery 1.4+ and other JS library compatibility

JQuery 1.4 comptability has been introduced and all components should now work under v1.4.

The JQuery resource reference now takes a version parameter and 1.3 and 1.4 versions of JQuery are included with visural-wicket out of the box.

For backward compatibility, if no version is provided 1.3 is used as the default. For existing projects this is no change.

Additionally, all of the generated code now uses "jQuery(...)" rather than "$(...)" so if you are using multiple libraries overriding the "$(..)" function then you should now be able to use visural-wicket in your project.

All components implement security interfaces and have a serialVersionUID

All of the visural-wicket components now implement ISecureEnableComponent, ISecureRenderComponent which lets them work seamlessly with the security features built into the library.

In additional all of the classes that may end up Serialized in a user session now have a serialVersionUID = 1, to reduce deserialization issues between releases.

Add German date form (dd.mm.yyyy) to DateInputBehavior

As per user request, the german-style date format of dd.mm.yyyy has been added DateFormat.DDMMYYYY_DOTS.

Bug Fixes

So as you can see, this is a pretty decent release even if it was a while coming :)

Hope you find these changes useful, as always I welcome feedback, so if you have any ideas, questions or problems then please drop me a line.


About the Author

Richard Nichols is an Australian software engineer with a passion for making things.

Follow him on twitter or subscribe by RSS or email.

You might also enjoy reading -


Discuss / Comment

There are 7 comments.

Add a comment

  • {{e.error}}

Thanks for your comment!/

Required.
Valid email address required.
Required.
Posting message, please wait...