on xenial help sign in
Fixes.
commit4399b292b69d1fea5e7e360cae96f0754a2a682c authorPawel Stolowski <pawel.stolowski@canonical.com> dateTue 27 Aug 2013, 15:35 (13 years ago) parent6b46823
11 files changed+34−22
plugins/Unity/checkoptionfilter.cpp+3−1 plugins/Unity/filter.h+3−2 plugins/Unity/genericoptionsmodel.cpp+7−6 plugins/Unity/genericoptionsmodel.h+2−1 plugins/Unity/multirangefilter.cpp+3−1 plugins/Unity/radiooptionfilter.cpp+3−1 plugins/Unity/ratingoptionsmodel.cpp+3−3 plugins/Unity/ratingoptionsmodel.h+1−1 plugins/Unity/ratingsfilter.cpp+2−1 plugins/Unity/unityoptionsmodel.cpp+5−4 plugins/Unity/unityoptionsmodel.h+2−1
plugins/Unity/checkoptionfilter.cpp+3−1
@@ -52,9 +52,11 @@ void CheckOptionFilter::onOptionsChanged(unity::dash::CheckOptionFilter::CheckOp
5252
5353 m_options = new UnityOptionsModel(this, options,
5454 m_unityCheckOptionFilter->option_added,
55− m_unityCheckOptionFilter->option_removed);
55+ m_unityCheckOptionFilter->option_removed,
56+ true);
5657
5758 connect(m_options, SIGNAL(activeChanged(AbstractFilterOption *)), m_options, SLOT(ensureTheOnlyActive(AbstractFilterOption *)));
59+ connect(m_options, SIGNAL(showAllActivated()), this, SLOT(clear()));
5860
5961 /* Property change signals */
6062 m_signals << m_unityCheckOptionFilter->options.changed.connect(sigc::mem_fun(this, &CheckOptionFilter::onOptionsChanged));
plugins/Unity/filter.h+3−2
@@ -56,11 +56,12 @@ public:
5656 bool filtering() const;
5757 virtual GenericOptionsModel* options() const = 0;
5858
59− Q_INVOKABLE void clear();
60−
6159 static Filter* newFromUnityFilter(unity::dash::Filter::Ptr unityFilter);
6260 bool hasUnityFilter(unity::dash::Filter::Ptr unityFilter) const;
6361
62+public Q_SLOTS:
63+ void clear();
64+
6465Q_SIGNALS:
6566 void optionsChanged();
6667
plugins/Unity/genericoptionsmodel.cpp+7−6
@@ -32,7 +32,7 @@ GenericOptionsModel::GenericOptionsModel(bool showAllOption, QObject *parent)
3232 auto showAll = new ShowAllFilterOption(this);
3333 connect(showAll, SIGNAL(activeChanged(bool)), this, SLOT(onOptionChanged()));
3434 connect(showAll, SIGNAL(activeChanged(bool)), this, SLOT(onShowAllClicked(bool)));
35− addOption(showAll, 0);
35+ addOption(showAll);
3636 }
3737}
3838
@@ -111,11 +111,6 @@ AbstractFilterOption* GenericOptionsModel::getRawOption(QVector<AbstractFilterOp
111111 return nullptr;
112112}
113113
114−void GenericOptionsModel::onShowAllClicked(bool active)
115−{
116− ensureTheOnlyActive(m_options[0]);
117−}
118−
119114void GenericOptionsModel::ensureTheOnlyActive(AbstractFilterOption *activeOption)
120115{
121116 if (activeOption->active()) {
@@ -181,3 +176,9 @@ void GenericOptionsModel::onActiveChanged()
181176 Q_EMIT activeChanged(option);
182177 }
183178}
179+
180+void GenericOptionsModel::onShowAllClicked(bool active)
181+{
182+ if (active)
183+ Q_EMIT showAllActivated();
184+}
plugins/Unity/genericoptionsmodel.h+2−1
@@ -59,6 +59,7 @@ public Q_SLOTS:
5959
6060Q_SIGNALS:
6161 void activeChanged(AbstractFilterOption *option);
62+ void showAllActivated();
6263
6364protected Q_SLOTS:
6465 void onOptionChanged();
@@ -66,7 +67,7 @@ protected Q_SLOTS:
6667 void onShowAllClicked(bool active);
6768
6869protected:
69− void addOption(AbstractFilterOption *option, int index);
70+ void addOption(AbstractFilterOption *option, int index = -1);
7071 void removeOption(int index);
7172 int indexOf(const QString &option_id);
7273
plugins/Unity/multirangefilter.cpp+3−1
@@ -52,9 +52,11 @@ void MultiRangeFilter::onOptionsChanged(unity::dash::MultiRangeFilter::Options o
5252
5353 m_options = new UnityOptionsModel(this, options,
5454 m_unityMultiRangeFilter->option_added,
55− m_unityMultiRangeFilter->option_removed);
55+ m_unityMultiRangeFilter->option_removed,
56+ true);
5657
5758 connect(m_options, SIGNAL(activeChanged(AbstractFilterOption *)), m_options, SLOT(ensureTheOnlyActive(AbstractFilterOption *)));
59+ connect(m_options, SIGNAL(showAllActivated()), this, SLOT(clear()));
5860
5961 /* Property change signals */
6062 m_signals << m_unityMultiRangeFilter->options.changed.connect(sigc::mem_fun(this, &MultiRangeFilter::onOptionsChanged));
plugins/Unity/radiooptionfilter.cpp+3−1
@@ -51,7 +51,9 @@ void RadioOptionFilter::onOptionsChanged(unity::dash::RadioOptionFilter::RadioOp
5151 }
5252 m_options = new UnityOptionsModel(this, m_unityRadioOptionFilter->options,
5353 m_unityRadioOptionFilter->option_added,
54− m_unityRadioOptionFilter->option_removed);
54+ m_unityRadioOptionFilter->option_removed,
55+ this);
56+ connect(m_options, SIGNAL(showAllActivated()), this, SLOT(clear()));
5557
5658 m_signals << m_unityRadioOptionFilter->options.changed.connect(sigc::mem_fun(this, &RadioOptionFilter::onOptionsChanged));
5759
plugins/Unity/ratingoptionsmodel.cpp+3−3
@@ -23,11 +23,11 @@
2323// local
2424#include "ratingfilteroption.h"
2525
26−RatingOptionsModel::RatingOptionsModel(QObject *parent) :
27− GenericOptionsModel(parent)
26+RatingOptionsModel::RatingOptionsModel(bool showAllOption, QObject *parent) :
27+ GenericOptionsModel(showAllOption, parent)
2828{
2929 for (int i=1; i<=5; i++) {
3030 auto opt = new RatingFilterOption(QString::number(i), i*0.2f, this);
31− addOption(opt, i-1);
31+ addOption(opt);
3232 }
3333}
plugins/Unity/ratingoptionsmodel.h+1−1
@@ -27,7 +27,7 @@ class RatingOptionsModel : public GenericOptionsModel
2727 Q_OBJECT
2828
2929public:
30− RatingOptionsModel(QObject *parent);
30+ RatingOptionsModel(bool showAllOption, QObject *parent);
3131};
3232
3333#endif // RATINGOPTIONSMODEL_H
plugins/Unity/ratingsfilter.cpp+2−1
@@ -53,9 +53,10 @@ void RatingsFilter::setUnityFilter(unity::dash::Filter::Ptr filter)
5353
5454 delete m_options;
5555
56− m_options = new RatingOptionsModel(this);
56+ m_options = new RatingOptionsModel(true, this);
5757 connect(m_options, SIGNAL(activeChanged(AbstractFilterOption *)), m_options, SLOT(ensureTheOnlyActive(AbstractFilterOption *)));
5858 connect(m_options, SIGNAL(activeChanged(AbstractFilterOption *)), this, SLOT(onActiveChanged(AbstractFilterOption *)));
59+ connect(m_options, SIGNAL(showAllActivated()), this, SLOT(clear()));
5960
6061 Q_EMIT optionsChanged();
6162}
plugins/Unity/unityoptionsmodel.cpp+5−4
@@ -26,8 +26,9 @@
2626UnityOptionsModel::UnityOptionsModel(QObject *parent,
2727 const std::vector<unity::dash::FilterOption::Ptr> options,
2828 sigc::signal<void, unity::dash::FilterOption::Ptr> optionAdded,
29− sigc::signal<void, unity::dash::FilterOption::Ptr> optionRemoved) :
30− GenericOptionsModel(parent)
29+ sigc::signal<void, unity::dash::FilterOption::Ptr> optionRemoved,
30+ bool showAllOption) :
31+ GenericOptionsModel(showAllOption, parent)
3132{
3233 setOptions(options, optionAdded, optionRemoved);
3334}
@@ -38,7 +39,7 @@ void UnityOptionsModel::setOptions(const std::vector<unity::dash::FilterOption::
3839{
3940 for (unsigned int i=0; i<options.size(); i++)
4041 {
41− addOption(new FilterOption(options[i], this), i);
42+ addOption(new FilterOption(options[i], this));
4243 }
4344 optionAdded.connect(sigc::mem_fun(this, &UnityOptionsModel::onOptionAdded));
4445 optionRemoved.connect(sigc::mem_fun(this, &UnityOptionsModel::onOptionRemoved));
@@ -50,7 +51,7 @@ void UnityOptionsModel::onOptionAdded(unity::dash::FilterOption::Ptr option)
5051 if (index >= 0)
5152 {
5253 beginInsertRows(QModelIndex(), index, index);
53− addOption(new FilterOption(option, this), index);
54+ addOption(new FilterOption(option, this));
5455 endInsertRows();
5556 }
5657}
plugins/Unity/unityoptionsmodel.h+2−1
@@ -35,7 +35,8 @@ public:
3535 UnityOptionsModel(QObject *parent,
3636 const std::vector<unity::dash::FilterOption::Ptr> options,
3737 sigc::signal<void, unity::dash::FilterOption::Ptr> optionAdded,
38− sigc::signal<void, unity::dash::FilterOption::Ptr> optionRemoved);
38+ sigc::signal<void, unity::dash::FilterOption::Ptr> optionRemoved,
39+ bool showAllOption);
3940
4041private:
4142 void setOptions(const std::vector<unity::dash::FilterOption::Ptr> options,