diff -r 7119b73b84d6 -r e52d42f9500c logsui/logscntfinder/src/logspredictive12keytranslator.cpp --- a/logsui/logscntfinder/src/logspredictive12keytranslator.cpp Fri May 14 15:52:41 2010 +0300 +++ b/logsui/logscntfinder/src/logspredictive12keytranslator.cpp Thu May 27 12:51:53 2010 +0300 @@ -31,8 +31,9 @@ // LogsPredictive12KeyTranslator::LogsPredictive12KeyTranslator() // ----------------------------------------------------------------------------- // -LogsPredictive12KeyTranslator::LogsPredictive12KeyTranslator() - : LogsPredictiveTranslator() +LogsPredictive12KeyTranslator::LogsPredictive12KeyTranslator( + const HbInputLanguage& lang ) + : LogsPredictiveTranslator( lang ) { LOGS_QDEBUG( "logs [FINDER] -> LogsPredictive12KeyTranslator::\ LogsPredictive12KeyTranslator()" ) @@ -60,15 +61,28 @@ // QStringList LogsPredictive12KeyTranslator::patternTokens( const QString& pattern ) const { + LOGS_QDEBUG( "logs [FINDER] -> LogsPredictive12KeyTranslator::\ +patternTokens()" ) + LOGS_QDEBUG_2( "logs [FINDER] pattern ", pattern ); + QStringList target = pattern.split( ZeroSepar, QString::SkipEmptyParts ); if ( target.length() > 1 ) { + LOGS_QDEBUG( "logs [FINDER] has separator(s) " ) QString& first = target[0]; QString& last = target[target.length()-1]; padWithZeros( first, pattern, 0 ); padWithZeros( last, pattern, last.length() ); + } else if ( target.length() == 1 && //0280 -> 028 + pattern[pattern.length()-1] == ZeroSepar ) { + LOGS_QDEBUG( "logs [FINDER] no separators, trailing zero(s) " ) + QString& first = target[0]; + padWithZeros( first, pattern, 0 ); } else if ( target.length() == 0 ) { + LOGS_QDEBUG( "logs [FINDER] only separators " ) target.append( ZeroSepar ); } + LOGS_QDEBUG( "logs [FINDER] <- LogsPredictive12KeyTranslator::\ +patternTokens()" ) return target; }