Re: Allow xf:setfocus with no @control to set the focus to the event target

Not a huge fan of it either, hence my reference to the way we do it in  
our implementation. [1]

-Erik

[1] http://lists.w3.org/Archives/Public/public-forms/2008Aug/0017.html

On Aug 12, 2008, at 2:01 PM, John Boyer wrote:

>
> I thought the point of the ID magic was exactly so that you didn't  
> have to think about it.
> It just does intelligently what is most likely what the form author  
> meant.
>
> Does it really make sense to try to focus the event target?  What if  
> a sequence of actions is grouped together and invoked from multiple  
> locations using dispatch?
>
> It seems an odd thing to see <setfocus/> without any indication of  
> what the focus is being set to.
>
> -1 from me.
>
> John M. Boyer, Ph.D.
> Senior Technical Staff Member
> Lotus Forms Architect and Researcher
> Chair, W3C Forms Working Group
> Workplace, Portal and Collaboration Software
> IBM Victoria Software Lab
> E-Mail: boyerj@ca.ibm.com
>
> Blog: http://www.ibm.com/developerworks/blogs/page/JohnBoyer
> Blog RSS feed: http://www.ibm.com/developerworks/blogs/rss/JohnBoyer?flavor=rssdw
>
>
>
>
> From:
> Ulrich Nicolas Lissé <unl@dreamlab.net>
> To:
> Mark Birbeck <mark.birbeck@webbackplane.com>
> Cc:
> public-forms <public-forms@w3.org>
> Date:
> 08/12/2008 01:04 PM
> Subject:
> Re: Allow xf:setfocus with no @control to set the focus to the  
> event  target
>
>
>
>
>
> Mark,
>
> +1 from me. Makes it easy to set focus within repeats without  
> needing to
> understand id magic.
>
> Regards,
> Uli.
>
> Mark Birbeck wrote:
> > Hello all,
> >
> > I was just looking something up in the spec, and noticed that if
> > @control is omitted from the use of xf:setfocus then nothing  
> happens.
> >
> > It occurred to me that omitting @control and defaulting to the event
> > target might actually be a useful pattern.
> >
> > This example is a little contrived, because I've only just thought  
> of
> > the whole thing, but bear with me....
> >
> > Ordinarily, setting focus on a control when it is invalid could be
> > done like this:
> >
> >   <xf:input id="me" ref="x">
> >     <xf:label>X:</xf:label>
> >     <xf:setfocus control="me" ev:event="xforms-invalid" />
> >   </xf:input>
> >
> > But that requires naming the control with an @id, and then ensuring
> > that the @control value and the control name are in sync. An easier
> > and more maintainable way would be:
> >
> >   <xf:input ref="x">
> >     <xf:label>X:</xf:label>
> >     <xf:setfocus ev:event="xforms-invalid" />
> >   </xf:input>
> >
> > If people don't like simply omitting @control, an alternative  
> would be:
> >
> >   <xf:input ref="x">
> >     <xf:label>X:</xf:label>
> >     <xf:setfocus control="" ev:event="xforms-invalid" />
> >   </xf:input>
> >
> > Regards,
> >
> > Mark
> >
>
> -- 
> Ulrich Nicolas Lissé
>
>
>
>

--
Orbeon Forms - Web Forms for the Enterprise Done the Right Way
http://www.orbeon.com/

Received on Tuesday, 12 August 2008 21:39:15 UTC