rem: KGlobal::locale()->readTime(str, &ok);
add: KGlobal::locale()->readTime(str, KLocale::WithoutSeconds, &ok);
context:     virtual State validate(QString& str, int& /*cursorPos*/) const    {        bool ok = false;        // TODO use KLocale::WithoutSeconds in HEAD        /*QTime time =*/ KGlobal::locale()->readTime(str, &ok);        if ( ok )            return Acceptable;        // readTime doesn't help knowing when the string is "Intermediate".        int length = str.length();        if ( !str ) // empty string?            return Invalid; // there should always be a ':' in it, right?        // HACK. Not fully locale aware etc. (esp. the separator is '.' in sv_SE...)        QChar sep = ':';        // I want to allow "HH:", ":MM" and ":" to make editing easier        if ( str[0] == sep )        {            if ( length == 1 ) // just ":"                return Intermediate;            QString minutes = str.mid(1);            int m = minutes.toInt(&ok);            if ( ok && m >= 0 && m < 60 )                return Intermediate;        } else if ( str[str.length()-1] == sep )        {            QString hours = str.left(length-1);            int h = hours.toInt(&ok);            if ( ok && h >= 0 && h < 24 )                return Intermediate;        }        return Invalid;    }