Ok it's the last :)

I've a solution to use a label with an input.

Is to use Html GWT widget to create this:
<label>
Description
<input type="text" name="description" />
</label>

On 12 déc, 20:35, philippe <vonck...@yahoo.fr> wrote:
> I've a solution to use a label with an input.
>
> Is to use Html GWT widget to create this:
> &lt;label&gt;
>    Description
>    &lt;input type="text" name="description" /&gt;
> &lt;/label&gt;
>
> On 12 déc, 17:49, philippe <vonck...@yahoo.fr> wrote:
>
>
>
> > Label tag must be used with input ID. With GWT we can't put an ID on
> > input tag so the label tag can't be used.
>
> > I think that ID aren't authorized for avoid the double ID in the DOM
> > and bugs.
>
> > HTML 4.01 or XHTML 1.1 are older. I hope that futur HTML version will
> > provide better management of dynamic pages.
>
> > On 3 déc, 12:13, philippe <vonck...@yahoo.fr> wrote:
>
> > > I also think GWT has not a really good history regarding
> > > accessibility.
>
> > >http://code.google.com/intl/fr-FR/webtoolkit/doc/1.6/DevGuideI18nAndA...
>
> > > On 3 déc, 11:04, Thomas Broyer <t.bro...@gmail.com> wrote:
>
> > > > On Dec 3, 4:45 am, Open eSignForms <yoz...@gmail.com> wrote:
>
> > > > > Does anybody know the history as to why GWT's Label widget uses a
> > > > > <div> instead of a <label> tag?
>
> > > > Probably because the Label widget is only for showing some text, not
> > > > necessarily label an input widget (such as a TextBox).
> > > > I also think GWT has not a really good history regarding accessibility
> > > > (feel free to disagree with me)
>
> > > > > The label tag allows the label to be tied to another element, such as
> > > > > the input tag, for accessibility, yet that seems lost with the Label
> > > > > widget.
>
> > > > GWT is hiding HTML, the DOM, etc. from developers (when using widgets'
> > > > "high level" APIs), so that developers don't depend on widgets
> > > > internals. For instance, there's no method for setting a widget's
> > > > "ID", you have to getElement().setId("myId"); but there's a method for
> > > > setting IDs for debugging purposes (ensureDebugId).
>
> > > > This means that if GWT had such a widget, it'd probably have a
> > > > setLabeledControl(...) method (to have a friendly API); which means
> > > > that:
> > > >  - the NewLabel widget would have to create the ID of the labeled
> > > > control, which means it'd break as soon as ensureDebugId is called on
> > > > the labeled control
> > > >  - the "link" between NewLabel and its labeled control would break as
> > > > soon as the labeled control's ID is changed, which breaks the
> > > > assumption that the "link" is between the widgets (you passed a Widget
> > > > to setLabeledControl, not an ID)
> > > >  - because per the HTML spec [1,2], the for="" attribute references a
> > > > "control" [3,4], setLabeledControl would have to check the widget
> > > > argument for being "labelable". It'd better be done at compile time
> > > > than runtime, which would mean constraining the use of NewLabel to
> > > > labeling known widgets: TextBox (PasswordTextBox extends TextBox),
> > > > ListBox, TextArea, Button, FileUpload, SimpleCheckBox
> > > > (SimpleRadioButton extends SimpleCheckBox); which rules out user-
> > > > defined widgets, even if they use a "labelable" DOM element (well,
> > > > eventually, there could be a Labelable interface, but implementing it
> > > > wouldn't be enough for the NewLabel to "work")
>
> > > > [1]http://www.w3.org/TR/html4/interact/forms.html#adef-for
> > > > [2]http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.htm...
> > > > [3]http://www.w3.org/TR/html4/interact/forms.html#h-17.2
> > > > [4]http://www.whatwg.org/specs/web-apps/current-work/multipage/forms.htm...
>
> > > > If you were to have a setLabeledControlID(String) instead of
> > > > setLabeledControl(Widget), it'd mean you expect people to use the
> > > > lower-level getElement().setId(...) method of the labeled widget,
> > > > which also means they are aware that it can play quite badly with
> > > > ensureDebugId. Providing a high-level API (NewLabel widget and its
> > > > setLabeledControlID method) that requires users to use low-level APIs
> > > > in other widgets in order to use it, looks weird.
>
> > > > I think GWT doesn't include such a widget for all these reasons. If
> > > > you want such a widget, you have to know the implications, i.e. know
> > > > GWT's internals, which means you are capable of writing the widget
> > > > yourself.
> > > > If GWT provided such a widget, expect a high number of bug reports,
> > > > just because people do not understand the implications, which means
> > > > incidentally much (too much) time spent on "fixing" the widget to make
> > > > it reliably work in almost all situations.
>
> > > > > Seems like Label was a misnomer and should have been called Text to
> > > > > parallel HTML.
>
> > > > Many widgets in other toolkits are called "label" without the
> > > > associated meaning of being associated with a control; for instance
> > > > java.awt.Label:  
> > > > http://java.sun.com/javase/6/docs/api/java/awt/Label.html
>
> > > > > As for myself, I essentially copied the GWT Label widget source to
> > > > > make my own Label that creates a <label> instead.
>
> > > > As for myself, I'm now using UiBinder, so the <label> is in the
> > > > *.ui.xml and if the labeled control has to be a widget, then in my
> > > > Java code I assign the labeled widget's ID and the label for="" to the
> > > > same createUniqueID() value.
> > > > You can search the GWT-C archives for a proposal to better handle this
> > > > in UiBinder; I also have a proposal (as a private Wave), but I'm
> > > > waiting for 2.0 to be released to make it public and actually discuss
> > > > it.

--

You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.


Reply via email to