Author: dmacvicar Date: Mon May 19 19:55:14 2008 New Revision: 47686 URL: http://svn.opensuse.org/viewcvs/yast?rev=47686&view=rev Log: feedback for search (bnc#391406) reenable cancel (bnc#350988) fix search begins with string (bnc#388601) Modified: trunk/qt-pkg/package/yast2-qt-pkg.changes trunk/qt-pkg/src/YQPkgSearchFilterView.cc Modified: trunk/qt-pkg/package/yast2-qt-pkg.changes URL: http://svn.opensuse.org/viewcvs/yast/trunk/qt-pkg/package/yast2-qt-pkg.chang... ============================================================================== --- trunk/qt-pkg/package/yast2-qt-pkg.changes (original) +++ trunk/qt-pkg/package/yast2-qt-pkg.changes Mon May 19 19:55:14 2008 @@ -4,6 +4,14 @@ - Fixed bnc #389745: 'Changed Packages' window not centered ------------------------------------------------------------------- +Mon May 19 19:31:38 CEST 2008 - dmacvicar@suse.de + +- feedback for search (bnc#391406) +- reenable cancel (bnc#350988) +- fix search begins with string (bnc#388601) + + +------------------------------------------------------------------- Mon May 19 11:50:51 CEST 2008 - dmacvicar@suse.de - cycle status from autoselected to non-selected instead of Modified: trunk/qt-pkg/src/YQPkgSearchFilterView.cc URL: http://svn.opensuse.org/viewcvs/yast/trunk/qt-pkg/src/YQPkgSearchFilterView.... ============================================================================== --- trunk/qt-pkg/src/YQPkgSearchFilterView.cc (original) +++ trunk/qt-pkg/src/YQPkgSearchFilterView.cc Mon May 19 19:55:14 2008 @@ -34,6 +34,7 @@ #define YUILogComponent "qt-pkg" #include "YUILog.h" +#include "YQPackageSelector.h" #include "YQPkgSearchFilterView.h" #include "QY2LayoutUtils.h" #include "YQi18n.h" @@ -213,7 +214,8 @@ zypp::PoolQuery query; query.addKind(zypp::ResTraitszypp::Package::kind); - query.addString(_searchText->currentText().toUtf8().data()); + + string searchtext = _searchText->currentText().toUtf8().data(); QProgressDialog progress( _( "Searching..." ), // text _( "&Cancel" ), // cancelButtonLabel @@ -222,16 +224,21 @@ this // parent ); progress.setWindowTitle( "" ); - progress.setMinimumDuration( 2000 ); // millisec - + progress.setMinimumDuration( 1500 ); // millisec + // HACK, this should go to YQPackageSelector + parentWidget()->parentWidget()->setCursor(Qt::WaitCursor); + progress.setCursor(Qt::ArrowCursor); + QTime timer; query.setCaseSensitive( _caseSensitive->isChecked() ); switch ( _searchMode->currentIndex() ) { case Contains: + query.setMatchSubstring(); case BeginsWith: - query.setMatchSubstring(); + query.setMatchRegex(); + searchtext = "^" + searchtext; break; case ExactMatch: break; @@ -244,6 +251,8 @@ // Intentionally omitting "default" branch - let gcc watch for unhandled enums } + query.addString(searchtext); + if ( _searchInName->isChecked() ) query.addAttribute( zypp::sat::SolvAttr::name ); if ( _searchInDescription->isChecked() ) @@ -259,6 +268,9 @@ // but make this configurable later query.addAttribute( zypp::sat::SolvAttr::keywords ); + _searchText->setEnabled(false); + _searchButton->setEnabled(false); + timer.start(); int count = 0; @@ -276,6 +288,9 @@ emit filterMatch( selectable, zyppPkg ); } + if ( progress.wasCanceled() ) + break; + progress.setValue( count++ ); if ( timer.elapsed() > 300 ) // milisec @@ -285,7 +300,7 @@ // list change all the time, thus display updates are necessary // each time. - //qApp->processEvents(); + qApp->processEvents(); timer.restart(); } } @@ -294,6 +309,10 @@ emit message( _( "No Results." ) ); } + _searchText->setEnabled(true); + _searchButton->setEnabled(true); + parentWidget()->parentWidget()->setCursor(Qt::ArrowCursor); + emit filterFinished(); } -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org