Ticket #6612 (closed enhancement: fixed)

Opened 4 months ago

Last modified 3 months ago

[patch/cla] dojox.layout.RotatorContainer

Reported by: guest Owned by: dante
Priority: normal Milestone: 1.2
Component: DojoX Widgets Version: 1.1.0
Severity: normal Keywords:
Cc:

Description

Extends a StackContainer? to automatically transition between children and display navigation in the form of tabs or a pager. Similar to what is on http://www.sun.com.

Demo: http://www.cb1inc.com/dojo-1.1.0-build/dojox/layout/tests/test_RotatorContainer.html

More info: http://www.cb1inc.com/2008/04/25/meet-the-rotatorcontainer

Attachments

RotatorContainer.tar.gz (8.2 kB) - added by guest 4 months ago.

Change History

Changed 4 months ago by guest

Changed 4 months ago by dante

  • status changed from new to assigned
  • milestone changed from 1.1.1 to 1.2

Chris, this is great!

But ... ;)

I see an immediate overlap between this and the the poorly named "RadioGroup?" (which does fade, and sliding transitions in a StackContiner?), and Nikolai's Pager widget (which only does sliding, but can handle single-view or multiple-items) ... I'd really like to see concepts merged into a sane API. StackContainer? is a really great piece of code, and if these three mentioned efforts we're combined into a single widget it would be a big win.

thoughts?

... moving out of critical branch ...

Changed 4 months ago by dante

  • summary changed from dojox.layout.RotatorContainer to [patch/cla] dojox.layout.RotatorContainer

Changed 4 months ago by guest

I see that there are similarities, but the RotatorContainer? is designed to "cycle" through a StackContainer?'s children. There are many options regarding this such as the delay between rotating, the duration of the transition, auto-start, suspend (pause without actually pausing) when the mouse is over it, rotate X times and stop, and rotate in reverse.

Had I looked at the RadioGroup?'s code, I could have borrowed that slide transition stuff. I left it pretty easy to add the slide transitions. I also don't think the RadioGroup?'s transitions are elegant, meaning when transitioning, it hides the previous child and then transitions in the next child. It would have been nice to see children transition together. The RotatorContainer?'s fade transition smoothly crossfades the two children.

The RotatorPager? is designed specifically to work with the RotatorContainer? exposing previous, next, play/pause, total # of children, and current child. It is simply a controller and it's easily customizable and is very small.

Nikolai's pager is cool, but it doesn't use a StackContainer?. It is just a <ul> of items and this may not be enough for people that want to do more advanced things such as forms or lazy loaded content. I don't necessarily agree with the up/down/left/right key capture as it may interfere with the contents of the pane.

There are a lot of things than can be tweaked via CSS. If the RotatorContainer? had the slide transitions (which shouldn't be the make it or break it feature), the RotatorContainer? could scratch a lot of itches.

-Chris Barber

Changed 4 months ago by dante

(In [13452]) refs #6612 - initial checkin on dojox.layout.RotatorContainer? w/ minor minor changes from original patch (courtesy chris barber, CLA) ... Thanks!

The plan is to merge in sliding RadioGroup? and deprecate or recreate as a subclass of Rotator w/ defined defaults. leaving ticket open pending: * a couple more example uses in test case * default icons for nihilo / soria on remote pager * determine how much of the resources/RotatorContainer.css can be eliminated for user styles

!strict

Changed 3 months ago by dante

  • status changed from assigned to closed
  • resolution set to fixed

RadioGroupSlide fixed z-index issue. Talked to chris about this, wanting some more test examples. Will close this out as "completed" and just add tests if they come.

Note: See TracTickets for help on using tickets.