logo       

RE: UITextField.updateToModel problems: msg#00075

java.ulc.devel

Subject: RE: UITextField.updateToModel problems

Hi Robert,

Could you please tell me:

1. what is the purpose behind overriding updateToModel() method?
Is it just to do formatting?
If so you can use one of the existing IDataType implementations of ULC or
implement your own.

2. What exactly are you doing in the reformat() method?

When you call UITextComponent#setText() directly (as against
getBasicTextComponent().setText()), ULC first removes the document listener,
sets the text, and sets the document listener again. This is the reason why:

1. valueChanged event is not generated
2. no formatting is done because it is the document listener which in turn
invokes the formatter (i.e. the data type).

Kindly provide more details so that we can find an appropriate solution.

Thanks and regards,

Janak

-----Original Message-----
From: ulc-developer-admin@xxxxxxxxxxxxxxx
[mailto:ulc-developer-admin@xxxxxxxxxxxxxxx]On Behalf Of ulc rbeeger
Sent: Wednesday, July 12, 2006 3:08 PM
To: ulc-developer@xxxxxxxxx
Subject: [ULC-developer] UITextField.updateToModel problems


Hi!

We have an extension that extends ULC/UITextField. We have overridden
updateToModel to reformat the typed string after the typing is finished:
protected void updateToModel(final boolean displayFormattedValue)
{
super.updateToModel(displayFormattedValue);
if (displayFormattedValue)
{
getBasicTextComponent().setText(reformat(getBasicTextComponent
().getText()));
}
}

The problem with this is that it sometimes an extra valueChangedEvent after
leaving the textfield.An alternative looks like this
protected void updateToModel(final boolean displayFormattedValue)
{
super.updateToModel(displayFormattedValue);
if (displayFormattedValue)
{
setText(reformat(getBasicTextComponent().getText()));
}
}
Now the extra event isn't created, but the text changes to the originally
typed in text when the textfield gets the cursor again.
For example if I typed in "1020", it is displayed as "10:20" after the
reformatting and again as"1020" once I click into the textfield.

Is there some way to reformat the text and make it stay reformatted without
the extra valueChangedEvent?

Cheers and thanks in advance,
Robert


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise