@@ -17,36 +17,21 @@
1717#ifndef FAKE_SCOPE_H
1818#define FAKE_SCOPE_H
1919
20+#include <unity/shell/scopes/ScopeInterface.h>
21+
2022#include "fake_categories.h"
2123#include "fake_previewstack.h"
2224
23−#include <QObject>
2425#include <QTimer>
2526
2627class Department;
2728class Preview;
2829
29−class Scope : public QObject
30+class Scope : public unity::shell::scopes::ScopeInterface
3031{
32+// TODO
3133 Q_OBJECT
3234
33− Q_PROPERTY(QString id READ id NOTIFY idChanged)
34− Q_PROPERTY(QString name READ name NOTIFY nameChanged)
35− Q_PROPERTY(QString iconHint READ iconHint NOTIFY iconHintChanged)
36− Q_PROPERTY(QString description READ description NOTIFY descriptionChanged)
37− Q_PROPERTY(QString searchHint READ searchHint NOTIFY searchHintChanged)
38− Q_PROPERTY(bool searchInProgress READ searchInProgress WRITE setSearchInProgress NOTIFY searchInProgressChanged)
39− Q_PROPERTY(bool visible READ visible NOTIFY visibleChanged)
40− Q_PROPERTY(QString shortcut READ shortcut NOTIFY shortcutChanged)
41− Q_PROPERTY(Categories* categories READ categories NOTIFY categoriesChanged)
42− //Q_PROPERTY(Filters* filters READ filters NOTIFY filtersChanged)
43−
44− Q_PROPERTY(QString searchQuery READ searchQuery WRITE setSearchQuery NOTIFY searchQueryChanged)
45− Q_PROPERTY(QString noResultsHint READ noResultsHint WRITE setNoResultsHint NOTIFY noResultsHintChanged)
46− Q_PROPERTY(QString formFactor READ formFactor WRITE setFormFactor NOTIFY formFactorChanged)
47− Q_PROPERTY(bool isActive READ isActive WRITE setActive NOTIFY isActiveChanged)
48−
49−// TODO
5035 Q_PROPERTY(QString currentDepartment READ currentDepartment NOTIFY currentDepartmentChanged)
5136 Q_PROPERTY(bool hasDepartments READ hasDepartments NOTIFY hasDepartmentsChanged)
5237// END TODO
@@ -56,35 +41,33 @@ public:
5641 Scope(QString const& id, QString const& name, bool visible, QObject* parent = 0);
5742
5843 /* getters */
59− QString id() const;
60− QString name() const;
61− QString iconHint() const;
62− QString description() const;
63− QString searchHint() const;
64− bool visible() const;
65− QString shortcut() const;
66− bool connected() const;
67− bool searchInProgress() const;
68− Categories* categories() const;
69− QString searchQuery() const;
70− QString noResultsHint() const;
71− QString formFactor() const;
72− bool isActive() const;
44+ QString id() const override;
45+ QString name() const override;
46+ QString iconHint() const override;
47+ QString description() const override;
48+ QString searchHint() const override;
49+ bool visible() const override;
50+ QString shortcut() const override;
51+ bool searchInProgress() const override;
52+ unity::shell::scopes::CategoriesInterface* categories() const override;
53+ QString searchQuery() const override;
54+ QString noResultsHint() const override;
55+ QString formFactor() const override;
56+ bool isActive() const override;
7357
7458 /* setters */
75− void setName(const QString& name);
76− void setSearchQuery(const QString& search_query);
77− void setNoResultsHint(const QString& hint);
78− void setFormFactor(const QString& form_factor);
79− void setActive(const bool);
80− void setSearchInProgress(const bool inProg);
81−
82− Q_INVOKABLE void activate(QVariant const& result);
83− Q_INVOKABLE PreviewStack* preview(QVariant const& result);
84− Q_INVOKABLE void cancelActivation();
85− Q_INVOKABLE void closeScope(Scope* scope);
86−
87− // TODO
59+ void setSearchQuery(const QString& search_query) override;
60+ void setNoResultsHint(const QString& hint) override;
61+ void setFormFactor(const QString& form_factor) override;
62+ void setActive(const bool) override;
63+ Q_INVOKABLE void setSearchInProgress(const bool inProg); // This is not invokable in the Interface, here for testing benefits
64+
65+ Q_INVOKABLE void activate(QVariant const& result) override;
66+ Q_INVOKABLE PreviewStack* preview(QVariant const& result) override;
67+ Q_INVOKABLE void cancelActivation() override;
68+ Q_INVOKABLE void closeScope(unity::shell::scopes::ScopeInterface* scope) override;
69+
70+ // TODO this will go to unity-api eventually
8871 QString currentDepartment() const;
8972 bool hasDepartments() const;
9073 Q_INVOKABLE Department *getDepartment(const QString& id); // returns a Department with lazy-loaded children
@@ -92,35 +75,10 @@ public:
9275 // END TODO
9376
9477Q_SIGNALS:
95− // TODO
78+ // TODO this will go to unity-api eventually
9679 void currentDepartmentChanged(const QString&);
9780 void hasDepartmentsChanged(bool);
9881 // END TODO
99− void idChanged();
100− void nameChanged(const QString&);
101− void iconHintChanged(const QString&);
102− void descriptionChanged(const QString&);
103− void searchHintChanged(const QString&);
104− void searchInProgressChanged();
105− void visibleChanged(bool);
106− void shortcutChanged(const QString&);
107− void categoriesChanged();
108− //void filtersChanged();
109− void searchQueryChanged();
110− void noResultsHintChanged();
111− void formFactorChanged();
112− void isActiveChanged(bool);
113−
114− // signals triggered by activate(..) or preview(..) requests.
115− void showDash();
116− void hideDash();
117− void gotoUri(const QString &uri);
118− void activated();
119− void previewRequested(QVariant const& result);
120− void gotoScope(QString const& scopeId);
121− void openScope(Scope* scope);
122−
123− void activateApplication(const QString &desktop);
12482
12583protected:
12684