From 57edc4be80255fdc49e328cff0449e26ec5bb4d4 Mon Sep 17 00:00:00 2001 From: blacksun Date: Fri, 12 Dec 2014 18:39:12 +0000 Subject: [PATCH] Sort value of search field in dialog to link report/master git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@3545 bfdf4180-ca20-0410-9c96-a3a8aa849046 --- sources/ui/elementselectorwidget.cpp | 10 ++++++++-- sources/ui/linksingleelementwidget.cpp | 4 +++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/sources/ui/elementselectorwidget.cpp b/sources/ui/elementselectorwidget.cpp index 3eb8be985..108361c61 100644 --- a/sources/ui/elementselectorwidget.cpp +++ b/sources/ui/elementselectorwidget.cpp @@ -152,6 +152,9 @@ void ElementSelectorWidget::buildInterface() { * we add this text to the button label and provide it through the filter */ if (elmt -> linkType() & Element::AllReport) { + //Add empty string to keep the same index with content_list + //see how work filtered for more detail why we need this + in_filter << ""; //Report have one terminal, but we check it to prevent assert. if (!elmt -> terminals().isEmpty()) { //We must to have at least one conductor @@ -166,6 +169,8 @@ void ElementSelectorWidget::buildInterface() { if (QET::eachStrIsEqual(str_list)) { button_text = tr("N\260 fil : ") + str_list.first() + "\n"; + //Replace the last empty string by the conductor text + in_filter.pop_back(); in_filter << str_list.first(); out_filter << str_list.first(); } @@ -239,9 +244,10 @@ void ElementSelectorWidget::filtered(const QString &str) { foreach (QWidget *w, content_list) w->setHidden(false); } else { - for (int i =0; isetHidden(false); + } else content_list.at(i)->setHidden(true); } diff --git a/sources/ui/linksingleelementwidget.cpp b/sources/ui/linksingleelementwidget.cpp index 7eea68f25..463e08658 100644 --- a/sources/ui/linksingleelementwidget.cpp +++ b/sources/ui/linksingleelementwidget.cpp @@ -193,7 +193,9 @@ void LinkSingleElementWidget::setUpCompleter() { search_field -> clear(); delete search_field -> completer(); - QCompleter *comp = new QCompleter(esw_ -> filter(), search_field); + QStringList filter = esw_->filter(); + filter.sort(); + QCompleter *comp = new QCompleter(filter, search_field); comp -> setCaseSensitivity(Qt::CaseInsensitive); search_field -> setCompleter(comp); }