From b48845bf24f1361a349c86a48a7b54e49df94533 Mon Sep 17 00:00:00 2001 From: cniehaus Date: Wed, 30 Apr 2003 19:28:50 +0000 Subject: I hope I will code more in the next days --- (limited to 'noncore/apps/odict/dingwidget.cpp') diff --git a/noncore/apps/odict/dingwidget.cpp b/noncore/apps/odict/dingwidget.cpp index cfef84d..16164ed 100644 --- a/noncore/apps/odict/dingwidget.cpp +++ b/noncore/apps/odict/dingwidget.cpp @@ -30,7 +30,6 @@ #include #include // for getenv - DingWidget::DingWidget( ) { methodname = QString::null; @@ -89,6 +88,14 @@ void DingWidget::setQueryWord( QString qword ) queryword = qword; } + +void DingWidget::loadValues() +{ + Config cfg( "odict" ); + cfg.setGroup( "Method_" + methodname ); + trenner = cfg.readEntry( "Seperator" ); +} + BroswerContent DingWidget::setText( QString word ) { queryword = word; @@ -97,16 +104,11 @@ BroswerContent DingWidget::setText( QString word ) return parseInfo(); } -void DingWidget::loadValues() -{ - Config cfg( "odict" ); - cfg.setGroup( "Method_" + methodname ); - trenner = cfg.readEntry( "Seperator" ); -} BroswerContent DingWidget::parseInfo() { - if ( isCompleteWord ) queryword = " " + queryword + " "; + if ( isCompleteWord ) + queryword = " " + queryword + " "; QStringList search = lines.grep( queryword , isCaseSensitive ); QString current; @@ -118,62 +120,29 @@ BroswerContent DingWidget::parseInfo() QStringList toplist, bottomlist; QString substitute = ""+queryword+""; - /* Dieser Block ist von Patrik. Ich versuche einen neuen - * Ansatz. Zum einen ist HTML scheiße an dieser Stelle und - * zum andern funktioniert der Code nicht so wie er sollte. - QString substitute = ""+queryword+""; - - QString html_header = ""; - QString html_footer = "
"; - QString html_table_left = ""; - QString html_table_sep = ""; - QString html_table_right = ""; - - for( QStringList::Iterator it = search.begin() ; it != search.end() ; ++it ) - { - current = *it; - left = current.left( current.find(reg_div) ); - right = current.right( current.length() - current.find(reg_div) - 1 ); - if ( left.contains( reg_word ) ) - { - left.replace( queryword, substitute ); - toplist.append( html_table_left + left + html_table_sep + right + html_table_right ); - } - else - { - right.replace( reg_word, substitute ); - bottomlist.append( html_table_left + right + html_table_sep + left + html_table_right ); - } - } - - //thats it, the lists are rendered. Lets put them in one string - s_strings.bottom = html_header + bottomlist.join( "
" ) + html_footer; - s_strings.top = html_header + toplist.join( "
" ) + html_footer; - */ - for( QStringList::Iterator it = search.begin() ; it != search.end() ; ++it ) { current = *it; left = current.left( current.find( trenner ) ); - right = current.right( current.length() - current.find(trenner) -2 ); + right = current.right( current.length() - current.find(trenner) - trenner.length() ); if ( left.contains( queryword , isCaseSensitive ) ) { left.replace( queryword, substitute ); - left = left + "-->" + right; + left = left + " -- " + right; toplist.append( left ); } else { right.replace( queryword, substitute ); - left = right + "-->" + left; + left = right + " -- " + left; bottomlist.append( right ); } } - s_strings.bottom = bottomlist.join( "\n" ); s_strings.top = toplist.join( "\n" ); + s_strings.bottom = bottomlist.join( "\n" ); return s_strings; } -- cgit v0.9.0.2