[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-devel
Subject:    Re: Please check my IPv4LineEdit !
From:       "Malte S. Stretz" <msquadrat.nospamplease () gmx ! net>
Date:       2005-03-22 18:44:13
Message-ID: 200503221944.18003 () malte ! stretz ! eu ! org
[Download RAW message or body]

On Monday 21 March 2005 23:11 CET tweakBSD@gmx.net wrote:
> Am Montag 21 März 2005 22:50 schrieb Sandro Giessl:
> [...]
> > I just tried the input mask "000.000.000.000;_" in designer and it
> > appears that the user doesn't need to provide the dots and it behaves
> > like you described, except that there is no 0-255 validation. The Qt
> > doc says validators can be applied, tough, I will have a look at this.
>
> Ok, if you type 56 in the first field then we should go to the next 0-255
> because the string "56" plus string "[0-9]" is bigger than will represent
> a number greater 255.

I think you should not put too much magic into those input fields.  Windows 
for example has stuff like this in many places and while it may sound 
useful on the first thought, they are often a usability nightmare.

I haven't tried your solution, but some examples I had issues with before 
(in different variations):

1. Assume I've typed the octet 234 as the first one.  Now I notice that I 
wanted to type 134 so I set the cursor to the first number and remove it.  
That will give 34 as the first octet, how will your input thingy react?  
34x isn't a valid octet, will it jump to the next one?  Or will it notice 
that the cursor is not at the end?

2. A variation:  I typed the octet 20.  Now I want to correct it to be 26.  
So I put the cursor between the 2 and the 0 and type a 6 because the next 
thing I wanto to do is to press Del to remove the 0.  But 260 isn't a valid 
octet, how does your filter react?

3. To the user these input fields look like four separate line edits.  
Normally you can use tab to switch to the next one.  Ok, I have to type the 
IP 10.123.1.2 without looking at my screen.  10<tab>123<tab>1<tab>2 (or 
maby with dots instead of tabs, should behave the same).  How will it 
react?  I've seen solutions like this which produced 10.123.0.1*ding* 
(system bell).  Because after the 123 it automagically jumped to the next 
field.  But I pressed tab again (thought I was still in the first field) 
and it was filled up with a zero.  (Of course this example works the other 
way round, too.)

Oh, and does pasting (fractions of) IP addresses work?

What I want to say is, that magic input fields (especially focus changing 
ones) are often more magic the user expects and instead of helping him they 
make his life harder because he always has to remember how that thingy 
worked on the OS he currently uses.

A much more useful solution are IMO "silent" validating input fields.  Have 
a look at the Eclipse Class Wizard for example.  If something is fishy with 
the data the user entered (ie. he tries to derive a non-existing class) 
then a small light bulb appears behind (or in front? can't remember) the 
input fields.  The user can click on that icon and get an (understandable) 
explanation on what seems to be wrong.

Cheers,
Malte
 
>> Visit http://mail.kde.org/mailman/listinfo/kde-devel#unsub to unsubscribe <<
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic