# To subscribers of the xforms list from Clive A Stubbings <xforms@vjet.demon.co.uk> :
--- T.C. Zhao <tc_zhao@yahoo.com> commented..
>
> --- Clive A Stubbings <xforms@vjet.demon.co.uk> wrote:
>
> > Realistically, if we are going to use TAB based navigation (and this
> > seems to
> > be what my users expect) then it should be applied consistantly.
> > Users are not
> > aware that there is a distinction between single and multi-line
> > inputs (and
> > there is no reason why they should be).
> There is a reason why this is so. Unless we say TAB is an invalid
> character for multi-line input, it's just not possible
> to distinguish an valid input for the input field and
> a focus switching request. I am not ready to ditch TAB
> entirely for multiline input field.
Interestingly, TAB does not *seem* to do anything at all in my multi-line
inputs.. Maybe I need to set up the TAB width or something but the sequence
j<TAB>j<TAB>j
displays
jjj
Interestingly, this is the behavior you would expect from what the manual
says ;-)
Section 18.1 of the V0.89 July 1999 manual comments
"This (<TAB> and <RETURN>) does not work for multi-line input fields
where <RETURN> key is used to separate lines and <TAB> is a legitimate
input character (not currently handled though)."
> >
> > The problem I have is that there is a multiline input field in the
> > middle of
> > a form.. TAB navigation stops at this point, which rather de-values
> > it and
> > confuses users.
> >
> No disagreement here. The problem is there is no obvious fix
> for this except ditching TAB for multiline input. Also, I
> believe that the behavior of xforms is consistent with some
> other toolkits wrt the focus switching policy.
I appreciate the problem.. The only solution would appear to be a mode
option. That then leaves the decision to the application writer..
Not at all ideal, but it would get us off your back ;-)
Presumably as an alternative solution its possible to do this in a
filter from the multi-line input.. but how do I move focus to the *next*
object on the form in the filter?
...
fl_set_input_filter(obj, manage_multiline_tabs);
...
FL_INPUTVALIDATOR manage_multiline_tabs(FL_OBJECT *obj, const char *old,
const char *cur, int c)
{
if (c == '\t') {
fl_step_input_focus(...); <<<< but how....
return FL_INVALID;
}
return FL_VALID;
}
Cheers
Clive
_________________________________________________
To unsubscribe, send the message "unsubscribe" to
xforms-request@bob.usuhs.mil or see
http://bob.usuhs.mil/mailserv/xforms.html
XForms Home Page: http://world.std.com/~xforms
List Archive: http://bob.usuhs.mil/mailserv/list-archives/
This archive was generated by hypermail 2b29 : Tue Jun 06 2000 - 17:36:27 EDT