Merge lp:~marcustomlinson/unity-scopes-api/is_account_login_result into lp:unity-scopes-api

Proposed by Marcus Tomlinson
Status: Superseded
Proposed branch: lp:~marcustomlinson/unity-scopes-api/is_account_login_result
Merge into: lp:unity-scopes-api
Diff against target: 10608 lines (+4210/-2055)
197 files modified
CMakeLists.txt (+1/-1)
CTestCustom.cmake.in (+6/-0)
HACKING (+36/-0)
README (+1/-1)
RELEASE_NOTES.md (+9/-0)
STRUCTS (+8/-0)
debian/changelog (+23/-0)
debian/libunity-scopes-qt-dev.debhelper.log (+0/-4)
debian/libunity-scopes-qt-doc.debhelper.log (+0/-4)
debian/libunity-scopes-qt.debhelper.log (+0/-30)
debian/libunity-scopes-qt.symbols (+280/-377)
debian/libunity-scopes3.symbols (+43/-1)
doc/tutorial.dox (+1/-1)
include/unity/scopes/CannedQuery.h (+27/-1)
include/unity/scopes/DateTimePickerFilter.h (+211/-0)
include/unity/scopes/Result.h (+8/-2)
include/unity/scopes/Scope.h (+20/-0)
include/unity/scopes/ScopeBase.h (+4/-6)
include/unity/scopes/SearchMetadata.h (+7/-0)
include/unity/scopes/SearchQueryBase.h (+15/-1)
include/unity/scopes/Variant.h (+5/-1)
include/unity/scopes/internal/' (+0/-59)
include/unity/scopes/internal/CannedQueryImpl.h (+6/-2)
include/unity/scopes/internal/DateTimePickerFilterImpl.h (+88/-0)
include/unity/scopes/internal/DfltConfig.h.in (+3/-0)
include/unity/scopes/internal/QueryCtrlObject.h (+1/-1)
include/unity/scopes/internal/QueryObject.h (+1/-1)
include/unity/scopes/internal/RuntimeImpl.h (+1/-0)
include/unity/scopes/internal/ScopeImpl.h (+8/-0)
include/unity/scopes/internal/SearchMetadataImpl.h (+1/-0)
include/unity/scopes/internal/SearchQueryBaseImpl.h (+3/-0)
include/unity/scopes/internal/SearchReplyImpl.h (+1/-1)
include/unity/scopes/internal/Utils.h (+2/-0)
include/unity/scopes/internal/smartscopes/SSQueryCtrlObject.h (+1/-1)
include/unity/scopes/qt/HttpAsyncReader.h (+18/-17)
include/unity/scopes/qt/JsonAsyncReader.h (+17/-16)
include/unity/scopes/qt/JsonReader.h (+11/-10)
include/unity/scopes/qt/QActionMetadata.h (+5/-1)
include/unity/scopes/qt/QCannedQuery.h (+19/-0)
include/unity/scopes/qt/QCategorisedResult.h (+4/-0)
include/unity/scopes/qt/QCategory.h (+4/-0)
include/unity/scopes/qt/QColumnLayout.h (+4/-0)
include/unity/scopes/qt/QDepartment.h (+5/-3)
include/unity/scopes/qt/QPreviewQueryBase.h (+4/-1)
include/unity/scopes/qt/QPreviewQueryBaseAPI.h (+13/-0)
include/unity/scopes/qt/QPreviewReply.h (+4/-1)
include/unity/scopes/qt/QPreviewReplyProxy.h (+4/-0)
include/unity/scopes/qt/QPreviewWidget.h (+4/-0)
include/unity/scopes/qt/QResult.h (+4/-1)
include/unity/scopes/qt/QScopeBase.h (+16/-15)
include/unity/scopes/qt/QScopeBaseAPI.h (+4/-5)
include/unity/scopes/qt/QSearchMetadata.h (+11/-1)
include/unity/scopes/qt/QSearchQueryBase.h (+5/-2)
include/unity/scopes/qt/QSearchQueryBaseAPI.h (+13/-1)
include/unity/scopes/qt/QSearchReply.h (+4/-1)
include/unity/scopes/qt/QSearchReplyProxy.h (+4/-0)
include/unity/scopes/qt/QVariantBuilder.h (+11/-6)
include/unity/scopes/qt/XmlAsyncReader.h (+17/-16)
include/unity/scopes/qt/XmlReader.h (+11/-10)
include/unity/scopes/qt/internal/QActionMetadataImpl.h (+5/-71)
include/unity/scopes/qt/internal/QCannedQueryImpl.h (+2/-0)
include/unity/scopes/qt/internal/QCategorisedResultImpl.h (+1/-22)
include/unity/scopes/qt/internal/QCategoryImpl.h (+0/-27)
include/unity/scopes/qt/internal/QColumnLayoutImpl.h (+2/-45)
include/unity/scopes/qt/internal/QPreviewQueryBaseImpl.h (+0/-13)
include/unity/scopes/qt/internal/QPreviewReplyImpl.h (+3/-32)
include/unity/scopes/qt/internal/QPreviewWidgetImpl.h (+1/-110)
include/unity/scopes/qt/internal/QResultImpl.h (+0/-155)
include/unity/scopes/qt/internal/QScopeBaseAPIImpl.h (+4/-37)
include/unity/scopes/qt/internal/QScopeBaseImpl.h (+1/-9)
include/unity/scopes/qt/internal/QScopeVariant.h (+0/-4)
include/unity/scopes/qt/internal/QSearchMetadataImpl.h (+3/-89)
include/unity/scopes/qt/internal/QSearchQueryBaseImpl.h (+0/-26)
include/unity/scopes/qt/internal/QSearchReplyImpl.h (+1/-80)
include/unity/scopes/qt/internal/QUtils.h (+9/-8)
include/unity/scopes/testing/MockPreviewReply.h (+5/-3)
include/unity/scopes/testing/MockScope.h (+7/-0)
include/unity/scopes/testing/MockSearchReply.h (+6/-3)
include/unity/scopes/testing/TypedScopeFixture.h (+10/-1)
include/unity/scopes/utility/internal/BufferedSearchReplyImpl.h (+1/-1)
scoperegistry/scoperegistry.cpp (+8/-19)
src/scopes/CMakeLists.txt (+1/-0)
src/scopes/CannedQuery.cpp (+15/-0)
src/scopes/DateTimePickerFilter.cpp (+125/-0)
src/scopes/PreviewWidget.cpp (+8/-1)
src/scopes/Result.cpp (+5/-0)
src/scopes/SearchMetadata.cpp (+5/-0)
src/scopes/SearchQueryBase.cpp (+62/-40)
src/scopes/Variant.cpp (+24/-1)
src/scopes/internal/CMakeLists.txt (+1/-0)
src/scopes/internal/CannedQueryImpl.cpp (+74/-1)
src/scopes/internal/DateTimePickerFilterImpl.cpp (+268/-0)
src/scopes/internal/FilterBaseImpl.cpp (+5/-0)
src/scopes/internal/IniSettingsSchema.cpp (+4/-3)
src/scopes/internal/JsonSettingsSchema.cpp (+3/-2)
src/scopes/internal/LocationImpl.cpp (+1/-0)
src/scopes/internal/Logger.cpp (+26/-26)
src/scopes/internal/QueryCtrlObject.cpp (+1/-1)
src/scopes/internal/QueryObject.cpp (+2/-2)
src/scopes/internal/RuntimeConfig.cpp (+2/-8)
src/scopes/internal/RuntimeImpl.cpp (+28/-30)
src/scopes/internal/ScopeImpl.cpp (+18/-0)
src/scopes/internal/SearchMetadataImpl.cpp (+5/-0)
src/scopes/internal/SearchQueryBaseImpl.cpp (+100/-9)
src/scopes/internal/SettingsDB.cpp (+0/-1)
src/scopes/internal/Utils.cpp (+63/-24)
src/scopes/internal/smartscopes/SSQueryCtrlObject.cpp (+1/-1)
src/scopes/internal/smartscopes/SmartScopesClient.cpp (+2/-2)
src/scopes/internal/zmq_middleware/ObjectAdapter.cpp (+0/-6)
src/scopes/internal/zmq_middleware/VariantConverter.cpp (+9/-0)
src/scopes/internal/zmq_middleware/capnproto/ValueDict.capnp (+1/-0)
src/scopes/qt/CMakeLists.txt (+35/-33)
src/scopes/qt/HttpAsyncReader.cpp (+0/-2)
src/scopes/qt/JsonAsyncReader.cpp (+0/-1)
src/scopes/qt/JsonReader.cpp (+0/-1)
src/scopes/qt/QActionMetadata.cpp (+1/-1)
src/scopes/qt/QCannedQuery.cpp (+10/-0)
src/scopes/qt/QPreviewQueryBaseAPI.cpp (+6/-3)
src/scopes/qt/QPreviewWidget.cpp (+1/-1)
src/scopes/qt/QResult.cpp (+1/-7)
src/scopes/qt/QSearchMetadata.cpp (+5/-1)
src/scopes/qt/QSearchQueryBaseAPI.cpp (+10/-4)
src/scopes/qt/QVariantBuilder.cpp (+5/-0)
src/scopes/qt/XmlAsyncReader.cpp (+0/-1)
src/scopes/qt/XmlReader.cpp (+0/-1)
src/scopes/qt/internal/QActionMetadataImpl.cpp (+5/-6)
src/scopes/qt/internal/QCannedQueryImpl.cpp (+12/-2)
src/scopes/qt/internal/QCategoryImpl.cpp (+2/-2)
src/scopes/qt/internal/QColumnLayoutImpl.cpp (+2/-3)
src/scopes/qt/internal/QDepartmentImpl.cpp (+5/-5)
src/scopes/qt/internal/QPreviewReplyImpl.cpp (+2/-3)
src/scopes/qt/internal/QPreviewWidgetImpl.cpp (+4/-4)
src/scopes/qt/internal/QResultImpl.cpp (+8/-49)
src/scopes/qt/internal/QScopeBaseAPIImpl.cpp (+25/-30)
src/scopes/qt/internal/QScopeVariant.cpp (+6/-6)
src/scopes/qt/internal/QSearchMetadataImpl.cpp (+11/-5)
src/scopes/qt/internal/QUtils.cpp (+30/-15)
src/scopes/qt/internal/QVariantBuilderImpl.cpp (+5/-9)
src/scopes/utility/internal/BufferedSearchReplyImpl.cpp (+1/-1)
test/gtest/scopes/Aggregation/CMakeLists.txt (+0/-39)
test/gtest/scopes/Aggregation/LoopDetection_test.cpp (+1/-2)
test/gtest/scopes/Aggregation/Runtime.ini.in (+1/-0)
test/gtest/scopes/CMakeLists.txt (+7/-5)
test/gtest/scopes/CannedQuery/CannedQuery_test.cpp (+74/-4)
test/gtest/scopes/CategorisedResult/CategorisedResult_test.cpp (+8/-8)
test/gtest/scopes/DateTimePickerFilter/CMakeLists.txt (+4/-0)
test/gtest/scopes/DateTimePickerFilter/DateTimePickerFilter_test.cpp (+125/-0)
test/gtest/scopes/Location/Location_test.cpp (+44/-0)
test/gtest/scopes/OnlineAccountClient/OnlineAccountClient_test.cpp (+2/-0)
test/gtest/scopes/StripLocation/CMakeLists.txt (+20/-0)
test/gtest/scopes/StripLocation/Runtime.ini.in (+8/-0)
test/gtest/scopes/StripLocation/StripLocation_test.cpp (+240/-0)
test/gtest/scopes/StripLocation/TestRegistry.ini.in (+7/-0)
test/gtest/scopes/StripLocation/Zmq.ini.in (+2/-0)
test/gtest/scopes/StripLocation/scopes/Aggregator/Aggregator.cpp (+134/-0)
test/gtest/scopes/StripLocation/scopes/Aggregator/Aggregator.ini.in (+5/-0)
test/gtest/scopes/StripLocation/scopes/Aggregator/CMakeLists.txt (+2/-0)
test/gtest/scopes/StripLocation/scopes/CMakeLists.txt (+2/-0)
test/gtest/scopes/StripLocation/scopes/Leaf/CMakeLists.txt (+2/-0)
test/gtest/scopes/StripLocation/scopes/Leaf/Leaf.cpp (+98/-0)
test/gtest/scopes/StripLocation/scopes/Leaf/Leaf.ini.in (+5/-0)
test/gtest/scopes/ThrowingScope/ThrowingScope.cpp (+7/-7)
test/gtest/scopes/Variant/Variant_test.cpp (+7/-0)
test/gtest/scopes/internal/RegistryObject/RegistryObject_test.cpp (+6/-0)
test/gtest/scopes/internal/RuntimeConfig/CMakeLists.txt (+8/-1)
test/gtest/scopes/internal/RuntimeConfig/RuntimeConfig_test.cpp (+35/-35)
test/gtest/scopes/internal/Utils/CMakeLists.txt (+1/-0)
test/gtest/scopes/internal/Utils/Utils_test.cpp (+68/-2)
test/gtest/scopes/internal/zmq_middleware/VariantConverter/VariantConverter_test.cpp (+2/-0)
test/gtest/scopes/qt/CMakeLists.txt (+2/-0)
test/gtest/scopes/qt/JsonAsyncReader/JsonAsyncReader_test.cpp (+1/-6)
test/gtest/scopes/qt/XmlAsyncReader/XmlAsyncReader_test.cpp (+1/-4)
test/gtest/scopes/qt/qt-bindings/BasicEventsChecker.h (+129/-0)
test/gtest/scopes/qt/qt-bindings/CMakeLists.txt (+38/-0)
test/gtest/scopes/qt/qt-bindings/FakeScope.h (+3/-5)
test/gtest/scopes/qt/qt-bindings/QActionMetadata_test.cpp (+3/-3)
test/gtest/scopes/qt/qt-bindings/QCannedQuery_test.cpp (+31/-7)
test/gtest/scopes/qt/qt-bindings/QCategorisedResult_test.cpp (+143/-6)
test/gtest/scopes/qt/qt-bindings/QColumnLayout_test.cpp (+38/-9)
test/gtest/scopes/qt/qt-bindings/QDepartment_test.cpp (+55/-9)
test/gtest/scopes/qt/qt-bindings/QEventTypeMatcher.h (+11/-8)
test/gtest/scopes/qt/qt-bindings/QMockScope.h (+14/-9)
test/gtest/scopes/qt/qt-bindings/QPreviewQueryBaseAPI_test.cpp (+104/-47)
test/gtest/scopes/qt/qt-bindings/QPreviewWidget_test.cpp (+117/-0)
test/gtest/scopes/qt/qt-bindings/QScopeBaseAPIImpl_test.cpp (+17/-19)
test/gtest/scopes/qt/qt-bindings/QScopeBaseAPIMock.h (+3/-3)
test/gtest/scopes/qt/qt-bindings/QScopeCreation_test.cpp (+18/-8)
test/gtest/scopes/qt/qt-bindings/QSearchMetadata_test.cpp (+3/-3)
test/gtest/scopes/qt/qt-bindings/QSearchQueryBaseAPI_test.cpp (+85/-28)
test/gtest/scopes/qt/qt-bindings/QUtils_test.cpp (+167/-0)
test/gtest/scopes/qt/qt-bindings/QVariantBuilder_test.cpp (+45/-7)
test/gtest/scopes/qt/qt-bindings/TestSetup.h (+25/-24)
test/gtest/scopes/testing/CMakeLists.txt (+4/-4)
test/headers/CMakeLists.txt (+2/-2)
test/headers/compile_headers.py (+1/-2)
tools/symbol_diff.in (+67/-28)
unity-scopes.map (+1/-0)
To merge this branch: bzr merge lp:~marcustomlinson/unity-scopes-api/is_account_login_result
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Approve
Paweł Stołowski (community) Approve
Michi Henning (community) Approve
Review via email: mp+256271@code.launchpad.net

This proposal has been superseded by a proposal from 2015-04-15.

Commit message

Added is_account_login_result() method to Result class.

To post a comment you must log in.
Revision history for this message
Michi Henning (michihenning) wrote :

Looks very reasonable to me!

review: Approve
Revision history for this message
Paweł Stołowski (stolowski) wrote :

+1

review: Approve
Revision history for this message
Michi Henning (michihenning) wrote :

Marcus, I just noticed that you proposed this for trunk, not devel. Was that intentional?

Revision history for this message
Paweł Stołowski (stolowski) wrote :

> Marcus, I just noticed that you proposed this for trunk, not devel. Was that
> intentional?

uh oh, I missed that... Yeah, please retarget at devel.

578. By Marcus Tomlinson

Added is_account_login_result() method to Result class.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
579. By Marcus Tomlinson

Merged devel

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'CMakeLists.txt'
2--- CMakeLists.txt 2015-03-25 06:31:32 +0000
3+++ CMakeLists.txt 2015-04-15 10:06:48 +0000
4@@ -227,7 +227,7 @@
5 # API version
6 set(UNITY_SCOPES_MAJOR 0)
7 set(UNITY_SCOPES_MINOR 6)
8-set(UNITY_SCOPES_MICRO 15)
9+set(UNITY_SCOPES_MICRO 16)
10 set(UNITY_SCOPES_SOVERSION 3)
11
12 # Version for testing, with all symbols visible
13
14=== modified file 'CTestCustom.cmake.in'
15--- CTestCustom.cmake.in 2014-07-25 05:54:44 +0000
16+++ CTestCustom.cmake.in 2015-04-15 10:06:48 +0000
17@@ -12,8 +12,14 @@
18 stand-alone-unity-scopes-headers
19 stand-alone-unity-scopes-internal-headers
20 stand-alone-unity-scopes-testing-headers
21+ stand-alone-unity-scopes-utility-headers
22+ stand-alone-unity-scopes-utility-internal-headers
23+ stand-alone-unity-scopes-qt-headers
24+ stand-alone-unity-scopes-qt-internal-headers
25 clean-public-unity-scopes-headers
26 clean-public-unity-scopes-testing-headers
27+ clean-public-unity-scopes-utility-headers
28+ clean-public-unity-scopes-qt-headers
29 IsolatedScopeBenchmark # Runs too slowly and crashes valgrind 3.10.0 with g++-4.9
30 copyright
31 whitespace)
32
33=== modified file 'HACKING'
34--- HACKING 2015-01-27 09:38:24 +0000
35+++ HACKING 2015-04-15 10:06:48 +0000
36@@ -49,6 +49,31 @@
37
38 $ make valgrind
39
40+It doesn't make sense for some tests to run them with valgrind. For
41+example, the header compilation tests don't need valgrind because
42+we'd just be testing that Python doesn't leak. There are also some
43+tests that run too slow and time out under valgrind and, occasionally,
44+valgrind crashes for a particular test.
45+
46+There are two ways to suppress tests:
47+
48+You can add a test name to CTestCustom.cmake.in to suppress that
49+test completely. That makes sense for the header compilation tests,
50+for example.
51+
52+If a specific test case in a test program causes a valgrind problem,
53+you can selectively disable a section of code like this:
54+
55+ #include <valgrind/valgrind.h>
56+
57+ if (!RUNNING_ON_VALGRIND)
58+ {
59+ // Code here crashes valgrind...
60+ }
61+
62+That way, the test will still be run as part of the normal "make test"
63+target, but will be ommitted when running "make valgrind".
64+
65 Coverage
66 --------
67
68@@ -143,6 +168,17 @@
69
70 $ TSAN_OPTIONS="suppressions=../tsan-suppress" make test
71
72+If a test runs too slowly under address sanitizer, you can
73+hide a section of code from address sanitzer with:
74+
75+#if defined(__has_feature)
76+ #if !__has_feature(address_sanitizer)
77+
78+ // Code here takes forever under address sanitizer...
79+
80+ #endif
81+#endif
82+
83 Updating symbols file
84 ---------------------
85
86
87=== modified file 'README'
88--- README 2014-05-27 17:28:51 +0000
89+++ README 2015-04-15 10:06:48 +0000
90@@ -313,7 +313,7 @@
91 care of returning an exception to the client.
92
93 The concrete servant method called by dispatch_ (such as
94-ScopeI::create_query) now unmarshals any in-parameters, translates them to
95+ScopeI::search) now unmarshals any in-parameters, translates them to
96 the middleware-independent equivalents, forwards the invocation to the
97 middleware-independent servant, and translates and marshals any return
98 values or exceptions.
99
100=== modified file 'RELEASE_NOTES.md'
101--- RELEASE_NOTES.md 2015-04-01 13:24:17 +0000
102+++ RELEASE_NOTES.md 2015-04-15 10:06:48 +0000
103@@ -1,6 +1,15 @@
104 Release notes
105 =============
106
107+Changes in version 0.6.16
108+=========================
109+ - Added support for attaching arbitrary data to CannedQuery.
110+ - Added _ENABLE_QT_EXPERIMENTAL_ guard to qt headers until that library
111+ is finalized. Further changes in the unity::scopes::qt namespace are
112+ expected at this point.
113+ - Added DateTimePickerFilter into experimental namespace.
114+ - Added is_account_login_result() method to Result class.
115+
116 Changes in version 0.6.15
117 =========================
118 - Renamed "child_scopes()" to "find_child_scopes()"
119
120=== modified file 'STRUCTS'
121--- STRUCTS 2015-01-28 09:03:59 +0000
122+++ STRUCTS 2015-04-15 10:06:48 +0000
123@@ -177,3 +177,11 @@
124 ========================================
125 all QueryMetadata attributes
126 'scope_data' : variant
127+
128+CannedQuery (returned by serialize())
129+=====================================
130+ 'scope' : string
131+ 'query_string' : string
132+ 'department_id' : string
133+ 'filter_state' : variant
134+ 'data' : variant (optional)
135
136=== modified file 'debian/changelog'
137--- debian/changelog 2015-04-07 06:33:09 +0000
138+++ debian/changelog 2015-04-15 10:06:48 +0000
139@@ -1,3 +1,17 @@
140+unity-scopes-api (0.6.16-0ubuntu1) UNRELEASED; urgency=medium
141+
142+ [ Pawel Stolowski ]
143+ * Added support for attaching arbitrary data to CannedQuery.
144+ * Added _ENABLE_QT_EXPERIMENTAL_ guard to qt headers until that library
145+ is finalized. Further changes in the unity::scopes::qt namespace are
146+ expected at this point.
147+ * Added DateTimePickerFilter into experimental namespace.
148+
149+ [ Marcus Tomlinson ]
150+ * Added is_account_login_result() method to Result class.
151+
152+ -- Marcus Tomlinson <marcus.tomlinson@canonical.com> Wed, 15 Apr 2015 12:03:39 +0200
153+
154 unity-scopes-api (0.6.15+15.04.20150407-0ubuntu1) vivid; urgency=medium
155
156 [ Marcus Tomlinson ]
157@@ -11,6 +25,15 @@
158
159 -- CI Train Bot <ci-train-bot@canonical.com> Tue, 07 Apr 2015 06:33:09 +0000
160
161+unity-scopes-api (0.6.15-0ubuntu1) UNRELEASED; urgency=medium
162+
163+ * Added support for attaching arbitrary data to CannedQuery.
164+ * Added _ENABLE_QT_EXPERIMENTAL_ guard to qt headers until that library
165+ is finalized. Further changes in the unity::scopes::qt namespace are
166+ expected at this point.
167+
168+ -- Pawel Stolowski <pawel.stolowski@canonical.com> Tue, 24 Feb 2015 13:27:37 +0100
169+
170 unity-scopes-api (0.6.14+15.04.20150223-0ubuntu1) vivid; urgency=medium
171
172 [ Pawel Stolowski ]
173
174=== removed file 'debian/libunity-scopes-qt-dev.debhelper.log'
175--- debian/libunity-scopes-qt-dev.debhelper.log 2015-01-26 14:13:31 +0000
176+++ debian/libunity-scopes-qt-dev.debhelper.log 1970-01-01 00:00:00 +0000
177@@ -1,4 +0,0 @@
178-override_dh_auto_configure dh_auto_configure
179-dh_auto_configure
180-dh_auto_build
181-dh_auto_test
182
183=== removed file 'debian/libunity-scopes-qt-doc.debhelper.log'
184--- debian/libunity-scopes-qt-doc.debhelper.log 2015-01-26 14:13:31 +0000
185+++ debian/libunity-scopes-qt-doc.debhelper.log 1970-01-01 00:00:00 +0000
186@@ -1,4 +0,0 @@
187-override_dh_auto_configure dh_auto_configure
188-dh_auto_configure
189-dh_auto_build
190-dh_auto_test
191
192=== removed file 'debian/libunity-scopes-qt.debhelper.log'
193--- debian/libunity-scopes-qt.debhelper.log 2015-01-26 14:13:31 +0000
194+++ debian/libunity-scopes-qt.debhelper.log 1970-01-01 00:00:00 +0000
195@@ -1,30 +0,0 @@
196-override_dh_auto_configure dh_auto_configure
197-dh_auto_configure
198-dh_auto_build
199-dh_auto_test
200-dh_prep
201-dh_auto_install
202-dh_install
203-override_dh_click dh_click
204-dh_click
205-dh_installdocs
206-dh_installchangelogs
207-dh_perl
208-dh_link
209-dh_compress
210-dh_fixperms
211-dh_strip
212-dh_makeshlibs
213-dh_shlibdeps
214-dh_installdeb
215-dh_gencontrol
216-dh_md5sums
217-dh_builddeb
218-dh_builddeb
219-dh_builddeb
220-dh_builddeb
221-dh_builddeb
222-dh_builddeb
223-dh_builddeb
224-dh_builddeb
225-dh_auto_test
226
227=== modified file 'debian/libunity-scopes-qt.symbols'
228--- debian/libunity-scopes-qt.symbols 2015-02-05 14:57:23 +0000
229+++ debian/libunity-scopes-qt.symbols 2015-04-15 10:06:48 +0000
230@@ -1,411 +1,314 @@
231 libunity-scopes-qt.so.01 libunity-scopes-qt #MINVER#
232- (c++)"unity::scopes::qt::JsonReader::JsonReader()@Base" 0.6.13+15.04.20150205.1
233- (c++)"unity::scopes::qt::JsonReader::JsonReader()@Base" 0.6.13+15.04.20150205.1
234- (c++)"unity::scopes::qt::QScopeBase::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
235- (c++)"unity::scopes::qt::QScopeBase::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
236- (c++)"unity::scopes::qt::QScopeBase::staticMetaObject@Base" 0.6.13+15.04.20150205.1
237- (c++)"unity::scopes::qt::QScopeBase::stop()@Base" 0.6.13+15.04.20150205.1
238- (c++)"unity::scopes::qt::QScopeBase::start(QString const&)@Base" 0.6.13+15.04.20150205.1
239- (c++)"unity::scopes::qt::QScopeBase::QScopeBase(QObject*)@Base" 0.6.13+15.04.20150205.1
240- (c++)"unity::scopes::qt::QScopeBase::QScopeBase(QObject*)@Base" 0.6.13+15.04.20150205.1
241- (c++)"unity::scopes::qt::QScopeBase::~QScopeBase()@Base" 0.6.13+15.04.20150205.1
242- (c++)"unity::scopes::qt::QScopeBase::~QScopeBase()@Base" 0.6.13+15.04.20150205.1
243- (c++)"unity::scopes::qt::QScopeBase::~QScopeBase()@Base" 0.6.13+15.04.20150205.1
244- (c++)"unity::scopes::qt::QDepartment::add_subdepartment(std::shared_ptr<unity::scopes::qt::QDepartment const> const&)@Base" 0.6.13+15.04.20150205.1
245- (c++)"unity::scopes::qt::QDepartment::set_subdepartments(QList<QSharedPointer<unity::scopes::qt::QDepartment const> > const&)@Base" 0.6.13+15.04.20150205.1
246- (c++)"unity::scopes::qt::QDepartment::set_alternate_label(QString const&)@Base" 0.6.13+15.04.20150205.1
247- (c++)"unity::scopes::qt::QDepartment::set_has_subdepartments(bool)@Base" 0.6.13+15.04.20150205.1
248- (c++)"unity::scopes::qt::QDepartment::create(QString const&, unity::scopes::qt::QCannedQuery const&, QString const&)@Base" 0.6.13+15.04.20150205.1
249- (c++)"unity::scopes::qt::QDepartment::create(unity::scopes::qt::QCannedQuery const&, QString const&)@Base" 0.6.13+15.04.20150205.1
250- (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::QDepartment&&)@Base" 0.6.13+15.04.20150205.1
251- (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::internal::QDepartmentImpl*)@Base" 0.6.13+15.04.20150205.1
252- (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::QDepartment const&)@Base" 0.6.13+15.04.20150205.1
253- (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::QDepartment&&)@Base" 0.6.13+15.04.20150205.1
254- (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::internal::QDepartmentImpl*)@Base" 0.6.13+15.04.20150205.1
255- (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::QDepartment const&)@Base" 0.6.13+15.04.20150205.1
256- (c++)"unity::scopes::qt::QDepartment::~QDepartment()@Base" 0.6.13+15.04.20150205.1
257- (c++)"unity::scopes::qt::QDepartment::~QDepartment()@Base" 0.6.13+15.04.20150205.1
258- (c++)"unity::scopes::qt::QDepartment::operator=(unity::scopes::qt::QDepartment&&)@Base" 0.6.13+15.04.20150205.1
259- (c++)"unity::scopes::qt::QDepartment::operator=(unity::scopes::qt::QDepartment const&)@Base" 0.6.13+15.04.20150205.1
260- (c++)"unity::scopes::qt::QCannedQuery::set_filter_state(unity::scopes::FilterState const&)@Base" 0.6.13+15.04.20150205.1
261- (c++)"unity::scopes::qt::QCannedQuery::set_query_string(QString const&)@Base" 0.6.13+15.04.20150205.1
262- (c++)"unity::scopes::qt::QCannedQuery::set_department_id(QString const&)@Base" 0.6.13+15.04.20150205.1
263+ (c++)"typeinfo for unity::scopes::qt::CancelledEvent@Base" 0.6.13+15.04.20150205.1
264+ (c++)"typeinfo for unity::scopes::qt::HttpAsyncReader@Base" 0.6.13+15.04.20150205.1
265+ (c++)"typeinfo for unity::scopes::qt::InitializeEvent@Base" 0.6.13+15.04.20150205.1
266+ (c++)"typeinfo for unity::scopes::qt::JsonAsyncReader@Base" 0.6.13+15.04.20150205.1
267+ (c++)"typeinfo for unity::scopes::qt::QCategorisedResult@Base" 0.6.13+15.04.20150205.1
268+ (c++)"typeinfo for unity::scopes::qt::QCategory@Base" 0.6.13+15.04.20150205.1
269+ (c++)"typeinfo for unity::scopes::qt::QPreviewQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
270+ (c++)"typeinfo for unity::scopes::qt::QPreviewQueryBase@Base" 0.6.13+15.04.20150205.1
271+ (c++)"typeinfo for unity::scopes::qt::QPreviewReply@Base" 0.6.13+15.04.20150205.1
272+ (c++)"typeinfo for unity::scopes::qt::QPreviewWidget@Base" 0.6.13+15.04.20150205.1
273+ (c++)"typeinfo for unity::scopes::qt::QResult@Base" 0.6.13+15.04.20150205.1
274+ (c++)"typeinfo for unity::scopes::qt::QScopeBaseAPI@Base" 0.6.13+15.04.20150205.1
275+ (c++)"typeinfo for unity::scopes::qt::QScopeBase@Base" 0.6.13+15.04.20150205.1
276+ (c++)"typeinfo for unity::scopes::qt::QSearchQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
277+ (c++)"typeinfo for unity::scopes::qt::QSearchQueryBase@Base" 0.6.13+15.04.20150205.1
278+ (c++)"typeinfo for unity::scopes::qt::QSearchReply@Base" 0.6.13+15.04.20150205.1
279+ (c++)"typeinfo for unity::scopes::qt::QVariantBuilder@Base" 0.6.13+15.04.20150205.1
280+ (c++)"typeinfo for unity::scopes::qt::RunEvent@Base" 0.6.13+15.04.20150205.1
281+ (c++)"typeinfo for unity::scopes::qt::XmlAsyncReader@Base" 0.6.13+15.04.20150205.1
282+ (c++)"typeinfo name for unity::scopes::qt::CancelledEvent@Base" 0.6.13+15.04.20150205.1
283+ (c++)"typeinfo name for unity::scopes::qt::HttpAsyncReader@Base" 0.6.13+15.04.20150205.1
284+ (c++)"typeinfo name for unity::scopes::qt::InitializeEvent@Base" 0.6.13+15.04.20150205.1
285+ (c++)"typeinfo name for unity::scopes::qt::JsonAsyncReader@Base" 0.6.13+15.04.20150205.1
286+ (c++)"typeinfo name for unity::scopes::qt::QCategorisedResult@Base" 0.6.13+15.04.20150205.1
287+ (c++)"typeinfo name for unity::scopes::qt::QCategory@Base" 0.6.13+15.04.20150205.1
288+ (c++)"typeinfo name for unity::scopes::qt::QPreviewQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
289+ (c++)"typeinfo name for unity::scopes::qt::QPreviewQueryBase@Base" 0.6.13+15.04.20150205.1
290+ (c++)"typeinfo name for unity::scopes::qt::QPreviewReply@Base" 0.6.13+15.04.20150205.1
291+ (c++)"typeinfo name for unity::scopes::qt::QPreviewWidget@Base" 0.6.13+15.04.20150205.1
292+ (c++)"typeinfo name for unity::scopes::qt::QResult@Base" 0.6.13+15.04.20150205.1
293+ (c++)"typeinfo name for unity::scopes::qt::QScopeBaseAPI@Base" 0.6.13+15.04.20150205.1
294+ (c++)"typeinfo name for unity::scopes::qt::QScopeBase@Base" 0.6.13+15.04.20150205.1
295+ (c++)"typeinfo name for unity::scopes::qt::QSearchQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
296+ (c++)"typeinfo name for unity::scopes::qt::QSearchQueryBase@Base" 0.6.13+15.04.20150205.1
297+ (c++)"typeinfo name for unity::scopes::qt::QSearchReply@Base" 0.6.13+15.04.20150205.1
298+ (c++)"typeinfo name for unity::scopes::qt::QVariantBuilder@Base" 0.6.13+15.04.20150205.1
299+ (c++)"typeinfo name for unity::scopes::qt::RunEvent@Base" 0.6.13+15.04.20150205.1
300+ (c++)"typeinfo name for unity::scopes::qt::XmlAsyncReader@Base" 0.6.13+15.04.20150205.1
301+ (c++)"unity::scopes::qt::CancelledEvent::~CancelledEvent()@Base" 0.6.13+15.04.20150205.1
302+ (c++)"unity::scopes::qt::HttpAsyncReader::async_execute(core::net::http::Request::Handler const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.6.13+15.04.20150205.1
303+ (c++)"unity::scopes::qt::HttpAsyncReader::get_uri(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.6.13+15.04.20150205.1
304+ (c++)"unity::scopes::qt::HttpAsyncReader::~HttpAsyncReader()@Base" 0.6.13+15.04.20150205.1
305+ (c++)"unity::scopes::qt::HttpAsyncReader::HttpAsyncReader()@Base" 0.6.13+15.04.20150205.1
306+ (c++)"unity::scopes::qt::HttpAsyncReader::Priv::~Priv()@Base" 0.6.13+15.04.20150205.1
307+ (c++)"unity::scopes::qt::HttpAsyncReader::progress_report(core::net::http::Request::Progress const&) const@Base" 0.6.13+15.04.20150205.1
308+ (c++)"unity::scopes::qt::InitializeEvent::~InitializeEvent()@Base" 0.6.13+15.04.20150205.1
309+ (c++)"unity::scopes::qt::JsonAsyncReader::async_get_parser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.6.13+15.04.20150205.1
310+ (c++)"unity::scopes::qt::JsonAsyncReader::async_get_parser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.6.13+15.04.20150205.1
311+ (c++)"unity::scopes::qt::JsonAsyncReader::create_parser_with_data(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.6.13+15.04.20150205.1
312+ (c++)"unity::scopes::qt::JsonAsyncReader::~JsonAsyncReader()@Base" 0.6.13+15.04.20150205.1
313+ (c++)"unity::scopes::qt::JsonAsyncReader::JsonAsyncReader()@Base" 0.6.13+15.04.20150205.1
314+ (c++)"unity::scopes::qt::JsonReader::JsonReader()@Base" 0.6.13+15.04.20150205.1
315+ (c++)"unity::scopes::qt::JsonReader::read(QString const&, QVector<QPair<QString, QString> > const&) const@Base" 0.6.13+15.04.20150205.1
316+ (c++)"unity::scopes::qt::JsonReader::read(QUrl const&) const@Base" 0.6.13+15.04.20150205.1
317+ (c++)"unity::scopes::qt::QActionMetadata::contains_hint(QString const&) const@Base" 0.6.13+15.04.20150205.1
318+ (c++)"unity::scopes::qt::QActionMetadata::hints() const@Base" 0.6.13+15.04.20150205.1
319+ (c++)"unity::scopes::qt::QActionMetadata::operator[](QString const&)@Base" 0.6.13+15.04.20150205.1
320+ (c++)"unity::scopes::qt::QActionMetadata::operator[](QString const&) const@Base" 0.6.13+15.04.20150205.1
321+ (c++)"unity::scopes::qt::QActionMetadata::operator=(unity::scopes::qt::QActionMetadata&&)@Base" 0.6.13+15.04.20150205.1
322+ (c++)"unity::scopes::qt::QActionMetadata::operator=(unity::scopes::qt::QActionMetadata const&)@Base" 0.6.13+15.04.20150205.1
323+ (c++)"unity::scopes::qt::QActionMetadata::~QActionMetadata()@Base" 0.6.13+15.04.20150205.1
324+ (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
325+ (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::internal::QActionMetadataImpl*)@Base" 0.6.13+15.04.20150205.1
326+ (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::QActionMetadata&&)@Base" 0.6.13+15.04.20150205.1
327+ (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::QActionMetadata const&)@Base" 0.6.13+15.04.20150205.1
328+ (c++)"unity::scopes::qt::QActionMetadata::scope_data() const@Base" 0.6.13+15.04.20150205.1
329+ (c++)"unity::scopes::qt::QActionMetadata::set_hint(QString const&, QVariant const&)@Base" 0.6.13+15.04.20150205.1
330+ (c++)"unity::scopes::qt::QActionMetadata::set_scope_data(QVariant const&)@Base" 0.6.13+15.04.20150205.1
331+ (c++)"unity::scopes::qt::QCannedQuery::department_id() const@Base" 0.6.13+15.04.20150205.1
332+ (c++)"unity::scopes::qt::QCannedQuery::filter_state() const@Base" 0.6.13+15.04.20150205.1
333 (c++)"unity::scopes::qt::QCannedQuery::from_uri(QString const&)@Base" 0.6.13+15.04.20150205.1
334- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::QCannedQuery&&)@Base" 0.6.13+15.04.20150205.1
335- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::internal::QCannedQueryImpl*)@Base" 0.6.13+15.04.20150205.1
336- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(QString const&)@Base" 0.6.13+15.04.20150205.1
337- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(QString const&, QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
338- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::CannedQuery const&)@Base" 0.6.13+15.04.20150205.1
339- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::QCannedQuery const&)@Base" 0.6.13+15.04.20150205.1
340- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::QCannedQuery&&)@Base" 0.6.13+15.04.20150205.1
341- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::internal::QCannedQueryImpl*)@Base" 0.6.13+15.04.20150205.1
342- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(QString const&)@Base" 0.6.13+15.04.20150205.1
343- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(QString const&, QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
344- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::CannedQuery const&)@Base" 0.6.13+15.04.20150205.1
345- (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::QCannedQuery const&)@Base" 0.6.13+15.04.20150205.1
346- (c++)"unity::scopes::qt::QCannedQuery::~QCannedQuery()@Base" 0.6.13+15.04.20150205.1
347- (c++)"unity::scopes::qt::QCannedQuery::~QCannedQuery()@Base" 0.6.13+15.04.20150205.1
348+ (c++)"unity::scopes::qt::QCannedQuery::has_user_data() const@Base" 0replaceme
349 (c++)"unity::scopes::qt::QCannedQuery::operator=(unity::scopes::qt::QCannedQuery&&)@Base" 0.6.13+15.04.20150205.1
350 (c++)"unity::scopes::qt::QCannedQuery::operator=(unity::scopes::qt::QCannedQuery const&)@Base" 0.6.13+15.04.20150205.1
351- (c++)"unity::scopes::qt::QSearchReply::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
352- (c++)"unity::scopes::qt::QSearchReply::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
353- (c++)"unity::scopes::qt::QSearchReply::staticMetaObject@Base" 0.6.13+15.04.20150205.1
354- (c++)"unity::scopes::qt::QSearchReply::register_category(QString const&, QString const&, QString const&, unity::scopes::CategoryRenderer const&)@Base" 0.6.13+15.04.20150205.1
355- (c++)"unity::scopes::qt::QSearchReply::register_departments(std::shared_ptr<unity::scopes::qt::QDepartment const> const&)@Base" 0.6.13+15.04.20150205.1
356- (c++)"unity::scopes::qt::QSearchReply::push(unity::scopes::qt::QCategorisedResult const&)@Base" 0.6.13+15.04.20150205.1
357- (c++)"unity::scopes::qt::QSearchReply::error(std::__exception_ptr::exception_ptr)@Base" 0.6.13+15.04.20150205.1
358- (c++)"unity::scopes::qt::QSearchReply::QSearchReply(std::shared_ptr<unity::scopes::SearchReply>&, QObject*)@Base" 0.6.13+15.04.20150205.1
359- (c++)"unity::scopes::qt::QSearchReply::QSearchReply(std::shared_ptr<unity::scopes::SearchReply>&, QObject*)@Base" 0.6.13+15.04.20150205.1
360- (c++)"unity::scopes::qt::QSearchReply::~QSearchReply()@Base" 0.6.13+15.04.20150205.1
361- (c++)"unity::scopes::qt::QSearchReply::~QSearchReply()@Base" 0.6.13+15.04.20150205.1
362- (c++)"unity::scopes::qt::QSearchReply::~QSearchReply()@Base" 0.6.13+15.04.20150205.1
363+ (c++)"unity::scopes::qt::QCannedQuery::~QCannedQuery()@Base" 0.6.13+15.04.20150205.1
364+ (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(QString const&)@Base" 0.6.13+15.04.20150205.1
365+ (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(QString const&, QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
366+ (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::CannedQuery const&)@Base" 0.6.13+15.04.20150205.1
367+ (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::internal::QCannedQueryImpl*)@Base" 0.6.13+15.04.20150205.1
368+ (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::QCannedQuery&&)@Base" 0.6.13+15.04.20150205.1
369+ (c++)"unity::scopes::qt::QCannedQuery::QCannedQuery(unity::scopes::qt::QCannedQuery const&)@Base" 0.6.13+15.04.20150205.1
370+ (c++)"unity::scopes::qt::QCannedQuery::query_string() const@Base" 0.6.13+15.04.20150205.1
371+ (c++)"unity::scopes::qt::QCannedQuery::scope_id() const@Base" 0.6.13+15.04.20150205.1
372+ (c++)"unity::scopes::qt::QCannedQuery::serialize() const@Base" 0.6.13+15.04.20150205.1
373+ (c++)"unity::scopes::qt::QCannedQuery::set_department_id(QString const&)@Base" 0.6.13+15.04.20150205.1
374+ (c++)"unity::scopes::qt::QCannedQuery::set_filter_state(unity::scopes::FilterState const&)@Base" 0.6.13+15.04.20150205.1
375+ (c++)"unity::scopes::qt::QCannedQuery::set_query_string(QString const&)@Base" 0.6.13+15.04.20150205.1
376+ (c++)"unity::scopes::qt::QCannedQuery::to_uri() const@Base" 0.6.13+15.04.20150205.1
377+ (c++)"unity::scopes::qt::QCannedQuery::user_data() const@Base" 0replaceme
378+ (c++)"unity::scopes::qt::QCategorisedResult::category() const@Base" 0.6.13+15.04.20150205.1
379+ (c++)"unity::scopes::qt::QCategorisedResult::fwd() const@Base" 0.6.13+15.04.20150205.1
380+ (c++)"unity::scopes::qt::QCategorisedResult::operator=(unity::scopes::qt::QCategorisedResult&&)@Base" 0.6.13+15.04.20150205.1
381+ (c++)"unity::scopes::qt::QCategorisedResult::operator=(unity::scopes::qt::QCategorisedResult const&)@Base" 0.6.13+15.04.20150205.1
382+ (c++)"unity::scopes::qt::QCategorisedResult::~QCategorisedResult()@Base" 0.6.13+15.04.20150205.1
383+ (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(std::shared_ptr<unity::scopes::qt::QCategory const>)@Base" 0.6.13+15.04.20150205.1
384+ (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(unity::scopes::qt::QCategorisedResult&&)@Base" 0.6.13+15.04.20150205.1
385+ (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(unity::scopes::qt::QCategorisedResult const&)@Base" 0.6.13+15.04.20150205.1
386+ (c++)"unity::scopes::qt::QCategorisedResult::set_category(std::shared_ptr<unity::scopes::qt::QCategory const>)@Base" 0.6.13+15.04.20150205.1
387+ (c++)"unity::scopes::qt::QCategory::icon() const@Base" 0.6.13+15.04.20150205.1
388+ (c++)"unity::scopes::qt::QCategory::id() const@Base" 0.6.13+15.04.20150205.1
389+ (c++)"unity::scopes::qt::QCategory::~QCategory()@Base" 0.6.13+15.04.20150205.1
390+ (c++)"unity::scopes::qt::QCategory::QCategory(std::shared_ptr<unity::scopes::Category const>)@Base" 0.6.13+15.04.20150205.1
391+ (c++)"unity::scopes::qt::QCategory::QCategory(unity::scopes::qt::internal::QCategoryImpl*)@Base" 0.6.13+15.04.20150205.1
392+ (c++)"unity::scopes::qt::QCategory::query() const@Base" 0.6.13+15.04.20150205.1
393+ (c++)"unity::scopes::qt::QCategory::renderer_template() const@Base" 0.6.13+15.04.20150205.1
394+ (c++)"unity::scopes::qt::QCategory::serialize() const@Base" 0.6.13+15.04.20150205.1
395+ (c++)"unity::scopes::qt::QCategory::title() const@Base" 0.6.13+15.04.20150205.1
396 (c++)"unity::scopes::qt::QColumnLayout::add_column(QVector<QString>)@Base" 0.6.13+15.04.20150205.1
397- (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::QColumnLayout&&)@Base" 0.6.13+15.04.20150205.1
398- (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::internal::QColumnLayoutImpl*)@Base" 0.6.13+15.04.20150205.1
399- (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::QColumnLayout const&)@Base" 0.6.13+15.04.20150205.1
400- (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(int)@Base" 0.6.13+15.04.20150205.1
401- (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::QColumnLayout&&)@Base" 0.6.13+15.04.20150205.1
402- (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::internal::QColumnLayoutImpl*)@Base" 0.6.13+15.04.20150205.1
403- (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::QColumnLayout const&)@Base" 0.6.13+15.04.20150205.1
404- (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(int)@Base" 0.6.13+15.04.20150205.1
405- (c++)"unity::scopes::qt::QColumnLayout::~QColumnLayout()@Base" 0.6.13+15.04.20150205.1
406- (c++)"unity::scopes::qt::QColumnLayout::~QColumnLayout()@Base" 0.6.13+15.04.20150205.1
407+ (c++)"unity::scopes::qt::QColumnLayout::column(int) const@Base" 0.6.13+15.04.20150205.1
408+ (c++)"unity::scopes::qt::QColumnLayout::number_of_columns() const@Base" 0.6.13+15.04.20150205.1
409 (c++)"unity::scopes::qt::QColumnLayout::operator=(unity::scopes::qt::QColumnLayout&&)@Base" 0.6.13+15.04.20150205.1
410 (c++)"unity::scopes::qt::QColumnLayout::operator=(unity::scopes::qt::QColumnLayout const&)@Base" 0.6.13+15.04.20150205.1
411+ (c++)"unity::scopes::qt::QColumnLayout::~QColumnLayout()@Base" 0.6.13+15.04.20150205.1
412+ (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(int)@Base" 0.6.13+15.04.20150205.1
413+ (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::internal::QColumnLayoutImpl*)@Base" 0.6.13+15.04.20150205.1
414+ (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::QColumnLayout&&)@Base" 0.6.13+15.04.20150205.1
415+ (c++)"unity::scopes::qt::QColumnLayout::QColumnLayout(unity::scopes::qt::QColumnLayout const&)@Base" 0.6.13+15.04.20150205.1
416+ (c++)"unity::scopes::qt::QColumnLayout::serialize() const@Base" 0.6.13+15.04.20150205.1
417+ (c++)"unity::scopes::qt::QColumnLayout::size() const@Base" 0.6.13+15.04.20150205.1
418+ (c++)"unity::scopes::qt::QDepartment::add_subdepartment(std::shared_ptr<unity::scopes::qt::QDepartment const> const&)@Base" 0.6.13+15.04.20150205.1
419+ (c++)"unity::scopes::qt::QDepartment::alternate_label() const@Base" 0.6.13+15.04.20150205.1
420+ (c++)"unity::scopes::qt::QDepartment::create(QString const&, unity::scopes::qt::QCannedQuery const&, QString const&)@Base" 0.6.13+15.04.20150205.1
421+ (c++)"unity::scopes::qt::QDepartment::create(unity::scopes::qt::QCannedQuery const&, QString const&)@Base" 0.6.13+15.04.20150205.1
422+ (c++)"unity::scopes::qt::QDepartment::has_subdepartments() const@Base" 0.6.13+15.04.20150205.1
423+ (c++)"unity::scopes::qt::QDepartment::id() const@Base" 0.6.13+15.04.20150205.1
424+ (c++)"unity::scopes::qt::QDepartment::label() const@Base" 0.6.13+15.04.20150205.1
425+ (c++)"unity::scopes::qt::QDepartment::operator=(unity::scopes::qt::QDepartment&&)@Base" 0.6.13+15.04.20150205.1
426+ (c++)"unity::scopes::qt::QDepartment::operator=(unity::scopes::qt::QDepartment const&)@Base" 0.6.13+15.04.20150205.1
427+ (c++)"unity::scopes::qt::QDepartment::~QDepartment()@Base" 0.6.13+15.04.20150205.1
428+ (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::internal::QDepartmentImpl*)@Base" 0.6.13+15.04.20150205.1
429+ (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::QDepartment&&)@Base" 0.6.13+15.04.20150205.1
430+ (c++)"unity::scopes::qt::QDepartment::QDepartment(unity::scopes::qt::QDepartment const&)@Base" 0.6.13+15.04.20150205.1
431+ (c++)"unity::scopes::qt::QDepartment::query() const@Base" 0.6.13+15.04.20150205.1
432+ (c++)"unity::scopes::qt::QDepartment::serialize() const@Base" 0.6.13+15.04.20150205.1
433+ (c++)"unity::scopes::qt::QDepartment::set_alternate_label(QString const&)@Base" 0.6.13+15.04.20150205.1
434+ (c++)"unity::scopes::qt::QDepartment::set_has_subdepartments(bool)@Base" 0.6.13+15.04.20150205.1
435+ (c++)"unity::scopes::qt::QDepartment::set_subdepartments(QList<std::shared_ptr<unity::scopes::qt::QDepartment const> > const&)@Base" 0replaceme
436+ (c++)"unity::scopes::qt::QDepartment::subdepartments() const@Base" 0.6.13+15.04.20150205.1
437+ (c++)"unity::scopes::qt::QPreviewQueryBase::action_metadata() const@Base" 0.6.13+15.04.20150205.1
438+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::cancelled()@Base" 0.6.13+15.04.20150205.1
439+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::event(QEvent*)@Base" 0.6.13+15.04.20150205.1
440+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::init()@Base" 0replaceme
441+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::metaObject() const@Base" 0.6.13+15.04.20150205.1
442+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::~QPreviewQueryBaseAPI()@Base" 0.6.13+15.04.20150205.1
443+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::QPreviewQueryBaseAPI(std::shared_ptr<QCoreApplication>, unity::scopes::qt::QScopeBase&, unity::scopes::Result const&, unity::scopes::ActionMetadata const&, QObject*)@Base" 0.6.13+15.04.20150205.1
444+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
445+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
446+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::run(std::shared_ptr<unity::scopes::PreviewReply> const&)@Base" 0.6.13+15.04.20150205.1
447+ (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::staticMetaObject@Base" 0.6.13+15.04.20150205.1
448+ (c++)"unity::scopes::qt::QPreviewQueryBase::init(unity::scopes::qt::QPreviewQueryBaseAPI*)@Base" 0.6.13+15.04.20150205.1
449+ (c++)"unity::scopes::qt::QPreviewQueryBase::metaObject() const@Base" 0.6.13+15.04.20150205.1
450+ (c++)"unity::scopes::qt::QPreviewQueryBase::~QPreviewQueryBase()@Base" 0.6.13+15.04.20150205.1
451+ (c++)"unity::scopes::qt::QPreviewQueryBase::QPreviewQueryBase(QObject*)@Base" 0.6.13+15.04.20150205.1
452+ (c++)"unity::scopes::qt::QPreviewQueryBase::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
453+ (c++)"unity::scopes::qt::QPreviewQueryBase::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
454+ (c++)"unity::scopes::qt::QPreviewQueryBase::result() const@Base" 0.6.13+15.04.20150205.1
455+ (c++)"unity::scopes::qt::QPreviewQueryBase::staticMetaObject@Base" 0.6.13+15.04.20150205.1
456+ (c++)"unity::scopes::qt::QPreviewReply::metaObject() const@Base" 0.6.13+15.04.20150205.1
457+ (c++)"unity::scopes::qt::QPreviewReply::push(QList<unity::scopes::qt::QPreviewWidget> const&)@Base" 0.6.13+15.04.20150205.1
458+ (c++)"unity::scopes::qt::QPreviewReply::push(QString const&, QVariant const&)@Base" 0.6.13+15.04.20150205.1
459+ (c++)"unity::scopes::qt::QPreviewReply::~QPreviewReply()@Base" 0.6.13+15.04.20150205.1
460+ (c++)"unity::scopes::qt::QPreviewReply::QPreviewReply(std::shared_ptr<unity::scopes::PreviewReply>&, QObject*)@Base" 0.6.13+15.04.20150205.1
461 (c++)"unity::scopes::qt::QPreviewReply::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
462 (c++)"unity::scopes::qt::QPreviewReply::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
463 (c++)"unity::scopes::qt::QPreviewReply::register_layout(QList<unity::scopes::qt::QColumnLayout> const&)@Base" 0.6.13+15.04.20150205.1
464 (c++)"unity::scopes::qt::QPreviewReply::staticMetaObject@Base" 0.6.13+15.04.20150205.1
465- (c++)"unity::scopes::qt::QPreviewReply::push(QList<unity::scopes::qt::QPreviewWidget> const&)@Base" 0.6.13+15.04.20150205.1
466- (c++)"unity::scopes::qt::QPreviewReply::push(QString const&, QVariant const&)@Base" 0.6.13+15.04.20150205.1
467- (c++)"unity::scopes::qt::QPreviewReply::QPreviewReply(std::shared_ptr<unity::scopes::PreviewReply>&, QObject*)@Base" 0.6.13+15.04.20150205.1
468- (c++)"unity::scopes::qt::QPreviewReply::QPreviewReply(std::shared_ptr<unity::scopes::PreviewReply>&, QObject*)@Base" 0.6.13+15.04.20150205.1
469- (c++)"unity::scopes::qt::QPreviewReply::~QPreviewReply()@Base" 0.6.13+15.04.20150205.1
470- (c++)"unity::scopes::qt::QPreviewReply::~QPreviewReply()@Base" 0.6.13+15.04.20150205.1
471- (c++)"unity::scopes::qt::QPreviewReply::~QPreviewReply()@Base" 0.6.13+15.04.20150205.1
472- (c++)"unity::scopes::qt::QScopeBaseAPI::stop()@Base" 0.6.13+15.04.20150205.1
473- (c++)"unity::scopes::qt::QScopeBaseAPI::start(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.6.13+15.04.20150205.1
474- (c++)"unity::scopes::qt::QScopeBaseAPI::search(unity::scopes::CannedQuery const&, unity::scopes::SearchMetadata const&)@Base" 0.6.13+15.04.20150205.1
475- (c++)"unity::scopes::qt::QScopeBaseAPI::preview(unity::scopes::Result const&, unity::scopes::ActionMetadata const&)@Base" 0.6.13+15.04.20150205.1
476- (c++)"unity::scopes::qt::QScopeBaseAPI::QScopeBaseAPI(std::function<unity::scopes::qt::QScopeBase* ()> const&)@Base" 0.6.13+15.04.20150205.1
477- (c++)"unity::scopes::qt::QScopeBaseAPI::QScopeBaseAPI(std::function<unity::scopes::qt::QScopeBase* ()> const&)@Base" 0.6.13+15.04.20150205.1
478- (c++)"unity::scopes::qt::QScopeBaseAPI::~QScopeBaseAPI()@Base" 0.6.13+15.04.20150205.1
479- (c++)"unity::scopes::qt::QScopeBaseAPI::~QScopeBaseAPI()@Base" 0.6.13+15.04.20150205.1
480- (c++)"unity::scopes::qt::QScopeBaseAPI::~QScopeBaseAPI()@Base" 0.6.13+15.04.20150205.1
481- (c++)"unity::scopes::qt::CancelledEvent::~CancelledEvent()@Base" 0.6.13+15.04.20150205.1
482- (c++)"unity::scopes::qt::CancelledEvent::~CancelledEvent()@Base" 0.6.13+15.04.20150205.1
483- (c++)"unity::scopes::qt::CancelledEvent::~CancelledEvent()@Base" 0.6.13+15.04.20150205.1
484+ (c++)"unity::scopes::qt::QPreviewWidget::add_attribute_mapping(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
485+ (c++)"unity::scopes::qt::QPreviewWidget::add_attribute_value(QString const&, QVariant const&)@Base" 0.6.13+15.04.20150205.1
486 (c++)"unity::scopes::qt::QPreviewWidget::add_widget(unity::scopes::qt::QPreviewWidget const&)@Base" 0.6.13+15.04.20150205.1
487- (c++)"unity::scopes::qt::QPreviewWidget::add_attribute_value(QString const&, QVariant const&)@Base" 0.6.13+15.04.20150205.1
488- (c++)"unity::scopes::qt::QPreviewWidget::add_attribute_mapping(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
489- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::QPreviewWidget&&)@Base" 0.6.13+15.04.20150205.1
490- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::internal::QPreviewWidgetImpl*)@Base" 0.6.13+15.04.20150205.1
491- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(QString const&)@Base" 0.6.13+15.04.20150205.1
492- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
493- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::QPreviewWidget const&)@Base" 0.6.13+15.04.20150205.1
494- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::QPreviewWidget&&)@Base" 0.6.13+15.04.20150205.1
495- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::internal::QPreviewWidgetImpl*)@Base" 0.6.13+15.04.20150205.1
496- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(QString const&)@Base" 0.6.13+15.04.20150205.1
497- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
498- (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::QPreviewWidget const&)@Base" 0.6.13+15.04.20150205.1
499- (c++)"unity::scopes::qt::QPreviewWidget::~QPreviewWidget()@Base" 0.6.13+15.04.20150205.1
500- (c++)"unity::scopes::qt::QPreviewWidget::~QPreviewWidget()@Base" 0.6.13+15.04.20150205.1
501- (c++)"unity::scopes::qt::QPreviewWidget::~QPreviewWidget()@Base" 0.6.13+15.04.20150205.1
502+ (c++)"unity::scopes::qt::QPreviewWidget::attribute_mappings() const@Base" 0.6.13+15.04.20150205.1
503+ (c++)"unity::scopes::qt::QPreviewWidget::attribute_values() const@Base" 0.6.13+15.04.20150205.1
504+ (c++)"unity::scopes::qt::QPreviewWidget::data() const@Base" 0.6.13+15.04.20150205.1
505+ (c++)"unity::scopes::qt::QPreviewWidget::id() const@Base" 0.6.13+15.04.20150205.1
506 (c++)"unity::scopes::qt::QPreviewWidget::operator=(unity::scopes::qt::QPreviewWidget&&)@Base" 0.6.13+15.04.20150205.1
507 (c++)"unity::scopes::qt::QPreviewWidget::operator=(unity::scopes::qt::QPreviewWidget const&)@Base" 0.6.13+15.04.20150205.1
508- (c++)"unity::scopes::qt::XmlAsyncReader::create_parser_with_data(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.6.13+15.04.20150205.1
509- (c++)"unity::scopes::qt::XmlAsyncReader::XmlAsyncReader()@Base" 0.6.13+15.04.20150205.1
510- (c++)"unity::scopes::qt::XmlAsyncReader::XmlAsyncReader()@Base" 0.6.13+15.04.20150205.1
511- (c++)"unity::scopes::qt::XmlAsyncReader::~XmlAsyncReader()@Base" 0.6.13+15.04.20150205.1
512- (c++)"unity::scopes::qt::XmlAsyncReader::~XmlAsyncReader()@Base" 0.6.13+15.04.20150205.1
513- (c++)"unity::scopes::qt::XmlAsyncReader::~XmlAsyncReader()@Base" 0.6.13+15.04.20150205.1
514- (c++)"unity::scopes::qt::HttpAsyncReader::Priv::~Priv()@Base" 0.6.13+15.04.20150205.1
515- (c++)"unity::scopes::qt::HttpAsyncReader::Priv::~Priv()@Base" 0.6.13+15.04.20150205.1
516- (c++)"unity::scopes::qt::HttpAsyncReader::HttpAsyncReader()@Base" 0.6.13+15.04.20150205.1
517- (c++)"unity::scopes::qt::HttpAsyncReader::HttpAsyncReader()@Base" 0.6.13+15.04.20150205.1
518- (c++)"unity::scopes::qt::HttpAsyncReader::~HttpAsyncReader()@Base" 0.6.13+15.04.20150205.1
519- (c++)"unity::scopes::qt::HttpAsyncReader::~HttpAsyncReader()@Base" 0.6.13+15.04.20150205.1
520- (c++)"unity::scopes::qt::HttpAsyncReader::~HttpAsyncReader()@Base" 0.6.13+15.04.20150205.1
521- (c++)"unity::scopes::qt::InitializeEvent::~InitializeEvent()@Base" 0.6.13+15.04.20150205.1
522- (c++)"unity::scopes::qt::InitializeEvent::~InitializeEvent()@Base" 0.6.13+15.04.20150205.1
523- (c++)"unity::scopes::qt::InitializeEvent::~InitializeEvent()@Base" 0.6.13+15.04.20150205.1
524- (c++)"unity::scopes::qt::JsonAsyncReader::create_parser_with_data(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.6.13+15.04.20150205.1
525- (c++)"unity::scopes::qt::JsonAsyncReader::JsonAsyncReader()@Base" 0.6.13+15.04.20150205.1
526- (c++)"unity::scopes::qt::JsonAsyncReader::JsonAsyncReader()@Base" 0.6.13+15.04.20150205.1
527- (c++)"unity::scopes::qt::JsonAsyncReader::~JsonAsyncReader()@Base" 0.6.13+15.04.20150205.1
528- (c++)"unity::scopes::qt::JsonAsyncReader::~JsonAsyncReader()@Base" 0.6.13+15.04.20150205.1
529- (c++)"unity::scopes::qt::JsonAsyncReader::~JsonAsyncReader()@Base" 0.6.13+15.04.20150205.1
530- (c++)"unity::scopes::qt::QActionMetadata::set_scope_data(QVariant const&)@Base" 0.6.13+15.04.20150205.1
531- (c++)"unity::scopes::qt::QActionMetadata::set_hint(QString const&, QVariant const&)@Base" 0.6.13+15.04.20150205.1
532- (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::QActionMetadata&&)@Base" 0.6.13+15.04.20150205.1
533- (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::internal::QActionMetadataImpl*)@Base" 0.6.13+15.04.20150205.1
534- (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
535- (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::QActionMetadata const&)@Base" 0.6.13+15.04.20150205.1
536- (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::QActionMetadata&&)@Base" 0.6.13+15.04.20150205.1
537- (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::internal::QActionMetadataImpl*)@Base" 0.6.13+15.04.20150205.1
538- (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
539- (c++)"unity::scopes::qt::QActionMetadata::QActionMetadata(unity::scopes::qt::QActionMetadata const&)@Base" 0.6.13+15.04.20150205.1
540- (c++)"unity::scopes::qt::QActionMetadata::~QActionMetadata()@Base" 0.6.13+15.04.20150205.1
541- (c++)"unity::scopes::qt::QActionMetadata::~QActionMetadata()@Base" 0.6.13+15.04.20150205.1
542- (c++)"unity::scopes::qt::QActionMetadata::operator=(unity::scopes::qt::QActionMetadata&&)@Base" 0.6.13+15.04.20150205.1
543- (c++)"unity::scopes::qt::QActionMetadata::operator=(unity::scopes::qt::QActionMetadata const&)@Base" 0.6.13+15.04.20150205.1
544- (c++)"unity::scopes::qt::QActionMetadata::operator[](QString const&)@Base" 0.6.13+15.04.20150205.1
545- (c++)"unity::scopes::qt::QSearchMetadata::set_location(unity::scopes::Location const&)@Base" 0.6.13+15.04.20150205.1
546- (c++)"unity::scopes::qt::QSearchMetadata::set_cardinality(int)@Base" 0.6.13+15.04.20150205.1
547- (c++)"unity::scopes::qt::QSearchMetadata::set_hint(QString const&, QVariant const&)@Base" 0.6.13+15.04.20150205.1
548- (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(unity::scopes::qt::QSearchMetadata&&)@Base" 0.6.13+15.04.20150205.1
549- (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
550- (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(unity::scopes::qt::QSearchMetadata const&)@Base" 0.6.13+15.04.20150205.1
551- (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(int, QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
552- (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(unity::scopes::qt::QSearchMetadata&&)@Base" 0.6.13+15.04.20150205.1
553- (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
554- (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(unity::scopes::qt::QSearchMetadata const&)@Base" 0.6.13+15.04.20150205.1
555- (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(int, QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
556- (c++)"unity::scopes::qt::QSearchMetadata::~QSearchMetadata()@Base" 0.6.13+15.04.20150205.1
557- (c++)"unity::scopes::qt::QSearchMetadata::~QSearchMetadata()@Base" 0.6.13+15.04.20150205.1
558- (c++)"unity::scopes::qt::QSearchMetadata::operator[](QString const&)@Base" 0.6.13+15.04.20150205.1
559- (c++)"unity::scopes::qt::QVariantBuilder::end()@Base" 0.6.13+15.04.20150205.1
560- (c++)"unity::scopes::qt::QVariantBuilder::add_tuple(QVector<QPair<QString, QVariant> > const&)@Base" 0.6.13+15.04.20150205.1
561- (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::QVariantBuilder&&)@Base" 0.6.13+15.04.20150205.1
562- (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::internal::QVariantBuilderImpl*)@Base" 0.6.13+15.04.20150205.1
563- (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::QVariantBuilder const&)@Base" 0.6.13+15.04.20150205.1
564- (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder()@Base" 0.6.13+15.04.20150205.1
565- (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::QVariantBuilder&&)@Base" 0.6.13+15.04.20150205.1
566- (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::internal::QVariantBuilderImpl*)@Base" 0.6.13+15.04.20150205.1
567- (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::QVariantBuilder const&)@Base" 0.6.13+15.04.20150205.1
568- (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder()@Base" 0.6.13+15.04.20150205.1
569- (c++)"unity::scopes::qt::QVariantBuilder::~QVariantBuilder()@Base" 0.6.13+15.04.20150205.1
570- (c++)"unity::scopes::qt::QVariantBuilder::~QVariantBuilder()@Base" 0.6.13+15.04.20150205.1
571- (c++)"unity::scopes::qt::QVariantBuilder::~QVariantBuilder()@Base" 0.6.13+15.04.20150205.1
572- (c++)"unity::scopes::qt::QVariantBuilder::operator=(unity::scopes::qt::QVariantBuilder&&)@Base" 0.6.13+15.04.20150205.1
573- (c++)"unity::scopes::qt::QVariantBuilder::operator=(unity::scopes::qt::QVariantBuilder const&)@Base" 0.6.13+15.04.20150205.1
574- (c++)"unity::scopes::qt::QSearchQueryBase::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
575- (c++)"unity::scopes::qt::QSearchQueryBase::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
576- (c++)"unity::scopes::qt::QSearchQueryBase::staticMetaObject@Base" 0.6.13+15.04.20150205.1
577- (c++)"unity::scopes::qt::QSearchQueryBase::init(unity::scopes::qt::QSearchQueryBaseAPI*)@Base" 0.6.13+15.04.20150205.1
578- (c++)"unity::scopes::qt::QSearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.13+15.04.20150205.1
579- (c++)"unity::scopes::qt::QSearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.13+15.04.20150205.1
580- (c++)"unity::scopes::qt::QSearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.13+15.04.20150205.1
581- (c++)"unity::scopes::qt::QSearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.13+15.04.20150205.1
582- (c++)"unity::scopes::qt::QSearchQueryBase::QSearchQueryBase(QObject*)@Base" 0.6.13+15.04.20150205.1
583- (c++)"unity::scopes::qt::QSearchQueryBase::QSearchQueryBase(QObject*)@Base" 0.6.13+15.04.20150205.1
584- (c++)"unity::scopes::qt::QSearchQueryBase::~QSearchQueryBase()@Base" 0.6.13+15.04.20150205.1
585- (c++)"unity::scopes::qt::QSearchQueryBase::~QSearchQueryBase()@Base" 0.6.13+15.04.20150205.1
586- (c++)"unity::scopes::qt::QSearchQueryBase::~QSearchQueryBase()@Base" 0.6.13+15.04.20150205.1
587- (c++)"unity::scopes::qt::QPreviewQueryBase::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
588- (c++)"unity::scopes::qt::QPreviewQueryBase::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
589- (c++)"unity::scopes::qt::QPreviewQueryBase::staticMetaObject@Base" 0.6.13+15.04.20150205.1
590- (c++)"unity::scopes::qt::QPreviewQueryBase::init(unity::scopes::qt::QPreviewQueryBaseAPI*)@Base" 0.6.13+15.04.20150205.1
591- (c++)"unity::scopes::qt::QPreviewQueryBase::QPreviewQueryBase(QObject*)@Base" 0.6.13+15.04.20150205.1
592- (c++)"unity::scopes::qt::QPreviewQueryBase::QPreviewQueryBase(QObject*)@Base" 0.6.13+15.04.20150205.1
593- (c++)"unity::scopes::qt::QPreviewQueryBase::~QPreviewQueryBase()@Base" 0.6.13+15.04.20150205.1
594- (c++)"unity::scopes::qt::QPreviewQueryBase::~QPreviewQueryBase()@Base" 0.6.13+15.04.20150205.1
595- (c++)"unity::scopes::qt::QPreviewQueryBase::~QPreviewQueryBase()@Base" 0.6.13+15.04.20150205.1
596- (c++)"unity::scopes::qt::QCategorisedResult::set_category(std::shared_ptr<unity::scopes::qt::QCategory const>)@Base" 0.6.13+15.04.20150205.1
597- (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(unity::scopes::qt::QCategorisedResult&&)@Base" 0.6.13+15.04.20150205.1
598- (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(unity::scopes::qt::QCategorisedResult const&)@Base" 0.6.13+15.04.20150205.1
599- (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(std::shared_ptr<unity::scopes::qt::QCategory const>)@Base" 0.6.13+15.04.20150205.1
600- (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(unity::scopes::qt::QCategorisedResult&&)@Base" 0.6.13+15.04.20150205.1
601- (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(unity::scopes::qt::QCategorisedResult const&)@Base" 0.6.13+15.04.20150205.1
602- (c++)"unity::scopes::qt::QCategorisedResult::QCategorisedResult(std::shared_ptr<unity::scopes::qt::QCategory const>)@Base" 0.6.13+15.04.20150205.1
603- (c++)"unity::scopes::qt::QCategorisedResult::~QCategorisedResult()@Base" 0.6.13+15.04.20150205.1
604- (c++)"unity::scopes::qt::QCategorisedResult::~QCategorisedResult()@Base" 0.6.13+15.04.20150205.1
605- (c++)"unity::scopes::qt::QCategorisedResult::~QCategorisedResult()@Base" 0.6.13+15.04.20150205.1
606- (c++)"unity::scopes::qt::QCategorisedResult::operator=(unity::scopes::qt::QCategorisedResult&&)@Base" 0.6.13+15.04.20150205.1
607- (c++)"unity::scopes::qt::QCategorisedResult::operator=(unity::scopes::qt::QCategorisedResult const&)@Base" 0.6.13+15.04.20150205.1
608- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::run_signal(std::shared_ptr<unity::scopes::qt::QSearchReply> const&)@Base" 0.6.13+15.04.20150205.1
609- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
610- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
611- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::staticMetaObject@Base" 0.6.13+15.04.20150205.1
612- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::run(std::shared_ptr<unity::scopes::SearchReply> const&)@Base" 0.6.13+15.04.20150205.1
613- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::event(QEvent*)@Base" 0.6.13+15.04.20150205.1
614- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::cancelled()@Base" 0.6.13+15.04.20150205.1
615- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::QSearchQueryBaseAPI(std::shared_ptr<QCoreApplication>, unity::scopes::qt::QScopeBase&, unity::scopes::CannedQuery const&, unity::scopes::SearchMetadata const&, QObject*)@Base" 0.6.13+15.04.20150205.1
616- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::QSearchQueryBaseAPI(std::shared_ptr<QCoreApplication>, unity::scopes::qt::QScopeBase&, unity::scopes::CannedQuery const&, unity::scopes::SearchMetadata const&, QObject*)@Base" 0.6.13+15.04.20150205.1
617- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::~QSearchQueryBaseAPI()@Base" 0.6.13+15.04.20150205.1
618- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::~QSearchQueryBaseAPI()@Base" 0.6.13+15.04.20150205.1
619- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::~QSearchQueryBaseAPI()@Base" 0.6.13+15.04.20150205.1
620- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
621- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
622- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::staticMetaObject@Base" 0.6.13+15.04.20150205.1
623- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::run(std::shared_ptr<unity::scopes::PreviewReply> const&)@Base" 0.6.13+15.04.20150205.1
624- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::event(QEvent*)@Base" 0.6.13+15.04.20150205.1
625- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::cancelled()@Base" 0.6.13+15.04.20150205.1
626- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::QPreviewQueryBaseAPI(std::shared_ptr<QCoreApplication>, unity::scopes::qt::QScopeBase&, unity::scopes::Result const&, unity::scopes::ActionMetadata const&, QObject*)@Base" 0.6.13+15.04.20150205.1
627- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::QPreviewQueryBaseAPI(std::shared_ptr<QCoreApplication>, unity::scopes::qt::QScopeBase&, unity::scopes::Result const&, unity::scopes::ActionMetadata const&, QObject*)@Base" 0.6.13+15.04.20150205.1
628- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::~QPreviewQueryBaseAPI()@Base" 0.6.13+15.04.20150205.1
629- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::~QPreviewQueryBaseAPI()@Base" 0.6.13+15.04.20150205.1
630- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::~QPreviewQueryBaseAPI()@Base" 0.6.13+15.04.20150205.1
631- (c++)"unity::scopes::qt::qVariantToScopeVariant(QVariant const&)@Base" 0.6.13+15.04.20150205.1
632- (c++)"unity::scopes::qt::scopeVariantToQVariant(unity::scopes::Variant const&)@Base" 0.6.13+15.04.20150205.1
633- (c++)"unity::scopes::qt::qVariantMapToScopeVariantMap(QMap<QString, QVariant> const&)@Base" 0.6.13+15.04.20150205.1
634- (c++)"unity::scopes::qt::scopeVariantMapToQVariantMap(std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unity::scopes::Variant, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unity::scopes::Variant> > > const&)@Base" 0.6.13+15.04.20150205.1
635+ (c++)"unity::scopes::qt::QPreviewWidget::~QPreviewWidget()@Base" 0.6.13+15.04.20150205.1
636+ (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(QString const&)@Base" 0.6.13+15.04.20150205.1
637+ (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
638+ (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::internal::QPreviewWidgetImpl*)@Base" 0.6.13+15.04.20150205.1
639+ (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::QPreviewWidget&&)@Base" 0.6.13+15.04.20150205.1
640+ (c++)"unity::scopes::qt::QPreviewWidget::QPreviewWidget(unity::scopes::qt::QPreviewWidget const&)@Base" 0.6.13+15.04.20150205.1
641+ (c++)"unity::scopes::qt::QPreviewWidget::serialize() const@Base" 0.6.13+15.04.20150205.1
642+ (c++)"unity::scopes::qt::QPreviewWidget::widgets() const@Base" 0.6.13+15.04.20150205.1
643+ (c++)"unity::scopes::qt::QPreviewWidget::widget_type() const@Base" 0.6.13+15.04.20150205.1
644+ (c++)"unity::scopes::qt::QResult::art() const@Base" 0.6.13+15.04.20150205.1
645+ (c++)"unity::scopes::qt::QResult::contains(QString const&) const@Base" 0.6.13+15.04.20150205.1
646+ (c++)"unity::scopes::qt::QResult::direct_activation() const@Base" 0.6.13+15.04.20150205.1
647+ (c++)"unity::scopes::qt::QResult::dnd_uri() const@Base" 0.6.13+15.04.20150205.1
648+ (c++)"unity::scopes::qt::QResult::has_stored_result() const@Base" 0.6.13+15.04.20150205.1
649+ (c++)"unity::scopes::qt::QResult::operator[](QString const&)@Base" 0.6.13+15.04.20150205.1
650+ (c++)"unity::scopes::qt::QResult::operator[](QString const&) const@Base" 0.6.13+15.04.20150205.1
651+ (c++)"unity::scopes::qt::QResult::operator=(unity::scopes::qt::QResult&&)@Base" 0.6.13+15.04.20150205.1
652+ (c++)"unity::scopes::qt::QResult::operator=(unity::scopes::qt::QResult const&)@Base" 0.6.13+15.04.20150205.1
653+ (c++)"unity::scopes::qt::QResult::~QResult()@Base" 0.6.13+15.04.20150205.1
654+ (c++)"unity::scopes::qt::QResult::QResult(QMap<QString, QVariant> const&)@Base" 0.6.13+15.04.20150205.1
655+ (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::internal::QResultImpl*)@Base" 0.6.13+15.04.20150205.1
656+ (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::QResult&&)@Base" 0.6.13+15.04.20150205.1
657+ (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::QResult const&)@Base" 0.6.13+15.04.20150205.1
658+ (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::Result const&)@Base" 0.6.13+15.04.20150205.1
659+ (c++)"unity::scopes::qt::QResult::retrieve() const@Base" 0.6.13+15.04.20150205.1
660+ (c++)"unity::scopes::qt::QResult::serialize() const@Base" 0.6.13+15.04.20150205.1
661+ (c++)"unity::scopes::qt::QResult::set_art(QString const&)@Base" 0.6.13+15.04.20150205.1
662 (c++)"unity::scopes::qt::QResult::set_dnd_uri(QString const&)@Base" 0.6.13+15.04.20150205.1
663 (c++)"unity::scopes::qt::QResult::set_intercept_activation()@Base" 0.6.13+15.04.20150205.1
664+ (c++)"unity::scopes::qt::QResult::set_title(QString const&)@Base" 0.6.13+15.04.20150205.1
665+ (c++)"unity::scopes::qt::QResult::set_uri(QString const&)@Base" 0.6.13+15.04.20150205.1
666 (c++)"unity::scopes::qt::QResult::store(unity::scopes::qt::QResult const&, bool)@Base" 0.6.13+15.04.20150205.1
667- (c++)"unity::scopes::qt::QResult::set_art(QString const&)@Base" 0.6.13+15.04.20150205.1
668- (c++)"unity::scopes::qt::QResult::set_uri(QString const&)@Base" 0.6.13+15.04.20150205.1
669- (c++)"unity::scopes::qt::QResult::set_title(QString const&)@Base" 0.6.13+15.04.20150205.1
670- (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::QResult&&)@Base" 0.6.13+15.04.20150205.1
671- (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::internal::QResultImpl*)@Base" 0.6.13+15.04.20150205.1
672- (c++)"unity::scopes::qt::QResult::QResult(QMap<QString, QVariant> const&)@Base" 0.6.13+15.04.20150205.1
673- (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::Result const&)@Base" 0.6.13+15.04.20150205.1
674- (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::QResult const&)@Base" 0.6.13+15.04.20150205.1
675- (c++)"unity::scopes::qt::QResult::QResult()@Base" 0.6.13+15.04.20150205.1
676- (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::QResult&&)@Base" 0.6.13+15.04.20150205.1
677- (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::internal::QResultImpl*)@Base" 0.6.13+15.04.20150205.1
678- (c++)"unity::scopes::qt::QResult::QResult(QMap<QString, QVariant> const&)@Base" 0.6.13+15.04.20150205.1
679- (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::Result const&)@Base" 0.6.13+15.04.20150205.1
680- (c++)"unity::scopes::qt::QResult::QResult(unity::scopes::qt::QResult const&)@Base" 0.6.13+15.04.20150205.1
681- (c++)"unity::scopes::qt::QResult::QResult()@Base" 0.6.13+15.04.20150205.1
682- (c++)"unity::scopes::qt::QResult::~QResult()@Base" 0.6.13+15.04.20150205.1
683- (c++)"unity::scopes::qt::QResult::~QResult()@Base" 0.6.13+15.04.20150205.1
684- (c++)"unity::scopes::qt::QResult::~QResult()@Base" 0.6.13+15.04.20150205.1
685- (c++)"unity::scopes::qt::QResult::operator=(unity::scopes::qt::QResult&&)@Base" 0.6.13+15.04.20150205.1
686- (c++)"unity::scopes::qt::QResult::operator=(unity::scopes::qt::QResult const&)@Base" 0.6.13+15.04.20150205.1
687- (c++)"unity::scopes::qt::QResult::operator[](QString const&)@Base" 0.6.13+15.04.20150205.1
688- (c++)"unity::scopes::qt::RunEvent::~RunEvent()@Base" 0.6.13+15.04.20150205.1
689- (c++)"unity::scopes::qt::RunEvent::~RunEvent()@Base" 0.6.13+15.04.20150205.1
690- (c++)"unity::scopes::qt::RunEvent::~RunEvent()@Base" 0.6.13+15.04.20150205.1
691- (c++)"unity::scopes::qt::QCategory::QCategory(unity::scopes::qt::internal::QCategoryImpl*)@Base" 0.6.13+15.04.20150205.1
692- (c++)"unity::scopes::qt::QCategory::QCategory(std::shared_ptr<unity::scopes::Category const>)@Base" 0.6.13+15.04.20150205.1
693- (c++)"unity::scopes::qt::QCategory::QCategory(unity::scopes::qt::internal::QCategoryImpl*)@Base" 0.6.13+15.04.20150205.1
694- (c++)"unity::scopes::qt::QCategory::QCategory(std::shared_ptr<unity::scopes::Category const>)@Base" 0.6.13+15.04.20150205.1
695- (c++)"unity::scopes::qt::QCategory::~QCategory()@Base" 0.6.13+15.04.20150205.1
696- (c++)"unity::scopes::qt::QCategory::~QCategory()@Base" 0.6.13+15.04.20150205.1
697- (c++)"unity::scopes::qt::QCategory::~QCategory()@Base" 0.6.13+15.04.20150205.1
698- (c++)"unity::scopes::qt::XmlReader::XmlReader()@Base" 0.6.13+15.04.20150205.1
699- (c++)"unity::scopes::qt::XmlReader::XmlReader()@Base" 0.6.13+15.04.20150205.1
700- (c++)"unity::scopes::qt::JsonReader::read(QUrl const&) const@Base" 0.6.13+15.04.20150205.1
701- (c++)"unity::scopes::qt::JsonReader::read(QString const&, QVector<QPair<QString, QString> > const&) const@Base" 0.6.13+15.04.20150205.1
702+ (c++)"unity::scopes::qt::QResult::target_scope_proxy() const@Base" 0.6.13+15.04.20150205.1
703+ (c++)"unity::scopes::qt::QResult::title() const@Base" 0.6.13+15.04.20150205.1
704+ (c++)"unity::scopes::qt::QResult::uri() const@Base" 0.6.13+15.04.20150205.1
705+ (c++)"unity::scopes::qt::QResult::value(QString const&) const@Base" 0.6.13+15.04.20150205.1
706+ (c++)"unity::scopes::qt::QScopeBaseAPI::preview(unity::scopes::Result const&, unity::scopes::ActionMetadata const&)@Base" 0.6.13+15.04.20150205.1
707+ (c++)"unity::scopes::qt::QScopeBaseAPI::~QScopeBaseAPI()@Base" 0.6.13+15.04.20150205.1
708+ (c++)"unity::scopes::qt::QScopeBaseAPI::QScopeBaseAPI(std::function<unity::scopes::qt::QScopeBase* ()> const&)@Base" 0.6.13+15.04.20150205.1
709+ (c++)"unity::scopes::qt::QScopeBaseAPI::search(unity::scopes::CannedQuery const&, unity::scopes::SearchMetadata const&)@Base" 0.6.13+15.04.20150205.1
710+ (c++)"unity::scopes::qt::QScopeBaseAPI::start(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.6.13+15.04.20150205.1
711+ (c++)"unity::scopes::qt::QScopeBaseAPI::stop()@Base" 0.6.13+15.04.20150205.1
712 (c++)"unity::scopes::qt::QScopeBase::metaObject() const@Base" 0.6.13+15.04.20150205.1
713- (c++)"unity::scopes::qt::QDepartment::subdepartments() const@Base" 0.6.13+15.04.20150205.1
714- (c++)"unity::scopes::qt::QDepartment::alternate_label() const@Base" 0.6.13+15.04.20150205.1
715- (c++)"unity::scopes::qt::QDepartment::has_subdepartments() const@Base" 0.6.13+15.04.20150205.1
716- (c++)"unity::scopes::qt::QDepartment::id() const@Base" 0.6.13+15.04.20150205.1
717- (c++)"unity::scopes::qt::QDepartment::label() const@Base" 0.6.13+15.04.20150205.1
718- (c++)"unity::scopes::qt::QDepartment::query() const@Base" 0.6.13+15.04.20150205.1
719- (c++)"unity::scopes::qt::QDepartment::serialize() const@Base" 0.6.13+15.04.20150205.1
720- (c++)"unity::scopes::qt::QCannedQuery::filter_state() const@Base" 0.6.13+15.04.20150205.1
721- (c++)"unity::scopes::qt::QCannedQuery::query_string() const@Base" 0.6.13+15.04.20150205.1
722- (c++)"unity::scopes::qt::QCannedQuery::department_id() const@Base" 0.6.13+15.04.20150205.1
723- (c++)"unity::scopes::qt::QCannedQuery::to_uri() const@Base" 0.6.13+15.04.20150205.1
724- (c++)"unity::scopes::qt::QCannedQuery::scope_id() const@Base" 0.6.13+15.04.20150205.1
725- (c++)"unity::scopes::qt::QCannedQuery::serialize() const@Base" 0.6.13+15.04.20150205.1
726- (c++)"unity::scopes::qt::QSearchReply::metaObject() const@Base" 0.6.13+15.04.20150205.1
727- (c++)"unity::scopes::qt::QColumnLayout::number_of_columns() const@Base" 0.6.13+15.04.20150205.1
728- (c++)"unity::scopes::qt::QColumnLayout::size() const@Base" 0.6.13+15.04.20150205.1
729- (c++)"unity::scopes::qt::QColumnLayout::column(int) const@Base" 0.6.13+15.04.20150205.1
730- (c++)"unity::scopes::qt::QColumnLayout::serialize() const@Base" 0.6.13+15.04.20150205.1
731- (c++)"unity::scopes::qt::QPreviewReply::metaObject() const@Base" 0.6.13+15.04.20150205.1
732- (c++)"unity::scopes::qt::QPreviewWidget::widget_type() const@Base" 0.6.13+15.04.20150205.1
733- (c++)"unity::scopes::qt::QPreviewWidget::attribute_values() const@Base" 0.6.13+15.04.20150205.1
734- (c++)"unity::scopes::qt::QPreviewWidget::attribute_mappings() const@Base" 0.6.13+15.04.20150205.1
735- (c++)"unity::scopes::qt::QPreviewWidget::id() const@Base" 0.6.13+15.04.20150205.1
736- (c++)"unity::scopes::qt::QPreviewWidget::data() const@Base" 0.6.13+15.04.20150205.1
737- (c++)"unity::scopes::qt::QPreviewWidget::widgets() const@Base" 0.6.13+15.04.20150205.1
738- (c++)"unity::scopes::qt::QPreviewWidget::serialize() const@Base" 0.6.13+15.04.20150205.1
739- (c++)"unity::scopes::qt::XmlAsyncReader::async_get_parser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.6.13+15.04.20150205.1
740- (c++)"unity::scopes::qt::XmlAsyncReader::async_get_parser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.6.13+15.04.20150205.1
741- (c++)"unity::scopes::qt::HttpAsyncReader::async_execute(core::net::http::Request::Handler const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.6.13+15.04.20150205.1
742- (c++)"unity::scopes::qt::HttpAsyncReader::progress_report(core::net::http::Request::Progress const&) const@Base" 0.6.13+15.04.20150205.1
743- (c++)"unity::scopes::qt::HttpAsyncReader::get_uri(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.6.13+15.04.20150205.1
744- (c++)"unity::scopes::qt::JsonAsyncReader::async_get_parser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.6.13+15.04.20150205.1
745- (c++)"unity::scopes::qt::JsonAsyncReader::async_get_parser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.6.13+15.04.20150205.1
746- (c++)"unity::scopes::qt::QActionMetadata::scope_data() const@Base" 0.6.13+15.04.20150205.1
747- (c++)"unity::scopes::qt::QActionMetadata::contains_hint(QString const&) const@Base" 0.6.13+15.04.20150205.1
748- (c++)"unity::scopes::qt::QActionMetadata::hints() const@Base" 0.6.13+15.04.20150205.1
749- (c++)"unity::scopes::qt::QActionMetadata::operator[](QString const&) const@Base" 0.6.13+15.04.20150205.1
750+ (c++)"unity::scopes::qt::QScopeBase::~QScopeBase()@Base" 0.6.13+15.04.20150205.1
751+ (c++)"unity::scopes::qt::QScopeBase::QScopeBase(QObject*)@Base" 0.6.13+15.04.20150205.1
752+ (c++)"unity::scopes::qt::QScopeBase::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
753+ (c++)"unity::scopes::qt::QScopeBase::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
754+ (c++)"unity::scopes::qt::QScopeBase::start(QString const&)@Base" 0.6.13+15.04.20150205.1
755+ (c++)"unity::scopes::qt::QScopeBase::staticMetaObject@Base" 0.6.13+15.04.20150205.1
756+ (c++)"unity::scopes::qt::QScopeBase::stop()@Base" 0.6.13+15.04.20150205.1
757 (c++)"unity::scopes::qt::QSearchMetadata::cardinality() const@Base" 0.6.13+15.04.20150205.1
758+ (c++)"unity::scopes::qt::QSearchMetadata::contains_hint(QString const&) const@Base" 0.6.13+15.04.20150205.1
759 (c++)"unity::scopes::qt::QSearchMetadata::has_location() const@Base" 0.6.13+15.04.20150205.1
760- (c++)"unity::scopes::qt::QSearchMetadata::contains_hint(QString const&) const@Base" 0.6.13+15.04.20150205.1
761 (c++)"unity::scopes::qt::QSearchMetadata::hints() const@Base" 0.6.13+15.04.20150205.1
762 (c++)"unity::scopes::qt::QSearchMetadata::location() const@Base" 0.6.13+15.04.20150205.1
763+ (c++)"unity::scopes::qt::QSearchMetadata::operator[](QString const&)@Base" 0.6.13+15.04.20150205.1
764 (c++)"unity::scopes::qt::QSearchMetadata::operator[](QString const&) const@Base" 0.6.13+15.04.20150205.1
765+ (c++)"unity::scopes::qt::QSearchMetadata::~QSearchMetadata()@Base" 0.6.13+15.04.20150205.1
766+ (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(int, QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
767+ (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(QString const&, QString const&)@Base" 0.6.13+15.04.20150205.1
768+ (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(unity::scopes::qt::QSearchMetadata&&)@Base" 0.6.13+15.04.20150205.1
769+ (c++)"unity::scopes::qt::QSearchMetadata::QSearchMetadata(unity::scopes::qt::QSearchMetadata const&)@Base" 0.6.13+15.04.20150205.1
770+ (c++)"unity::scopes::qt::QSearchMetadata::remove_location()@Base" 0replaceme
771+ (c++)"unity::scopes::qt::QSearchMetadata::set_cardinality(int)@Base" 0.6.13+15.04.20150205.1
772+ (c++)"unity::scopes::qt::QSearchMetadata::set_hint(QString const&, QVariant const&)@Base" 0.6.13+15.04.20150205.1
773+ (c++)"unity::scopes::qt::QSearchMetadata::set_location(unity::scopes::Location const&)@Base" 0.6.13+15.04.20150205.1
774+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::cancelled()@Base" 0.6.13+15.04.20150205.1
775+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::event(QEvent*)@Base" 0.6.13+15.04.20150205.1
776+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::init()@Base" 0replaceme
777+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::metaObject() const@Base" 0.6.13+15.04.20150205.1
778+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::~QSearchQueryBaseAPI()@Base" 0.6.13+15.04.20150205.1
779+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::QSearchQueryBaseAPI(std::shared_ptr<QCoreApplication>, unity::scopes::qt::QScopeBase&, unity::scopes::CannedQuery const&, unity::scopes::SearchMetadata const&, QObject*)@Base" 0.6.13+15.04.20150205.1
780+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
781+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
782+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::run_signal(std::shared_ptr<unity::scopes::qt::QSearchReply> const&)@Base" 0.6.13+15.04.20150205.1
783+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::run(std::shared_ptr<unity::scopes::SearchReply> const&)@Base" 0.6.13+15.04.20150205.1
784+ (c++)"unity::scopes::qt::QSearchQueryBaseAPI::staticMetaObject@Base" 0.6.13+15.04.20150205.1
785+ (c++)"unity::scopes::qt::QSearchQueryBase::init(unity::scopes::qt::QSearchQueryBaseAPI*)@Base" 0.6.13+15.04.20150205.1
786 (c++)"unity::scopes::qt::QSearchQueryBase::metaObject() const@Base" 0.6.13+15.04.20150205.1
787+ (c++)"unity::scopes::qt::QSearchQueryBase::~QSearchQueryBase()@Base" 0.6.13+15.04.20150205.1
788+ (c++)"unity::scopes::qt::QSearchQueryBase::QSearchQueryBase(QObject*)@Base" 0.6.13+15.04.20150205.1
789+ (c++)"unity::scopes::qt::QSearchQueryBase::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
790+ (c++)"unity::scopes::qt::QSearchQueryBase::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
791+ (c++)"unity::scopes::qt::QSearchQueryBase::query() const@Base" 0.6.13+15.04.20150205.1
792 (c++)"unity::scopes::qt::QSearchQueryBase::search_metadata() const@Base" 0.6.13+15.04.20150205.1
793- (c++)"unity::scopes::qt::QSearchQueryBase::query() const@Base" 0.6.13+15.04.20150205.1
794- (c++)"unity::scopes::qt::QPreviewQueryBase::metaObject() const@Base" 0.6.13+15.04.20150205.1
795- (c++)"unity::scopes::qt::QPreviewQueryBase::action_metadata() const@Base" 0.6.13+15.04.20150205.1
796- (c++)"unity::scopes::qt::QPreviewQueryBase::result() const@Base" 0.6.13+15.04.20150205.1
797- (c++)"unity::scopes::qt::QCategorisedResult::fwd() const@Base" 0.6.13+15.04.20150205.1
798- (c++)"unity::scopes::qt::QCategorisedResult::category() const@Base" 0.6.13+15.04.20150205.1
799- (c++)"unity::scopes::qt::QSearchQueryBaseAPI::metaObject() const@Base" 0.6.13+15.04.20150205.1
800- (c++)"unity::scopes::qt::QPreviewQueryBaseAPI::metaObject() const@Base" 0.6.13+15.04.20150205.1
801- (c++)"unity::scopes::qt::QResult::direct_activation() const@Base" 0.6.13+15.04.20150205.1
802- (c++)"unity::scopes::qt::QResult::has_stored_result() const@Base" 0.6.13+15.04.20150205.1
803- (c++)"unity::scopes::qt::QResult::target_scope_proxy() const@Base" 0.6.13+15.04.20150205.1
804- (c++)"unity::scopes::qt::QResult::art() const@Base" 0.6.13+15.04.20150205.1
805- (c++)"unity::scopes::qt::QResult::uri() const@Base" 0.6.13+15.04.20150205.1
806- (c++)"unity::scopes::qt::QResult::title() const@Base" 0.6.13+15.04.20150205.1
807- (c++)"unity::scopes::qt::QResult::value(QString const&) const@Base" 0.6.13+15.04.20150205.1
808- (c++)"unity::scopes::qt::QResult::dnd_uri() const@Base" 0.6.13+15.04.20150205.1
809- (c++)"unity::scopes::qt::QResult::contains(QString const&) const@Base" 0.6.13+15.04.20150205.1
810- (c++)"unity::scopes::qt::QResult::retrieve() const@Base" 0.6.13+15.04.20150205.1
811- (c++)"unity::scopes::qt::QResult::serialize() const@Base" 0.6.13+15.04.20150205.1
812- (c++)"unity::scopes::qt::QResult::operator[](QString const&) const@Base" 0.6.13+15.04.20150205.1
813- (c++)"unity::scopes::qt::QCategory::renderer_template() const@Base" 0.6.13+15.04.20150205.1
814- (c++)"unity::scopes::qt::QCategory::id() const@Base" 0.6.13+15.04.20150205.1
815- (c++)"unity::scopes::qt::QCategory::icon() const@Base" 0.6.13+15.04.20150205.1
816- (c++)"unity::scopes::qt::QCategory::query() const@Base" 0.6.13+15.04.20150205.1
817- (c++)"unity::scopes::qt::QCategory::title() const@Base" 0.6.13+15.04.20150205.1
818- (c++)"unity::scopes::qt::QCategory::serialize() const@Base" 0.6.13+15.04.20150205.1
819+ (c++)"unity::scopes::qt::QSearchQueryBase::staticMetaObject@Base" 0.6.13+15.04.20150205.1
820+ (c++)"unity::scopes::qt::QSearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.13+15.04.20150205.1
821+ (c++)"unity::scopes::qt::QSearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.13+15.04.20150205.1
822+ (c++)"unity::scopes::qt::QSearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.13+15.04.20150205.1
823+ (c++)"unity::scopes::qt::QSearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.13+15.04.20150205.1
824+ (c++)"unity::scopes::qt::QSearchReply::error(std::__exception_ptr::exception_ptr)@Base" 0.6.13+15.04.20150205.1
825+ (c++)"unity::scopes::qt::QSearchReply::metaObject() const@Base" 0.6.13+15.04.20150205.1
826+ (c++)"unity::scopes::qt::QSearchReply::push(unity::scopes::qt::QCategorisedResult const&)@Base" 0.6.13+15.04.20150205.1
827+ (c++)"unity::scopes::qt::QSearchReply::~QSearchReply()@Base" 0.6.13+15.04.20150205.1
828+ (c++)"unity::scopes::qt::QSearchReply::QSearchReply(std::shared_ptr<unity::scopes::SearchReply>&, QObject*)@Base" 0.6.13+15.04.20150205.1
829+ (c++)"unity::scopes::qt::QSearchReply::qt_metacall(QMetaObject::Call, int, void**)@Base" 0.6.13+15.04.20150205.1
830+ (c++)"unity::scopes::qt::QSearchReply::qt_metacast(char const*)@Base" 0.6.13+15.04.20150205.1
831+ (c++)"unity::scopes::qt::QSearchReply::register_category(QString const&, QString const&, QString const&, unity::scopes::CategoryRenderer const&)@Base" 0.6.13+15.04.20150205.1
832+ (c++)"unity::scopes::qt::QSearchReply::register_departments(std::shared_ptr<unity::scopes::qt::QDepartment const> const&)@Base" 0.6.13+15.04.20150205.1
833+ (c++)"unity::scopes::qt::QSearchReply::staticMetaObject@Base" 0.6.13+15.04.20150205.1
834+ (c++)"unity::scopes::qt::QVariantBuilder::add_tuple(QVector<QPair<QString, QVariant> > const&)@Base" 0.6.13+15.04.20150205.1
835+ (c++)"unity::scopes::qt::QVariantBuilder::add_tuple(std::initializer_list<QPair<QString, QVariant> > const&)@Base" 0replaceme
836+ (c++)"unity::scopes::qt::QVariantBuilder::end()@Base" 0.6.13+15.04.20150205.1
837+ (c++)"unity::scopes::qt::QVariantBuilder::operator=(unity::scopes::qt::QVariantBuilder&&)@Base" 0.6.13+15.04.20150205.1
838+ (c++)"unity::scopes::qt::QVariantBuilder::operator=(unity::scopes::qt::QVariantBuilder const&)@Base" 0.6.13+15.04.20150205.1
839+ (c++)"unity::scopes::qt::QVariantBuilder::~QVariantBuilder()@Base" 0.6.13+15.04.20150205.1
840+ (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder()@Base" 0.6.13+15.04.20150205.1
841+ (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::internal::QVariantBuilderImpl*)@Base" 0.6.13+15.04.20150205.1
842+ (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::QVariantBuilder&&)@Base" 0.6.13+15.04.20150205.1
843+ (c++)"unity::scopes::qt::QVariantBuilder::QVariantBuilder(unity::scopes::qt::QVariantBuilder const&)@Base" 0.6.13+15.04.20150205.1
844+ (c++)"unity::scopes::qt::RunEvent::~RunEvent()@Base" 0.6.13+15.04.20150205.1
845+ (c++)"unity::scopes::qt::XmlAsyncReader::async_get_parser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.6.13+15.04.20150205.1
846+ (c++)"unity::scopes::qt::XmlAsyncReader::async_get_parser(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::vector<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&) const@Base" 0.6.13+15.04.20150205.1
847+ (c++)"unity::scopes::qt::XmlAsyncReader::create_parser_with_data(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&)@Base" 0.6.13+15.04.20150205.1
848+ (c++)"unity::scopes::qt::XmlAsyncReader::~XmlAsyncReader()@Base" 0.6.13+15.04.20150205.1
849+ (c++)"unity::scopes::qt::XmlAsyncReader::XmlAsyncReader()@Base" 0.6.13+15.04.20150205.1
850+ (c++)"unity::scopes::qt::XmlReader::read(QString const&, QVector<QPair<QString, QString> > const&) const@Base" 0.6.13+15.04.20150205.1
851 (c++)"unity::scopes::qt::XmlReader::read(QUrl const&) const@Base" 0.6.13+15.04.20150205.1
852- (c++)"unity::scopes::qt::XmlReader::read(QString const&, QVector<QPair<QString, QString> > const&) const@Base" 0.6.13+15.04.20150205.1
853- (c++)"typeinfo for unity::scopes::qt::QScopeBase@Base" 0.6.13+15.04.20150205.1
854- (c++)"typeinfo for unity::scopes::qt::QSearchReply@Base" 0.6.13+15.04.20150205.1
855- (c++)"typeinfo for unity::scopes::qt::QPreviewReply@Base" 0.6.13+15.04.20150205.1
856- (c++)"typeinfo for unity::scopes::qt::QScopeBaseAPI@Base" 0.6.13+15.04.20150205.1
857- (c++)"typeinfo for unity::scopes::qt::CancelledEvent@Base" 0.6.13+15.04.20150205.1
858- (c++)"typeinfo for unity::scopes::qt::QPreviewWidget@Base" 0.6.13+15.04.20150205.1
859- (c++)"typeinfo for unity::scopes::qt::XmlAsyncReader@Base" 0.6.13+15.04.20150205.1
860- (c++)"typeinfo for unity::scopes::qt::HttpAsyncReader@Base" 0.6.13+15.04.20150205.1
861- (c++)"typeinfo for unity::scopes::qt::InitializeEvent@Base" 0.6.13+15.04.20150205.1
862- (c++)"typeinfo for unity::scopes::qt::JsonAsyncReader@Base" 0.6.13+15.04.20150205.1
863- (c++)"typeinfo for unity::scopes::qt::QVariantBuilder@Base" 0.6.13+15.04.20150205.1
864- (c++)"typeinfo for unity::scopes::qt::QSearchQueryBase@Base" 0.6.13+15.04.20150205.1
865- (c++)"typeinfo for unity::scopes::qt::QPreviewQueryBase@Base" 0.6.13+15.04.20150205.1
866- (c++)"typeinfo for unity::scopes::qt::QCategorisedResult@Base" 0.6.13+15.04.20150205.1
867- (c++)"typeinfo for unity::scopes::qt::QSearchQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
868- (c++)"typeinfo for unity::scopes::qt::QPreviewQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
869- (c++)"typeinfo for unity::scopes::qt::QResult@Base" 0.6.13+15.04.20150205.1
870- (c++)"typeinfo for unity::scopes::qt::RunEvent@Base" 0.6.13+15.04.20150205.1
871- (c++)"typeinfo for unity::scopes::qt::QCategory@Base" 0.6.13+15.04.20150205.1
872- (c++)"typeinfo name for unity::scopes::qt::QScopeBase@Base" 0.6.13+15.04.20150205.1
873- (c++)"typeinfo name for unity::scopes::qt::QSearchReply@Base" 0.6.13+15.04.20150205.1
874- (c++)"typeinfo name for unity::scopes::qt::QPreviewReply@Base" 0.6.13+15.04.20150205.1
875- (c++)"typeinfo name for unity::scopes::qt::QScopeBaseAPI@Base" 0.6.13+15.04.20150205.1
876- (c++)"typeinfo name for unity::scopes::qt::CancelledEvent@Base" 0.6.13+15.04.20150205.1
877- (c++)"typeinfo name for unity::scopes::qt::QPreviewWidget@Base" 0.6.13+15.04.20150205.1
878- (c++)"typeinfo name for unity::scopes::qt::XmlAsyncReader@Base" 0.6.13+15.04.20150205.1
879- (c++)"typeinfo name for unity::scopes::qt::HttpAsyncReader@Base" 0.6.13+15.04.20150205.1
880- (c++)"typeinfo name for unity::scopes::qt::InitializeEvent@Base" 0.6.13+15.04.20150205.1
881- (c++)"typeinfo name for unity::scopes::qt::JsonAsyncReader@Base" 0.6.13+15.04.20150205.1
882- (c++)"typeinfo name for unity::scopes::qt::QVariantBuilder@Base" 0.6.13+15.04.20150205.1
883- (c++)"typeinfo name for unity::scopes::qt::QSearchQueryBase@Base" 0.6.13+15.04.20150205.1
884- (c++)"typeinfo name for unity::scopes::qt::QPreviewQueryBase@Base" 0.6.13+15.04.20150205.1
885- (c++)"typeinfo name for unity::scopes::qt::QCategorisedResult@Base" 0.6.13+15.04.20150205.1
886- (c++)"typeinfo name for unity::scopes::qt::QSearchQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
887- (c++)"typeinfo name for unity::scopes::qt::QPreviewQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
888- (c++)"typeinfo name for unity::scopes::qt::QResult@Base" 0.6.13+15.04.20150205.1
889- (c++)"typeinfo name for unity::scopes::qt::RunEvent@Base" 0.6.13+15.04.20150205.1
890- (c++)"typeinfo name for unity::scopes::qt::QCategory@Base" 0.6.13+15.04.20150205.1
891- (c++)"vtable for unity::scopes::qt::QScopeBase@Base" 0.6.13+15.04.20150205.1
892- (c++)"vtable for unity::scopes::qt::QSearchReply@Base" 0.6.13+15.04.20150205.1
893- (c++)"vtable for unity::scopes::qt::QPreviewReply@Base" 0.6.13+15.04.20150205.1
894- (c++)"vtable for unity::scopes::qt::QScopeBaseAPI@Base" 0.6.13+15.04.20150205.1
895+ (c++)"unity::scopes::qt::XmlReader::XmlReader()@Base" 0.6.13+15.04.20150205.1
896 (c++)"vtable for unity::scopes::qt::CancelledEvent@Base" 0.6.13+15.04.20150205.1
897- (c++)"vtable for unity::scopes::qt::QPreviewWidget@Base" 0.6.13+15.04.20150205.1
898- (c++)"vtable for unity::scopes::qt::XmlAsyncReader@Base" 0.6.13+15.04.20150205.1
899 (c++)"vtable for unity::scopes::qt::HttpAsyncReader@Base" 0.6.13+15.04.20150205.1
900 (c++)"vtable for unity::scopes::qt::InitializeEvent@Base" 0.6.13+15.04.20150205.1
901 (c++)"vtable for unity::scopes::qt::JsonAsyncReader@Base" 0.6.13+15.04.20150205.1
902- (c++)"vtable for unity::scopes::qt::QVariantBuilder@Base" 0.6.13+15.04.20150205.1
903- (c++)"vtable for unity::scopes::qt::QSearchQueryBase@Base" 0.6.13+15.04.20150205.1
904- (c++)"vtable for unity::scopes::qt::QPreviewQueryBase@Base" 0.6.13+15.04.20150205.1
905 (c++)"vtable for unity::scopes::qt::QCategorisedResult@Base" 0.6.13+15.04.20150205.1
906- (c++)"vtable for unity::scopes::qt::QSearchQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
907+ (c++)"vtable for unity::scopes::qt::QCategory@Base" 0.6.13+15.04.20150205.1
908 (c++)"vtable for unity::scopes::qt::QPreviewQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
909+ (c++)"vtable for unity::scopes::qt::QPreviewQueryBase@Base" 0.6.13+15.04.20150205.1
910+ (c++)"vtable for unity::scopes::qt::QPreviewReply@Base" 0.6.13+15.04.20150205.1
911+ (c++)"vtable for unity::scopes::qt::QPreviewWidget@Base" 0.6.13+15.04.20150205.1
912 (c++)"vtable for unity::scopes::qt::QResult@Base" 0.6.13+15.04.20150205.1
913+ (c++)"vtable for unity::scopes::qt::QScopeBaseAPI@Base" 0.6.13+15.04.20150205.1
914+ (c++)"vtable for unity::scopes::qt::QScopeBase@Base" 0.6.13+15.04.20150205.1
915+ (c++)"vtable for unity::scopes::qt::QSearchQueryBaseAPI@Base" 0.6.13+15.04.20150205.1
916+ (c++)"vtable for unity::scopes::qt::QSearchQueryBase@Base" 0.6.13+15.04.20150205.1
917+ (c++)"vtable for unity::scopes::qt::QSearchReply@Base" 0.6.13+15.04.20150205.1
918+ (c++)"vtable for unity::scopes::qt::QVariantBuilder@Base" 0.6.13+15.04.20150205.1
919 (c++)"vtable for unity::scopes::qt::RunEvent@Base" 0.6.13+15.04.20150205.1
920- (c++)"vtable for unity::scopes::qt::QCategory@Base" 0.6.13+15.04.20150205.1
921+ (c++)"vtable for unity::scopes::qt::XmlAsyncReader@Base" 0.6.13+15.04.20150205.1
922
923=== modified file 'debian/libunity-scopes3.symbols'
924--- debian/libunity-scopes3.symbols 2015-04-07 06:33:09 +0000
925+++ debian/libunity-scopes3.symbols 2015-04-15 10:06:48 +0000
926@@ -8,6 +8,7 @@
927 (c++)"typeinfo for unity::scopes::CategoryRenderer@Base" 0.4.0+14.04.20140312.1
928 (c++)"typeinfo for unity::scopes::ConfigException@Base" 0.4.0+14.04.20140312.1
929 (c++)"typeinfo for unity::scopes::experimental::Annotation@Base" 0.5.0+14.10.20140619
930+ (c++)"typeinfo for unity::scopes::experimental::DateTimePickerFilter@Base" 0replaceme
931 (c++)"typeinfo for unity::scopes::experimental::RadioButtonsFilter@Base" 0.5.0+14.10.20140619
932 (c++)"typeinfo for unity::scopes::experimental::RangeInputFilter@Base" 0.5.0+14.10.20140619
933 (c++)"typeinfo for unity::scopes::experimental::RatingFilter@Base" 0.5.0+14.10.20140619
934@@ -55,6 +56,7 @@
935 (c++)"typeinfo name for unity::scopes::CategoryRenderer@Base" 0.4.0+14.04.20140312.1
936 (c++)"typeinfo name for unity::scopes::ConfigException@Base" 0.4.0+14.04.20140312.1
937 (c++)"typeinfo name for unity::scopes::experimental::Annotation@Base" 0.5.0+14.10.20140619
938+ (c++)"typeinfo name for unity::scopes::experimental::DateTimePickerFilter@Base" 0replaceme
939 (c++)"typeinfo name for unity::scopes::experimental::RadioButtonsFilter@Base" 0.5.0+14.10.20140619
940 (c++)"typeinfo name for unity::scopes::experimental::RangeInputFilter@Base" 0.5.0+14.10.20140619
941 (c++)"typeinfo name for unity::scopes::experimental::RatingFilter@Base" 0.5.0+14.10.20140619
942@@ -145,6 +147,7 @@
943 (c++)"unity::scopes::CannedQuery::department_id() const@Base" 0.4.0+14.04.20140312.1
944 (c++)"unity::scopes::CannedQuery::filter_state() const@Base" 0.4.0+14.04.20140312.1
945 (c++)"unity::scopes::CannedQuery::from_uri(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.3+14.10.20140428
946+ (c++)"unity::scopes::CannedQuery::has_user_data() const@Base" 0replaceme
947 (c++)"unity::scopes::CannedQuery::operator=(unity::scopes::CannedQuery&&)@Base" 0.4.0+14.04.20140312.1
948 (c++)"unity::scopes::CannedQuery::operator=(unity::scopes::CannedQuery const&)@Base" 0.4.0+14.04.20140312.1
949 (c++)"unity::scopes::CannedQuery::query_string() const@Base" 0.4.0+14.04.20140312.1
950@@ -153,7 +156,9 @@
951 (c++)"unity::scopes::CannedQuery::set_department_id(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.0+14.04.20140312.1
952 (c++)"unity::scopes::CannedQuery::set_filter_state(unity::scopes::FilterState const&)@Base" 0.4.0+14.04.20140312.1
953 (c++)"unity::scopes::CannedQuery::set_query_string(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.0+14.04.20140312.1
954+ (c++)"unity::scopes::CannedQuery::set_user_data(unity::scopes::Variant const&)@Base" 0replaceme
955 (c++)"unity::scopes::CannedQuery::to_uri() const@Base" 0.4.3+14.10.20140428
956+ (c++)"unity::scopes::CannedQuery::user_data() const@Base" 0replaceme
957 (c++)"unity::scopes::CategorisedResult::~CategorisedResult()@Base" 0.4.0+14.04.20140312.1
958 (c++)"unity::scopes::CategorisedResult::CategorisedResult(std::shared_ptr<unity::scopes::Category const>)@Base" 0.4.0+14.04.20140312.1
959 (c++)"unity::scopes::CategorisedResult::CategorisedResult(unity::scopes::CategorisedResult&&)@Base" 0.4.0+14.04.20140312.1
960@@ -246,6 +251,30 @@
961 (c++)"unity::scopes::experimental::Annotation::serialize() const@Base" 0.5.0+14.10.20140619
962 (c++)"unity::scopes::experimental::Annotation::set_icon(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.5.0+14.10.20140619
963 (c++)"unity::scopes::experimental::Annotation::set_label(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.5.0+14.10.20140619
964+ (c++|arch=amd64)"unity::scopes::experimental::DateTimePickerFilter::create(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::bitset<6ul>)@Base" 0replaceme
965+ (c++|arch=armhf i386)"unity::scopes::experimental::DateTimePickerFilter::create(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::bitset<6u>)@Base" 0replaceme
966+ (c++)"unity::scopes::experimental::DateTimePickerFilter::date_label() const@Base" 0replaceme
967+ (c++)"unity::scopes::experimental::DateTimePickerFilter::~DateTimePickerFilter()@Base" 0replaceme
968+ (c++)"unity::scopes::experimental::DateTimePickerFilter::DateTimePickerFilter(unity::scopes::internal::DateTimePickerFilterImpl*)@Base" 0replaceme
969+ (c++)"unity::scopes::experimental::DateTimePickerFilter::fwd() const@Base" 0replaceme
970+ (c++)"unity::scopes::experimental::DateTimePickerFilter::has_maximum() const@Base" 0replaceme
971+ (c++)"unity::scopes::experimental::DateTimePickerFilter::has_minimum() const@Base" 0replaceme
972+ (c++)"unity::scopes::experimental::DateTimePickerFilter::has_selected_date(unity::scopes::FilterState const&) const@Base" 0replaceme
973+ (c++)"unity::scopes::experimental::DateTimePickerFilter::maximum() const@Base" 0replaceme
974+ (c++)"unity::scopes::experimental::DateTimePickerFilter::minimum() const@Base" 0replaceme
975+ (c++)"unity::scopes::experimental::DateTimePickerFilter::mode() const@Base" 0replaceme
976+ (c++)"unity::scopes::experimental::DateTimePickerFilter::selected_date(unity::scopes::FilterState const&) const@Base" 0replaceme
977+ (c++)"unity::scopes::experimental::DateTimePickerFilter::set_date_label(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0replaceme
978+ (c++|arch=amd64)"unity::scopes::experimental::DateTimePickerFilter::set_maximum(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&)@Base" 0replaceme
979+ (c++|arch=armhf i386)"unity::scopes::experimental::DateTimePickerFilter::set_maximum(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> > > const&)@Base" 0replaceme
980+ (c++|arch=amd64)"unity::scopes::experimental::DateTimePickerFilter::set_minimum(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&)@Base" 0replaceme
981+ (c++|arch=armhf i386)"unity::scopes::experimental::DateTimePickerFilter::set_minimum(std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> > > const&)@Base" 0replaceme
982+ (c++)"unity::scopes::experimental::DateTimePickerFilter::set_time_label(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0replaceme
983+ (c++)"unity::scopes::experimental::DateTimePickerFilter::time_label() const@Base" 0replaceme
984+ (c++|arch=amd64)"unity::scopes::experimental::DateTimePickerFilter::update_state(unity::scopes::FilterState&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&)@Base" 0replaceme
985+ (c++|arch=armhf i386)"unity::scopes::experimental::DateTimePickerFilter::update_state(unity::scopes::FilterState&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> > > const&)@Base" 0replaceme
986+ (c++|arch=amd64)"unity::scopes::experimental::DateTimePickerFilter::update_state(unity::scopes::FilterState&, std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > > const&) const@Base" 0replaceme
987+ (c++|arch=armhf i386)"unity::scopes::experimental::DateTimePickerFilter::update_state(unity::scopes::FilterState&, std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long long, std::ratio<1ll, 1000000000ll> > > const&) const@Base" 0replaceme
988 (c++)"unity::scopes::experimental::RadioButtonsFilter::active_option(unity::scopes::FilterState const&) const@Base" 0.5.0+14.10.20140619
989 (c++)"unity::scopes::experimental::RadioButtonsFilter::add_option(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.5.0+14.10.20140619
990 (c++)"unity::scopes::experimental::RadioButtonsFilter::create(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.5.0+14.10.20140619
991@@ -350,6 +379,7 @@
992 (c++)"unity::scopes::internal::JsonSettingsSchema::~JsonSettingsSchema()@Base" 0.5.2+14.10.20140709.2
993 (c++)"unity::scopes::internal::JsonSettingsSchema::JsonSettingsSchema()@Base" 0.6.2+rtm+rtm+rtm+14.09.20140818
994 (c++)"unity::scopes::internal::JsonSettingsSchema::JsonSettingsSchema(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.5.2+14.10.20140709.2
995+ (c++)"unity::scopes::internal::make_directories(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)@Base" 0replaceme
996 (c++)"unity::scopes::internal::MiddlewareBase::~MiddlewareBase()@Base" 0.4.0+14.04.20140312.1
997 (c++)"unity::scopes::internal::MiddlewareBase::MiddlewareBase(unity::scopes::internal::RuntimeImpl*)@Base" 0.4.0+14.04.20140312.1
998 (c++)"unity::scopes::internal::MiddlewareBase::runtime() const@Base" 0.4.0+14.04.20140312.1
999@@ -426,6 +456,7 @@
1000 (c++)"unity::scopes::internal::RuntimeConfig::trace_channels() const@Base" 0.6.11+15.04.20150119
1001 (c++)"unity::scopes::internal::RuntimeImpl::async_pool() const@Base" 0.4.3+14.10.20140428
1002 (c++)"unity::scopes::internal::RuntimeImpl::cache_directory() const@Base" 0.6.14+15.04.20150213
1003+ (c++)"unity::scopes::internal::RuntimeImpl::config_directory() const@Base" 0replaceme
1004 (c++)"unity::scopes::internal::RuntimeImpl::confined() const@Base" 0.6.8+15.04.20141119
1005 (c++)"unity::scopes::internal::RuntimeImpl::confinement_type() const@Base" 0.6.8+15.04.20141119
1006 (c++)"unity::scopes::internal::RuntimeImpl::create(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.0+14.04.20140312.1
1007@@ -485,8 +516,9 @@
1008 (c++)"unity::scopes::internal::ScopeImpl::runtime() const@Base" 0.6.12+15.04.20150127.2
1009 (c++)"unity::scopes::internal::ScopeImpl::~ScopeImpl()@Base" 0.4.0+14.04.20140312.1
1010 (c++)"unity::scopes::internal::ScopeImpl::ScopeImpl(std::shared_ptr<unity::scopes::internal::MWScope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.6.11+15.04.20150119
1011+ (c++)"unity::scopes::internal::ScopeImpl::search(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, std::unique_ptr<unity::scopes::Variant, std::default_delete<unity::scopes::Variant> >, unity::scopes::SearchMetadata const&, std::vector<std::tuple<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::tuple<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0replaceme
1012 (c++)"unity::scopes::internal::ScopeImpl::search(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.4.0+14.04.20140312.1
1013- (c++)"unity::scopes::internal::ScopeImpl::search(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::SearchMetadata const&, std::vector<std::tuple<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::tuple<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.12+15.04.20150127.2
1014+ (c++)"unity::scopes::internal::ScopeImpl::search(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::Variant const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0replaceme
1015 (c++)"unity::scopes::internal::ScopeImpl::search(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.4.0+14.04.20140312.1
1016 (c++)"unity::scopes::internal::ScopeImpl::search(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.4.0+14.04.20140312.1
1017 (c++)"unity::scopes::internal::ScopeImpl::search(unity::scopes::CannedQuery const&, unity::scopes::SearchMetadata const&, std::vector<std::tuple<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::tuple<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.12+15.04.20150127.2
1018@@ -749,6 +781,7 @@
1019 (c++)"unity::scopes::Result::direct_activation() const@Base" 0.4.0+14.04.20140312.1
1020 (c++)"unity::scopes::Result::dnd_uri() const@Base" 0.4.0+14.04.20140312.1
1021 (c++)"unity::scopes::Result::has_stored_result() const@Base" 0.4.0+14.04.20140312.1
1022+ (c++)"unity::scopes::Result::is_account_login_result() const@Base" 0replaceme
1023 (c++)"unity::scopes::Result::operator[](std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.0+14.04.20140312.1
1024 (c++)"unity::scopes::Result::operator[](std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.4.0+14.04.20140312.1
1025 (c++)"unity::scopes::Result::operator=(unity::scopes::Result&&)@Base" 0.4.0+14.04.20140312.1
1026@@ -840,6 +873,7 @@
1027 (c++)"unity::scopes::SearchMetadata::operator[](std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@Base" 0.4.0+14.04.20140312.1
1028 (c++)"unity::scopes::SearchMetadata::operator=(unity::scopes::SearchMetadata&&)@Base" 0.4.0+14.04.20140312.1
1029 (c++)"unity::scopes::SearchMetadata::operator=(unity::scopes::SearchMetadata const&)@Base" 0.4.0+14.04.20140312.1
1030+ (c++)"unity::scopes::SearchMetadata::remove_location()@Base" 0replaceme
1031 (c++)"unity::scopes::SearchMetadata::~SearchMetadata()@Base" 0.4.0+14.04.20140312.1
1032 (c++)"unity::scopes::SearchMetadata::SearchMetadata(int, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.0+14.04.20140312.1
1033 (c++)"unity::scopes::SearchMetadata::SearchMetadata(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.0+14.04.20140312.1
1034@@ -859,10 +893,12 @@
1035 (c++)"unity::scopes::SearchQueryBase::set_department_id(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.5.0+14.10.20140619
1036 (c++)"unity::scopes::SearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.4.0+14.04.20140312.1
1037 (c++)"unity::scopes::SearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.4.0+14.04.20140312.1
1038+ (c++)"unity::scopes::SearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::Variant const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0replaceme
1039 (c++)"unity::scopes::SearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.4.0+14.04.20140312.1
1040 (c++)"unity::scopes::SearchQueryBase::subsearch(std::shared_ptr<unity::scopes::Scope> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.4.0+14.04.20140312.1
1041 (c++)"unity::scopes::SearchQueryBase::subsearch(unity::scopes::ChildScope const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.15+15.04.20150407
1042 (c++)"unity::scopes::SearchQueryBase::subsearch(unity::scopes::ChildScope const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.15+15.04.20150407
1043+ (c++)"unity::scopes::SearchQueryBase::subsearch(unity::scopes::ChildScope const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unity::scopes::FilterState const&, unity::scopes::Variant const&, unity::scopes::SearchMetadata const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0replaceme
1044 (c++)"unity::scopes::SearchQueryBase::subsearch(unity::scopes::ChildScope const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::shared_ptr<unity::scopes::SearchListenerBase> const&)@Base" 0.6.15+15.04.20150407
1045 (c++)"unity::scopes::SearchReply::~SearchReply()@Base" 0.4.0+14.04.20140312.1
1046 (c++)"unity::scopes::SearchReply::SearchReply()@Base" 0.4.0+14.04.20140312.1
1047@@ -952,6 +988,7 @@
1048 (c++)"unity::scopes::Variant::get_bool() const@Base" 0.4.0+14.04.20140312.1
1049 (c++)"unity::scopes::Variant::get_dict() const@Base" 0.4.0+14.04.20140312.1
1050 (c++)"unity::scopes::Variant::get_double() const@Base" 0.4.0+14.04.20140312.1
1051+ (c++)"unity::scopes::Variant::get_int64_t() const@Base" 0replaceme
1052 (c++)"unity::scopes::Variant::get_int() const@Base" 0.4.0+14.04.20140312.1
1053 (c++)"unity::scopes::Variant::get_string() const@Base" 0.4.0+14.04.20140312.1
1054 (c++)"unity::scopes::Variant::is_null() const@Base" 0.4.0+14.04.20140312.1
1055@@ -960,6 +997,8 @@
1056 (c++)"unity::scopes::Variant::operator=(char const*)@Base" 0.4.0+14.04.20140312.1
1057 (c++)"unity::scopes::Variant::operator=(double)@Base" 0.4.0+14.04.20140312.1
1058 (c++)"unity::scopes::Variant::operator=(int)@Base" 0.4.0+14.04.20140312.1
1059+ (c++|arch=amd64)"unity::scopes::Variant::operator=(long)@Base" 0replaceme
1060+ (c++|arch=armhf i386)"unity::scopes::Variant::operator=(long long)@Base" 0replaceme
1061 (c++)"unity::scopes::Variant::operator=(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.0+14.04.20140312.1
1062 (c++)"unity::scopes::Variant::operator=(std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unity::scopes::Variant, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unity::scopes::Variant> > > const&)@Base" 0.4.0+14.04.20140312.1
1063 (c++)"unity::scopes::Variant::operator=(std::vector<unity::scopes::Variant, std::allocator<unity::scopes::Variant> > const&)@Base" 0.4.0+14.04.20140312.1
1064@@ -975,6 +1014,8 @@
1065 (c++)"unity::scopes::Variant::Variant(char const*)@Base" 0.4.0+14.04.20140312.1
1066 (c++)"unity::scopes::Variant::Variant(double)@Base" 0.4.0+14.04.20140312.1
1067 (c++)"unity::scopes::Variant::Variant(int)@Base" 0.4.0+14.04.20140312.1
1068+ (c++|arch=amd64)"unity::scopes::Variant::Variant(long)@Base" 0replaceme
1069+ (c++|arch=armhf i386)"unity::scopes::Variant::Variant(long long)@Base" 0replaceme
1070 (c++)"unity::scopes::Variant::Variant(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)@Base" 0.4.0+14.04.20140312.1
1071 (c++)"unity::scopes::Variant::Variant(std::map<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, unity::scopes::Variant, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> > const, unity::scopes::Variant> > > const&)@Base" 0.4.0+14.04.20140312.1
1072 (c++)"unity::scopes::Variant::Variant(std::vector<unity::scopes::Variant, std::allocator<unity::scopes::Variant> > const&)@Base" 0.4.0+14.04.20140312.1
1073@@ -1008,6 +1049,7 @@
1074 (c++)"vtable for unity::scopes::CategoryRenderer@Base" 0.4.0+14.04.20140312.1
1075 (c++)"vtable for unity::scopes::ConfigException@Base" 0.4.0+14.04.20140312.1
1076 (c++)"vtable for unity::scopes::experimental::Annotation@Base" 0.5.0+14.10.20140619
1077+ (c++)"vtable for unity::scopes::experimental::DateTimePickerFilter@Base" 0replaceme
1078 (c++)"vtable for unity::scopes::experimental::RadioButtonsFilter@Base" 0.5.0+14.10.20140619
1079 (c++)"vtable for unity::scopes::experimental::RangeInputFilter@Base" 0.5.0+14.10.20140619
1080 (c++)"vtable for unity::scopes::experimental::RatingFilter@Base" 0.5.0+14.10.20140619
1081
1082=== modified file 'doc/tutorial.dox'
1083--- doc/tutorial.dox 2015-01-20 04:34:17 +0000
1084+++ doc/tutorial.dox 2015-04-15 10:06:48 +0000
1085@@ -72,7 +72,7 @@
1086 }
1087 \endcode
1088
1089-\subsubsection multiarch Multi-arch click packages
1090+\subsubsection multiarch_click Multi-arch click packages
1091 The search path for the shared library inside a click package is as follows:
1092
1093 <ul>
1094
1095=== modified file 'include/unity/scopes/CannedQuery.h'
1096--- include/unity/scopes/CannedQuery.h 2014-11-03 05:31:30 +0000
1097+++ include/unity/scopes/CannedQuery.h 2015-04-15 10:06:48 +0000
1098@@ -39,7 +39,11 @@
1099 \brief Parameters of a search query.
1100
1101 Holds all parameters of a search query: the target scope id, query string, department id, and
1102-state of the filters. Can be converted to/from scope:// uri schema string.
1103+state of the filters. CannedQuery can also carry arbitrary data (set by calling CannedQuery::set_user_data(Variant const&))
1104+which can then be retrieved back with CannedQuery::user_data() when CannedQuery object is received in ScopeBase::search. This arbitrary
1105+data can be used to store any state-related information that may be useful for the scope when new search request is performed.
1106+
1107+Can be converted to/from scope:// uri schema string.
1108 */
1109
1110 class CannedQuery final
1111@@ -133,6 +137,28 @@
1112 */
1113 static CannedQuery from_uri(std::string const& uri);
1114
1115+ /**
1116+ \brief Attach arbitrary data.
1117+
1118+ \param value Data to attach to this canned query
1119+ */
1120+ void set_user_data(Variant const& value);
1121+
1122+ /**
1123+ \brief Checks if user data has been attached to this query.
1124+
1125+ \return true if data is available.
1126+ */
1127+ bool has_user_data() const;
1128+
1129+ /**
1130+ \brief Get user data attached to this query.
1131+
1132+ \return Data variant
1133+ \throws unity::LogicException if user data is not available.
1134+ */
1135+ Variant user_data() const;
1136+
1137 private:
1138 CannedQuery(internal::CannedQueryImpl *impl);
1139 std::unique_ptr<internal::CannedQueryImpl> p;
1140
1141=== added file 'include/unity/scopes/DateTimePickerFilter.h'
1142--- include/unity/scopes/DateTimePickerFilter.h 1970-01-01 00:00:00 +0000
1143+++ include/unity/scopes/DateTimePickerFilter.h 2015-04-15 10:06:48 +0000
1144@@ -0,0 +1,211 @@
1145+/*
1146+ * Copyright (C) 2015 Canonical Ltd
1147+ *
1148+ * This program is free software: you can redistribute it and/or modify
1149+ * it under the terms of the GNU Lesser General Public License version 3 as
1150+ * published by the Free Software Foundation.
1151+ *
1152+ * This program is distributed in the hope that it will be useful,
1153+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
1154+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1155+ * GNU Lesser General Public License for more details.
1156+ *
1157+ * You should have received a copy of the GNU Lesser General Public License
1158+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
1159+ *
1160+ * Authored by: Pawel Stolowski <pawel.stolowski@canonical.com>
1161+ */
1162+
1163+#pragma once
1164+
1165+#include <unity/scopes/FilterBase.h>
1166+#include <chrono>
1167+#include <bitset>
1168+
1169+namespace unity
1170+{
1171+
1172+namespace scopes
1173+{
1174+class FilterState;
1175+
1176+namespace internal
1177+{
1178+class DateTimePickerFilterImpl;
1179+}
1180+
1181+namespace experimental
1182+{
1183+
1184+/**
1185+\brief A date and/or time picker filter.
1186+
1187+The DateTimePickerFilter displays a date and/or time picker widget, that can optionally be
1188+constrained by minimum and maximum point in time.
1189+*/
1190+
1191+class DateTimePickerFilter : public FilterBase
1192+{
1193+public:
1194+/// @cond
1195+ UNITY_DEFINES_PTRS(DateTimePickerFilter);
1196+/// @endcond
1197+
1198+ /**
1199+ \brief Flags that specify what kind of value selectors should be shown by the picker.
1200+
1201+ These correspond to the "mode" flags of Ubuntu SDK's DatePicker QML widget. However, unlike the QML widget,
1202+ DateTimePickerFilter's mode can combine both date and time values, in which case two DatePicker widgets will
1203+ be displayed.
1204+ */
1205+ enum ModeFlags {
1206+ Years,
1207+ Months,
1208+ Days,
1209+ Hours,
1210+ Minutes,
1211+ Seconds
1212+ };
1213+
1214+ /**
1215+ \brief A combination of ModeFlags
1216+ */
1217+ typedef std::bitset<6> Mode;
1218+
1219+ /**
1220+ \brief Create DateTimePickerFilter.
1221+
1222+ Creates DateTimePickerFilter with given id and mode.
1223+
1224+ \param id A unique identifier for the filter that can be used to identify it later among several filters.
1225+ \param mode Mode flags that configure values displayed by the filter in the UI.
1226+ */
1227+ static DateTimePickerFilter::UPtr create(std::string const& id, Mode mode);
1228+
1229+ /**
1230+ \brief Sets optional label for the time widget.
1231+
1232+ Sets the label to be displayed alongside time widget. Note that whether the label is displayed
1233+ depends on the Mode flags.
1234+ */
1235+ void set_time_label(std::string const& label);
1236+
1237+ /**
1238+ \brief Sets optional label for the date widget.
1239+
1240+ Sets the label to be displayed alongside date widget. Note that whether the label is displayed
1241+ depends on the Mode flags.
1242+ */
1243+ void set_date_label(std::string const& label);
1244+
1245+ /**
1246+ \brief Sets optional minimum allowed date.
1247+
1248+ Sets the minimum date allowed by this filter. This will constrain values displayed by the UI
1249+ and passed to the scope.
1250+ */
1251+ void set_minimum(std::chrono::system_clock::time_point const& date);
1252+
1253+ /**
1254+ \brief Sets optional maximum allowed date.
1255+
1256+ Sets the minimum date allowed by this filter. This will constrain values displayed by the UI
1257+ and passed to the scope.
1258+ */
1259+ void set_maximum(std::chrono::system_clock::time_point const& date);
1260+
1261+ /**
1262+ \brief Get label of the time widget.
1263+
1264+ \return The label
1265+ */
1266+ std::string time_label() const;
1267+
1268+ /**
1269+ \brief Get label of the date widget.
1270+
1271+ \return The label
1272+ */
1273+ std::string date_label() const;
1274+
1275+ /**
1276+ \brief Get mode of this filter.
1277+
1278+ \return The filter mode
1279+ */
1280+ Mode mode() const;
1281+
1282+ /**
1283+ \brief Checks if a minimum date has been set for this filter.
1284+
1285+ \return true if minimum date has been set
1286+ */
1287+ bool has_minimum() const;
1288+
1289+ /**
1290+ \brief Checks if a maximum date has been set for this filter.
1291+
1292+ \return true if maximum date has been set
1293+ */
1294+ bool has_maximum() const;
1295+
1296+ /**
1297+ \brief Get minimum date set for this filter.
1298+
1299+ \return The minimum date
1300+ \throws unity::LogicException if minimum date hasn't been set
1301+ */
1302+ std::chrono::system_clock::time_point minimum() const;
1303+
1304+ /**
1305+ \brief Get maximum date set for this filter.
1306+
1307+ \return The maximum date
1308+ \throws unity::LogicException if maximum date hasn't been set
1309+ */
1310+ std::chrono::system_clock::time_point maximum() const;
1311+
1312+ /**
1313+ \brief Check if filter state object holds a date set for this filter.
1314+
1315+ \return true if filter_state has a date for this filter.
1316+ */
1317+ bool has_selected_date(FilterState const& filter_state) const;
1318+
1319+ /**
1320+ \brief Get selected date.
1321+
1322+ \return The selected date
1323+ \throws unity::scopes::NotFoundException if date is not set.
1324+ \throws unity::LogicException if selected date is invalid (e.g. out of minimum and maximum range)
1325+ */
1326+ std::chrono::system_clock::time_point selected_date(FilterState const& filter_state) const;
1327+
1328+ /**
1329+ \brief Sets selected date for this filter in the filter state object.
1330+
1331+ \throws unity::LogicException if date is out of (minimum, maximum) range (as long as they were set).
1332+ */
1333+ void update_state(FilterState& filter_state, std::chrono::system_clock::time_point const& date) const;
1334+
1335+ /**
1336+ \brief Sets selected date for this filter in the filter state object, without having an instance of DateTimePickerFilter.
1337+
1338+ Updates an instance of FilterState, without the need for a DateTimePickerFilter instance. This is meant
1339+ to be used when creating a canned Query that references another scope.
1340+ Note: this method doesn't cannot validate date against minimum / maximum dates the filter may expect; the date will be
1341+ validated in DateTimePickerFilter::selected_date(FilterState const&) when received by the scope.
1342+ */
1343+ static void update_state(FilterState& filter_state, std::string const& filter_id, std::chrono::system_clock::time_point const& date);
1344+
1345+private:
1346+ DateTimePickerFilter(internal::DateTimePickerFilterImpl*);
1347+ internal::DateTimePickerFilterImpl* fwd() const;
1348+ friend class internal::DateTimePickerFilterImpl;
1349+};
1350+
1351+} // namespace experimental
1352+
1353+} // namespace scopes
1354+
1355+} // namespace unity
1356
1357=== modified file 'include/unity/scopes/Result.h'
1358--- include/unity/scopes/Result.h 2014-11-03 05:31:30 +0000
1359+++ include/unity/scopes/Result.h 2015-04-15 10:06:48 +0000
1360@@ -229,11 +229,16 @@
1361 */
1362 VariantMap serialize() const;
1363
1364+ /**
1365+ \brief Check if this result is an online account login result.
1366+ \return True if this result is an online account login result.
1367+ */
1368+ bool is_account_login_result() const;
1369+
1370+ /// @cond
1371 protected:
1372- /// @cond
1373 explicit Result(const VariantMap &variant_map);
1374 explicit Result(internal::ResultImpl* impl);
1375- /// @endcond
1376
1377 private:
1378 std::unique_ptr<internal::ResultImpl> p;
1379@@ -241,6 +246,7 @@
1380 friend class internal::ResultImpl;
1381 friend class internal::ScopeImpl;
1382 friend class CategorisedResult;
1383+ /// @endcond
1384 };
1385
1386 } // namespace scopes
1387
1388=== modified file 'include/unity/scopes/Scope.h'
1389--- include/unity/scopes/Scope.h 2015-03-25 05:52:25 +0000
1390+++ include/unity/scopes/Scope.h 2015-04-15 10:06:48 +0000
1391@@ -156,6 +156,26 @@
1392 */
1393 virtual bool set_child_scopes(ChildScopeList const& child_scopes) = 0;
1394
1395+ /**
1396+ \brief Initiates a search query (overloaded method).
1397+
1398+ This method has same synopsis as previous search method, but it takes additional user_data argument.
1399+
1400+ \param query_string search string
1401+ \param department_id identifier of a department to search
1402+ \param filter_state state of filters
1403+ \param user_data arbitrary data
1404+ \param metadata additional data to pass to scope
1405+ \param reply The callback object to receive replies
1406+ \return query handler
1407+ */
1408+ virtual QueryCtrlProxy search(std::string const& query_string,
1409+ std::string const& department_id,
1410+ FilterState const& filter_state,
1411+ Variant const& user_data,
1412+ SearchMetadata const& metadata,
1413+ SearchListenerBase::SPtr const& reply) = 0;
1414+
1415 protected:
1416 /// @cond
1417 Scope();
1418
1419=== modified file 'include/unity/scopes/ScopeBase.h'
1420--- include/unity/scopes/ScopeBase.h 2015-03-27 04:33:06 +0000
1421+++ include/unity/scopes/ScopeBase.h 2015-04-15 10:06:48 +0000
1422@@ -104,8 +104,7 @@
1423 - a create function that must return a pointer to the derived instance
1424 - a destroy function that is passed the pointer returned by the create function
1425
1426-Typically, the create and destroy functions will simply call `new` and `delete`, respectively. (However,
1427-there is no requirement that the derived class instance must be heap-allocated.)
1428+Typically, the create and destroy functions will simply call `new` and `delete`, respectively.
1429 If the create function throws an exception, the destroy function will not be called. If the create function returns
1430 NULL, the destroy function _will_ be called with NULL as its argument.
1431
1432@@ -116,13 +115,13 @@
1433 unity::scopes::ScopeBase*
1434 UNITY_SCOPE_CREATE_FUNCTION()
1435 {
1436- return new MyScope; // Example only, heap-allocation is not mandatory
1437+ return new MyScope;
1438 }
1439
1440 void
1441 UNITY_SCOPE_DESTROY_FUNCTION(unity::scopes::ScopeBase* scope)
1442 {
1443- delete scope; // Example only, heap-allocation is not mandatory
1444+ delete scope;
1445 }
1446 ~~~
1447
1448@@ -377,8 +376,7 @@
1449 /**
1450 \brief The function called by the scopes run time to initialize the scope.
1451 It must return a pointer to an instance derived from `ScopeBase`. The returned
1452-instance need not be heap-allocated, but must remain in scope until the
1453-destroy function is called by the scopes run time.
1454+instance must remain in scope until the destroy function is called by the scopes run time.
1455
1456 If this function throws an exception, the destroy function will _not_ be called. If this function returns NULL,
1457 the destroy function _will_ be called with NULL as its argument.
1458
1459=== modified file 'include/unity/scopes/SearchMetadata.h'
1460--- include/unity/scopes/SearchMetadata.h 2015-03-27 00:57:18 +0000
1461+++ include/unity/scopes/SearchMetadata.h 2015-04-15 10:06:48 +0000
1462@@ -111,6 +111,13 @@
1463 bool has_location() const;
1464
1465 /**
1466+ \brief Remove location data entirely.
1467+
1468+ This method does nothing if no location data is present.
1469+ */
1470+ void remove_location();
1471+
1472+ /**
1473 \brief Set the list of scope keywords used to initiate this search request.
1474 \param aggregated_keywords The list of scope keywords used to initiate this search request.
1475 */
1476
1477=== modified file 'include/unity/scopes/SearchQueryBase.h'
1478--- include/unity/scopes/SearchQueryBase.h 2015-04-01 16:08:51 +0000
1479+++ include/unity/scopes/SearchQueryBase.h 2015-04-15 10:06:48 +0000
1480@@ -57,7 +57,7 @@
1481 /**
1482 \brief Abstract base class to represent a particular query.
1483
1484-A scope must return an instance of this class from its implementation of ScopeBase::create_query().
1485+A scope must return an instance of this class from its implementation of ScopeBase::search().
1486
1487 \note The constructor of the instance must complete in a timely manner. Do not perform anything in the
1488 constructor that might block.
1489@@ -134,6 +134,20 @@
1490 FilterState const& filter_state,
1491 SearchMetadata const& hints,
1492 SearchListenerBase::SPtr const& reply);
1493+ QueryCtrlProxy subsearch(ChildScope const& scope,
1494+ std::string const& query_string,
1495+ std::string const& department_id,
1496+ FilterState const& filter_state,
1497+ Variant const& user_data,
1498+ SearchMetadata const& hints,
1499+ SearchListenerBase::SPtr const& reply);
1500+ QueryCtrlProxy subsearch(ScopeProxy const& scope,
1501+ std::string const& query_string,
1502+ std::string const& department_id,
1503+ FilterState const& filter_state,
1504+ Variant const& user_data,
1505+ SearchMetadata const& hints,
1506+ SearchListenerBase::SPtr const& reply);
1507 //@}
1508
1509 /**
1510
1511=== modified file 'include/unity/scopes/Variant.h'
1512--- include/unity/scopes/Variant.h 2014-11-03 05:31:30 +0000
1513+++ include/unity/scopes/Variant.h 2015-04-15 10:06:48 +0000
1514@@ -60,7 +60,7 @@
1515 /**
1516 \brief Type of value held by a Variant instance.
1517 */
1518- enum Type { Null, Int, Bool, String, Double, Dict, Array };
1519+ enum Type { Null, Int, Bool, String, Double, Dict, Array, Int64 };
1520
1521 /**@name Constructors and destructor
1522 */
1523@@ -74,6 +74,8 @@
1524 */
1525 explicit Variant(int val) noexcept;
1526
1527+ explicit Variant(int64_t val) noexcept;
1528+
1529 /**
1530 \brief Creates a Variant instance that stores the supplied double.
1531 */
1532@@ -125,6 +127,7 @@
1533 */
1534 //{@
1535 Variant& operator=(int val) noexcept;
1536+ Variant& operator=(int64_t val) noexcept;
1537 Variant& operator=(double val) noexcept;
1538 Variant& operator=(bool val) noexcept;
1539 Variant& operator=(std::string const& val);
1540@@ -152,6 +155,7 @@
1541 */
1542 //{@
1543 int get_int() const;
1544+ int64_t get_int64_t() const;
1545 double get_double() const;
1546 bool get_bool() const;
1547 std::string get_string() const;
1548
1549=== removed file 'include/unity/scopes/internal/''
1550--- include/unity/scopes/internal/' 2015-01-09 07:10:07 +0000
1551+++ include/unity/scopes/internal/' 1970-01-01 00:00:00 +0000
1552@@ -1,59 +0,0 @@
1553-/*
1554- * Copyright (C) 2013 Canonical Ltd
1555- *
1556- * This program is free software: you can redistribute it and/or modify
1557- * it under the terms of the GNU Lesser General Public License version 3 as
1558- * published by the Free Software Foundation.
1559- *
1560- * This program is distributed in the hope that it will be useful,
1561- * but WITHOUT ANY WARRANTY; without even the implied warranty of
1562- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1563- * GNU Lesser General Public License for more details.
1564- *
1565- * You should have received a copy of the GNU Lesser General Public License
1566- * along with this program. If not, see <http://www.gnu.org/licenses/>.
1567- *
1568- * Authored by: Michi Henning <michi.henning@canonical.com>
1569- */
1570-
1571-#pragma once
1572-
1573-#include <unity/scopes/internal/MWRegistryProxyFwd.h>
1574-#include <unity/scopes/internal/ObjectImpl.h>
1575-#include <unity/scopes/Registry.h>
1576-
1577-namespace unity
1578-{
1579-
1580-namespace scopes
1581-{
1582-
1583-namespace internal
1584-{
1585-
1586-class RegistryImpl : public virtual unity::scopes::Registry, public virtual ObjectImpl
1587-{
1588-public:
1589- RegistryImpl(MWRegistryProxy const& mw_proxy);
1590- ~RegistryImpl();
1591-
1592- virtual ScopeMetadata get_metadata(std::string const& scope_id) override;
1593- virtual MetadataMap list() override;
1594- virtual MetadataMap list_if(std::function<bool(ScopeMetadata const& item)> predicate) override;
1595- virtual bool is_scope_running(std::string const& scope_id) override;
1596-
1597- virtual core::ScopedConnection set_scope_state_callback(std::string const& scope_id, std::function<void(bool)> callback) override;
1598- virtual core::ScopedConnection set_list_update_callback(std::function<void()> callback) override;
1599-
1600- // Remote operation. Not part of public API, hence not override.
1601- ObjectProxy locate(std::string const& identity);
1602-
1603-private:
1604- MWRegistryProxy fwd();
1605-};
1606-
1607-} // namespace internal
1608-
1609-} // namespace scopes
1610-
1611-} // namespace unity
1612
1613=== modified file 'include/unity/scopes/internal/CannedQueryImpl.h'
1614--- include/unity/scopes/internal/CannedQueryImpl.h 2014-11-03 05:31:30 +0000
1615+++ include/unity/scopes/internal/CannedQueryImpl.h 2015-04-15 10:06:48 +0000
1616@@ -40,9 +40,9 @@
1617 explicit CannedQueryImpl(std::string const& scope_id);
1618 CannedQueryImpl(std::string const& scope_id, std::string const& query_str, std::string const& department_id);
1619 CannedQueryImpl(VariantMap const& variant);
1620- CannedQueryImpl(CannedQueryImpl const &other) = default;
1621+ CannedQueryImpl(CannedQueryImpl const &other);
1622 CannedQueryImpl(CannedQueryImpl&&) = default;
1623- CannedQueryImpl& operator=(CannedQueryImpl const& other) = default;
1624+ CannedQueryImpl& operator=(CannedQueryImpl const& other);
1625 CannedQueryImpl& operator=(CannedQueryImpl&&) = default;
1626
1627 void set_department_id(std::string const& dep_id);
1628@@ -56,6 +56,9 @@
1629 std::string to_uri() const;
1630 static CannedQuery from_uri(std::string const& uri);
1631 static CannedQuery create(VariantMap const& var);
1632+ void set_user_data(Variant const& value);
1633+ bool has_user_data() const;
1634+ Variant user_data() const;
1635
1636 static const std::string scopes_schema;
1637
1638@@ -65,6 +68,7 @@
1639 std::string query_string_;
1640 std::string department_id_;
1641 FilterState filter_state_;
1642+ std::unique_ptr<Variant> user_data_;
1643 };
1644
1645 } // namespace internal
1646
1647=== added file 'include/unity/scopes/internal/DateTimePickerFilterImpl.h'
1648--- include/unity/scopes/internal/DateTimePickerFilterImpl.h 1970-01-01 00:00:00 +0000
1649+++ include/unity/scopes/internal/DateTimePickerFilterImpl.h 2015-04-15 10:06:48 +0000
1650@@ -0,0 +1,88 @@
1651+/*
1652+ * Copyright (C) 2015 Canonical Ltd
1653+ *
1654+ * This program is free software: you can redistribute it and/or modify
1655+ * it under the terms of the GNU Lesser General Public License version 3 as
1656+ * published by the Free Software Foundation.
1657+ *
1658+ * This program is distributed in the hope that it will be useful,
1659+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
1660+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1661+ * GNU Lesser General Public License for more details.
1662+ *
1663+ * You should have received a copy of the GNU Lesser General Public License
1664+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
1665+ *
1666+ * Authored by: Pawel Stolowski <pawel.stolowski@canonical.com>
1667+ */
1668+
1669+#pragma once
1670+
1671+#include <unity/scopes/internal/FilterBaseImpl.h>
1672+#include <unity/scopes/DateTimePickerFilter.h>
1673+#include <chrono>
1674+
1675+namespace unity
1676+{
1677+
1678+namespace scopes
1679+{
1680+
1681+namespace internal
1682+{
1683+
1684+using namespace experimental;
1685+
1686+class DateTimePickerFilterImpl: public FilterBaseImpl
1687+{
1688+public:
1689+ DateTimePickerFilterImpl(std::string const& id, DateTimePickerFilter::Mode mode);
1690+ DateTimePickerFilterImpl(VariantMap const& var);
1691+
1692+ void set_time_label(std::string const& label);
1693+ void set_date_label(std::string const& label);
1694+
1695+ void set_minimum(std::chrono::system_clock::time_point const& date);
1696+ void set_maximum(std::chrono::system_clock::time_point const& date);
1697+
1698+ std::string time_label() const;
1699+ std::string date_label() const;
1700+
1701+ DateTimePickerFilter::Mode mode() const;
1702+
1703+ bool has_minimum() const;
1704+ bool has_maximum() const;
1705+
1706+ std::chrono::system_clock::time_point minimum() const;
1707+ std::chrono::system_clock::time_point maximum() const;
1708+
1709+ bool has_selected_date(FilterState const& filter_state) const;
1710+ std::chrono::system_clock::time_point selected_date(FilterState const& filter_state) const;
1711+
1712+ void update_state(FilterState& filter_state, std::chrono::system_clock::time_point const& date) const;
1713+
1714+ static void update_state(FilterState& filter_state, std::string const& filter_id, std::chrono::system_clock::time_point const& date);
1715+ static DateTimePickerFilter::SPtr create(VariantMap const& var);
1716+
1717+ static int64_t to_seconds_from_epoch(std::chrono::system_clock::time_point const& tp);
1718+ static std::chrono::system_clock::time_point to_timepoint(int64_t seconds_from_epoch);
1719+
1720+protected:
1721+ void serialize(VariantMap& var) const override;
1722+ void deserialize(VariantMap const& var);
1723+ std::string filter_type() const override;
1724+ bool is_valid_date(std::chrono::system_clock::time_point const& date) const;
1725+
1726+private:
1727+ DateTimePickerFilter::Mode m_mode;
1728+ std::string m_time_label;
1729+ std::string m_date_label;
1730+ std::unique_ptr<std::chrono::system_clock::time_point> m_min;
1731+ std::unique_ptr<std::chrono::system_clock::time_point> m_max;
1732+};
1733+
1734+}
1735+
1736+}
1737+
1738+}
1739
1740=== modified file 'include/unity/scopes/internal/DfltConfig.h.in'
1741--- include/unity/scopes/internal/DfltConfig.h.in 2015-02-04 07:08:27 +0000
1742+++ include/unity/scopes/internal/DfltConfig.h.in 2015-04-15 10:06:48 +0000
1743@@ -61,6 +61,9 @@
1744 static constexpr int DFLT_MAX_LOG_FILE_SIZE = 512 * 1024; // bytes, individual file size
1745 static constexpr int DFLT_MAX_LOG_DIR_SIZE = 2 * 1024 * 1024; // bytes, sum of file sizes
1746
1747+static constexpr bool DFLT_LOCATION_PERMITTED = true; // Whether a scope that wants location data, but does not
1748+ // have a settings.ini file yet, actually gets the data.
1749+
1750 } // namespace internal
1751
1752 } // namespace scopes
1753
1754=== modified file 'include/unity/scopes/internal/QueryCtrlObject.h'
1755--- include/unity/scopes/internal/QueryCtrlObject.h 2014-11-03 05:31:30 +0000
1756+++ include/unity/scopes/internal/QueryCtrlObject.h 2015-04-15 10:06:48 +0000
1757@@ -45,7 +45,7 @@
1758 virtual void cancel(InvokeInfo const& info) override;
1759 virtual void destroy(InvokeInfo const& info) override;
1760
1761- // Called by create_query() after instantiation to tell this ctrl what its corresponding
1762+ // Called by search() after instantiation to tell this ctrl what its corresponding
1763 // query facade is.
1764 void set_query(std::shared_ptr<QueryObjectBase> const& qo);
1765
1766
1767=== modified file 'include/unity/scopes/internal/QueryObject.h'
1768--- include/unity/scopes/internal/QueryObject.h 2015-01-21 23:35:22 +0000
1769+++ include/unity/scopes/internal/QueryObject.h 2015-04-15 10:06:48 +0000
1770@@ -61,7 +61,7 @@
1771 virtual bool pushable(InvokeInfo const& info) const noexcept override; // Called locally, by ReplyImpl
1772 virtual int cardinality(InvokeInfo const& info) const noexcept override; // Called locally, by ReplyImpl
1773
1774- // Called by create_query(), to hold the reference count high until the run call arrives via the middleware,
1775+ // Called by search(), to hold the reference count high until the run call arrives via the middleware,
1776 // and we can pass the shared_ptr to the ReplyImpl.
1777 void set_self(QueryObjectBase::SPtr const& self) noexcept override;
1778
1779
1780=== modified file 'include/unity/scopes/internal/RuntimeImpl.h'
1781--- include/unity/scopes/internal/RuntimeImpl.h 2015-01-20 04:34:17 +0000
1782+++ include/unity/scopes/internal/RuntimeImpl.h 2015-04-15 10:06:48 +0000
1783@@ -64,6 +64,7 @@
1784
1785 std::string cache_directory() const;
1786 std::string tmp_directory() const;
1787+ std::string config_directory() const;
1788
1789 ~RuntimeImpl();
1790
1791
1792=== modified file 'include/unity/scopes/internal/ScopeImpl.h'
1793--- include/unity/scopes/internal/ScopeImpl.h 2015-03-25 05:52:25 +0000
1794+++ include/unity/scopes/internal/ScopeImpl.h 2015-04-15 10:06:48 +0000
1795@@ -66,9 +66,17 @@
1796 SearchMetadata const& metadata,
1797 SearchListenerBase::SPtr const& reply) override;
1798
1799+ virtual QueryCtrlProxy search(std::string const& query_string,
1800+ std::string const& department_id,
1801+ FilterState const& filter_state,
1802+ Variant const& user_data,
1803+ SearchMetadata const& metadata,
1804+ SearchListenerBase::SPtr const& reply) override;
1805+
1806 QueryCtrlProxy search(std::string const& query_string,
1807 std::string const& department_id,
1808 FilterState const& filter_state,
1809+ std::unique_ptr<Variant> user_data,
1810 SearchMetadata const& metadata,
1811 SearchQueryBaseImpl::History const& history,
1812 SearchListenerBase::SPtr const& reply); // Not remote, hence not override
1813
1814=== modified file 'include/unity/scopes/internal/SearchMetadataImpl.h'
1815--- include/unity/scopes/internal/SearchMetadataImpl.h 2015-03-27 00:57:18 +0000
1816+++ include/unity/scopes/internal/SearchMetadataImpl.h 2015-04-15 10:06:48 +0000
1817@@ -53,6 +53,7 @@
1818 void set_location(Location const& location);
1819 Location location() const;
1820 bool has_location() const;
1821+ void remove_location();
1822
1823 void set_aggregated_keywords(std::set<std::string> const& aggregated_keywords);
1824 std::set<std::string> aggregated_keywords() const;
1825
1826=== modified file 'include/unity/scopes/internal/SearchQueryBaseImpl.h'
1827--- include/unity/scopes/internal/SearchQueryBaseImpl.h 2015-04-01 12:31:57 +0000
1828+++ include/unity/scopes/internal/SearchQueryBaseImpl.h 2015-04-15 10:06:48 +0000
1829@@ -58,6 +58,7 @@
1830 std::string const& query_string,
1831 std::string const& department_id,
1832 FilterState const& filter_state,
1833+ std::unique_ptr<Variant> user_data,
1834 SearchMetadata const& metadata,
1835 SearchListenerBase::SPtr const& reply);
1836
1837@@ -65,6 +66,8 @@
1838 bool valid() const override;
1839
1840 private:
1841+ static SearchMetadata filter_metadata(std::shared_ptr<ScopeImpl> const& scope, SearchMetadata const& metdata);
1842+
1843 CannedQuery const canned_query_;
1844 SearchMetadata const search_metadata_;
1845
1846
1847=== modified file 'include/unity/scopes/internal/SearchReplyImpl.h'
1848--- include/unity/scopes/internal/SearchReplyImpl.h 2015-02-05 09:35:42 +0000
1849+++ include/unity/scopes/internal/SearchReplyImpl.h 2015-04-15 10:06:48 +0000
1850@@ -78,7 +78,7 @@
1851
1852 virtual void finished() override;
1853
1854- virtual void push_surfacing_results_from_cache() noexcept;
1855+ virtual void push_surfacing_results_from_cache() noexcept override;
1856
1857 private:
1858 bool push(Category::SCPtr category);
1859
1860=== modified file 'include/unity/scopes/internal/Utils.h'
1861--- include/unity/scopes/internal/Utils.h 2014-11-17 01:29:26 +0000
1862+++ include/unity/scopes/internal/Utils.h 2015-04-15 10:06:48 +0000
1863@@ -55,6 +55,8 @@
1864
1865 int safe_system_call(std::string const& command);
1866
1867+void make_directories(std::string const& path_name, mode_t mode);
1868+
1869 } // namespace internal
1870
1871 } // namespace scopes
1872
1873=== modified file 'include/unity/scopes/internal/smartscopes/SSQueryCtrlObject.h'
1874--- include/unity/scopes/internal/smartscopes/SSQueryCtrlObject.h 2014-11-03 05:31:30 +0000
1875+++ include/unity/scopes/internal/smartscopes/SSQueryCtrlObject.h 2015-04-15 10:06:48 +0000
1876@@ -48,7 +48,7 @@
1877 virtual void cancel(InvokeInfo const& info) override;
1878 virtual void destroy(InvokeInfo const& info) override;
1879
1880- // Called by create_query() after instantiation to tell this ctrl what its corresponding
1881+ // Called by search() after instantiation to tell this ctrl what its corresponding
1882 // query facade is.
1883 void set_query(std::shared_ptr<QueryObjectBase> const& qo);
1884
1885
1886=== modified file 'include/unity/scopes/qt/HttpAsyncReader.h'
1887--- include/unity/scopes/qt/HttpAsyncReader.h 2014-12-18 16:22:20 +0000
1888+++ include/unity/scopes/qt/HttpAsyncReader.h 2015-04-15 10:06:48 +0000
1889@@ -1,20 +1,21 @@
1890 /*
1891-* Copyright (C) 2014 Canonical, Ltd.
1892-*
1893-* This library is free software; you can redistribute it and/or modify it under
1894-* the terms of version 3 of the GNU Lesser General Public License as published
1895-* by the Free Software Foundation.
1896-*
1897-* This library is distributed in the hope that it will be useful, but WITHOUT
1898-* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
1899-* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
1900-* details.
1901-*
1902-* You should have received a copy of the GNU Lesser General Public License
1903-* along with this program. If not, see <http://www.gnu.org/licenses/>.
1904-*
1905-* Author: Xavi Garcia <xavi.garcia.mena@canonical.com>
1906-*/
1907+ * Copyright (C) 2014 Canonical Ltd
1908+ *
1909+ * This program is free software: you can redistribute it and/or modify
1910+ * it under the terms of the GNU Lesser General Public License version 3 as
1911+ * published by the Free Software Foundation.
1912+ *
1913+ * This program is distributed in the hope that it will be useful,
1914+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
1915+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1916+ * GNU Lesser General Public License for more details.
1917+ *
1918+ * You should have received a copy of the GNU Lesser General Public License
1919+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
1920+ *
1921+ * Author: Xavi Garcia <xavi.garcia.mena@canonical.com>
1922+ */
1923+
1924 #pragma once
1925
1926 #ifndef _ENABLE_QT_EXPERIMENTAL_
1927@@ -159,7 +160,7 @@
1928 * \return Result of the given future.
1929 */
1930 template <typename T>
1931- static T get_or_throw(std::future<T>& f, int64_t seconds = 10);
1932+ static T get_or_throw(std::future<T>& f, int64_t seconds = 20);
1933
1934 /**
1935 * \brief Constructs a URI with the given host and parameters.
1936
1937=== modified file 'include/unity/scopes/qt/JsonAsyncReader.h'
1938--- include/unity/scopes/qt/JsonAsyncReader.h 2015-01-20 14:14:26 +0000
1939+++ include/unity/scopes/qt/JsonAsyncReader.h 2015-04-15 10:06:48 +0000
1940@@ -1,20 +1,21 @@
1941 /*
1942-* Copyright (C) 2014 Canonical, Ltd.
1943-*
1944-* This library is free software; you can redistribute it and/or modify it under
1945-* the terms of version 3 of the GNU Lesser General Public License as published
1946-* by the Free Software Foundation.
1947-*
1948-* This library is distributed in the hope that it will be useful, but WITHOUT
1949-* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
1950-* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
1951-* details.
1952-*
1953-* You should have received a copy of the GNU Lesser General Public License
1954-* along with this program. If not, see <http://www.gnu.org/licenses/>.
1955-*
1956-* Author: Xavi Garcia <xavi.garcia.mena@canonical.com>
1957-*/
1958+ * Copyright (C) 2014 Canonical Ltd
1959+ *
1960+ * This program is free software: you can redistribute it and/or modify
1961+ * it under the terms of the GNU Lesser General Public License version 3 as
1962+ * published by the Free Software Foundation.
1963+ *
1964+ * This program is distributed in the hope that it will be useful,
1965+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
1966+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1967+ * GNU Lesser General Public License for more details.
1968+ *
1969+ * You should have received a copy of the GNU Lesser General Public License
1970+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
1971+ *
1972+ * Author: Xavi Garcia <xavi.garcia.mena@canonical.com>
1973+ */
1974+
1975 #pragma once
1976
1977 #ifndef _ENABLE_QT_EXPERIMENTAL_
1978
1979=== modified file 'include/unity/scopes/qt/JsonReader.h'
1980--- include/unity/scopes/qt/JsonReader.h 2014-12-16 21:01:48 +0000
1981+++ include/unity/scopes/qt/JsonReader.h 2015-04-15 10:06:48 +0000
1982@@ -1,20 +1,21 @@
1983 /*
1984- * Copyright (C) 2014 Canonical, Ltd.
1985- *
1986- * This library is free software; you can redistribute it and/or modify it under
1987- * the terms of version 3 of the GNU Lesser General Public License as published
1988- * by the Free Software Foundation.
1989- *
1990- * This library is distributed in the hope that it will be useful, but WITHOUT
1991- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
1992- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
1993- * details.
1994+ * Copyright (C) 2014 Canonical Ltd
1995+ *
1996+ * This program is free software: you can redistribute it and/or modify
1997+ * it under the terms of the GNU Lesser General Public License version 3 as
1998+ * published by the Free Software Foundation.
1999+ *
2000+ * This program is distributed in the hope that it will be useful,
2001+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
2002+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2003+ * GNU Lesser General Public License for more details.
2004 *
2005 * You should have received a copy of the GNU Lesser General Public License
2006 * along with this program. If not, see <http://www.gnu.org/licenses/>.
2007 *
2008 * Author: Xavi Garcia <xavi.garcia.mena@canonical.com>
2009 */
2010+
2011 #pragma once
2012
2013 #ifndef _ENABLE_QT_EXPERIMENTAL_
2014
2015=== modified file 'include/unity/scopes/qt/QActionMetadata.h'
2016--- include/unity/scopes/qt/QActionMetadata.h 2015-02-06 00:12:18 +0000
2017+++ include/unity/scopes/qt/QActionMetadata.h 2015-04-15 10:06:48 +0000
2018@@ -15,8 +15,13 @@
2019 *
2020 * Authored by: Xavi Garcia <xavi.garcia.mena@canonical.com>
2021 */
2022+
2023 #pragma once
2024
2025+#ifndef _ENABLE_QT_EXPERIMENTAL_
2026+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2027+#endif
2028+
2029 #include <unity/util/DefinesPtrs.h>
2030
2031 #pragma GCC diagnostic push
2032@@ -135,7 +140,6 @@
2033 QActionMetadata(internal::QActionMetadataImpl* impl);
2034
2035 std::unique_ptr<internal::QActionMetadataImpl> p;
2036- friend class internal::QActionMetadataImpl;
2037 friend class internal::QPreviewQueryBaseImpl;
2038 friend class QPreviewQueryBaseAPI;
2039 /// @endcond
2040
2041=== modified file 'include/unity/scopes/qt/QCannedQuery.h'
2042--- include/unity/scopes/qt/QCannedQuery.h 2015-02-06 00:12:18 +0000
2043+++ include/unity/scopes/qt/QCannedQuery.h 2015-04-15 10:06:48 +0000
2044@@ -18,6 +18,10 @@
2045
2046 #pragma once
2047
2048+#ifndef _ENABLE_QT_EXPERIMENTAL_
2049+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2050+#endif
2051+
2052 #include <unity/util/DefinesPtrs.h>
2053 #include <unity/scopes/FilterState.h>
2054
2055@@ -142,6 +146,21 @@
2056 */
2057 static QCannedQuery from_uri(QString const& uri);
2058
2059+ /**
2060+ \brief Checks if user data has been attached to this query.
2061+
2062+ \return true if data is available.
2063+ */
2064+ bool has_user_data() const;
2065+
2066+ /**
2067+ \brief Get user data attached to this query.
2068+
2069+ \return Data variant
2070+ \throws unity::LogicException if data is not available.
2071+ */
2072+ QVariant user_data() const;
2073+
2074 private:
2075 QCannedQuery(internal::QCannedQueryImpl* impl);
2076 QCannedQuery(CannedQuery const& api_query);
2077
2078=== modified file 'include/unity/scopes/qt/QCategorisedResult.h'
2079--- include/unity/scopes/qt/QCategorisedResult.h 2015-01-26 09:27:05 +0000
2080+++ include/unity/scopes/qt/QCategorisedResult.h 2015-04-15 10:06:48 +0000
2081@@ -18,6 +18,10 @@
2082
2083 #pragma once
2084
2085+#ifndef _ENABLE_QT_EXPERIMENTAL_
2086+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2087+#endif
2088+
2089 #include <unity/scopes/qt/QResult.h>
2090 #include <unity/scopes/qt/QCategory.h>
2091
2092
2093=== modified file 'include/unity/scopes/qt/QCategory.h'
2094--- include/unity/scopes/qt/QCategory.h 2015-02-06 00:12:18 +0000
2095+++ include/unity/scopes/qt/QCategory.h 2015-04-15 10:06:48 +0000
2096@@ -18,6 +18,10 @@
2097
2098 #pragma once
2099
2100+#ifndef _ENABLE_QT_EXPERIMENTAL_
2101+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2102+#endif
2103+
2104 #include <unity/util/NonCopyable.h>
2105 #include <unity/util/DefinesPtrs.h>
2106
2107
2108=== modified file 'include/unity/scopes/qt/QColumnLayout.h'
2109--- include/unity/scopes/qt/QColumnLayout.h 2015-02-06 00:12:18 +0000
2110+++ include/unity/scopes/qt/QColumnLayout.h 2015-04-15 10:06:48 +0000
2111@@ -18,6 +18,10 @@
2112
2113 #pragma once
2114
2115+#ifndef _ENABLE_QT_EXPERIMENTAL_
2116+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2117+#endif
2118+
2119 #include <unity/util/DefinesPtrs.h>
2120
2121 #pragma GCC diagnostic push
2122
2123=== modified file 'include/unity/scopes/qt/QDepartment.h'
2124--- include/unity/scopes/qt/QDepartment.h 2015-02-06 00:12:18 +0000
2125+++ include/unity/scopes/qt/QDepartment.h 2015-04-15 10:06:48 +0000
2126@@ -18,6 +18,10 @@
2127
2128 #pragma once
2129
2130+#ifndef _ENABLE_QT_EXPERIMENTAL_
2131+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2132+#endif
2133+
2134 #include <unity/util/DefinesPtrs.h>
2135
2136 #pragma GCC diagnostic push
2137@@ -25,8 +29,6 @@
2138 #include <QtCore/QVariantMap>
2139 #pragma GCC diagnostic pop
2140 #include <QtCore/QString>
2141-#include <QtCore/QSharedPointer>
2142-#include <QtCore/QScopedPointer>
2143
2144 #include <memory>
2145
2146@@ -51,7 +53,7 @@
2147 /*! \typedef QDepartmentList
2148 \brief List of departments (see unity::scopes::qt::QDepartment)
2149 */
2150-typedef QList<QSharedPointer<QDepartment const>> QDepartmentList;
2151+typedef QList<std::shared_ptr<QDepartment const>> QDepartmentList;
2152
2153 /**
2154 \brief A department with optional sub-departments.
2155
2156=== modified file 'include/unity/scopes/qt/QPreviewQueryBase.h'
2157--- include/unity/scopes/qt/QPreviewQueryBase.h 2015-01-26 14:13:31 +0000
2158+++ include/unity/scopes/qt/QPreviewQueryBase.h 2015-04-15 10:06:48 +0000
2159@@ -18,6 +18,10 @@
2160
2161 #pragma once
2162
2163+#ifndef _ENABLE_QT_EXPERIMENTAL_
2164+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2165+#endif
2166+
2167 #include <unity/util/DefinesPtrs.h>
2168 #include <unity/util/NonCopyable.h>
2169
2170@@ -124,7 +128,6 @@
2171 void init(QPreviewQueryBaseAPI* query_api);
2172
2173 std::unique_ptr<internal::QPreviewQueryBaseImpl> p;
2174- friend class internal::QPreviewQueryBaseImpl;
2175 friend class QPreviewQueryBaseAPI;
2176 /// @endcond
2177 };
2178
2179=== modified file 'include/unity/scopes/qt/QPreviewQueryBaseAPI.h'
2180--- include/unity/scopes/qt/QPreviewQueryBaseAPI.h 2015-01-26 14:13:31 +0000
2181+++ include/unity/scopes/qt/QPreviewQueryBaseAPI.h 2015-04-15 10:06:48 +0000
2182@@ -18,6 +18,10 @@
2183
2184 #pragma once
2185
2186+#ifndef _ENABLE_QT_EXPERIMENTAL_
2187+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2188+#endif
2189+
2190 #include <unity/util/DefinesPtrs.h>
2191 #include <unity/util/NonCopyable.h>
2192
2193@@ -41,6 +45,11 @@
2194 namespace qt
2195 {
2196
2197+namespace tests
2198+{
2199+class QPreviewQueryBaseAPIMock;
2200+}
2201+
2202 namespace internal
2203 {
2204 class QScopeBaseAPIImpl;
2205@@ -116,7 +125,11 @@
2206 std::unique_ptr<QPreviewQueryBase> qtquery_;
2207 QScopeBase& qtscope_;
2208
2209+private:
2210+ void init();
2211+
2212 friend internal::QScopeBaseAPIImpl;
2213+ friend unity::scopes::qt::tests::QPreviewQueryBaseAPIMock;
2214 /// @endcond
2215 };
2216
2217
2218=== modified file 'include/unity/scopes/qt/QPreviewReply.h'
2219--- include/unity/scopes/qt/QPreviewReply.h 2015-02-06 00:12:18 +0000
2220+++ include/unity/scopes/qt/QPreviewReply.h 2015-04-15 10:06:48 +0000
2221@@ -18,6 +18,10 @@
2222
2223 #pragma once
2224
2225+#ifndef _ENABLE_QT_EXPERIMENTAL_
2226+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2227+#endif
2228+
2229 #include <unity/util/DefinesPtrs.h>
2230 #include <unity/util/NonCopyable.h>
2231
2232@@ -94,7 +98,6 @@
2233
2234 private:
2235 std::unique_ptr<internal::QPreviewReplyImpl> p;
2236- friend class internal::QPreviewReplyImpl;
2237 friend class QPreviewQueryBaseAPI;
2238 /// @endcond
2239 };
2240
2241=== modified file 'include/unity/scopes/qt/QPreviewReplyProxy.h'
2242--- include/unity/scopes/qt/QPreviewReplyProxy.h 2015-01-20 13:59:36 +0000
2243+++ include/unity/scopes/qt/QPreviewReplyProxy.h 2015-04-15 10:06:48 +0000
2244@@ -18,6 +18,10 @@
2245
2246 #pragma once
2247
2248+#ifndef _ENABLE_QT_EXPERIMENTAL_
2249+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2250+#endif
2251+
2252 #include <unity/scopes/qt/QPreviewReply.h>
2253 #include <memory>
2254
2255
2256=== modified file 'include/unity/scopes/qt/QPreviewWidget.h'
2257--- include/unity/scopes/qt/QPreviewWidget.h 2015-02-06 00:12:18 +0000
2258+++ include/unity/scopes/qt/QPreviewWidget.h 2015-04-15 10:06:48 +0000
2259@@ -18,6 +18,10 @@
2260
2261 #pragma once
2262
2263+#ifndef _ENABLE_QT_EXPERIMENTAL_
2264+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2265+#endif
2266+
2267 #include <unity/util/NonCopyable.h>
2268 #include <unity/util/DefinesPtrs.h>
2269
2270
2271=== modified file 'include/unity/scopes/qt/QResult.h'
2272--- include/unity/scopes/qt/QResult.h 2015-02-06 00:12:18 +0000
2273+++ include/unity/scopes/qt/QResult.h 2015-04-15 10:06:48 +0000
2274@@ -18,6 +18,10 @@
2275
2276 #pragma once
2277
2278+#ifndef _ENABLE_QT_EXPERIMENTAL_
2279+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2280+#endif
2281+
2282 #include <unity/util/DefinesPtrs.h>
2283
2284 #include <unity/scopes/ScopeProxyFwd.h>
2285@@ -63,7 +67,6 @@
2286 UNITY_DEFINES_PTRS(QResult);
2287 /// @endcond
2288
2289- QResult();
2290 /**@name Copy and assignment
2291 Copy and assignment (move and non-move versions) have the usual value semantics.
2292 */
2293
2294=== modified file 'include/unity/scopes/qt/QScopeBase.h'
2295--- include/unity/scopes/qt/QScopeBase.h 2015-01-29 10:32:59 +0000
2296+++ include/unity/scopes/qt/QScopeBase.h 2015-04-15 10:06:48 +0000
2297@@ -18,6 +18,10 @@
2298
2299 #pragma once
2300
2301+#ifndef _ENABLE_QT_EXPERIMENTAL_
2302+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2303+#endif
2304+
2305 #include <unity/scopes/qt/QSearchQueryBase.h>
2306 #include <unity/scopes/qt/QPreviewQueryBase.h>
2307
2308@@ -50,7 +54,7 @@
2309 \brief Base class for a scope implementation.
2310
2311 Scopes are accessed by the scopes run time as a shared library (one library per scope).
2312-Each scope must implement a class that derives from ScopeBase, for example:
2313+Each scope must implement a class that derives from QScopeBase, for example:
2314
2315 ~~~
2316 #include <unity/scopes/qt/QScopeBase.h>
2317@@ -61,9 +65,8 @@
2318 MyScope();
2319 virtual ~MyScope();
2320
2321- virtual void start(QString const& scope_id); // Optional
2322+ virtual void start(QString const& scope_id); // Optional
2323 virtual void stop(); // Optional
2324- virtual void run(); // Optional
2325 // ...
2326 };
2327 ~~~
2328@@ -72,8 +75,6 @@
2329 - a create function that must return a pointer to the derived instance
2330 - a destroy function that is passed the pointer returned by the create function
2331
2332-Typically, the create and destroy functions will simply call `new` and `delete`, respectively. (However,
2333-there is no requirement that the derived class instance must be heap-allocated.)
2334 If the create function throws an exception, the destroy function will not be called. If the create function returns
2335 NULL, the destroy function _will_ be called with NULL as its argument.
2336
2337@@ -82,8 +83,9 @@
2338
2339 ~~~
2340
2341-// You must provide a function that creates your own scope
2342-// That function must have no parameters and return a pointer to QScopeBase
2343+// You must provide a function that creates your scope on the heap and
2344+// pass this function to the QScopeBaseAPI constructor.
2345+
2346 unity::scopes::qt::QScopeBase *create_my_scope()
2347 {
2348 return new MyScope();
2349@@ -92,23 +94,23 @@
2350 unity::scopes::ScopeBase*
2351 UNITY_SCOPE_CREATE_FUNCTION()
2352 {
2353- // Initialize scope. This line is mandatory, you should pass your creation scope function to
2354- // the class QScopeBaseAPI, which will instantiate your class in the correct Qt Thread.
2355+ // You must return a dynamically allocated QScopeBaseAPI instance here.
2356+ // In turn, that instance calls your creation function to instantiate
2357+ // your scope in the correct Qt thread.
2358 return new QScopeBaseAPI(create_my_scope);
2359 }
2360
2361+// The runtime, once it has stopped your scope, calls the destroy function.
2362+
2363 void
2364 UNITY_SCOPE_DESTROY_FUNCTION(unity::scopes::ScopeBase* scope)
2365 {
2366+ delete scope;
2367 }
2368 ~~~
2369
2370 After the scopes run time has obtained a pointer to the class instance from the create function, it calls start(),
2371-which allows the scope to initialize itself. This is followed by a call to run().
2372-All calls to the methods of this class will be done from the main QThread.
2373-
2374-The scope implementation, if it does not return from run(), is expected to return from run() in response to a
2375-call to stop() in a timely manner.
2376+which allows the scope to initialize itself.
2377 */
2378 class QScopeBase : public QObject
2379 {
2380@@ -145,7 +147,6 @@
2381
2382 private:
2383 std::unique_ptr<internal::QScopeBaseImpl> p;
2384- friend class internal::QScopeBaseImpl;
2385 };
2386
2387 } // namespace qt
2388
2389=== modified file 'include/unity/scopes/qt/QScopeBaseAPI.h'
2390--- include/unity/scopes/qt/QScopeBaseAPI.h 2015-02-09 02:23:22 +0000
2391+++ include/unity/scopes/qt/QScopeBaseAPI.h 2015-04-15 10:06:48 +0000
2392@@ -18,6 +18,10 @@
2393
2394 #pragma once
2395
2396+#ifndef _ENABLE_QT_EXPERIMENTAL_
2397+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2398+#endif
2399+
2400 #include <unity/scopes/ScopeBase.h>
2401 #include <unity/scopes/QueryBase.h>
2402 #include <unity/scopes/ReplyProxyFwd.h>
2403@@ -48,10 +52,6 @@
2404 /**
2405 * Defines the lifecycle of scope plugin, and acts as a factory
2406 * for Query and Preview objects.
2407- *
2408- * Note that the #preview and #search methods are each called on
2409- * different threads, so some form of interlocking is required
2410- * if shared data structures are used.
2411 */
2412 class QScopeBaseAPI : public unity::scopes::ScopeBase
2413 {
2414@@ -105,7 +105,6 @@
2415 private:
2416 /// @cond
2417 std::unique_ptr<internal::QScopeBaseAPIImpl> p;
2418- friend class internal::QScopeBaseAPIImpl;
2419 /// @endcond
2420 };
2421
2422
2423=== modified file 'include/unity/scopes/qt/QSearchMetadata.h'
2424--- include/unity/scopes/qt/QSearchMetadata.h 2015-02-06 00:12:18 +0000
2425+++ include/unity/scopes/qt/QSearchMetadata.h 2015-04-15 10:06:48 +0000
2426@@ -18,6 +18,10 @@
2427
2428 #pragma once
2429
2430+#ifndef _ENABLE_QT_EXPERIMENTAL_
2431+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2432+#endif
2433+
2434 #include <unity/util/DefinesPtrs.h>
2435 #include <unity/scopes/Location.h>
2436
2437@@ -113,6 +117,13 @@
2438 bool has_location() const;
2439
2440 /**
2441+ \brief Remove location data entirely.
2442+
2443+ This method does nothing if no location data is present.
2444+ */
2445+ void remove_location();
2446+
2447+ /**
2448 \brief Sets a hint.
2449
2450 \param key The name of the hint.
2451@@ -160,7 +171,6 @@
2452 private:
2453 /// @cond
2454 std::unique_ptr<internal::QSearchMetadataImpl> p;
2455- friend class internal::QSearchMetadataImpl;
2456 /// @endcond
2457 };
2458
2459
2460=== modified file 'include/unity/scopes/qt/QSearchQueryBase.h'
2461--- include/unity/scopes/qt/QSearchQueryBase.h 2015-02-02 07:46:12 +0000
2462+++ include/unity/scopes/qt/QSearchQueryBase.h 2015-04-15 10:06:48 +0000
2463@@ -18,6 +18,10 @@
2464
2465 #pragma once
2466
2467+#ifndef _ENABLE_QT_EXPERIMENTAL_
2468+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2469+#endif
2470+
2471 #include <unity/util/DefinesPtrs.h>
2472 #include <unity/util/NonCopyable.h>
2473 #include <unity/scopes/SearchListenerBase.h>
2474@@ -50,7 +54,7 @@
2475 /**
2476 \brief Abstract base class to represent a particular query.
2477
2478-A scope must return an instance of this class from its implementation of ScopeBase::create_query().
2479+A scope must return an instance of this class from its implementation of ScopeBase::search().
2480
2481 \note The constructor of the instance must complete in a timely manner. Do not perform anything in the
2482 constructor that might block.
2483@@ -152,7 +156,6 @@
2484 void init(QSearchQueryBaseAPI* query_api);
2485
2486 std::unique_ptr<internal::QSearchQueryBaseImpl> p;
2487- friend class internal::QSearchQueryBaseImpl;
2488 friend class QSearchQueryBaseAPI;
2489 ///@endcond
2490 };
2491
2492=== modified file 'include/unity/scopes/qt/QSearchQueryBaseAPI.h'
2493--- include/unity/scopes/qt/QSearchQueryBaseAPI.h 2015-02-02 07:46:12 +0000
2494+++ include/unity/scopes/qt/QSearchQueryBaseAPI.h 2015-04-15 10:06:48 +0000
2495@@ -18,6 +18,10 @@
2496
2497 #pragma once
2498
2499+#ifndef _ENABLE_QT_EXPERIMENTAL_
2500+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2501+#endif
2502+
2503 #include <unity/util/DefinesPtrs.h>
2504 #include <unity/util/NonCopyable.h>
2505
2506@@ -37,6 +41,11 @@
2507 namespace qt
2508 {
2509
2510+namespace tests
2511+{
2512+class QSearchQueryBaseAPIMock;
2513+}
2514+
2515 namespace internal
2516 {
2517 class QScopeBaseAPIImpl;
2518@@ -48,7 +57,7 @@
2519 /**
2520 \brief Abstract base class to represent a particular query.
2521
2522-A scope must return an instance of this class from its implementation of ScopeBase::create_query().
2523+A scope must return an instance of this class from its implementation of ScopeBase::search().
2524
2525 This is the class that links scope API calls with the main QThread.
2526 The instance of this class is moved to the main QThread and pushes events to the Qt event loop.
2527@@ -112,6 +121,9 @@
2528 std::unique_ptr<QSearchQueryBase> qtquery_;
2529 QScopeBase& qtscope_;
2530
2531+private:
2532+ void init();
2533+ friend unity::scopes::qt::tests::QSearchQueryBaseAPIMock;
2534 friend internal::QScopeBaseAPIImpl;
2535
2536 Q_SIGNALS:
2537
2538=== modified file 'include/unity/scopes/qt/QSearchReply.h'
2539--- include/unity/scopes/qt/QSearchReply.h 2015-01-26 14:13:31 +0000
2540+++ include/unity/scopes/qt/QSearchReply.h 2015-04-15 10:06:48 +0000
2541@@ -18,6 +18,10 @@
2542
2543 #pragma once
2544
2545+#ifndef _ENABLE_QT_EXPERIMENTAL_
2546+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2547+#endif
2548+
2549 #include <unity/util/DefinesPtrs.h>
2550 #include <unity/util/NonCopyable.h>
2551 #include <unity/scopes/SearchReply.h>
2552@@ -153,7 +157,6 @@
2553 QSearchReply(unity::scopes::SearchReplyProxy& reply, QObject* parent = 0);
2554
2555 std::unique_ptr<internal::QSearchReplyImpl> p;
2556- friend class internal::QSearchReplyImpl;
2557 friend class QSearchQueryBaseAPI;
2558 };
2559
2560
2561=== modified file 'include/unity/scopes/qt/QSearchReplyProxy.h'
2562--- include/unity/scopes/qt/QSearchReplyProxy.h 2015-01-20 13:59:36 +0000
2563+++ include/unity/scopes/qt/QSearchReplyProxy.h 2015-04-15 10:06:48 +0000
2564@@ -18,6 +18,10 @@
2565
2566 #pragma once
2567
2568+#ifndef _ENABLE_QT_EXPERIMENTAL_
2569+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2570+#endif
2571+
2572 #include <unity/scopes/qt/QSearchReply.h>
2573 #include <memory>
2574
2575
2576=== modified file 'include/unity/scopes/qt/QVariantBuilder.h'
2577--- include/unity/scopes/qt/QVariantBuilder.h 2015-02-06 00:12:18 +0000
2578+++ include/unity/scopes/qt/QVariantBuilder.h 2015-04-15 10:06:48 +0000
2579@@ -18,6 +18,10 @@
2580
2581 #pragma once
2582
2583+#ifndef _ENABLE_QT_EXPERIMENTAL_
2584+#error You should define _ENABLE_QT_EXPERIMENTAL_ in order to use this experimental header file.
2585+#endif
2586+
2587 #include <QtCore/QPair>
2588 #include <QtCore/QString>
2589 #pragma GCC diagnostic push
2590@@ -61,9 +65,10 @@
2591
2592 \code
2593 VariantBuilder builder;
2594-builder.add_tuple({{"rating", Variant::null())}, {"review", Variant::null()}, {"author", Variant::null()}});
2595+builder.add_tuple({{"rating", QVariant()}, {"review", QVariant()}, {"author", QVariant()}});
2596 \endcode
2597 */
2598+
2599 class QVariantBuilder final
2600 {
2601 public:
2602@@ -91,17 +96,17 @@
2603 can be created with:
2604 \code
2605 QVariantBuilder builder;
2606- builder.add_tuple({{"a", Variant(1)}, {"b", Variant(2)}});
2607- builder.add_tuple({{"c", Variant(2)}, {"d", Variant(3)}});
2608+ builder.add_tuple({{"a", QVariant(1)}, {"b", QVariant(2)}});
2609+ builder.add_tuple({{"c", QVariant(2)}, {"d", QVariant(3)}});
2610 \endcode
2611 */
2612- // void add_tuple(std::initializer_list<QPair<QString, QVariant>> const& tuple);
2613+ void add_tuple(std::initializer_list<QPair<QString, QVariant>> const& tuple);
2614
2615 /**
2616 \brief Adds a tuple of key-value pairs to an array.
2617
2618- This is an overloaded version of add_tuple that accepts `std::vector` instead of
2619- `std::initializer_list`, making it more convenient for language bindings.
2620+ This is an overloaded version of add_tuple that accepts `QVector` instead of
2621+ `std::initializer_list`.
2622 */
2623 void add_tuple(QVector<QPair<QString, QVariant>> const& tuple);
2624
2625
2626=== modified file 'include/unity/scopes/qt/XmlAsyncReader.h'
2627--- include/unity/scopes/qt/XmlAsyncReader.h 2014-12-18 09:44:25 +0000
2628+++ include/unity/scopes/qt/XmlAsyncReader.h 2015-04-15 10:06:48 +0000
2629@@ -1,20 +1,21 @@
2630 /*
2631-* Copyright (C) 2014 Canonical, Ltd.
2632-*
2633-* This library is free software; you can redistribute it and/or modify it under
2634-* the terms of version 3 of the GNU Lesser General Public License as published
2635-* by the Free Software Foundation.
2636-*
2637-* This library is distributed in the hope that it will be useful, but WITHOUT
2638-* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
2639-* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
2640-* details.
2641-*
2642-* You should have received a copy of the GNU Lesser General Public License
2643-* along with this program. If not, see <http://www.gnu.org/licenses/>.
2644-*
2645-* Author: Xavi Garcia <xavi.garcia.mena@canonical.com>
2646-*/
2647+ * Copyright (C) 2014 Canonical Ltd
2648+ *
2649+ * This program is free software: you can redistribute it and/or modify
2650+ * it under the terms of the GNU Lesser General Public License version 3 as
2651+ * published by the Free Software Foundation.
2652+ *
2653+ * This program is distributed in the hope that it will be useful,
2654+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
2655+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2656+ * GNU Lesser General Public License for more details.
2657+ *
2658+ * You should have received a copy of the GNU Lesser General Public License
2659+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
2660+ *
2661+ * Author: Xavi Garcia <xavi.garcia.mena@canonical.com>
2662+ */
2663+
2664 #pragma once
2665
2666 #ifndef _ENABLE_QT_EXPERIMENTAL_
2667
2668=== modified file 'include/unity/scopes/qt/XmlReader.h'
2669--- include/unity/scopes/qt/XmlReader.h 2014-12-16 21:01:48 +0000
2670+++ include/unity/scopes/qt/XmlReader.h 2015-04-15 10:06:48 +0000
2671@@ -1,20 +1,21 @@
2672 /*
2673- * Copyright (C) 2014 Canonical, Ltd.
2674- *
2675- * This library is free software; you can redistribute it and/or modify it under
2676- * the terms of version 3 of the GNU Lesser General Public License as published
2677- * by the Free Software Foundation.
2678- *
2679- * This library is distributed in the hope that it will be useful, but WITHOUT
2680- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
2681- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
2682- * details.
2683+ * Copyright (C) 2014 Canonical Ltd
2684+ *
2685+ * This program is free software: you can redistribute it and/or modify
2686+ * it under the terms of the GNU Lesser General Public License version 3 as
2687+ * published by the Free Software Foundation.
2688+ *
2689+ * This program is distributed in the hope that it will be useful,
2690+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
2691+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2692+ * GNU Lesser General Public License for more details.
2693 *
2694 * You should have received a copy of the GNU Lesser General Public License
2695 * along with this program. If not, see <http://www.gnu.org/licenses/>.
2696 *
2697 * Author: Xavi Garcia <xavi.garcia.mena@canonical.com>
2698 */
2699+
2700 #pragma once
2701
2702 #ifndef _ENABLE_QT_EXPERIMENTAL_
2703
2704=== modified file 'include/unity/scopes/qt/internal/QActionMetadataImpl.h'
2705--- include/unity/scopes/qt/internal/QActionMetadataImpl.h 2015-02-06 00:12:18 +0000
2706+++ include/unity/scopes/qt/internal/QActionMetadataImpl.h 2015-04-15 10:06:48 +0000
2707@@ -43,92 +43,26 @@
2708
2709 class QPreviewQueryBaseImpl;
2710
2711-/**
2712-\brief Metadata passed to scopes for preview and activation.
2713-\see unity::scopes::ScopeBase::preview, unity::scopes::ScopeBase::activate, unity::scopes::ScopeBase::perform_action
2714-*/
2715 class QActionMetadataImpl
2716 {
2717 public:
2718- /// @cond
2719 UNITY_DEFINES_PTRS(QActionMetadataImpl);
2720
2721+ QActionMetadataImpl(QString const& locale, QString const& form_factor);
2722 ~QActionMetadataImpl();
2723- /// @endcond
2724-
2725- /**
2726- \brief Create ActionMetadata with the given locale and form factor.
2727- \param locale locale string, eg. en_EN
2728- \param form_factor form factor name, e.g. phone, desktop, phone-version etc.
2729- */
2730- QActionMetadataImpl(QString const& locale, QString const& form_factor);
2731-
2732- /**
2733- \brief Attach arbitrary data to this ActionMetadata.
2734- \param data The data value to attach.
2735- */
2736- void set_scope_data(QVariant const& data);
2737-
2738- /**
2739- \brief Get data attached to this ActionMetadata.
2740- \return The attached data, or QVariant::null.
2741- */
2742- QVariant scope_data() const;
2743-
2744- /**@name Copy and assignment
2745- Copy and assignment operators (move and non-move versions) have the usual value semantics.
2746- */
2747- //{@
2748+
2749 QActionMetadataImpl(QActionMetadataImpl const& other);
2750 QActionMetadataImpl(QActionMetadataImpl&&);
2751
2752 QActionMetadataImpl& operator=(QActionMetadataImpl const& other);
2753 QActionMetadataImpl& operator=(QActionMetadataImpl&&);
2754- //@}
2755-
2756- /**
2757- \brief Sets a hint.
2758-
2759- \param key The name of the hint.
2760- \param value Hint value
2761- */
2762+
2763+ void set_scope_data(QVariant const& data);
2764+ QVariant scope_data() const;
2765 void set_hint(QString const& key, QVariant const& value);
2766-
2767- /**
2768- \brief Get all hints.
2769-
2770- \return Hints dictionary.
2771- \throws unity::NotFoundException if no hints are available.
2772- */
2773 QVariantMap hints() const;
2774-
2775- /**
2776- \brief Check if this SearchMetadata has a hint.
2777- \param key The hint name.
2778- \return True if the hint is set.QScopeVariant
2779- */
2780 bool contains_hint(QString const& key) const;
2781-
2782- /**
2783- \brief Returns a reference to a hint.
2784-
2785- This method can be used to read or set hints. Setting a value of an existing hint overwrites
2786- its previous value.
2787- Referencing a non-existing hint automatically creates it with a default value of QVariant::Type::Null.
2788- \param key The name of the hint.
2789- \return A reference to the hint.
2790- */
2791 QScopeVariant& operator[](QString const& key);
2792-
2793- /**
2794- \brief Returns a const reference to a hint.
2795-
2796- This method can be used for read-only access to hints.
2797- Referencing a non-existing hint throws unity::InvalidArgumentException.
2798- \param key The name of the hint.
2799- \return A const reference to the hint.
2800- \throws unity::NotFoundException if no hint with the given name exists.
2801- */
2802 QVariant const& value(QString const& key) const;
2803
2804 private:
2805
2806=== modified file 'include/unity/scopes/qt/internal/QCannedQueryImpl.h'
2807--- include/unity/scopes/qt/internal/QCannedQueryImpl.h 2015-02-06 00:12:18 +0000
2808+++ include/unity/scopes/qt/internal/QCannedQueryImpl.h 2015-04-15 10:06:48 +0000
2809@@ -70,6 +70,8 @@
2810 FilterState filter_state() const;
2811 QVariantMap serialize() const;
2812 QString to_uri() const;
2813+ bool has_user_data() const;
2814+ QVariant user_data() const;
2815 static QCannedQuery from_uri(QString const& uri);
2816
2817 // added for testing purposes
2818
2819=== modified file 'include/unity/scopes/qt/internal/QCategorisedResultImpl.h'
2820--- include/unity/scopes/qt/internal/QCategorisedResultImpl.h 2015-01-20 13:59:36 +0000
2821+++ include/unity/scopes/qt/internal/QCategorisedResultImpl.h 2015-04-15 10:06:48 +0000
2822@@ -48,37 +48,16 @@
2823 class QCategorisedResultImpl : public QResultImpl
2824 {
2825 public:
2826- /// @cond
2827 UNITY_DEFINES_PTRS(QCategorisedResultImpl);
2828- /// @endcond
2829- /**
2830- \brief Creates a CategorisedResult with given category,
2831- with all base attributes initially empty.
2832- \param category The category for the result.
2833- */
2834+
2835 explicit QCategorisedResultImpl(QCategory::SCPtr category);
2836
2837- /**@name Copy and assignment
2838- Copy and assignment operators (move and non-move versions) have the usual value semantics.
2839- */
2840- //{@
2841 QCategorisedResultImpl(QCategorisedResultImpl const& other);
2842 QCategorisedResultImpl& operator=(QCategorisedResultImpl const& other);
2843 QCategorisedResultImpl(QCategorisedResultImpl&&);
2844 QCategorisedResultImpl& operator=(QCategorisedResultImpl&&);
2845- //@}
2846
2847- /**
2848- \brief Updates the category of this result.
2849- \param category The category for the result.
2850- */
2851 void set_category(QCategory::SCPtr category);
2852-
2853- /**
2854- \brief Return category of this result.
2855- Get the category instance this result belongs to.
2856- \return The category instance.
2857- */
2858 QCategory::SCPtr category() const;
2859
2860 private:
2861
2862=== modified file 'include/unity/scopes/qt/internal/QCategoryImpl.h'
2863--- include/unity/scopes/qt/internal/QCategoryImpl.h 2015-02-06 00:12:18 +0000
2864+++ include/unity/scopes/qt/internal/QCategoryImpl.h 2015-04-15 10:06:48 +0000
2865@@ -47,46 +47,19 @@
2866 class QCategoryImpl
2867 {
2868 public:
2869- /// @cond
2870 NONCOPYABLE(QCategoryImpl);
2871 UNITY_DEFINES_PTRS(QCategoryImpl);
2872
2873 QCategoryImpl(unity::scopes::Category::SCPtr category);
2874
2875 virtual ~QCategoryImpl();
2876- /// @endcond
2877
2878- /**
2879- \brief Get identifier of this Category
2880- \return The category identifier.
2881- */
2882 QString id() const;
2883-
2884- /**
2885- \brief Get title of this Category
2886- \return The category title.
2887- */
2888 QString title() const;
2889-
2890- /**
2891- \brief Get icon of this Category
2892- \return The category icon.
2893- */
2894 QString icon() const;
2895-
2896- /**
2897- \brief Query to perform when this category is expanded
2898- \return The expansion query or nullptr.
2899- */
2900 CannedQuery::SCPtr query() const;
2901-
2902- /**
2903- \brief Get renderer template of this Category
2904- \return The category renderer template.
2905- */
2906 CategoryRenderer const& renderer_template() const;
2907
2908- // @cond
2909 QVariantMap serialize() const;
2910
2911 static std::shared_ptr<QCategory> create(unity::scopes::Category::SCPtr category);
2912
2913=== modified file 'include/unity/scopes/qt/internal/QColumnLayoutImpl.h'
2914--- include/unity/scopes/qt/internal/QColumnLayoutImpl.h 2015-02-06 00:12:18 +0000
2915+++ include/unity/scopes/qt/internal/QColumnLayoutImpl.h 2015-04-15 10:06:48 +0000
2916@@ -46,65 +46,22 @@
2917 class QColumnLayoutImpl
2918 {
2919 public:
2920- /// @cond
2921 UNITY_DEFINES_PTRS(QColumnLayoutImpl);
2922- /// @endcond
2923
2924- /**
2925- \brief Creates a layout definition that expects num_of_columns columns to be added with ColumnLayout::add_column.
2926- \param num_of_columns The number of columns for the layout.
2927- \throws unity::InvalidArgumentException for an invalid number of columns.
2928- */
2929 explicit QColumnLayoutImpl(int num_of_columns);
2930+ ~QColumnLayoutImpl();
2931
2932- /**@name Copy and assignment
2933- Copy and assignment operators (move and non-move versions) have the usual value semantics.
2934- */
2935- //{@
2936 QColumnLayoutImpl(QColumnLayoutImpl const& other);
2937 QColumnLayoutImpl(QColumnLayoutImpl&&);
2938 QColumnLayoutImpl& operator=(QColumnLayoutImpl const& other);
2939 QColumnLayoutImpl& operator=(QColumnLayoutImpl&&);
2940- //@}
2941-
2942- /// @cond
2943- ~QColumnLayoutImpl();
2944- /// @endcond
2945-
2946- /**
2947- \brief Adds a new column and assigns widgets to it.
2948-
2949- ColumnLayout expects exactly the number of columns passed to the constructor to be created with the
2950- add_column method.
2951- \throws unity::LogicException if an attempt is made to add more columns than specified in the constructor.
2952- \throws unity::LogicException from \link unity::scopes::PreviewReply::register_layout\endlink if a layout
2953- has fewer columns than specified in the constructor.
2954- */
2955+
2956 void add_column(QVector<QString> widget_ids);
2957-
2958- /**
2959- \brief Get the current number of columns in this layout.
2960- \return The number of columns added with add_column().
2961- */
2962 int size() const noexcept;
2963-
2964- /**
2965- \brief Get the number of columns expected by this layout as specified in the constructor.
2966- \return The number of columns expected by this layout.
2967- */
2968 int number_of_columns() const noexcept;
2969-
2970- /**
2971- \brief Retrieve the list of widgets for given column.
2972- \param index The index of a column.
2973- \return The widget identifiers for the given column index.
2974- \throws unity::InvalidArgumentException if the index is invalid.
2975- */
2976 QVector<QString> column(int index) const;
2977
2978- /// @cond
2979 QVariantMap serialize() const;
2980- /// @endcond
2981
2982 // added for testing purposes
2983 static unity::scopes::qt::QColumnLayout create(QColumnLayoutImpl* internal);
2984
2985=== modified file 'include/unity/scopes/qt/internal/QPreviewQueryBaseImpl.h'
2986--- include/unity/scopes/qt/internal/QPreviewQueryBaseImpl.h 2015-01-20 13:59:36 +0000
2987+++ include/unity/scopes/qt/internal/QPreviewQueryBaseImpl.h 2015-04-15 10:06:48 +0000
2988@@ -46,26 +46,13 @@
2989 class QPreviewQueryBaseImpl
2990 {
2991 public:
2992- /// @cond
2993 NONCOPYABLE(QPreviewQueryBaseImpl);
2994 UNITY_DEFINES_PTRS(QPreviewQueryBaseImpl);
2995- /// @endcond
2996
2997 QPreviewQueryBaseImpl();
2998 ~QPreviewQueryBaseImpl() = default;
2999
3000- /**
3001- \brief Get result for this preview request.
3002- \throws unity::LogicException if result was not initialized (the default ctor was used).
3003- \return result
3004- */
3005 QResult result() const;
3006-
3007- /**
3008- \brief Get metadata for this preview request.
3009- \return search metadata
3010- \throws unity::LogicException if preview metadata was not initialized (the default ctor was used).
3011- */
3012 QActionMetadata action_metadata() const;
3013
3014 protected:
3015
3016=== modified file 'include/unity/scopes/qt/internal/QPreviewReplyImpl.h'
3017--- include/unity/scopes/qt/internal/QPreviewReplyImpl.h 2015-02-06 00:12:18 +0000
3018+++ include/unity/scopes/qt/internal/QPreviewReplyImpl.h 2015-04-15 10:06:48 +0000
3019@@ -48,49 +48,20 @@
3020 namespace internal
3021 {
3022
3023-/**
3024-\brief Allows the results of a preview to be sent to the preview requester.
3025-*/
3026-
3027 class QPreviewReplyImpl
3028 {
3029 public:
3030- /// @cond
3031 NONCOPYABLE(QPreviewReplyImpl);
3032 UNITY_DEFINES_PTRS(QPreviewReplyImpl);
3033- /// @endcond
3034- /**
3035- \brief Registers a list of column layouts for the current preview.
3036-
3037- Layouts must be registered before pushing a unity::scopes::PreviewWidgetList, and must be
3038- registered only once.
3039- \return True if the query is still alive, false if the query failed or was cancelled.
3040- \throws unity::LogicException register_layout() is called more than once.
3041- */
3042+
3043+ virtual ~QPreviewReplyImpl();
3044+
3045 bool register_layout(QColumnLayoutList const& layouts);
3046-
3047- /**
3048- \brief Sends widget definitions to the sender of the preview query.
3049-
3050- This method can be called mutiple times to send widgets in stages.
3051- \return True if the query is still alive, false if the query failed or was cancelled.
3052- */
3053 bool push(QPreviewWidgetList const& widget_list);
3054-
3055- /**
3056- \brief Sends data for a preview widget attribute.
3057- \return True if the query is still alive, false if the query failed or was cancelled.
3058- */
3059 bool push(QString const& key, QVariant const& value);
3060
3061- /// @cond
3062- virtual ~QPreviewReplyImpl();
3063- /// @endcond
3064-
3065 protected:
3066- /// @cond
3067 QPreviewReplyImpl(unity::scopes::PreviewReplyProxy& reply);
3068- /// @endcond
3069
3070 private:
3071 PreviewReplyProxy api_reply_;
3072
3073=== modified file 'include/unity/scopes/qt/internal/QPreviewWidgetImpl.h'
3074--- include/unity/scopes/qt/internal/QPreviewWidgetImpl.h 2015-02-06 00:12:18 +0000
3075+++ include/unity/scopes/qt/internal/QPreviewWidgetImpl.h 2015-04-15 10:06:48 +0000
3076@@ -39,9 +39,6 @@
3077
3078 class QPreviewWidget;
3079
3080-/*! \typedef QPreviewWidgetList
3081-\brief List of preview widgets (see unity::scopes::qt::QPreviewWidget)
3082-*/
3083 typedef QList<QPreviewWidget> QPreviewWidgetList;
3084
3085 namespace internal
3086@@ -52,135 +49,29 @@
3087 class QPreviewWidgetImpl
3088 {
3089 public:
3090- /// @cond
3091 UNITY_DEFINES_PTRS(QPreviewWidgetImpl);
3092- /// @endcond
3093
3094- /**
3095- \brief Create an empty widget definition with a specific id and type.
3096- \param id The unique widget identifier.
3097- \param widget_type The type of the widget.
3098- */
3099 QPreviewWidgetImpl(QString const& id, QString const& widget_type);
3100-
3101- /**
3102- \brief Create a widget from a JSON definition.
3103-
3104- The JSON definition must be a dictionary that includes widget "id" and all the values of attributes required by
3105- desired
3106- \link previewwidgets widget type\endlink. For example, a definition of image widget may look as follows:
3107- \code{.cpp}
3108- PreviewWidget img(R"({"id": "img", "type": "image", "source": "http://imageuri"})");
3109- \endcode
3110-
3111- For cases where attribute mappings are to be used instead of direct values, they need to be enclosed in the
3112- "components" dictionary, e.g.
3113- \code{.cpp}
3114- PreviewWidget img(R"({"id": "img", "type": "image", "components": { "source": "screenshot-url" } })");
3115- \endcode
3116- (this example assumes "screenshot-url" value is either available in the result object that's being previewed, or it
3117- will be pushed with
3118- unity::scopes::PreviewReply::push() method)
3119-
3120- \note It is recommended to create widgets via unity::scopes::PreviewWidget(QString const&, QString const&)
3121- constructor
3122- and unity::scopes::PreviewWidget::add_attribute_value() / unity::scopes::PreviewWidget::add_attribute_mapping()
3123- methods,
3124- rather than via JSON definition.
3125-
3126- \param definition The JSON definition.
3127- */
3128 QPreviewWidgetImpl(QString const& definition);
3129+ virtual ~QPreviewWidgetImpl();
3130
3131- /**@name Copy and assignment
3132- Copy and assignment operators (move and non-move versions) have the usual value semantics.
3133- */
3134- //{@
3135 QPreviewWidgetImpl(QPreviewWidgetImpl const& other);
3136 QPreviewWidgetImpl(QPreviewWidgetImpl&& other);
3137- virtual ~QPreviewWidgetImpl();
3138
3139 QPreviewWidgetImpl& operator=(QPreviewWidgetImpl const& other);
3140 QPreviewWidgetImpl& operator=(QPreviewWidgetImpl&& other);
3141- //@}
3142
3143- /**
3144- \brief Adds an attribute definition and its value.
3145- \param key The name of the attribute.
3146- \param value The value of the attribute.
3147- */
3148 void add_attribute_value(QString const& key, QVariant const& value);
3149-
3150- /**
3151- \brief Adds an attribute definition using a component mapping.
3152-
3153- If an attribute value is either not known, or the value is already present
3154- in a result field, this method creates a mapping between the attribute
3155- name and given the field name.
3156-
3157- If an attribute value is not known, the scope is expected to push the attribute value using
3158- unity::scopes::PreviewReply::push(); otherwise, the value is automatically
3159- mapped from the result.
3160- */
3161 void add_attribute_mapping(QString const& key, QString const& field_name);
3162-
3163- /**
3164- \brief Adds a widget into expandable widget.
3165-
3166- Adds a widget into this widget, which needs to be of 'expandable' type. This method throws
3167- if adding a widget into any other widget type. Also, adding an 'expandable' widget into
3168- another 'expandable' is not allowed.
3169-
3170- \throws unity::LogicException if type of this widget is other than 'expandable', or when
3171- adding 'expandable' to 'expandable'.
3172- */
3173 void add_widget(QPreviewWidget const& widget);
3174-
3175- /**
3176- \brief Get the identifier of this widget.
3177- \return The widget identifier.
3178- */
3179 QString id() const;
3180-
3181- /**
3182- \brief Get type name of this widget.
3183- \return The widget type.
3184- */
3185 QString widget_type() const;
3186-
3187- /**
3188- \brief Get the components of this widget.
3189-
3190- The returned map is a dictionary of (key, field name) pairs, as defined by calls to add_attribute_mapping().
3191- \return The components map.
3192- */
3193 QMap<QString, QString> attribute_mappings() const;
3194-
3195- /**
3196- \brief Get the attributes of this widget.
3197-
3198- The returned map is a dictionary of (key, value) pairs, as defined by calls to add_attribute_value().
3199- \return The attribute map.
3200- */
3201 QVariantMap attribute_values() const;
3202-
3203- /**
3204- \brief Get widgets of 'expandable' widget.
3205-
3206- Returns the list of widget attached to this widget, which must be of 'expandable' type. This list is
3207- always empty for other widget types.
3208- */
3209 QPreviewWidgetList widgets() const;
3210-
3211- /**
3212- \brief Get a JSON representation of this widget.
3213- \return The JSON string.
3214- */
3215 QString data() const;
3216
3217- /// @cond
3218 QVariantMap serialize() const;
3219- /// @endcond
3220
3221 private:
3222 std::unique_ptr<PreviewWidget> api_widget_;
3223
3224=== modified file 'include/unity/scopes/qt/internal/QResultImpl.h'
3225--- include/unity/scopes/qt/internal/QResultImpl.h 2015-02-06 00:12:18 +0000
3226+++ include/unity/scopes/qt/internal/QResultImpl.h 2015-04-15 10:06:48 +0000
3227@@ -54,192 +54,37 @@
3228 class QResultImpl
3229 {
3230 public:
3231- /// @cond
3232 UNITY_DEFINES_PTRS(QResultImpl);
3233- /// @endcond
3234
3235- /**@name Copy and assignment
3236- Copy and assignment (move and non-move versions) have the usual value semantics.
3237- */
3238- //{@
3239 QResultImpl(unity::scopes::Result const& other);
3240 QResultImpl(QResultImpl const& other);
3241
3242 QResultImpl& operator=(QResultImpl const& other);
3243 QResultImpl& operator=(QResultImpl&&);
3244- //@}
3245
3246- /**
3247- Destructor.
3248- */
3249 virtual ~QResultImpl();
3250
3251- /**
3252- \brief Stores a Result inside this Result instance.
3253-
3254- This method is meant to be used by aggregator scopes which want to modify results they receive, but want
3255- to keep a copy of the original result so that they can be correctly handled by the original scopes
3256- who created them when it comes to activation or previews.
3257- Scopes middleware will automatically pass the correct inner stored result to the activation or preview request
3258- handler
3259- of a scope which created it.
3260- \param other The original result to store within this result.
3261- \param intercept_activation True if this scope should receive activation and preview requests.
3262- */
3263 void store(QResult const& other, bool intercept_activation = false);
3264-
3265- /**
3266- \brief Check if this Result instance has a stored result.
3267- \return True if there is a stored result
3268- */
3269 bool has_stored_result() const;
3270-
3271- /**
3272- \brief Get a stored result.
3273- \return stored result
3274- \throws unity::InvalidArgumentException if no result was stored in this Result instance.
3275- */
3276 QResult retrieve() const;
3277-
3278- /**
3279- \brief Set the "uri" attribute of this result.
3280- */
3281 void set_uri(QString const& uri);
3282-
3283- /**
3284- \brief Set the "title" attribute of this result.
3285-
3286- Equivalent to calling `result["title"] = title;`
3287- */
3288 void set_title(QString const& title);
3289- /**
3290- \brief Set the "art" attribute of this result.
3291-
3292- Equivalent to calling `result["art"] = image;`
3293- */
3294 void set_art(QString const& image);
3295-
3296- /**
3297- \brief Set the "dnd_uri" attribute of this result.
3298-
3299- Equivalent to calling `result["dnd_uri"] = dnd_uri;`
3300- */
3301 void set_dnd_uri(QString const& dnd_uri);
3302-
3303- /**
3304- \brief Indicates to the receiver that this scope should intercept activation requests for this result.
3305-
3306- By default, a scope receives preview requests for the results it creates, but does not receive activation
3307- requests (they are handled directly by the shell).
3308- Intercepting activation implies intercepting preview requests as well; this is important for scopes that
3309- forward results from other scopes and call set_intercept_activation() on these scopes.
3310- A scope that sets intercept activation flag for a result should re-implement ScopeBase::activate()
3311- and provide an implementation of ActivationQueryBase that handles the actual activation.
3312- If not called, the result will be activated directly by the Unity shell whithout involving the scope,
3313- assuming an appropriate URI schema handler is present on the system.
3314- */
3315 void set_intercept_activation();
3316-
3317- /**
3318- \brief Check if this result should be activated directly by the shell
3319- because the scope doesn't handle activation of this result.
3320- \return True if this result needs to be activated directly.
3321- */
3322 bool direct_activation() const;
3323-
3324- /**
3325- \brief Get the proxy of a scope that handles activation and preview of this result.
3326-
3327- The proxy is available only when receiving this result from a scope, otherwise
3328- this method throws LogicException. Activation requests should be sent to a scope
3329- returned by this method only if direct_activation() is false.
3330- \return The scope proxy.
3331- */
3332 ScopeProxy target_scope_proxy() const;
3333-
3334- /**
3335- \brief Returns reference of a Result attribute.
3336-
3337- This method can be used to read or initialize both standard ("uri", "title", "art", "dnd_uri")
3338- and custom metadata attributes. Referencing a non-existing attribute automatically creates
3339- it with a default value of Variant::Type::Null.
3340- \param key The name of the attribute.
3341- \return A reference to the attribute.
3342- \throws unity::Invalidargument if no attribute with the given name exists.
3343- */
3344 QVariant& operator[](QString const& key);
3345-
3346- /**
3347- \brief Returns a const reference to a Result attribute.
3348-
3349- This method can be used for read-only access to both standard ("uri", "title", "art", "dnd_uri")
3350- and custom metadata attributes. Referencing a non-existing attribute throws unity::InvalidArgumentException.
3351- \param key The name of the attribute.
3352- \return A const reference to the attribute.
3353- \throws unity::Invalidargument if no attribute with the given name exists.
3354- */
3355 QVariant const& operator[](QString const& key) const;
3356-
3357- /**
3358- \brief Get the "uri" property of this Result.
3359-
3360- This method returns an empty string if this attribute is not of type Variant::Type::String (e.g. it was set with
3361- operator[]).
3362- \return The value of "uri" or the empty string.
3363- */
3364 QString uri() const noexcept;
3365-
3366- /**
3367- \brief Get the "title" property of this Result.
3368-
3369- This method returns an empty string if this attribute is not of type Variant::Type::String (e.g. it was set with
3370- operator[]).
3371- \return The value of "title" or the empty string.
3372- */
3373 QString title() const noexcept;
3374-
3375- /**
3376- \brief Get the "art" property of this Result.
3377-
3378- This method returns an empty string if this attribute is not of type Variant::Type::String (e.g. it was set with
3379- operator[]).
3380- \return The value of "art" or the empty string.
3381- */
3382 QString art() const noexcept;
3383-
3384- /**
3385- \brief Get the "dnd_uri" property of this Result.
3386-
3387- This method returns an empty string if this attribute is not of type Variant::Type::String type (e.g. it was set
3388- with operator[]).
3389- \return The value of "dnd_uri" or the empty string.
3390- */
3391 QString dnd_uri() const noexcept;
3392-
3393- /**
3394- \brief Check if this Result has an attribute.
3395- \param key The attribute name.
3396- \return True if the attribute is set.
3397- */
3398 bool contains(QString const& key) const;
3399-
3400- /**
3401- \brief Get the value of an attribute.
3402-
3403- \param key The attribute name.
3404- \return The attribute value.
3405- \throws unity::InvalidArgumentException if given attribute hasn't been set.
3406- */
3407 QVariant const& value(QString const& key) const;
3408-
3409- /**
3410- \brief Returns a dictionary of all attributes of this Result instance.
3411- \return All base attributes and custom attributes set with add_metadata().
3412- */
3413 QVariantMap serialize() const;
3414
3415 protected:
3416- /// @cond
3417 explicit QResultImpl(const QVariantMap& variant_map);
3418 explicit QResultImpl(internal::QResultImpl* impl);
3419 explicit QResultImpl(unity::scopes::Result* api_result);
3420
3421=== modified file 'include/unity/scopes/qt/internal/QScopeBaseAPIImpl.h'
3422--- include/unity/scopes/qt/internal/QScopeBaseAPIImpl.h 2015-01-29 10:32:59 +0000
3423+++ include/unity/scopes/qt/internal/QScopeBaseAPIImpl.h 2015-04-15 10:06:48 +0000
3424@@ -52,62 +52,29 @@
3425 {
3426 Q_OBJECT
3427 public:
3428- /// @cond
3429 using FactoryFunc = std::function<QScopeBase*()>;
3430
3431 NONCOPYABLE(QScopeBaseAPIImpl);
3432 UNITY_DEFINES_PTRS(QScopeBaseAPIImpl);
3433
3434- QScopeBaseAPIImpl(QScopeBase& qtscope, QObject *parent=0);
3435- QScopeBaseAPIImpl(FactoryFunc const& creator, QObject *parent=0);
3436+ QScopeBaseAPIImpl(FactoryFunc const& creator);
3437 virtual ~QScopeBaseAPIImpl();
3438
3439 bool event(QEvent* e) override;
3440- /// @endcond
3441-
3442- /**
3443- \brief Called by the scopes run time after the create function completes.
3444-
3445- If start() throws an exception, stop() will _not_ be called.
3446-
3447- The call to start() is made by the same thread that calls the create function.
3448-
3449- \param scope_id The name of the scope as defined by the scope's configuration file.
3450- */
3451 void start(std::string const& scope_id);
3452-
3453- /**
3454- \brief Called by the scopes run time when the scope should shut down.
3455-
3456- A scope should deallocate as many resources as possible when stop() is called, for example,
3457- deallocate any caches and close network connections. In addition, if the scope implements run()
3458- and did not return from run(), it must return from run() in response to the call to stop().
3459-
3460- Exceptions from stop() are ignored.
3461-
3462- The call to stop() is made by the same thread that calls the create function and start().
3463- */
3464 void stop();
3465-
3466- /**
3467- * Called each time a new preview is requested
3468- */
3469 unity::scopes::PreviewQueryBase::UPtr preview(const unity::scopes::Result&, const unity::scopes::ActionMetadata&);
3470-
3471- /**
3472- * Called each time a new query is requested
3473- */
3474 unity::scopes::SearchQueryBase::UPtr search(unity::scopes::CannedQuery const& q,
3475 unity::scopes::SearchMetadata const&);
3476
3477 protected:
3478- void startQtThread();
3479+ void start_qt_thread();
3480
3481 std::shared_ptr<QCoreApplication> qtapp_;
3482 std::unique_ptr<std::thread> qtthread_;
3483 std::atomic<bool> qtapp_ready_;
3484-
3485- QScopeBase* qtscope_impl_;
3486+ std::atomic<bool> qtapp_stopped_;
3487+ std::unique_ptr<QScopeBase> qtscope_impl_;
3488
3489 FactoryFunc qtscope_creator_;
3490 };
3491
3492=== modified file 'include/unity/scopes/qt/internal/QScopeBaseImpl.h'
3493--- include/unity/scopes/qt/internal/QScopeBaseImpl.h 2015-01-20 13:59:36 +0000
3494+++ include/unity/scopes/qt/internal/QScopeBaseImpl.h 2015-04-15 10:06:48 +0000
3495@@ -38,21 +38,13 @@
3496 class QScopeBaseImpl
3497 {
3498 public:
3499- /// @cond
3500 NONCOPYABLE(QScopeBaseImpl);
3501 UNITY_DEFINES_PTRS(QScopeBaseImpl);
3502
3503 QScopeBaseImpl() = default;
3504 virtual ~QScopeBaseImpl() = default;
3505- /// @endcond
3506- /**
3507- * Called once at startup
3508- */
3509+
3510 virtual void start(std::string const&);
3511-
3512- /**
3513- * Called at shutdown
3514- */
3515 virtual void stop();
3516 };
3517
3518
3519=== modified file 'include/unity/scopes/qt/internal/QScopeVariant.h'
3520--- include/unity/scopes/qt/internal/QScopeVariant.h 2015-02-06 00:12:18 +0000
3521+++ include/unity/scopes/qt/internal/QScopeVariant.h 2015-04-15 10:06:48 +0000
3522@@ -45,7 +45,6 @@
3523 class QScopeVariant : public QVariant
3524 {
3525 public:
3526- // explicit QScopeVariant() noexcept;
3527 virtual ~QScopeVariant();
3528
3529 QScopeVariant(QScopeVariant const& other);
3530@@ -65,9 +64,6 @@
3531 std::string get_string() const;
3532
3533 private:
3534- /**
3535- \brief Creates a Variant instance that stores the supplied integer.
3536- */
3537 explicit QScopeVariant(Variant* val) noexcept;
3538
3539 void setInternalVariant(Variant* val);
3540
3541=== modified file 'include/unity/scopes/qt/internal/QSearchMetadataImpl.h'
3542--- include/unity/scopes/qt/internal/QSearchMetadataImpl.h 2015-02-06 00:12:18 +0000
3543+++ include/unity/scopes/qt/internal/QSearchMetadataImpl.h 2015-04-15 10:06:48 +0000
3544@@ -45,114 +45,28 @@
3545 class QSearchMetadataImpl
3546 {
3547 public:
3548- /// @cond
3549 UNITY_DEFINES_PTRS(QSearchMetadataImpl);
3550- /// @endcond
3551
3552- /**
3553- \brief Create SearchMetadata with the given locale and form factor.
3554- \param locale locale string, eg. en_EN
3555- \param form_factor form factor name, e.g. phone, desktop, phone-version etc.
3556- */
3557 QSearchMetadataImpl(QString const& locale, QString const& form_factor);
3558-
3559- /**
3560- \brief Create SearchMetadata with the given cardinality, locale, and form factor.
3561- \param cardinality maximum number of search results
3562- \param locale locale string, eg. en_EN
3563- \param form_factor form factor name, e.g. phone, desktop, phone-version etc.
3564- */
3565 QSearchMetadataImpl(int cardinality, QString const& locale, QString const& form_factor);
3566+ ~QSearchMetadataImpl();
3567
3568- /**@name Copy and assignment
3569- Copy and assignment operators (move and non-move versions) have the usual value semantics.
3570- */
3571- //{@
3572 QSearchMetadataImpl(QSearchMetadataImpl const& other);
3573 QSearchMetadataImpl(QSearchMetadataImpl&&);
3574
3575 QSearchMetadataImpl& operator=(QSearchMetadataImpl const& other);
3576 QSearchMetadataImpl& operator=(QSearchMetadataImpl&&);
3577- //@}
3578-
3579- /// @cond
3580- ~QSearchMetadataImpl();
3581- /// @endcond
3582-
3583- /**
3584- \brief Set cardinality.
3585- \param cardinality The maximum number of search results.
3586- */
3587+
3588 void set_cardinality(int cardinality);
3589-
3590- /**
3591- \brief Get cardinality.
3592- \return The maxmium number of search results, or 0 for no limit.
3593- */
3594 int cardinality() const;
3595-
3596- /**
3597- \brief Set location.
3598- \param location Location data.
3599- */
3600 void set_location(Location const& location);
3601-
3602- /**
3603- \brief Get location.
3604- \return Location data representing the current location, including attributes such as city and country.
3605- \throws unity::NotFoundException if no location data is available.
3606- */
3607 Location location() const;
3608-
3609- /**
3610- \brief Does the SearchMetadata have a location.
3611- \return True if there is a location property.
3612- */
3613 bool has_location() const;
3614-
3615- /**
3616- \brief Sets a hint.
3617-
3618- \param key The name of the hint.
3619- \param value Hint value
3620- */
3621+ void remove_location();
3622 void set_hint(QString const& key, QVariant const& value);
3623-
3624- /**
3625- \brief Get all hints.
3626-
3627- \return Hints dictionary.
3628- \throws unity::NotFoundException if no hints are available.
3629- */
3630 QVariantMap hints() const;
3631-
3632- /**
3633- \brief Check if this SearchMetadata has a hint.
3634- \param key The hint name.
3635- \return True if the hint is set.
3636- */
3637 bool contains_hint(QString const& key) const;
3638-
3639- /**
3640- \brief Returns a reference to a hint.
3641-
3642- This method can be used to read or set hints. Setting a value of an existing hint overwrites
3643- its previous value.
3644- Referencing a non-existing hint automatically creates it with a default value of Variant::Type::Null.
3645- \param key The name of the hint.
3646- \return A reference to the hint.
3647- */
3648 QScopeVariant& operator[](QString const& key);
3649-
3650- /**
3651- \brief Returns a const reference to a hint.
3652-
3653- This method can be used for read-only access to hints.
3654- Referencing a non-existing hint throws unity::InvalidArgumentException.
3655- \param key The name of the hint.
3656- \return A const reference to the hint.
3657- \throws unity::NotFoundException if no hint with the given name exists.
3658- */
3659 QVariant const& value(QString const& key) const;
3660
3661 private:
3662
3663=== modified file 'include/unity/scopes/qt/internal/QSearchQueryBaseImpl.h'
3664--- include/unity/scopes/qt/internal/QSearchQueryBaseImpl.h 2015-02-02 07:46:12 +0000
3665+++ include/unity/scopes/qt/internal/QSearchQueryBaseImpl.h 2015-04-15 10:06:48 +0000
3666@@ -50,41 +50,15 @@
3667 friend QSearchQueryBase;
3668
3669 public:
3670- /// @cond
3671 NONCOPYABLE(QSearchQueryBaseImpl);
3672 UNITY_DEFINES_PTRS(QSearchQueryBaseImpl);
3673- /// @endcond
3674
3675 QSearchQueryBaseImpl();
3676 ~QSearchQueryBaseImpl() = default;
3677
3678- /**
3679- \brief Get a canned query for this search request.
3680-
3681- \return The canned query.
3682- \throws unity::LogicException if the canned query was not initialized (was default-constructed).
3683- */
3684 QCannedQuery query() const;
3685-
3686- /**
3687- \brief Get metadata for this search request.
3688- \return The search metadata.
3689- \throws unity::LogicException if search metadata was not initialized (was default-constructed).
3690- */
3691 unity::scopes::SearchMetadata search_metadata() const;
3692
3693- /** @name Subquery methods
3694- The subsearch() methods are for use by aggregating scopes.
3695- When an aggregator passes a query to its child scopes, it should
3696- use subsearch() instead of the normal Scope::search()
3697- that would be called by a client. subsearch() takes care
3698- of automatically forwarding query cancellation to child scopes.
3699- This means that there is no need for an aggregating scope to
3700- explicitly forward cancellation to child scopes
3701- when its QueryBase::cancelled() method is called by the scopes
3702- run time.
3703- */
3704- //{@
3705 QueryCtrlProxy subsearch(ScopeProxy const& scope,
3706 std::string const& query_string,
3707 SearchListenerBase::SPtr const& reply);
3708
3709=== modified file 'include/unity/scopes/qt/internal/QSearchReplyImpl.h'
3710--- include/unity/scopes/qt/internal/QSearchReplyImpl.h 2015-02-02 07:46:12 +0000
3711+++ include/unity/scopes/qt/internal/QSearchReplyImpl.h 2015-04-15 10:06:48 +0000
3712@@ -52,96 +52,17 @@
3713 friend class unity::scopes::qt::QSearchReply;
3714
3715 public:
3716- /// @cond
3717 NONCOPYABLE(QSearchReplyImpl);
3718 UNITY_DEFINES_PTRS(QSearchReplyImpl);
3719- /// @endcond
3720- /**
3721- \brief Destroys a QSearchReplyImpl.
3722- */
3723+
3724 virtual ~QSearchReplyImpl();
3725-
3726- /**
3727- \brief Register departments for the current search reply and provide the current department.
3728-
3729- Departments are optional. If scope supports departments, it is expected to register departments on every search as
3730- follows:
3731-
3732- <ul>
3733- <li>create a Department node for current department and attach to it a list of its subdepartments (unless current
3734- department is a leaf department) using
3735- unity::scopes::Department::set_subdepartments() method. For every subdepartment on the list set
3736- "has_subdepartments" flag if applicable.
3737- <li>provide an alternate label for current department with unity::scopes::Department::set_alternate_label().
3738- <li>create a Department node for parent of current department (if applicable - not when in root department), and
3739- attach current Department node to it with
3740- unity::scopes::Department::set_subdepartments() method.
3741- <li>register the parent department with unity::scopes::SearchReply::register_departments().
3742- </ul>
3743-
3744- For example, assuming the user is visiting a "History" department in "Books", and "History" has sub-departments
3745- such as "World War Two" and "Ancient", the code
3746- that registers departments for current search in "History" may look like this:
3747- \code{.cpp}
3748- unity::scopes::Department::SPtr books = move(unity::scopes::Department::create("books", query, "Books")); // the
3749- parent of "History"
3750- unity::scopes::Department::SPtr history = move(unity::scopes::Department::create("history", query, "History"));
3751- unity::scopes::DepartmentList history_depts({
3752- move(unity::scopes::Department::create("ww2", query, "World War Two")),
3753- move(unity::scopes::Department::create("ancient", query, "Ancient"))});
3754- history->set_subdepartments(history_depts);
3755- books->set_subdepartments({history});
3756- reply->register_departments(books);
3757- \endcode
3758-
3759- Current department should be the department returned by unity::scopes::CannedQuery::department_id(). Empty
3760- department id denotes
3761- the root deparment.
3762-
3763- \param parent The parent department of current department, or current one if visiting root department.
3764- \throws unity::LogicException if departments are invalid (nullptr passed, current department not present in the
3765- parent's tree, duplicated department ids present in the tree).
3766- */
3767 virtual void register_departments(QDepartment::SCPtr const& parent);
3768-
3769- /**
3770- \brief Register new category and send it to the source of the query.
3771-
3772- \param id The identifier of the category
3773- \param title The title of the category
3774- \param icon The icon of the category
3775- \param renderer_template The renderer template to be used for results in this category
3776-
3777- \return The category instance
3778- \throws unity::scopes::InvalidArgumentException if category with that id has already been registered.
3779- */
3780 QCategory::SCPtr register_category(
3781 QString const& id,
3782 QString const& title,
3783 QString const& icon,
3784 unity::scopes::CategoryRenderer const& renderer_template = unity::scopes::CategoryRenderer());
3785-
3786- /**
3787- \brief Sends a single result to the source of a query.
3788-
3789- Any calls to push() after finished() was called are ignored.
3790- \return The return value is true if the result was accepted, false otherwise.
3791- A false return value can be due to finished() having been called earlier,
3792- or the client that sent the query having cancelled that query. The return
3793- value is false also if the query has a cardinality limit and is reached
3794- or exceeded. (The return value is false for the last valid push and
3795- subsequent pushes.)
3796- */
3797 bool push(QCategorisedResult const& result);
3798-
3799- /**
3800- \brief Informs the source of a query that the query was terminated due to an error.
3801-
3802- Multiple calls to error() and calls to finished() after error() was called are ignored.
3803- \param ex An exception_ptr indicating the cause of the error. If ex is a `std::exception`,
3804- the return value of `what()` is made available to the query source. Otherwise,
3805- the query source receives `"unknown exception"`.
3806- */
3807 void error(std::exception_ptr ex);
3808
3809 protected:
3810
3811=== renamed file 'include/unity/scopes/qt/QUtils.h' => 'include/unity/scopes/qt/internal/QUtils.h'
3812--- include/unity/scopes/qt/QUtils.h 2015-02-06 00:12:18 +0000
3813+++ include/unity/scopes/qt/internal/QUtils.h 2015-04-15 10:06:48 +0000
3814@@ -24,8 +24,6 @@
3815 #pragma GCC diagnostic pop
3816 #include <unity/scopes/Variant.h>
3817
3818-#define EXPORT __attribute__((visibility("default")))
3819-
3820 namespace unity
3821 {
3822
3823@@ -35,12 +33,15 @@
3824 namespace qt
3825 {
3826
3827-///@cond
3828-EXPORT QVariant scopeVariantToQVariant(unity::scopes::Variant const& variant);
3829-EXPORT unity::scopes::Variant qVariantToScopeVariant(QVariant const& variant);
3830-EXPORT QVariantMap scopeVariantMapToQVariantMap(unity::scopes::VariantMap const& variant);
3831-EXPORT VariantMap qVariantMapToScopeVariantMap(QVariantMap const& variant);
3832-///@endcond
3833+namespace internal
3834+{
3835+
3836+QVariant variant_to_qvariant(unity::scopes::Variant const& variant);
3837+unity::scopes::Variant qvariant_to_variant(QVariant const& variant);
3838+QVariantMap variantmap_to_qvariantmap(unity::scopes::VariantMap const& variant);
3839+VariantMap qvariantmap_to_variantmap(QVariantMap const& variant);
3840+
3841+} // namespace qt
3842
3843 } // namespace qt
3844
3845
3846=== modified file 'include/unity/scopes/testing/MockPreviewReply.h'
3847--- include/unity/scopes/testing/MockPreviewReply.h 2015-02-06 00:25:05 +0000
3848+++ include/unity/scopes/testing/MockPreviewReply.h 2015-04-15 10:06:48 +0000
3849@@ -33,11 +33,13 @@
3850 namespace testing
3851 {
3852
3853-/// @cond
3854-
3855+/**
3856+ \brief Mock for unity::scopes::PreviewReply class.
3857+ */
3858 class MockPreviewReply : public unity::scopes::PreviewReply, public unity::scopes::testing::MockObject
3859 {
3860 public:
3861+ /// @cond
3862 MockPreviewReply() = default;
3863
3864 // From Reply
3865@@ -49,9 +51,9 @@
3866 MOCK_METHOD1(register_layout, bool(ColumnLayoutList const&));
3867 MOCK_METHOD1(push, bool(PreviewWidgetList const&));
3868 MOCK_METHOD2(push, bool(std::string const&, Variant const&));
3869+/// @endcond
3870 };
3871
3872-/// @endcond
3873
3874 } // namespace testing
3875
3876
3877=== modified file 'include/unity/scopes/testing/MockScope.h'
3878--- include/unity/scopes/testing/MockScope.h 2015-04-01 11:28:32 +0000
3879+++ include/unity/scopes/testing/MockScope.h 2015-04-15 10:06:48 +0000
3880@@ -68,6 +68,13 @@
3881
3882 MOCK_METHOD0(child_scopes, ChildScopeList());
3883
3884+ MOCK_METHOD6(search, QueryCtrlProxy(std::string const&,
3885+ std::string const&,
3886+ FilterState const&,
3887+ Variant const&,
3888+ SearchMetadata const&,
3889+ SearchListenerBase::SPtr const&));
3890+
3891 MOCK_METHOD1(set_child_scopes, bool(ChildScopeList const&));
3892 };
3893
3894
3895=== modified file 'include/unity/scopes/testing/MockSearchReply.h'
3896--- include/unity/scopes/testing/MockSearchReply.h 2015-02-12 23:21:47 +0000
3897+++ include/unity/scopes/testing/MockSearchReply.h 2015-04-15 10:06:48 +0000
3898@@ -35,11 +35,13 @@
3899 namespace testing
3900 {
3901
3902-/// @cond
3903-
3904+/**
3905+ \brief Mock for unity::scopes::SearchReply class.
3906+ */
3907 class MockSearchReply : public unity::scopes::SearchReply, public virtual MockObject
3908 {
3909 public:
3910+/// @cond
3911 MockSearchReply() = default;
3912
3913 // From Reply
3914@@ -66,9 +68,10 @@
3915 MOCK_METHOD2(push, bool(Filters const&, FilterState const&));
3916 MOCK_METHOD1(push, bool(experimental::Annotation const& annotation));
3917 MOCK_METHOD0(push_surfacing_results_from_cache, void());
3918+
3919+/// @endcond
3920 };
3921
3922-/// @endcond
3923
3924 } // namespace testing
3925
3926
3927=== modified file 'include/unity/scopes/testing/TypedScopeFixture.h'
3928--- include/unity/scopes/testing/TypedScopeFixture.h 2015-02-22 22:27:09 +0000
3929+++ include/unity/scopes/testing/TypedScopeFixture.h 2015-04-15 10:06:48 +0000
3930@@ -65,10 +65,19 @@
3931 friend class TypedScopeFixture;
3932 };
3933
3934+/// @endcond
3935+
3936+/**
3937+ \brief Fixture for testing scope testing.
3938+
3939+ This fixture template provides convienience SetUp() and TearDown() functions, as well as
3940+ a number of setters that ease the creation of scope tests.
3941+ */
3942 template<typename Scope>
3943 class TypedScopeFixture : public ::testing::Test
3944 {
3945 public:
3946+/// @cond
3947 TypedScopeFixture()
3948 : registry_proxy(&registry, [](unity::scopes::Registry*) {})
3949 , scope(ScopeTraits<Scope>::construct())
3950@@ -116,9 +125,9 @@
3951 unity::scopes::testing::MockRegistry registry;
3952 unity::scopes::RegistryProxy registry_proxy;
3953 std::shared_ptr<Scope> scope;
3954+/// @endcond
3955 };
3956
3957-/// @endcond
3958
3959 } // namespace testing
3960
3961
3962=== modified file 'include/unity/scopes/utility/internal/BufferedSearchReplyImpl.h'
3963--- include/unity/scopes/utility/internal/BufferedSearchReplyImpl.h 2015-02-04 06:07:15 +0000
3964+++ include/unity/scopes/utility/internal/BufferedSearchReplyImpl.h 2015-04-15 10:06:48 +0000
3965@@ -63,7 +63,7 @@
3966 bool push(unity::scopes::CategorisedResult const& result) override;
3967 bool push(unity::scopes::Filters const& filters, unity::scopes::FilterState const& filter_state) override;
3968
3969- void push_surfacing_results_from_cache() override;
3970+ void push_surfacing_results_from_cache() noexcept override;
3971
3972 // Reply interface
3973 void finished() override;
3974
3975=== modified file 'scoperegistry/scoperegistry.cpp'
3976--- scoperegistry/scoperegistry.cpp 2015-02-17 00:27:08 +0000
3977+++ scoperegistry/scoperegistry.cpp 2015-04-15 10:06:48 +0000
3978@@ -26,13 +26,13 @@
3979 #include <unity/scopes/internal/ScopeConfig.h>
3980 #include <unity/scopes/internal/ScopeImpl.h>
3981 #include <unity/scopes/internal/ScopeMetadataImpl.h>
3982+#include <unity/scopes/internal/Utils.h>
3983 #include <unity/scopes/ScopeExceptions.h>
3984 #include <unity/UnityExceptions.h>
3985
3986+#include <boost/filesystem.hpp>
3987 #include <boost/algorithm/string.hpp>
3988-#include <boost/filesystem/operations.hpp>
3989
3990-#include <sys/stat.h> // TODO: remove this once hack for creating data root dir is removed
3991 #include <wordexp.h>
3992
3993 using namespace scoperegistry;
3994@@ -535,28 +535,17 @@
3995 identity = runtime->registry_identity();
3996 ss_reg_id = runtime->ss_registry_identity();
3997
3998- // TODO: HACK: We create the root of the cache and app directories for
3999- // confined scopes, in case the scope is confined and the dir doesn't
4000- // exist yet. This really should be done by the click-installation but,
4001- // prior to RTM, we don't rely on that.
4002- boost::system::error_code ec;
4003-
4004+ // Make sure that the cache and app directories exist.
4005 string cache_root = rt_config.cache_directory() + "/leaf-net";
4006- !boost::filesystem::exists(cache_root, ec) && ::mkdir(cache_root.c_str(), 0700);
4007+ make_directories(cache_root, 0700);
4008
4009 string app_root = rt_config.app_directory();
4010- !boost::filesystem::exists(app_root, ec) && ::mkdir(app_root.c_str(), 0700);
4011+ make_directories(app_root, 0700);
4012 } // Release memory for config parser
4013
4014- // Make sure that the parent directories for confined scope tmp directory exist.
4015- {
4016- string dir = string("/run/user/") + std::to_string(geteuid());
4017- dir += "/scopes";
4018- boost::system::error_code ec;
4019- !boost::filesystem::exists(dir, ec) && ::mkdir(dir.c_str(), 0700 | S_ISVTX);
4020- dir += "/leaf-net";
4021- !boost::filesystem::exists(dir, ec) && ::mkdir(dir.c_str(), 0700 | S_ISVTX);
4022- }
4023+ // Make sure that the confined scope tmp directory exists.
4024+ string tmp_dir = string("/run/user/") + std::to_string(geteuid()) + "/scopes/leaf-net";
4025+ make_directories(tmp_dir, 0700);
4026
4027 // Collect the registry config data.
4028
4029
4030=== modified file 'src/scopes/CMakeLists.txt'
4031--- src/scopes/CMakeLists.txt 2015-03-31 05:44:04 +0000
4032+++ src/scopes/CMakeLists.txt 2015-04-15 10:06:48 +0000
4033@@ -20,6 +20,7 @@
4034 ${CMAKE_CURRENT_SOURCE_DIR}/ColumnLayout.cpp
4035 ${CMAKE_CURRENT_SOURCE_DIR}/CompletionDetails.cpp
4036 ${CMAKE_CURRENT_SOURCE_DIR}/Department.cpp
4037+ ${CMAKE_CURRENT_SOURCE_DIR}/DateTimePickerFilter.cpp
4038 ${CMAKE_CURRENT_SOURCE_DIR}/FilterBase.cpp
4039 ${CMAKE_CURRENT_SOURCE_DIR}/FilterOption.cpp
4040 ${CMAKE_CURRENT_SOURCE_DIR}/FilterState.cpp
4041
4042=== modified file 'src/scopes/CannedQuery.cpp'
4043--- src/scopes/CannedQuery.cpp 2014-04-11 12:04:41 +0000
4044+++ src/scopes/CannedQuery.cpp 2015-04-15 10:06:48 +0000
4045@@ -113,6 +113,21 @@
4046 return internal::CannedQueryImpl::from_uri(uri);
4047 }
4048
4049+void CannedQuery::set_user_data(Variant const& value)
4050+{
4051+ p->set_user_data(value);
4052+}
4053+
4054+bool CannedQuery::has_user_data() const
4055+{
4056+ return p->has_user_data();
4057+}
4058+
4059+Variant CannedQuery::user_data() const
4060+{
4061+ return p->user_data();
4062+}
4063+
4064 } // namespace scopes
4065
4066 } // namespace unity
4067
4068=== added file 'src/scopes/DateTimePickerFilter.cpp'
4069--- src/scopes/DateTimePickerFilter.cpp 1970-01-01 00:00:00 +0000
4070+++ src/scopes/DateTimePickerFilter.cpp 2015-04-15 10:06:48 +0000
4071@@ -0,0 +1,125 @@
4072+/*
4073+ * Copyright (C) 2015 Canonical Ltd
4074+ *
4075+ * This program is free software: you can redistribute it and/or modify
4076+ * it under the terms of the GNU Lesser General Public License version 3 as
4077+ * published by the Free Software Foundation.
4078+ *
4079+ * This program is distributed in the hope that it will be useful,
4080+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
4081+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4082+ * GNU Lesser General Public License for more details.
4083+ *
4084+ * You should have received a copy of the GNU Lesser General Public License
4085+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
4086+ *
4087+ * Authored by: Pawel Stolowski <pawel.stolowski@canonical.com>
4088+ */
4089+
4090+#include <unity/scopes/DateTimePickerFilter.h>
4091+#include <unity/scopes/internal/DateTimePickerFilterImpl.h>
4092+
4093+namespace unity
4094+{
4095+
4096+namespace scopes
4097+{
4098+
4099+namespace experimental
4100+{
4101+
4102+DateTimePickerFilter::DateTimePickerFilter(internal::DateTimePickerFilterImpl* impl)
4103+ : FilterBase(impl)
4104+{
4105+}
4106+
4107+DateTimePickerFilter::UPtr DateTimePickerFilter::create(std::string const& id, DateTimePickerFilter::Mode mode)
4108+{
4109+ return std::unique_ptr<DateTimePickerFilter>(new DateTimePickerFilter(new internal::DateTimePickerFilterImpl(id, mode)));
4110+}
4111+
4112+void DateTimePickerFilter::set_time_label(std::string const& label)
4113+{
4114+ fwd()->set_time_label(label);
4115+}
4116+
4117+void DateTimePickerFilter::set_date_label(std::string const& label)
4118+{
4119+ fwd()->set_date_label(label);
4120+}
4121+
4122+void DateTimePickerFilter::set_maximum(std::chrono::system_clock::time_point const& date)
4123+{
4124+ fwd()->set_maximum(date);
4125+}
4126+
4127+void DateTimePickerFilter::set_minimum(std::chrono::system_clock::time_point const& date)
4128+{
4129+ fwd()->set_minimum(date);
4130+}
4131+
4132+std::string DateTimePickerFilter::time_label() const
4133+{
4134+ return fwd()->time_label();
4135+}
4136+
4137+std::string DateTimePickerFilter::date_label() const
4138+{
4139+ return fwd()->date_label();
4140+}
4141+
4142+DateTimePickerFilter::Mode DateTimePickerFilter::mode() const
4143+{
4144+ return fwd()->mode();
4145+}
4146+
4147+bool DateTimePickerFilter::has_minimum() const
4148+{
4149+ return fwd()->has_minimum();
4150+}
4151+
4152+bool DateTimePickerFilter::has_maximum() const
4153+{
4154+ return fwd()->has_maximum();
4155+}
4156+
4157+std::chrono::system_clock::time_point DateTimePickerFilter::minimum() const
4158+{
4159+ return fwd()->minimum();
4160+}
4161+
4162+std::chrono::system_clock::time_point DateTimePickerFilter::maximum() const
4163+{
4164+ return fwd()->maximum();
4165+}
4166+
4167+bool DateTimePickerFilter::has_selected_date(FilterState const& filter_state) const
4168+{
4169+ return fwd()->has_selected_date(filter_state);
4170+}
4171+
4172+std::chrono::system_clock::time_point DateTimePickerFilter::selected_date(FilterState const& filter_state) const
4173+{
4174+ return fwd()->selected_date(filter_state);
4175+}
4176+
4177+void DateTimePickerFilter::update_state(FilterState& filter_state, std::chrono::system_clock::time_point const& date) const
4178+{
4179+ fwd()->update_state(filter_state, date);
4180+}
4181+
4182+void DateTimePickerFilter::update_state(FilterState& filter_state, std::string const& filter_id, std::chrono::system_clock::time_point const& date)
4183+{
4184+ internal::DateTimePickerFilterImpl::update_state(filter_state, filter_id, date);
4185+}
4186+
4187+internal::DateTimePickerFilterImpl* DateTimePickerFilter::fwd() const
4188+{
4189+ return dynamic_cast<internal::DateTimePickerFilterImpl*>(p.get());
4190+}
4191+
4192+}
4193+
4194+}
4195+
4196+}
4197
4198=== modified file 'src/scopes/PreviewWidget.cpp'
4199--- src/scopes/PreviewWidget.cpp 2015-01-07 23:03:50 +0000
4200+++ src/scopes/PreviewWidget.cpp 2015-04-15 10:06:48 +0000
4201@@ -288,7 +288,14 @@
4202 a star-based rating and an input field for the user to enter his/her review.
4203 It is possible to hide each widget as well as to require them to be filled in.
4204
4205-When a user presses the "Send" button, the scope receives a preview action activation with the id \c "rated".
4206+When a user presses the "Send" button, the scope receives a preview
4207+action activation with the id \c "rated". The actual rating and/or
4208+review can be accessed via unity::scopes::ActionMetadata::scope_data.
4209+The scope data will be a VariantMap with the following keys:
4210+
4211+ - \c "rating" - a double holding the number of stars the user
4212+ selected (1 to 5)
4213+ - \c "review" - a string holding the free text review
4214
4215 List of attributes:
4216
4217
4218=== modified file 'src/scopes/Result.cpp'
4219--- src/scopes/Result.cpp 2014-02-14 17:00:04 +0000
4220+++ src/scopes/Result.cpp 2015-04-15 10:06:48 +0000
4221@@ -154,6 +154,11 @@
4222 return p->serialize();
4223 }
4224
4225+bool Result::is_account_login_result() const
4226+{
4227+ return p->contains("online_account_details");
4228+}
4229+
4230 //! @endcond
4231
4232 } // namespace scopes
4233
4234=== modified file 'src/scopes/SearchMetadata.cpp'
4235--- src/scopes/SearchMetadata.cpp 2015-03-27 00:57:18 +0000
4236+++ src/scopes/SearchMetadata.cpp 2015-04-15 10:06:48 +0000
4237@@ -89,6 +89,11 @@
4238 return static_cast<internal::SearchMetadataImpl*>(p.get())->has_location();
4239 }
4240
4241+void SearchMetadata::remove_location()
4242+{
4243+ static_cast<internal::SearchMetadataImpl*>(p.get())->remove_location();
4244+}
4245+
4246 void SearchMetadata::set_aggregated_keywords(std::set<std::string> const& aggregated_keywords)
4247 {
4248 static_cast<internal::SearchMetadataImpl*>(p.get())->set_aggregated_keywords(aggregated_keywords);
4249
4250=== modified file 'src/scopes/SearchQueryBase.cpp'
4251--- src/scopes/SearchQueryBase.cpp 2015-04-01 16:08:51 +0000
4252+++ src/scopes/SearchQueryBase.cpp 2015-04-15 10:06:48 +0000
4253@@ -61,7 +61,7 @@
4254 string const& query_string,
4255 SearchListenerBase::SPtr const& reply)
4256 {
4257- return subsearch(scope, query_string, "", FilterState(), fwd()->search_metadata(), reply);
4258+ return fwd()->subsearch(scope, {}, query_string, "", FilterState(), nullptr, fwd()->search_metadata(), reply);
4259 }
4260
4261 QueryCtrlProxy SearchQueryBase::subsearch(ChildScope const& scope,
4262@@ -76,45 +76,67 @@
4263 FilterState const& filter_state,
4264 SearchListenerBase::SPtr const& reply)
4265 {
4266- return subsearch(scope, query_string, "", filter_state, fwd()->search_metadata(), reply);
4267-}
4268-
4269-QueryCtrlProxy SearchQueryBase::subsearch(ScopeProxy const& scope,
4270- std::string const& query_string,
4271- std::string const& department_id,
4272- FilterState const& filter_state,
4273- SearchListenerBase::SPtr const& reply)
4274-{
4275- return subsearch(scope, query_string, department_id, filter_state, fwd()->search_metadata(), reply);
4276-}
4277-
4278-QueryCtrlProxy SearchQueryBase::subsearch(ChildScope const& scope,
4279- std::string const& query_string,
4280- std::string const& department_id,
4281- FilterState const& filter_state,
4282- SearchListenerBase::SPtr const& reply)
4283-{
4284- return subsearch(scope, query_string, department_id, filter_state, fwd()->search_metadata(), reply);
4285-}
4286-
4287-QueryCtrlProxy SearchQueryBase::subsearch(ScopeProxy const& scope,
4288- std::string const& query_string,
4289- std::string const& department_id,
4290- FilterState const& filter_state,
4291- SearchMetadata const& hints,
4292- SearchListenerBase::SPtr const& reply)
4293-{
4294- return fwd()->subsearch(scope, {}, query_string, department_id, filter_state, hints, reply);
4295-}
4296-
4297-QueryCtrlProxy SearchQueryBase::subsearch(ChildScope const& scope,
4298- std::string const& query_string,
4299- std::string const& department_id,
4300- FilterState const& filter_state,
4301- SearchMetadata const& hints,
4302- SearchListenerBase::SPtr const& reply)
4303-{
4304- return fwd()->subsearch(scope.metadata.proxy(), scope.keywords, query_string, department_id, filter_state, hints, reply);
4305+ return fwd()->subsearch(scope, {}, query_string, "", filter_state, nullptr, fwd()->search_metadata(), reply);
4306+}
4307+
4308+QueryCtrlProxy SearchQueryBase::subsearch(ScopeProxy const& scope,
4309+ std::string const& query_string,
4310+ std::string const& department_id,
4311+ FilterState const& filter_state,
4312+ SearchListenerBase::SPtr const& reply)
4313+{
4314+ return fwd()->subsearch(scope, {}, query_string, department_id, filter_state, nullptr, fwd()->search_metadata(), reply);
4315+}
4316+
4317+QueryCtrlProxy SearchQueryBase::subsearch(ChildScope const& scope,
4318+ std::string const& query_string,
4319+ std::string const& department_id,
4320+ FilterState const& filter_state,
4321+ SearchListenerBase::SPtr const& reply)
4322+{
4323+ return subsearch(scope, query_string, department_id, filter_state, fwd()->search_metadata(), reply);
4324+}
4325+
4326+QueryCtrlProxy SearchQueryBase::subsearch(ScopeProxy const& scope,
4327+ std::string const& query_string,
4328+ std::string const& department_id,
4329+ FilterState const& filter_state,
4330+ SearchMetadata const& hints,
4331+ SearchListenerBase::SPtr const& reply)
4332+{
4333+ return fwd()->subsearch(scope, {}, query_string, department_id, filter_state, nullptr, hints, reply);
4334+}
4335+
4336+QueryCtrlProxy SearchQueryBase::subsearch(ChildScope const& scope,
4337+ std::string const& query_string,
4338+ std::string const& department_id,
4339+ FilterState const& filter_state,
4340+ SearchMetadata const& hints,
4341+ SearchListenerBase::SPtr const& reply)
4342+{
4343+ return fwd()->subsearch(scope.metadata.proxy(), scope.keywords, query_string, department_id, filter_state, nullptr, hints, reply);
4344+}
4345+
4346+QueryCtrlProxy SearchQueryBase::subsearch(ChildScope const& scope,
4347+ std::string const& query_string,
4348+ std::string const& department_id,
4349+ FilterState const& filter_state,
4350+ Variant const& user_data,
4351+ SearchMetadata const& hints,
4352+ SearchListenerBase::SPtr const& reply)
4353+{
4354+ return fwd()->subsearch(scope.metadata.proxy(), scope.keywords, query_string, department_id, filter_state, std::unique_ptr<Variant>(new Variant(user_data)), hints, reply);
4355+}
4356+
4357+QueryCtrlProxy SearchQueryBase::subsearch(ScopeProxy const& scope,
4358+ std::string const& query_string,
4359+ std::string const& department_id,
4360+ FilterState const& filter_state,
4361+ Variant const& user_data,
4362+ SearchMetadata const& hints,
4363+ SearchListenerBase::SPtr const& reply)
4364+{
4365+ return fwd()->subsearch(scope, {}, query_string, department_id, filter_state, std::unique_ptr<Variant>(new Variant(user_data)), hints, reply);
4366 }
4367
4368 void SearchQueryBase::set_department_id(std::string const& department_id)
4369
4370=== modified file 'src/scopes/Variant.cpp'
4371--- src/scopes/Variant.cpp 2014-08-28 00:20:56 +0000
4372+++ src/scopes/Variant.cpp 2015-04-15 10:06:48 +0000
4373@@ -49,7 +49,7 @@
4374
4375 struct VariantImpl
4376 {
4377- boost::variant<NullVariant, int, bool, string, double, VariantMap, VariantArray> v;
4378+ boost::variant<NullVariant, int, bool, string, double, VariantMap, VariantArray, int64_t> v;
4379 };
4380
4381 } // namespace internal
4382@@ -64,6 +64,11 @@
4383 {
4384 }
4385
4386+Variant::Variant(int64_t val) noexcept
4387+ : p(new internal::VariantImpl { val })
4388+{
4389+}
4390+
4391 Variant::Variant(double val) noexcept
4392 : p(new internal::VariantImpl { val })
4393 {
4394@@ -130,6 +135,12 @@
4395 return *this;
4396 }
4397
4398+Variant& Variant::operator=(int64_t val) noexcept
4399+{
4400+ p->v = val;
4401+ return *this;
4402+}
4403+
4404 Variant& Variant::operator=(double val) noexcept
4405 {
4406 p->v = val;
4407@@ -188,6 +199,18 @@
4408 }
4409 }
4410
4411+int64_t Variant::get_int64_t() const
4412+{
4413+ try
4414+ {
4415+ return boost::get<int64_t>(p->v);
4416+ }
4417+ catch (std::exception const&)
4418+ {
4419+ throw LogicException("Variant does not contain an int64_t value");
4420+ }
4421+}
4422+
4423 double Variant::get_double() const
4424 {
4425 try
4426
4427=== modified file 'src/scopes/internal/CMakeLists.txt'
4428--- src/scopes/internal/CMakeLists.txt 2014-12-10 04:54:26 +0000
4429+++ src/scopes/internal/CMakeLists.txt 2015-04-15 10:06:48 +0000
4430@@ -20,6 +20,7 @@
4431 ${CMAKE_CURRENT_SOURCE_DIR}/ColumnLayoutImpl.cpp
4432 ${CMAKE_CURRENT_SOURCE_DIR}/CompletionDetailsImpl.cpp
4433 ${CMAKE_CURRENT_SOURCE_DIR}/ConfigBase.cpp
4434+ ${CMAKE_CURRENT_SOURCE_DIR}/DateTimePickerFilterImpl.cpp
4435 ${CMAKE_CURRENT_SOURCE_DIR}/DepartmentImpl.cpp
4436 ${CMAKE_CURRENT_SOURCE_DIR}/DynamicLoader.cpp
4437 ${CMAKE_CURRENT_SOURCE_DIR}/Executor.cpp
4438
4439=== modified file 'src/scopes/internal/CannedQueryImpl.cpp'
4440--- src/scopes/internal/CannedQueryImpl.cpp 2014-12-01 08:26:52 +0000
4441+++ src/scopes/internal/CannedQueryImpl.cpp 2015-04-15 10:06:48 +0000
4442@@ -56,6 +56,18 @@
4443 }
4444 }
4445
4446+CannedQueryImpl::CannedQueryImpl(CannedQueryImpl const &other)
4447+{
4448+ scope_id_ = other.scope_id_;
4449+ query_string_ = other.query_string_;
4450+ department_id_ = other.department_id_;
4451+ filter_state_ = other.filter_state_;
4452+ if (other.user_data_ != nullptr)
4453+ {
4454+ user_data_.reset(new Variant(*other.user_data_));
4455+ }
4456+}
4457+
4458 CannedQueryImpl::CannedQueryImpl(VariantMap const& variant)
4459 {
4460 auto it = variant.find("scope");
4461@@ -87,6 +99,32 @@
4462 {
4463 query_string_ = it->second.get_string();
4464 }
4465+
4466+ it = variant.find("user_data");
4467+ if (it != variant.end())
4468+ {
4469+ set_user_data(it->second);
4470+ }
4471+}
4472+
4473+CannedQueryImpl& CannedQueryImpl::operator=(CannedQueryImpl const &other)
4474+{
4475+ if (this != &other)
4476+ {
4477+ scope_id_ = other.scope_id_;
4478+ query_string_ = other.query_string_;
4479+ department_id_ = other.department_id_;
4480+ filter_state_ = other.filter_state_;
4481+ if (other.user_data_ != nullptr)
4482+ {
4483+ user_data_.reset(new Variant(*other.user_data_));
4484+ }
4485+ else
4486+ {
4487+ user_data_.reset(nullptr);
4488+ }
4489+ }
4490+ return *this;
4491 }
4492
4493 void CannedQueryImpl::set_department_id(std::string const& dep_id)
4494@@ -124,6 +162,25 @@
4495 return filter_state_;
4496 }
4497
4498+void CannedQueryImpl::set_user_data(Variant const& value)
4499+{
4500+ user_data_.reset(new Variant(value));
4501+}
4502+
4503+bool CannedQueryImpl::has_user_data() const
4504+{
4505+ return user_data_ != nullptr;
4506+}
4507+
4508+Variant CannedQueryImpl::user_data() const
4509+{
4510+ if (user_data_)
4511+ {
4512+ return *user_data_;
4513+ }
4514+ throw unity::LogicException("CannedQuery::data(): data is not set for this query");
4515+}
4516+
4517 VariantMap CannedQueryImpl::serialize() const
4518 {
4519 VariantMap vm;
4520@@ -131,6 +188,10 @@
4521 vm["query_string"] = query_string_;
4522 vm["department_id"] = department_id_;
4523 vm["filter_state"] = filter_state_.serialize();
4524+ if (user_data_)
4525+ {
4526+ vm["user_data"] = *user_data_;
4527+ }
4528 return vm;
4529 }
4530
4531@@ -152,6 +213,11 @@
4532 internal::JsonCppNode const jstr(var);
4533 s << "&filters=" << to_percent_encoding(jstr.to_json_string());
4534 }
4535+ if (user_data_)
4536+ {
4537+ internal::JsonCppNode const jstr(*(user_data_));
4538+ s << "&data=" << to_percent_encoding(jstr.to_json_string());
4539+ }
4540 return s.str();
4541 }
4542
4543@@ -231,7 +297,14 @@
4544 s << "CannedQuery::from_uri(): invalid filters data for uri: '" << uri << "'";
4545 throw InvalidArgumentException(s.str());
4546 }
4547- } // else - unknown keys are ignored
4548+ }
4549+ else if (key == "data")
4550+ {
4551+ auto const data_json = decode_or_throw(val, key, uri);
4552+ internal::JsonCppNode const node(data_json);
4553+ q.set_user_data(node.to_variant());
4554+ }
4555+ // else - unknown keys are ignored
4556 } // else - the string with no '=' is ignored
4557 }
4558 }
4559
4560=== added file 'src/scopes/internal/DateTimePickerFilterImpl.cpp'
4561--- src/scopes/internal/DateTimePickerFilterImpl.cpp 1970-01-01 00:00:00 +0000
4562+++ src/scopes/internal/DateTimePickerFilterImpl.cpp 2015-04-15 10:06:48 +0000
4563@@ -0,0 +1,268 @@
4564+/*
4565+ * Copyright (C) 2015 Canonical Ltd
4566+ *
4567+ * This program is free software: you can redistribute it and/or modify
4568+ * it under the terms of the GNU Lesser General Public License version 3 as
4569+ * published by the Free Software Foundation.
4570+ *
4571+ * This program is distributed in the hope that it will be useful,
4572+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
4573+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4574+ * GNU Lesser General Public License for more details.
4575+ *
4576+ * You should have received a copy of the GNU Lesser General Public License
4577+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
4578+ *
4579+ * Authored by: Pawel Stolowski <pawel.stolowski@canonical.com>
4580+ */
4581+
4582+#include <unity/scopes/internal/DateTimePickerFilterImpl.h>
4583+#include <unity/scopes/internal/Utils.h>
4584+#include <unity/scopes/FilterState.h>
4585+#include <unity/UnityExceptions.h>
4586+#include <unity/scopes/ScopeExceptions.h>
4587+
4588+namespace unity
4589+{
4590+
4591+namespace scopes
4592+{
4593+
4594+namespace internal
4595+{
4596+
4597+DateTimePickerFilterImpl::DateTimePickerFilterImpl(std::string const& id, DateTimePickerFilter::Mode mode)
4598+ : FilterBaseImpl(id),
4599+ m_mode(mode)
4600+{
4601+}
4602+
4603+DateTimePickerFilterImpl::DateTimePickerFilterImpl(VariantMap const& var)
4604+ : FilterBaseImpl(var)
4605+{
4606+ deserialize(var);
4607+}
4608+
4609+void DateTimePickerFilterImpl::set_time_label(std::string const& label)
4610+{
4611+ m_time_label = label;
4612+}
4613+
4614+void DateTimePickerFilterImpl::set_date_label(std::string const& label)
4615+{
4616+ m_date_label = label;
4617+}
4618+
4619+void DateTimePickerFilterImpl::set_minimum(std::chrono::system_clock::time_point const& date)
4620+{
4621+ m_min.reset(new std::chrono::system_clock::time_point(date));
4622+}
4623+
4624+void DateTimePickerFilterImpl::set_maximum(std::chrono::system_clock::time_point const& date)
4625+{
4626+ m_max.reset(new std::chrono::system_clock::time_point(date));
4627+}
4628+
4629+std::string DateTimePickerFilterImpl::time_label() const
4630+{
4631+ return m_time_label;
4632+}
4633+
4634+std::string DateTimePickerFilterImpl::date_label() const
4635+{
4636+ return m_date_label;
4637+}
4638+
4639+DateTimePickerFilter::Mode DateTimePickerFilterImpl::mode() const
4640+{
4641+ return m_mode;
4642+}
4643+
4644+bool DateTimePickerFilterImpl::has_minimum() const
4645+{
4646+ return m_min != nullptr;
4647+}
4648+
4649+bool DateTimePickerFilterImpl::has_maximum() const
4650+{
4651+ return m_max != nullptr;
4652+}
4653+
4654+std::chrono::system_clock::time_point DateTimePickerFilterImpl::minimum() const
4655+{
4656+ if (m_min)
4657+ {
4658+ return *m_min;
4659+ }
4660+
4661+ throw LogicException("DateTimePickerFilter::minimum(): minimum value is not set");
4662+}
4663+
4664+std::chrono::system_clock::time_point DateTimePickerFilterImpl::maximum() const
4665+{
4666+ if (m_max)
4667+ {
4668+ return *m_max;
4669+ }
4670+ throw LogicException("DateTimePickerFilter::maximum(): maximum value is not set");
4671+}
4672+
4673+bool DateTimePickerFilterImpl::has_selected_date(FilterState const& filter_state) const
4674+{
4675+ if (filter_state.has_filter(id()))
4676+ {
4677+ try
4678+ {
4679+ auto const var = FilterBaseImpl::get(filter_state, id()).get_dict(); // this can throw if of different type
4680+ return var.find("date") != var.end();
4681+ }
4682+ catch (...)
4683+ {
4684+ }
4685+ }
4686+ return false;
4687+}
4688+
4689+std::chrono::system_clock::time_point DateTimePickerFilterImpl::selected_date(FilterState const& filter_state) const
4690+{
4691+ if (filter_state.has_filter(id()))
4692+ {
4693+ bool valid = true;
4694+ try
4695+ {
4696+ auto vm = FilterBaseImpl::get(filter_state, id()).get_dict();
4697+ auto it = vm.find("date");
4698+ if (it != vm.end())
4699+ {
4700+ auto date = to_timepoint(it->second.get_int64_t());
4701+ if (is_valid_date(date))
4702+ {
4703+ return date;
4704+ }
4705+ valid = false;
4706+ }
4707+ }
4708+ catch (...)
4709+ {
4710+ }
4711+ if (!valid)
4712+ {
4713+ throw LogicException("DateTimePickerFilter::selected_date(): date for filter '" + id() + "' out of allowed range");
4714+ }
4715+ }
4716+ throw unity::scopes::NotFoundException("DateTimePickerFilter::selected_date(): date not set for filter ", id());
4717+}
4718+
4719+void DateTimePickerFilterImpl::update_state(FilterState& filter_state, std::chrono::system_clock::time_point const& date) const
4720+{
4721+ if (!is_valid_date(date))
4722+ {
4723+ throw LogicException("DateTimePickerFilter::update_state(): date for filter '" + id() + "' out of allowed range");
4724+ }
4725+
4726+ update_state(filter_state, id(), date);
4727+}
4728+
4729+void DateTimePickerFilterImpl::update_state(FilterState& filter_state, std::string const& filter_id, std::chrono::system_clock::time_point const& date)
4730+{
4731+ if (filter_id.empty())
4732+ {
4733+ throw InvalidArgumentException("DateTimePickerFilter::update_state(): Invalid empty filter_id string");
4734+ }
4735+
4736+ VariantMap& state = FilterBaseImpl::get(filter_state);
4737+ VariantMap vm;
4738+ vm["date"] = to_seconds_from_epoch(date);
4739+ state[filter_id] = vm;
4740+}
4741+
4742+bool DateTimePickerFilterImpl::is_valid_date(std::chrono::system_clock::time_point const& date) const
4743+{
4744+ return ((m_min == nullptr || date >= *m_min - std::chrono::seconds(1)) && (m_max == nullptr || date < *m_max + std::chrono::seconds(1)));
4745+}
4746+
4747+void DateTimePickerFilterImpl::serialize(VariantMap& var) const
4748+{
4749+ var["mode"] = static_cast<int>(m_mode.to_ulong());
4750+ if (m_time_label.size())
4751+ {
4752+ var["time_label"] = m_time_label;
4753+ }
4754+ if (m_date_label.size())
4755+ {
4756+ var["date_label"] = m_date_label;
4757+ }
4758+ if (m_min)
4759+ {
4760+ var["min"] = to_seconds_from_epoch(*m_min);
4761+ }
4762+ if (m_max)
4763+ {
4764+ var["max"] = to_seconds_from_epoch(*m_max);
4765+ }
4766+}
4767+
4768+void DateTimePickerFilterImpl::deserialize(VariantMap const& var)
4769+{
4770+ auto it = find_or_throw("DateTimePickerFilter::deserialize()", var, "mode");
4771+ m_mode = DateTimePickerFilter::Mode(it->second.get_int());
4772+ it = var.find("time_label");
4773+ if (it != var.end())
4774+ {
4775+ m_time_label = it->second.get_string();
4776+ }
4777+ else
4778+ {
4779+ m_time_label.clear();
4780+ }
4781+
4782+ it = var.find("date_label");
4783+ if (it != var.end())
4784+ {
4785+ m_date_label = it->second.get_string();
4786+ }
4787+ else
4788+ {
4789+ m_date_label.clear();
4790+ }
4791+
4792+ it = var.find("min");
4793+ if (it != var.end())
4794+ {
4795+ set_minimum(to_timepoint(it->second.get_int64_t()));
4796+ }
4797+
4798+ it = var.find("max");
4799+ if (it != var.end())
4800+ {
4801+ set_maximum(to_timepoint(it->second.get_int64_t()));
4802+ }
4803+}
4804+
4805+DateTimePickerFilter::SPtr DateTimePickerFilterImpl::create(VariantMap const& var)
4806+{
4807+ return std::shared_ptr<DateTimePickerFilter>(new DateTimePickerFilter(new DateTimePickerFilterImpl(var)));
4808+}
4809+
4810+std::string DateTimePickerFilterImpl::filter_type() const
4811+{
4812+ return "datetime_picker";
4813+}
4814+
4815+int64_t DateTimePickerFilterImpl::to_seconds_from_epoch(std::chrono::system_clock::time_point const& tp)
4816+{
4817+ auto dur = tp.time_since_epoch();
4818+ return std::chrono::duration_cast<std::chrono::seconds>(dur).count();
4819+}
4820+
4821+std::chrono::system_clock::time_point DateTimePickerFilterImpl::to_timepoint(int64_t seconds_from_epoch)
4822+{
4823+ std::chrono::seconds const secs(seconds_from_epoch);
4824+ return std::chrono::system_clock::time_point(secs);
4825+}
4826+
4827+}
4828+
4829+}
4830+
4831+}
4832
4833=== modified file 'src/scopes/internal/FilterBaseImpl.cpp'
4834--- src/scopes/internal/FilterBaseImpl.cpp 2014-08-06 10:19:59 +0000
4835+++ src/scopes/internal/FilterBaseImpl.cpp 2015-04-15 10:06:48 +0000
4836@@ -26,6 +26,7 @@
4837 #include <unity/scopes/internal/RatingFilterImpl.h>
4838 #include <unity/scopes/internal/SwitchFilterImpl.h>
4839 #include <unity/scopes/internal/ValueSliderFilterImpl.h>
4840+#include <unity/scopes/internal/DateTimePickerFilterImpl.h>
4841 #include <unity/UnityExceptions.h>
4842 #include <sstream>
4843
4844@@ -150,6 +151,10 @@
4845 {
4846 return ValueSliderFilterImpl::create(var);
4847 }
4848+ if (ftype == "datetime_picker")
4849+ {
4850+ return DateTimePickerFilterImpl::create(var);
4851+ }
4852 throw unity::LogicException("Unknown filter type: " + ftype);
4853 }
4854 throw unity::LogicException("FilterBase: Missing 'filter_type'");
4855
4856=== modified file 'src/scopes/internal/IniSettingsSchema.cpp'
4857--- src/scopes/internal/IniSettingsSchema.cpp 2014-11-20 21:33:33 +0000
4858+++ src/scopes/internal/IniSettingsSchema.cpp 2015-04-15 10:06:48 +0000
4859@@ -18,10 +18,11 @@
4860
4861 #include <unity/scopes/internal/IniSettingsSchema.h>
4862
4863+#include <unity/scopes/internal/DfltConfig.h>
4864+
4865+#include <boost/algorithm/string/predicate.hpp>
4866 #include <unity/UnityExceptions.h>
4867
4868-#include <boost/algorithm/string/predicate.hpp>
4869-
4870 #include <cassert>
4871
4872 namespace unity
4873@@ -302,7 +303,7 @@
4874 // Realistically, the shell should not store this user-preference
4875 // in the scope's settings database, and should only pay attention to the scope's
4876 // LocationDataNeeded metadata attribute.
4877- Setting s("internal.location", "boolean", "Enable location data", VariantArray(), Variant(true));
4878+ Setting s("internal.location", "boolean", "Enable location data", VariantArray(), Variant(DFLT_LOCATION_PERMITTED));
4879 definitions_.push_back(s.to_schema_definition());
4880 }
4881
4882
4883=== modified file 'src/scopes/internal/JsonSettingsSchema.cpp'
4884--- src/scopes/internal/JsonSettingsSchema.cpp 2015-01-13 11:44:33 +0000
4885+++ src/scopes/internal/JsonSettingsSchema.cpp 2015-04-15 10:06:48 +0000
4886@@ -18,11 +18,12 @@
4887
4888 #include <unity/scopes/internal/JsonSettingsSchema.h>
4889
4890-#include <unity/UnityExceptions.h>
4891+#include <unity/scopes/internal/DfltConfig.h>
4892
4893 #include <boost/algorithm/string/predicate.hpp>
4894 #include <boost/filesystem.hpp>
4895 #include <jsoncpp/json/json.h>
4896+#include <unity/UnityExceptions.h>
4897
4898 #include <set>
4899
4900@@ -427,7 +428,7 @@
4901 // Realistically, the shell should not store this user-preference
4902 // in the scope's settings database, and should only pay attention to the scope's
4903 // LocationDataNeeded metadata attribute.
4904- Setting s("internal.location", "boolean", "Enable location data", VariantArray(), Variant(true));
4905+ Setting s("internal.location", "boolean", "Enable location data", VariantArray(), Variant(DFLT_LOCATION_PERMITTED));
4906 definitions_.push_back(s.to_schema_definition());
4907 }
4908
4909
4910=== modified file 'src/scopes/internal/LocationImpl.cpp'
4911--- src/scopes/internal/LocationImpl.cpp 2015-02-23 14:48:21 +0000
4912+++ src/scopes/internal/LocationImpl.cpp 2015-04-15 10:06:48 +0000
4913@@ -46,6 +46,7 @@
4914
4915 LocationImpl::LocationImpl(LocationImpl const& other)
4916 : altitude_(other.altitude_)
4917+ , area_code_(other.area_code_)
4918 , city_(other.city_)
4919 , country_code_(other.country_code_)
4920 , country_name_(other.country_name_)
4921
4922=== modified file 'src/scopes/internal/Logger.cpp'
4923--- src/scopes/internal/Logger.cpp 2015-02-04 06:07:15 +0000
4924+++ src/scopes/internal/Logger.cpp 2015-04-15 10:06:48 +0000
4925@@ -25,7 +25,15 @@
4926 #include <boost/log/support/date_time.hpp>
4927 #include <boost/log/trivial.hpp>
4928 #include <boost/phoenix/bind.hpp>
4929+
4930+#if (BOOST_VERSION / 100000 == 1) && (((BOOST_VERSION / 100) % 1000) < 56)
4931 #include <boost/utility/empty_deleter.hpp>
4932+typedef boost::empty_deleter NullDeleter;
4933+#else
4934+#include <boost/core/null_deleter.hpp>
4935+typedef boost::null_deleter NullDeleter;
4936+#endif
4937+
4938 #include <unity/UnityExceptions.h>
4939
4940 using namespace std;
4941@@ -49,14 +57,11 @@
4942 namespace
4943 {
4944
4945-static array<string, Logger::LastChannelEnum_> const channel_names =
4946- {
4947- { "IPC" }
4948- };
4949+static array<string, Logger::LastChannelEnum_> const channel_names = {{"IPC"}};
4950
4951 string const& to_severity(int s)
4952 {
4953- static array<string, 5> const severities = { { "INFO", "WARNING", "ERROR", "FATAL", "TRACE" } };
4954+ static array<string, 5> const severities = {{"INFO", "WARNING", "ERROR", "FATAL", "TRACE"}};
4955 static string const unknown = "UNKNOWN";
4956
4957 if (s < 0 || s >= static_cast<int>(severities.size()))
4958@@ -65,7 +70,6 @@
4959 }
4960 return severities[s];
4961 }
4962-
4963 }
4964
4965 // Instantiate a logger for the scope/client with the given ID.
4966@@ -93,7 +97,7 @@
4967 // Set up sink that logs to std::clog.
4968 clog_sink_ = boost::make_shared<ClogSinkT>();
4969 clog_sink_->set_formatter(bind(&Logger::formatter, this, ph::_1, ph::_2));
4970- boost::shared_ptr<std::ostream> console_stream(&std::clog, boost::empty_deleter());
4971+ boost::shared_ptr<std::ostream> console_stream(&std::clog, NullDeleter());
4972 clog_sink_->locked_backend()->add_stream(console_stream);
4973 clog_sink_->locked_backend()->auto_flush(true);
4974 logging::core::get()->add_sink(clog_sink_);
4975@@ -173,27 +177,26 @@
4976 {
4977 namespace ph = std::placeholders;
4978
4979- FileSinkPtr s = boost::make_shared<FileSinkT>(
4980- keywords::file_name = path + "-%N.log",
4981- keywords::rotation_size = rotation_size);
4982+ FileSinkPtr s =
4983+ boost::make_shared<FileSinkT>(keywords::file_name = path + "-%N.log", keywords::rotation_size = rotation_size);
4984
4985 string parent = boost::filesystem::path(path).parent_path().native();
4986- s->locked_backend()->set_file_collector(sinks::file::make_collector(keywords::target = parent,
4987- keywords::max_size = dir_size));
4988+ s->locked_backend()->set_file_collector(sinks::file::make_collector(
4989+ keywords::target = parent, keywords::max_size = dir_size, keywords::min_free_space = 1024 * 1024 * 5));
4990 try
4991 {
4992 s->locked_backend()->scan_for_files();
4993 }
4994 catch (std::exception const& e)
4995 {
4996- BOOST_LOG_SEV(logger_, Warning)
4997- << "RuntimeImpl::Logger(): log rotation failed (path = " << parent << "): " << e.what();
4998+ BOOST_LOG_SEV(logger_, Warning) << "RuntimeImpl::Logger(): log rotation failed (path = " << parent
4999+ << "): " << e.what();
5000 return;
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches

to all changes: