[OpenAjaxGadgets] Request a widget mode
Rich Thompson
richt2 at us.ibm.com
Mon Apr 13 05:45:15 PDT 2009
We have had a number of use cases come to light recently where the
preferred user experience is achieved by the following loading sequence:
1. onLoad -> informs the widget to initialize itself
2. any and all queued events are delivered to the widget (could have been
sourced by the container or other widgets)
3. onModeChanged -> widget renders itself
This keeps the screen from going through a visual state where all of the
widgets appear uncoordinated followed by an immediate shift into a
coordinated state.
That is a bit of an aside (though related) to the original thread, but I
would prefer a getMode() over having both the container and the widget
remember the current mode.
Rich Thompson
From:
Howard Weingram <weingram at tibco.com>
To:
Jon Ferraiolo/Menlo Park/IBM at IBMUS
Cc:
"gadgets at openajax.org" <gadgets at openajax.org>
Date:
04/10/2009 03:58 PM
Subject:
Re: [OpenAjaxGadgets] Request a widget mode
Hi, Jon.
Thanks for the comment.
There is no onModeChanged at the time of the widget constructor or at the
time of onLoad, when the widget is first rendering. A mode change may
occur
later, but it may be much later.
Unless onLoad must always be followed immediately by modeChanged (which is
a
poor approach), I'll add getMode().
Regards,
Howard
On 4/10/09 12:00 PM, "Jon Ferraiolo" <jferrai at us.ibm.com> wrote:
>
> I'm OK with adding getMode(), but I'll point out that a widget has
enough
> information now to figure out what mode it's in due to the onModeChanged
> event. But it would be convenient to have getMode() so that the widget
> wouldn't have to store away some sort of _mode private variable.
>
> Jon
>
>
>
>
>
> Howard Weingram
> <weingram at tibco.c
> om> To
> Howard Weingram
> 04/10/2009 11:32 <weingram at tibco.com>, Jon
> AM Ferraiolo/Menlo Park/IBM at IBMUS
> cc
> "gadgets at openajax.org"
> <gadgets at openajax.org>
> Subject
> Re: [OpenAjaxGadgets] Request a
> widget mode
>
>
>
>
>
>
>
>
>
>
> (Specifically because widget.xml allows the same content to be used for
> multiple modes; so how does such a widget know its mode when 1st
rendered?)
>
> Regards,
> Howard
>
>
> On 4/10/09 9:42 AM, "Howard Weingram" <weingram at tibco.com> wrote:
>
>> Do we need a function:
>>
>> getMode()
>>
>> ?
>>
>> Regards,
>> Howard
>>
>>
>> On 4/10/09 7:31 AM, "Jon Ferraiolo" <jferrai at us.ibm.com> wrote:
>>
>>>
>>> +1
>>>
>>> Jon
>>>
>>>
>>>
>>>
>>>
>>> Howard Weingram
>>> <weingram at tibco.c
>>> om>
> To
>>> Sent by: "gadgets at openajax.org"
>>> gadgets-bounces at o <gadgets at openajax.org>
>>> penajax.org
> cc
>>>
>>>
> Subject
>>> 04/09/2009 06:31 [OpenAjaxGadgets] Request a
> widget
>>> PM mode
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> I would like to add a function that allows a widget to request
> transition
>>> to
>>> a different mode. The only indication of success would be a
modeChanged
>>> event delivered to the widget at some future time.
>>>
>>> /**
>>> * @param {String} newMode
>>> * The name of the mode to which the widget is
>>> * requesting transition
>>> */
>>> OpenAjax.widget.Adapter.prototype.requestMode(newMode) {}
>>>
>>>
>>> Use Case
>>>
>>> For example, a Help mode screen may contain a button that sends the
> widget
>>> back to View mode. This button is INSIDE the widget rather than
outside
> in
>>> the container. This could simply transition the widget, but then any
>>> container buttons would be out of sync because the container does not
> know
>>> about the change.
>>>
>>> With the requestMode, the button would not actually switch modes; it
> would
>>> call requestMode('view') and this would tell the container to switch
the
>>> mode.
>>>
>>>
>>> Compatibility with Other Standards
>>>
>>> This behavior would be comparable to that of javax.portlet, which
> specifies
>>> that a portlet can "programmatically change [its] portlet mode when
>>> processing an action request."
>>>
>>> In other words, in the portlet world, there is a standard way for a
> portlet
>>> to request that the portlet container execute a mode change.
>>>
>>> The portlet spec allows the portlet container to ignore or override
the
>>> mode-change request. It is only a request.
>>>
>>>
>>> Regards,
>>> Howard
>>>
>>> --
>>> Howard Weingram 650.846.1000
>>> Principal Architect TIBCO Software Inc.
>>>
>>> TIBCO PageBus(TM) delivers ultra-lightweight
>>> publish-subscribe messaging for mash-ups.
>>> Learn more at http://www.pagebus.org
>>>
>>> _______________________________________________
>>> gadgets mailing list
>>> gadgets at openajax.org
>>> http://openajax.org/mailman/listinfo/gadgets
>>
>>
>>
>> --
>> Howard Weingram 650.846.1000
>> Principal Architect TIBCO Software Inc.
>>
>> TIBCO PageBus(TM) delivers ultra-lightweight
>> publish-subscribe messaging for mash-ups.
>> Learn more at http://www.pagebus.org
>>
>> _______________________________________________
>> gadgets mailing list
>> gadgets at openajax.org
>> http://openajax.org/mailman/listinfo/gadgets
>
>
>
> --
> Howard Weingram 650.846.1000
> Principal Architect TIBCO Software Inc.
>
> TIBCO PageBus(TM) delivers ultra-lightweight
> publish-subscribe messaging for mash-ups.
> Learn more at http://www.pagebus.org
>
--
Howard Weingram 650.846.1000
Principal Architect TIBCO Software Inc.
TIBCO PageBus(TM) delivers ultra-lightweight
publish-subscribe messaging for mash-ups.
Learn more at http://www.pagebus.org
_______________________________________________
gadgets mailing list
gadgets at openajax.org
http://openajax.org/mailman/listinfo/gadgets
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://openajax.org/pipermail/gadgets/attachments/20090413/dc6edc36/attachment-0001.html
More information about the gadgets
mailing list