Merge lp:~indicator-applet-developers/indicator-network/install-qt-qml-use-cmake-extras into lp:indicator-network/15.10
- install-qt-qml-use-cmake-extras
- Merge into trunk.15.10
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | Pete Woods | ||||
Approved revision: | 513 | ||||
Merged at revision: | 489 | ||||
Proposed branch: | lp:~indicator-applet-developers/indicator-network/install-qt-qml-use-cmake-extras | ||||
Merge into: | lp:indicator-network/15.10 | ||||
Diff against target: |
5451 lines (+4324/-452) 64 files modified
.bzrignore (+2/-1) CMakeLists.txt (+18/-29) cmake/EnableCoverageReport.cmake (+0/-153) cmake/FindGMock.cmake (+0/-10) cmake/FindLcov.cmake (+0/-29) cmake/Findgcovr.cmake (+0/-31) cmake/ParseArguments.cmake (+0/-52) cmake/UseGSettings.cmake (+0/-42) data/CMakeLists.txt (+15/-0) data/connectivity-qt.map (+17/-0) data/connectivity-qt.pc.in (+10/-0) debian/connectivity-doc.install (+1/-0) debian/control (+56/-0) debian/libconnectivity-qt1-dev.install (+3/-0) debian/libconnectivity-qt1.install (+1/-0) debian/qml-module-ubuntu-connectivity.install (+1/-0) doc/CMakeLists.txt (+11/-0) doc/dbus/connectivity-api.txt (+26/-0) doc/qt/CMakeLists.txt (+3/-0) doc/qt/cpp/CMakeLists.txt (+27/-0) doc/qt/cpp/css/base.css (+638/-0) doc/qt/cpp/css/qtquick.css (+772/-0) doc/qt/cpp/css/reset.css (+8/-0) doc/qt/cpp/css/scratch.css (+61/-0) doc/qt/cpp/examples/CMakeLists.txt (+7/-0) doc/qt/cpp/examples/example_networking_status.cpp (+90/-0) doc/qt/cpp/pages/mainpage.dox (+18/-0) doc/qt/cpp/pages/networking-status.dox (+35/-0) doc/qt/cpp/pages/using.dox (+26/-0) doc/qt/cpp/ubuntu-appdev-site-footer.html (+53/-0) doc/qt/cpp/ubuntu-appdev-site-header.html (+35/-0) doc/qt/qml/CMakeLists.txt (+51/-0) doc/qt/qml/connectivity-qml.qdocconf.in (+55/-0) doc/qt/qml/css/base.css (+638/-0) doc/qt/qml/css/qtquick.css (+772/-0) doc/qt/qml/css/reset.css (+8/-0) doc/qt/qml/css/scratch.css (+61/-0) doc/qt/qml/examples/example_networking_status.qml (+65/-0) doc/qt/qml/pages/mainpage.qdoc (+25/-0) doc/qt/qml/qml-api/NetworkingStatus.qml (+86/-0) po/CMakeLists.txt (+13/-33) po/update-indicator-network-pot (+0/-27) src/CMakeLists.txt (+0/-4) src/connectivity-api/connectivity-qml/CMakeLists.txt (+33/-0) src/connectivity-api/connectivity-qml/plugin.cpp (+51/-0) src/connectivity-api/connectivity-qml/plugin.h (+33/-0) src/connectivity-api/connectivity-qml/qmldir (+2/-0) src/connectivity-api/connectivity-qt/CMakeLists.txt (+28/-0) src/connectivity-api/connectivity-qt/connectivityqt/connectivity.cpp (+83/-7) src/connectivity-api/connectivity-qt/connectivityqt/connectivity.h (+57/-9) src/connectivity-api/connectivity-qt/ubuntu/connectivity/networking-status.cpp (+100/-0) src/connectivity-api/connectivity-qt/ubuntu/connectivity/networking-status.h (+109/-0) src/indicator/CMakeLists.txt (+0/-1) src/indicator/connectivity-service/connectivity-service.cpp (+1/-0) src/indicator/sim-unlock-dialog.cpp (+14/-0) src/menumodel-cpp/CMakeLists.txt (+0/-1) src/notify-cpp/CMakeLists.txt (+0/-1) src/notify-cpp/notification.cpp (+10/-4) src/notify-cpp/snapdecision/sim-unlock.cpp (+30/-13) src/notify-cpp/snapdecision/sim-unlock.h (+2/-3) src/url-dispatcher-cpp/CMakeLists.txt (+1/-1) tests/CMakeLists.txt (+9/-0) tests/integration/test-connectivity-api.cpp (+52/-0) tests/unit/CMakeLists.txt (+1/-1) |
||||
To merge this branch: | bzr merge lp:~indicator-applet-developers/indicator-network/install-qt-qml-use-cmake-extras | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
PS Jenkins bot (community) | continuous-integration | Needs Fixing | |
Indicator Applet Developers | Pending | ||
Review via email: mp+257666@code.launchpad.net |
Commit message
Take ownership of qt connectivity libraries from connectivity-api source package.
Use cmake-extras for docs, translations, etc.
Description of the change
Take ownership of qt connectivity libraries from connectivity-api source package.
Use cmake-extras for docs, translations, etc.
PS Jenkins bot (ps-jenkins) wrote : | # |
- 502. By Pete Woods
-
Add QML properties from original connectivity API
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:502
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 503. By Pete Woods
-
Generate docs using cmake-extras macros
- 504. By Pete Woods
-
Fix doc build for Qt
- 505. By Pete Woods
-
Missing install file
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:505
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 506. By Pete Woods
-
Missing intltool dependency
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:506
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 507. By Pete Woods
-
Don't build potfile in all target, or we get double target dependency
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:507
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 508. By Pete Woods
-
Add braces
- 509. By Pete Woods
-
Handle recursion without an infinite loop
- 510. By Pete Woods
-
Don't throw exceptions on notification error
- 511. By Pete Woods
-
Clean up CMake for easier debug on device
- 512. By Pete Woods
-
Put sane filters in the symbol map
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:512
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
- 513. By Pete Woods
-
Add backwards-
compatibility class
PS Jenkins bot (ps-jenkins) wrote : | # |
FAILED: Continuous integration, rev:513
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild:
http://
Preview Diff
1 | === modified file '.bzrignore' |
2 | --- .bzrignore 2014-08-15 11:52:50 +0000 |
3 | +++ .bzrignore 2015-05-13 10:12:45 +0000 |
4 | @@ -7,4 +7,5 @@ |
5 | /.settings |
6 | /build |
7 | /buildclang |
8 | - |
9 | +/po/Makefile.in.in |
10 | +/po/POTFILES.in |
11 | |
12 | === modified file 'CMakeLists.txt' |
13 | --- CMakeLists.txt 2015-04-16 08:51:24 +0000 |
14 | +++ CMakeLists.txt 2015-05-13 10:12:45 +0000 |
15 | @@ -5,7 +5,6 @@ |
16 | |
17 | set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}") |
18 | |
19 | - |
20 | if("${build_type_lower}" STREQUAL debug) |
21 | set(TRACE_DEFAULT TRUE) |
22 | else() |
23 | @@ -13,6 +12,7 @@ |
24 | endif() |
25 | |
26 | option(trace_messages "Print debug trace messages." ${TRACE_DEFAULT}) |
27 | +option(REMOTE_BUILD "Remote build (skip docs, translations, tests)." FALSE) |
28 | |
29 | if(${trace_messages}) |
30 | add_definitions(-DINDICATOR_NETWORK_TRACE_MESSAGES) |
31 | @@ -44,10 +44,15 @@ |
32 | GLIB REQUIRED |
33 | glib-2.0>=${GLIB_REQUIRED_VERSION} |
34 | gio-2.0>=${GLIB_REQUIRED_VERSION} |
35 | - url-dispatcher-1 |
36 | ) |
37 | include_directories(${GLIB_INCLUDE_DIRS}) |
38 | |
39 | +pkg_check_modules( |
40 | + UNITY_API REQUIRED |
41 | + libunity-api |
42 | +) |
43 | +include_directories(${UNITY_API_INCLUDE_DIRS}) |
44 | + |
45 | set(OFONO_REQUIRED_VERSION 1.12) |
46 | pkg_check_modules( |
47 | OFONO REQUIRED |
48 | @@ -55,7 +60,6 @@ |
49 | ) |
50 | include_directories(${OFONO_INCLUDE_DIRS}) |
51 | |
52 | - |
53 | set(NOTIFY_REQUIRED_VERSION 0.7.5) |
54 | pkg_check_modules( |
55 | NOTIFY REQUIRED |
56 | @@ -69,20 +73,11 @@ |
57 | find_package(Qt5DBus COMPONENTS Qt5DBusMacros REQUIRED) |
58 | include_directories(${Qt5DBus_INCLUDE_DIRS}) |
59 | |
60 | -find_package(Qt5Test REQUIRED) |
61 | -include_directories(${Qt5Test_INCLUDE_DIRS}) |
62 | - |
63 | pkg_check_modules(NM REQUIRED NetworkManager REQUIRED) |
64 | include_directories(${NM_INCLUDE_DIRS}) |
65 | |
66 | -pkg_check_modules(QTDBUSTEST REQUIRED libqtdbustest-1 REQUIRED) |
67 | -include_directories(${QTDBUSTEST_INCLUDE_DIRS}) |
68 | - |
69 | -pkg_check_modules(QTDBUSMOCK REQUIRED libqtdbusmock-1 REQUIRED) |
70 | -include_directories(${QTDBUSMOCK_INCLUDE_DIRS}) |
71 | - |
72 | -pkg_check_modules(GIO REQUIRED gio-2.0>=${GLIB_REQUIRED_VERSION}) |
73 | -include_directories(${GIO_INCLUDE_DIRS}) |
74 | +pkg_check_modules(URL_DISPATCHER REQUIRED url-dispatcher-1) |
75 | +include_directories(${URL_DISPATCHER_INCLUDE_DIRS}) |
76 | |
77 | set(CMAKE_AUTOMOC ON) |
78 | set(CMAKE_INCLUDE_CURRENT_DIR ON) |
79 | @@ -101,24 +96,13 @@ |
80 | "config.h" |
81 | ) |
82 | |
83 | -##################################################################### |
84 | -# Enable code coverage calculation with gcov/gcovr/lcov |
85 | -# Usage: |
86 | -# * Switch build type to coverage (use ccmake or cmake-gui) |
87 | -# * Invoke make, make test, make coverage |
88 | -# * Find html report in subdir coveragereport |
89 | -# * Find xml report feasible for jenkins in coverage.xml |
90 | -##################################################################### |
91 | -IF(build_type_lower MATCHES coverage) |
92 | - SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftest-coverage -fprofile-arcs" ) |
93 | - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ftest-coverage -fprofile-arcs" ) |
94 | - SET(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -ftest-coverage -fprofile-arcs" ) |
95 | - SET(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -ftest-coverage -fprofile-arcs" ) |
96 | -ENDIF() |
97 | - |
98 | add_subdirectory(data) |
99 | add_subdirectory(src) |
100 | + |
101 | +if(NOT REMOTE_BUILD) |
102 | + |
103 | add_subdirectory(po) |
104 | +add_subdirectory(doc) |
105 | |
106 | enable_testing() |
107 | add_subdirectory(tests) |
108 | @@ -135,7 +119,12 @@ |
109 | notify_cpp |
110 | qdbus-stubs |
111 | url_dispatcher_cpp |
112 | + TESTS |
113 | + unit-tests |
114 | + integration-tests |
115 | FILTER |
116 | ${CMAKE_SOURCE_DIR}/tests/* |
117 | ${CMAKE_BINARY_DIR}/* |
118 | ) |
119 | + |
120 | +endif() |
121 | |
122 | === removed file 'cmake/EnableCoverageReport.cmake' |
123 | --- cmake/EnableCoverageReport.cmake 2014-08-14 21:58:02 +0000 |
124 | +++ cmake/EnableCoverageReport.cmake 1970-01-01 00:00:00 +0000 |
125 | @@ -1,153 +0,0 @@ |
126 | -# - Creates a special coverage build type and target on GCC. |
127 | -# |
128 | -# Defines a function ENABLE_COVERAGE_REPORT which generates the coverage target |
129 | -# for selected targets. Optional arguments to this function are used to filter |
130 | -# unwanted results using globbing expressions. Moreover targets with tests for |
131 | -# the source code can be specified to trigger regenerating the report if the |
132 | -# test has changed |
133 | -# |
134 | -# ENABLE_COVERAGE_REPORT(TARGETS target... [FILTER filter...] [TESTS test targets...]) |
135 | -# |
136 | -# To generate a coverage report first build the project with |
137 | -# CMAKE_BUILD_TYPE=coverage, then call make test and afterwards make coverage. |
138 | -# |
139 | -# The coverage report is based on gcov. Depending on the availability of lcov |
140 | -# a HTML report will be generated and/or an XML report of gcovr is found. |
141 | -# The generated coverage target executes all found solutions. Special targets |
142 | -# exist to create e.g. only the xml report: coverage-xml. |
143 | -# |
144 | -# Copyright (C) 2010 by Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de> |
145 | -# |
146 | -# This program is free software; you can redistribute it |
147 | -# and/or modify it under the terms of the GNU General |
148 | -# Public License as published by the Free Software Foundation; |
149 | -# either version 2, or (at your option) |
150 | -# any later version. |
151 | -# |
152 | -# This program is distributed in the hope that it will be useful, |
153 | -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
154 | -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
155 | -# GNU General Public License for more details. |
156 | -# |
157 | - |
158 | -INCLUDE(ParseArguments) |
159 | - |
160 | -FIND_PACKAGE(Lcov) |
161 | -FIND_PACKAGE(gcovr) |
162 | - |
163 | -FUNCTION(ENABLE_COVERAGE_REPORT) |
164 | - |
165 | - # argument parsing |
166 | - PARSE_ARGUMENTS(ARG "FILTER;TARGETS;TESTS" "" ${ARGN}) |
167 | - |
168 | - SET(COVERAGE_RAW_FILE "${CMAKE_BINARY_DIR}/coverage.raw.info") |
169 | - SET(COVERAGE_FILTERED_FILE "${CMAKE_BINARY_DIR}/coverage.info") |
170 | - SET(COVERAGE_REPORT_DIR "${CMAKE_BINARY_DIR}/coveragereport") |
171 | - SET(COVERAGE_XML_FILE "${CMAKE_BINARY_DIR}/coverage.xml") |
172 | - SET(COVERAGE_XML_COMMAND_FILE "${CMAKE_BINARY_DIR}/coverage-xml.cmake") |
173 | - |
174 | - # decide if there is any tool to create coverage data |
175 | - SET(TOOL_FOUND FALSE) |
176 | - IF(LCOV_FOUND OR GCOVR_FOUND) |
177 | - SET(TOOL_FOUND TRUE) |
178 | - ENDIF() |
179 | - IF(NOT TOOL_FOUND) |
180 | - MESSAGE(STATUS "Cannot enable coverage targets because neither lcov nor gcovr are found.") |
181 | - ENDIF() |
182 | - |
183 | - STRING(TOLOWER "${CMAKE_BUILD_TYPE}" COVERAGE_BUILD_TYPE) |
184 | - IF(CMAKE_COMPILER_IS_GNUCXX AND TOOL_FOUND AND "${COVERAGE_BUILD_TYPE}" MATCHES "coverage") |
185 | - |
186 | - MESSAGE(STATUS "Coverage support enabled for targets: ${ARG_TARGETS}") |
187 | - |
188 | - # create coverage build type |
189 | - SET(CMAKE_CXX_FLAGS_COVERAGE ${CMAKE_CXX_FLAGS_DEBUG} PARENT_SCOPE) |
190 | - SET(CMAKE_C_FLAGS_COVERAGE ${CMAKE_C_FLAGS_DEBUG} PARENT_SCOPE) |
191 | - SET(CMAKE_CONFIGURATION_TYPES ${CMAKE_CONFIGURATION_TYPES} coverage PARENT_SCOPE) |
192 | - |
193 | - # instrument targets |
194 | - SET_TARGET_PROPERTIES(${ARG_TARGETS} PROPERTIES COMPILE_FLAGS --coverage |
195 | - LINK_FLAGS --coverage) |
196 | - |
197 | - # html report |
198 | - IF (LCOV_FOUND) |
199 | - |
200 | - MESSAGE(STATUS "Enabling HTML coverage report") |
201 | - |
202 | - # set up coverage target |
203 | - |
204 | - ADD_CUSTOM_COMMAND(OUTPUT ${COVERAGE_RAW_FILE} |
205 | - COMMAND ${LCOV_EXECUTABLE} -c -d ${CMAKE_BINARY_DIR} -o ${COVERAGE_RAW_FILE} |
206 | - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} |
207 | - COMMENT "Collecting coverage data" |
208 | - DEPENDS ${ARG_TARGETS} ${ARG_TESTS} |
209 | - VERBATIM) |
210 | - |
211 | - # filter unwanted stuff |
212 | - LIST(LENGTH ARG_FILTER FILTER_LENGTH) |
213 | - IF(${FILTER_LENGTH} GREATER 0) |
214 | - SET(FILTER COMMAND ${LCOV_EXECUTABLE}) |
215 | - FOREACH(F ${ARG_FILTER}) |
216 | - SET(FILTER ${FILTER} -r ${COVERAGE_FILTERED_FILE} ${F}) |
217 | - ENDFOREACH() |
218 | - SET(FILTER ${FILTER} -o ${COVERAGE_FILTERED_FILE}) |
219 | - ELSE() |
220 | - SET(FILTER "") |
221 | - ENDIF() |
222 | - |
223 | - ADD_CUSTOM_COMMAND(OUTPUT ${COVERAGE_FILTERED_FILE} |
224 | - COMMAND ${LCOV_EXECUTABLE} -e ${COVERAGE_RAW_FILE} "${CMAKE_SOURCE_DIR}*" -o ${COVERAGE_FILTERED_FILE} |
225 | - ${FILTER} |
226 | - DEPENDS ${COVERAGE_RAW_FILE} |
227 | - COMMENT "Filtering recorded coverage data for project-relevant entries" |
228 | - VERBATIM) |
229 | - ADD_CUSTOM_COMMAND(OUTPUT ${COVERAGE_REPORT_DIR} |
230 | - COMMAND ${CMAKE_COMMAND} -E make_directory ${COVERAGE_REPORT_DIR} |
231 | - COMMAND ${GENHTML_EXECUTABLE} --legend --show-details -t "${PROJECT_NAME} test coverage" -o ${COVERAGE_REPORT_DIR} ${COVERAGE_FILTERED_FILE} |
232 | - DEPENDS ${COVERAGE_FILTERED_FILE} |
233 | - COMMENT "Generating HTML coverage report in ${COVERAGE_REPORT_DIR}" |
234 | - VERBATIM) |
235 | - |
236 | - ADD_CUSTOM_TARGET(coverage-html |
237 | - DEPENDS ${COVERAGE_REPORT_DIR}) |
238 | - |
239 | - ENDIF() |
240 | - |
241 | - # xml coverage report |
242 | - IF(GCOVR_FOUND) |
243 | - |
244 | - MESSAGE(STATUS "Enabling XML coverage report") |
245 | - |
246 | - # gcovr cannot write directly to a file so the execution needs to |
247 | - # be wrapped in a cmake file that generates the file output |
248 | - FILE(WRITE ${COVERAGE_XML_COMMAND_FILE} |
249 | - "SET(ENV{LANG} en)\n") |
250 | - FILE(APPEND ${COVERAGE_XML_COMMAND_FILE} |
251 | - "EXECUTE_PROCESS(COMMAND \"${GCOVR_EXECUTABLE}\" --exclude=tests.* --exclude=obj-.* --exclude=cmake.* -x -r \"${CMAKE_SOURCE_DIR}\" OUTPUT_FILE \"${COVERAGE_XML_FILE}\" WORKING_DIRECTORY \"${CMAKE_BINARY_DIR}\")\n") |
252 | - |
253 | - ADD_CUSTOM_COMMAND(OUTPUT ${COVERAGE_XML_FILE} |
254 | - COMMAND ${CMAKE_COMMAND} ARGS -P ${COVERAGE_XML_COMMAND_FILE} |
255 | - COMMENT "Generating coverage XML report" |
256 | - VERBATIM) |
257 | - |
258 | - ADD_CUSTOM_TARGET(coverage-xml |
259 | - DEPENDS ${COVERAGE_XML_FILE}) |
260 | - |
261 | - ENDIF() |
262 | - |
263 | - # provide a global coverage target executing both steps if available |
264 | - SET(GLOBAL_DEPENDS "") |
265 | - IF(LCOV_FOUND) |
266 | - LIST(APPEND GLOBAL_DEPENDS ${COVERAGE_REPORT_DIR}) |
267 | - ENDIF() |
268 | - IF(GCOVR_FOUND) |
269 | - LIST(APPEND GLOBAL_DEPENDS ${COVERAGE_XML_FILE}) |
270 | - ENDIF() |
271 | - IF(LCOV_FOUND OR GCOVR_FOUND) |
272 | - ADD_CUSTOM_TARGET(coverage |
273 | - DEPENDS ${GLOBAL_DEPENDS}) |
274 | - ENDIF() |
275 | - |
276 | - ENDIF() |
277 | - |
278 | -ENDFUNCTION() |
279 | |
280 | === removed file 'cmake/FindGMock.cmake' |
281 | --- cmake/FindGMock.cmake 2013-08-27 14:54:25 +0000 |
282 | +++ cmake/FindGMock.cmake 1970-01-01 00:00:00 +0000 |
283 | @@ -1,10 +0,0 @@ |
284 | -# Build with system gmock and embedded gtest |
285 | -set (GMOCK_INCLUDE_DIRS "/usr/include/gmock/include" CACHE PATH "gmock source include directory") |
286 | -set (GMOCK_SOURCE_DIR "/usr/src/gmock" CACHE PATH "gmock source directory") |
287 | -set (GTEST_INCLUDE_DIRS "${GMOCK_SOURCE_DIR}/gtest/include" CACHE PATH "gtest source include directory") |
288 | - |
289 | -add_subdirectory(${GMOCK_SOURCE_DIR} "${CMAKE_CURRENT_BINARY_DIR}/gmock") |
290 | - |
291 | -set(GTEST_LIBRARIES gtest) |
292 | -set(GTEST_MAIN_LIBRARIES gtest_main) |
293 | -set(GMOCK_LIBRARIES gmock gmock_main) |
294 | |
295 | === removed file 'cmake/FindLcov.cmake' |
296 | --- cmake/FindLcov.cmake 2014-08-14 21:58:02 +0000 |
297 | +++ cmake/FindLcov.cmake 1970-01-01 00:00:00 +0000 |
298 | @@ -1,29 +0,0 @@ |
299 | -# - Find lcov |
300 | -# Will define: |
301 | -# |
302 | -# LCOV_EXECUTABLE - the lcov binary |
303 | -# GENHTML_EXECUTABLE - the genhtml executable |
304 | -# |
305 | -# Copyright (C) 2010 by Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de> |
306 | -# |
307 | -# This program is free software; you can redistribute it |
308 | -# and/or modify it under the terms of the GNU General |
309 | -# Public License as published by the Free Software Foundation; |
310 | -# either version 2, or (at your option) |
311 | -# any later version. |
312 | -# |
313 | -# This program is distributed in the hope that it will be useful, |
314 | -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
315 | -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
316 | -# GNU General Public License for more details. |
317 | -# |
318 | - |
319 | -INCLUDE(FindPackageHandleStandardArgs) |
320 | - |
321 | -FIND_PROGRAM(LCOV_EXECUTABLE lcov) |
322 | -FIND_PROGRAM(GENHTML_EXECUTABLE genhtml) |
323 | - |
324 | -FIND_PACKAGE_HANDLE_STANDARD_ARGS(Lcov DEFAULT_MSG LCOV_EXECUTABLE GENHTML_EXECUTABLE) |
325 | - |
326 | -# only visible in advanced view |
327 | -MARK_AS_ADVANCED(LCOV_EXECUTABLE GENHTML_EXECUTABLE) |
328 | |
329 | === removed file 'cmake/Findgcovr.cmake' |
330 | --- cmake/Findgcovr.cmake 2014-08-14 21:58:02 +0000 |
331 | +++ cmake/Findgcovr.cmake 1970-01-01 00:00:00 +0000 |
332 | @@ -1,31 +0,0 @@ |
333 | -# - Find gcovr scrip |
334 | -# Will define: |
335 | -# |
336 | -# GCOVR_EXECUTABLE - the gcovr script |
337 | -# |
338 | -# Uses: |
339 | -# |
340 | -# GCOVR_ROOT - root to search for the script |
341 | -# |
342 | -# Copyright (C) 2011 by Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de> |
343 | -# |
344 | -# This program is free software; you can redistribute it |
345 | -# and/or modify it under the terms of the GNU General |
346 | -# Public License as published by the Free Software Foundation; |
347 | -# either version 2, or (at your option) |
348 | -# any later version. |
349 | -# |
350 | -# This program is distributed in the hope that it will be useful, |
351 | -# but WITHOUT ANY WARRANTY; without even the implied warranty of |
352 | -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
353 | -# GNU General Public License for more details. |
354 | -# |
355 | - |
356 | -INCLUDE(FindPackageHandleStandardArgs) |
357 | - |
358 | -FIND_PROGRAM(GCOVR_EXECUTABLE gcovr HINTS ${GCOVR_ROOT} "${GCOVR_ROOT}/bin") |
359 | - |
360 | -FIND_PACKAGE_HANDLE_STANDARD_ARGS(gcovr DEFAULT_MSG GCOVR_EXECUTABLE) |
361 | - |
362 | -# only visible in advanced view |
363 | -MARK_AS_ADVANCED(GCOVR_EXECUTABLE) |
364 | |
365 | === removed file 'cmake/ParseArguments.cmake' |
366 | --- cmake/ParseArguments.cmake 2014-08-14 21:58:02 +0000 |
367 | +++ cmake/ParseArguments.cmake 1970-01-01 00:00:00 +0000 |
368 | @@ -1,52 +0,0 @@ |
369 | -# Parse arguments passed to a function into several lists separated by |
370 | -# upper-case identifiers and options that do not have an associated list e.g.: |
371 | -# |
372 | -# SET(arguments |
373 | -# hello OPTION3 world |
374 | -# LIST3 foo bar |
375 | -# OPTION2 |
376 | -# LIST1 fuz baz |
377 | -# ) |
378 | -# PARSE_ARGUMENTS(ARG "LIST1;LIST2;LIST3" "OPTION1;OPTION2;OPTION3" ${arguments}) |
379 | -# |
380 | -# results in 7 distinct variables: |
381 | -# * ARG_DEFAULT_ARGS: hello;world |
382 | -# * ARG_LIST1: fuz;baz |
383 | -# * ARG_LIST2: |
384 | -# * ARG_LIST3: foo;bar |
385 | -# * ARG_OPTION1: FALSE |
386 | -# * ARG_OPTION2: TRUE |
387 | -# * ARG_OPTION3: TRUE |
388 | -# |
389 | -# taken from http://www.cmake.org/Wiki/CMakeMacroParseArguments |
390 | - |
391 | -MACRO(PARSE_ARGUMENTS prefix arg_names option_names) |
392 | - SET(DEFAULT_ARGS) |
393 | - FOREACH(arg_name ${arg_names}) |
394 | - SET(${prefix}_${arg_name}) |
395 | - ENDFOREACH(arg_name) |
396 | - FOREACH(option ${option_names}) |
397 | - SET(${prefix}_${option} FALSE) |
398 | - ENDFOREACH(option) |
399 | - |
400 | - SET(current_arg_name DEFAULT_ARGS) |
401 | - SET(current_arg_list) |
402 | - FOREACH(arg ${ARGN}) |
403 | - SET(larg_names ${arg_names}) |
404 | - LIST(FIND larg_names "${arg}" is_arg_name) |
405 | - IF (is_arg_name GREATER -1) |
406 | - SET(${prefix}_${current_arg_name} ${current_arg_list}) |
407 | - SET(current_arg_name ${arg}) |
408 | - SET(current_arg_list) |
409 | - ELSE (is_arg_name GREATER -1) |
410 | - SET(loption_names ${option_names}) |
411 | - LIST(FIND loption_names "${arg}" is_option) |
412 | - IF (is_option GREATER -1) |
413 | - SET(${prefix}_${arg} TRUE) |
414 | - ELSE (is_option GREATER -1) |
415 | - SET(current_arg_list ${current_arg_list} ${arg}) |
416 | - ENDIF (is_option GREATER -1) |
417 | - ENDIF (is_arg_name GREATER -1) |
418 | - ENDFOREACH(arg) |
419 | - SET(${prefix}_${current_arg_name} ${current_arg_list}) |
420 | -ENDMACRO(PARSE_ARGUMENTS) |
421 | |
422 | === removed file 'cmake/UseGSettings.cmake' |
423 | --- cmake/UseGSettings.cmake 2013-09-16 04:18:50 +0000 |
424 | +++ cmake/UseGSettings.cmake 1970-01-01 00:00:00 +0000 |
425 | @@ -1,42 +0,0 @@ |
426 | -# GSettings.cmake, CMake macros written for Marlin, feel free to re-use them. |
427 | - |
428 | -option (GSETTINGS_LOCALINSTALL "Install GSettings Schemas locally instead of to the GLib prefix" OFF) |
429 | - |
430 | -option (GSETTINGS_COMPILE "Compile GSettings Schemas after installation" OFF) |
431 | - |
432 | -if(GSETTINGS_LOCALINSTALL) |
433 | - message(STATUS "GSettings schemas will be installed locally.") |
434 | -endif() |
435 | - |
436 | -if(GSETTINGS_COMPILE) |
437 | - message(STATUS "GSettings shemas will be compiled.") |
438 | -endif() |
439 | - |
440 | -macro(add_schema SCHEMA_NAME) |
441 | - |
442 | - set(PKG_CONFIG_EXECUTABLE pkg-config) |
443 | - # Have an option to not install the schema into where GLib is |
444 | - if (GSETTINGS_LOCALINSTALL) |
445 | - SET (GSETTINGS_DIR "${CMAKE_INSTALL_PREFIX}/share/glib-2.0/schemas/") |
446 | - else (GSETTINGS_LOCALINSTALL) |
447 | - execute_process (COMMAND ${PKG_CONFIG_EXECUTABLE} glib-2.0 --variable prefix OUTPUT_VARIABLE _glib_prefix OUTPUT_STRIP_TRAILING_WHITESPACE) |
448 | - SET (GSETTINGS_DIR "${_glib_prefix}/share/glib-2.0/schemas/") |
449 | - endif (GSETTINGS_LOCALINSTALL) |
450 | - |
451 | - # Run the validator and error if it fails |
452 | - execute_process (COMMAND ${PKG_CONFIG_EXECUTABLE} gio-2.0 --variable glib_compile_schemas OUTPUT_VARIABLE _glib_comple_schemas OUTPUT_STRIP_TRAILING_WHITESPACE) |
453 | - execute_process (COMMAND ${_glib_comple_schemas} --dry-run --schema-file=${CMAKE_CURRENT_SOURCE_DIR}/${SCHEMA_NAME} ERROR_VARIABLE _schemas_invalid OUTPUT_STRIP_TRAILING_WHITESPACE) |
454 | - |
455 | - if (_schemas_invalid) |
456 | - message (SEND_ERROR "Schema validation error: ${_schemas_invalid}") |
457 | - endif (_schemas_invalid) |
458 | - |
459 | - # Actually install and recomple schemas |
460 | - message (STATUS "GSettings schemas will be installed into ${GSETTINGS_DIR}") |
461 | - install (FILES ${CMAKE_CURRENT_SOURCE_DIR}/${SCHEMA_NAME} DESTINATION ${GSETTINGS_DIR} OPTIONAL) |
462 | - |
463 | - if (GSETTINGS_COMPILE) |
464 | - install (CODE "message (STATUS \"Compiling GSettings schemas\")") |
465 | - install (CODE "execute_process (COMMAND ${_glib_comple_schemas} ${GSETTINGS_DIR})") |
466 | - endif () |
467 | -endmacro() |
468 | |
469 | === modified file 'data/CMakeLists.txt' |
470 | --- data/CMakeLists.txt 2015-04-15 15:04:51 +0000 |
471 | +++ data/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
472 | @@ -41,6 +41,21 @@ |
473 | add_schema ("com.canonical.indicator.network.gschema.xml") |
474 | |
475 | ########################### |
476 | +# PkgConfig |
477 | +########################### |
478 | + |
479 | +configure_file( |
480 | + "connectivity-qt.pc.in" |
481 | + "connectivity-qt.pc" |
482 | + @ONLY |
483 | +) |
484 | + |
485 | +install( |
486 | + FILES "${CMAKE_CURRENT_BINARY_DIR}/connectivity-qt.pc" |
487 | + DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig" |
488 | +) |
489 | + |
490 | +########################### |
491 | # XDG Autostart File |
492 | ########################### |
493 | |
494 | |
495 | === added file 'data/connectivity-qt.map' |
496 | --- data/connectivity-qt.map 1970-01-01 00:00:00 +0000 |
497 | +++ data/connectivity-qt.map 2015-05-13 10:12:45 +0000 |
498 | @@ -0,0 +1,17 @@ |
499 | +{ |
500 | +global: |
501 | + extern "C++" { |
502 | + typeinfo?for?connectivityqt::Connectivity; |
503 | + typeinfo?for?ubuntu::connectivity::NetworkingStatus; |
504 | + VTT?for?connectivityqt::Connectivity; |
505 | + VTT?for?ubuntu::connectivity::NetworkingStatus; |
506 | + virtual?thunk?to?connectivityqt::Connectivity; |
507 | + virtual?thunk?to?ubuntu::connectivity::NetworkingStatus; |
508 | + vtable?for?connectivityqt::Connectivity; |
509 | + vtable?for?ubuntu::connectivity::NetworkingStatus; |
510 | + connectivityqt::Connectivity::[!P]*; |
511 | + ubuntu::connectivity::NetworkingStatus::[!P]*; |
512 | + }; |
513 | +local: |
514 | + *; |
515 | +}; |
516 | |
517 | === added file 'data/connectivity-qt.pc.in' |
518 | --- data/connectivity-qt.pc.in 1970-01-01 00:00:00 +0000 |
519 | +++ data/connectivity-qt.pc.in 2015-05-13 10:12:45 +0000 |
520 | @@ -0,0 +1,10 @@ |
521 | +prefix=@CMAKE_INSTALL_PREFIX@ |
522 | +exec_prefix=${prefix} |
523 | +libdir=${exec_prefix}/lib |
524 | +includedir=${exec_prefix}/include |
525 | + |
526 | +Name: libconnectivity-qt |
527 | +Description: Connectivity API for Qt |
528 | +Version: 1.0 |
529 | +Cflags: -I${includedir} |
530 | +Libs: -L${libdir} -lconnectivity-qt |
531 | |
532 | === added file 'debian/connectivity-doc.install' |
533 | --- debian/connectivity-doc.install 1970-01-01 00:00:00 +0000 |
534 | +++ debian/connectivity-doc.install 2015-05-13 10:12:45 +0000 |
535 | @@ -0,0 +1,1 @@ |
536 | +usr/share/doc/connectivity-api/* |
537 | |
538 | === modified file 'debian/control' |
539 | --- debian/control 2015-03-31 10:39:35 +0000 |
540 | +++ debian/control 2015-05-13 10:12:45 +0000 |
541 | @@ -4,11 +4,15 @@ |
542 | Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> |
543 | XSBC-Original-Maintainer: Ken VanDine <ken.vandine@canonical.com> |
544 | Build-Depends: cmake, |
545 | + cmake-extras (>= 0.4), |
546 | dbus, |
547 | # make g++ version explicit for ABI safety, see https://wiki.ubuntu.com/cpp-11 |
548 | g++-4.9, |
549 | debhelper (>= 9.0.0), |
550 | + doxygen, |
551 | google-mock (>= 1.6.0+svn437), |
552 | + graphviz, |
553 | + intltool, |
554 | libglib2.0-dev, |
555 | libnotify-dev, |
556 | #///! TODO: The next line should be removed once all dependancy on qmenumodel is removed |
557 | @@ -27,6 +31,8 @@ |
558 | qt5-default, |
559 | qtbase5-dev, |
560 | qtbase5-dev-tools, |
561 | + qtdeclarative5-dev, |
562 | + qtdeclarative5-dev-tools, |
563 | valgrind [amd64 armhf i386 powerpc], |
564 | Standards-Version: 3.9.3 |
565 | # If you aren't a member of ~indicator-applet-developers but need to upload |
566 | @@ -78,3 +84,53 @@ |
567 | Description: tools for working with indicator-network |
568 | This package provides developer tools to aid in debugging |
569 | and development of indicator-network. |
570 | + |
571 | +Package: libconnectivity-qt1 |
572 | +Architecture: any |
573 | +Pre-Depends: ${misc:Pre-Depends} |
574 | +Multi-Arch: same |
575 | +Depends: ${misc:Depends}, |
576 | + ${shlibs:Depends}, |
577 | + indicator-network (>= ${source:Version}), |
578 | +Recommends: |
579 | + indicator-network (>= 0.5.1+14.10.20140819), |
580 | +Description: Ubuntu Connectivity Qt API |
581 | + Ubuntu Connectivity API - Qt bindings |
582 | + |
583 | +Package: libconnectivity-qt1-dev |
584 | +Section: libdevel |
585 | +Architecture: any |
586 | +Pre-Depends: ${misc:Pre-Depends} |
587 | +Multi-Arch: same |
588 | +Depends: ${misc:Depends}, |
589 | + ${shlibs:Depends}, |
590 | + libconnectivity-qt1 (= ${binary:Version}), |
591 | + qtbase5-dev |
592 | +Suggests: connectivity-doc, |
593 | +Description: Ubuntu Connectivity Qt API - development files |
594 | + Ubuntu Connectivity API - Qt bindings |
595 | + . |
596 | + This package contains development files to develop against the Qt library. |
597 | + |
598 | +Package: qml-module-ubuntu-connectivity |
599 | +Architecture: any |
600 | +Pre-Depends: ${misc:Pre-Depends} |
601 | +Multi-Arch: same |
602 | +Depends: ${misc:Depends}, |
603 | + ${shlibs:Depends}, |
604 | + libconnectivity-qt1 (= ${binary:Version}), |
605 | +Description: Ubuntu Connectivity API QML Components |
606 | + Ubuntu Connectivity API - QML bindings |
607 | + . |
608 | + This package contains the qtdeclarative bindings for Ubuntu connectivity API. |
609 | + |
610 | +Package: connectivity-doc |
611 | +Section: doc |
612 | +Architecture: all |
613 | +Depends: ${misc:Depends}, |
614 | + ${shlibs:Depends}, |
615 | +Description: Unity Action API - documentation |
616 | + Ubuntu Connectivity API |
617 | + . |
618 | + This package contains developer documentation. |
619 | + |
620 | |
621 | === added file 'debian/libconnectivity-qt1-dev.install' |
622 | --- debian/libconnectivity-qt1-dev.install 1970-01-01 00:00:00 +0000 |
623 | +++ debian/libconnectivity-qt1-dev.install 2015-05-13 10:12:45 +0000 |
624 | @@ -0,0 +1,3 @@ |
625 | +usr/lib/*/libconnectivity-qt1.so |
626 | +usr/include/* |
627 | +usr/lib/*/pkgconfig/* |
628 | |
629 | === added file 'debian/libconnectivity-qt1.install' |
630 | --- debian/libconnectivity-qt1.install 1970-01-01 00:00:00 +0000 |
631 | +++ debian/libconnectivity-qt1.install 2015-05-13 10:12:45 +0000 |
632 | @@ -0,0 +1,1 @@ |
633 | +usr/lib/*/libconnectivity-qt1.so.* |
634 | |
635 | === added file 'debian/qml-module-ubuntu-connectivity.install' |
636 | --- debian/qml-module-ubuntu-connectivity.install 1970-01-01 00:00:00 +0000 |
637 | +++ debian/qml-module-ubuntu-connectivity.install 2015-05-13 10:12:45 +0000 |
638 | @@ -0,0 +1,1 @@ |
639 | +usr/lib/*/qt5/qml |
640 | |
641 | === added directory 'doc' |
642 | === added file 'doc/CMakeLists.txt' |
643 | --- doc/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
644 | +++ doc/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
645 | @@ -0,0 +1,11 @@ |
646 | +set(INSTALL_DOCDIR ${CMAKE_INSTALL_DATAROOTDIR}/doc/connectivity-api) |
647 | + |
648 | +option(BUILD_DOC "Build documentation by default" TRUE) |
649 | +option(PRIVATE_DOCS "Build private documentation" FALSE) |
650 | + |
651 | +add_subdirectory(qt) |
652 | + |
653 | +install( |
654 | + DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/dbus/ |
655 | + DESTINATION ${INSTALL_DOCDIR}/dbus/ |
656 | +) |
657 | |
658 | === added directory 'doc/dbus' |
659 | === added file 'doc/dbus/connectivity-api.txt' |
660 | --- doc/dbus/connectivity-api.txt 1970-01-01 00:00:00 +0000 |
661 | +++ doc/dbus/connectivity-api.txt 2015-05-13 10:12:45 +0000 |
662 | @@ -0,0 +1,26 @@ |
663 | +Service com.ubuntu.connectivity1 |
664 | +Interface com.ubuntu.connectivity1.NetworkingStatus |
665 | +Object path /com/ubuntu/connectivity1/NetworkingStatus |
666 | +Policy group connectivity |
667 | +Supports org.freedesktop.DBus.Introspectable |
668 | + org.freedesktop.DBus.Properties |
669 | + |
670 | +Properties array{string} Limitations [readonly] |
671 | + |
672 | + String array representing the possible limitations |
673 | + on networking. |
674 | + |
675 | + Currently available limitations are: |
676 | + "bandwith" |
677 | + |
678 | + "bandwith" - indicates that the bandwith of the |
679 | + Internet connection has limitations. |
680 | + Applications should minimize their bandwith |
681 | + usage if possible. |
682 | + |
683 | + string Status [readonly] |
684 | + |
685 | + Status of the Internet connectivity. |
686 | + |
687 | + Possible values: |
688 | + "offline", "connecting", "online" |
689 | |
690 | === added directory 'doc/qt' |
691 | === added file 'doc/qt/CMakeLists.txt' |
692 | --- doc/qt/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
693 | +++ doc/qt/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
694 | @@ -0,0 +1,3 @@ |
695 | +add_subdirectory(cpp) |
696 | +add_subdirectory(qml) |
697 | + |
698 | |
699 | === added directory 'doc/qt/cpp' |
700 | === added file 'doc/qt/cpp/CMakeLists.txt' |
701 | --- doc/qt/cpp/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
702 | +++ doc/qt/cpp/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
703 | @@ -0,0 +1,27 @@ |
704 | + |
705 | +add_subdirectory(examples) |
706 | + |
707 | +include(UseDoxygen OPTIONAL) |
708 | + |
709 | +add_doxygen( |
710 | + qtdoc |
711 | + PROJECT_NAME |
712 | + "connectivity-api" |
713 | + INPUT |
714 | + "${CMAKE_SOURCE_DIR}/src/connectivity-api/connectivity-qt" |
715 | + "${CMAKE_CURRENT_SOURCE_DIR}/pages" |
716 | + STRIP_FROM_PATH |
717 | + "${CMAKE_SOURCE_DIR}/src/connectivity-api/connectivity-qt" |
718 | + STRIP_FROM_INC_PATH |
719 | + "${CMAKE_SOURCE_DIR}/src/connectivity-api/connectivity-qt" |
720 | + EXCLUDE_PATTERNS |
721 | + */internal/* |
722 | + EXCLUDE_SYMBOLS |
723 | + *::internal* |
724 | + *::Priv |
725 | + INSTALL |
726 | + "${INSTALL_DOCDIR}/cpp" |
727 | + XML |
728 | + ALL |
729 | +) |
730 | + |
731 | |
732 | === added directory 'doc/qt/cpp/css' |
733 | === added file 'doc/qt/cpp/css/base.css' |
734 | --- doc/qt/cpp/css/base.css 1970-01-01 00:00:00 +0000 |
735 | +++ doc/qt/cpp/css/base.css 2015-05-13 10:12:45 +0000 |
736 | @@ -0,0 +1,638 @@ |
737 | +/** |
738 | +* Ubuntu Developer base stylesheet |
739 | +* |
740 | +* A base stylesheet containing site-wide styles |
741 | +* |
742 | +* @project Ubuntu Developer |
743 | +* @version 1.0 |
744 | +* @author Canonical Web Team: Steve Edwards |
745 | +* @copyright 2011 Canonical Ltd. |
746 | +*/ |
747 | + |
748 | +/** |
749 | +* @section Global |
750 | +*/ |
751 | + |
752 | +body { |
753 | + font-family: 'Ubuntu', 'Ubuntu Beta', UbuntuBeta, Ubuntu, 'Bitstream Vera Sans', 'DejaVu Sans', Tahoma, sans-serif; |
754 | + font-size: 13px; |
755 | + line-height: 1.4; |
756 | + color: #333; |
757 | +} |
758 | +a { |
759 | + color: #dd4814; |
760 | + text-decoration: none; |
761 | + outline: 0; |
762 | +} |
763 | +p, dl { |
764 | + margin-bottom: 10px; |
765 | +} |
766 | +strong { |
767 | + font-weight: bold; |
768 | +} |
769 | +em { |
770 | + font-style: italic; |
771 | +} |
772 | +code{ |
773 | + padding: 10px; |
774 | + font-family: 'Ubuntu Mono', 'Consolas', 'Monaco', 'DejaVu Sans Mono', Courier, monospace; |
775 | + background-color: #fdf6f2; |
776 | + display: block; |
777 | + margin-bottom: 10px; |
778 | + -moz-border-radius: 4px; |
779 | + -webkit-border-radius: 4px; |
780 | + border-radius: 4px; |
781 | +} |
782 | +h1 { |
783 | + font-size: 36px; |
784 | + line-height: 1.1; |
785 | + margin-bottom: 20px; |
786 | +} |
787 | +article h1, |
788 | +h2 { |
789 | + font-size: 24px; |
790 | + line-height: 1.2; |
791 | + margin-bottom: 14px; |
792 | +} |
793 | +h3 { |
794 | + font-size: 16px; |
795 | + line-height: 1.3; |
796 | + margin-bottom: 8px; |
797 | +} |
798 | +h4 { |
799 | + font-weight: bold; |
800 | +} |
801 | + |
802 | +time { |
803 | + color:#999; |
804 | +} |
805 | + |
806 | +/** |
807 | +* @section Structure |
808 | +*/ |
809 | + |
810 | +.header-login, |
811 | +.header-navigation div, |
812 | +.header-content div { |
813 | + margin: 0 auto; |
814 | + width: 940px; |
815 | +} |
816 | + |
817 | +.header-content h1{ |
818 | + background-color:#ffffff; |
819 | + display:inline-block; |
820 | +} |
821 | + |
822 | +.header-content h2{ |
823 | + background-color:#ffffff; |
824 | + display:table; |
825 | +} |
826 | + |
827 | +.header-login ul { |
828 | + margin: 4px 0; |
829 | + float: right; |
830 | +} |
831 | +.header-login li { |
832 | + margin-right: 10px; |
833 | + float: left; |
834 | +} |
835 | +.header-login a { |
836 | + color: #333; |
837 | +} |
838 | +.header-navigation { |
839 | + border-top: 2px solid #dd4814; |
840 | + border-bottom: 2px solid #dd4814; |
841 | + background-color: #fff; |
842 | + height: 54px; |
843 | + clear: right; |
844 | + overflow: hidden; |
845 | +} |
846 | +.header-navigation nav ul { |
847 | + border-right: 1px solid #dd4814; |
848 | + float: right; |
849 | +} |
850 | +.header-navigation nav li { |
851 | + border-left: 1px solid #dd4814; |
852 | + float: left; |
853 | + height: 54px; |
854 | +} |
855 | +.header-navigation nav a { |
856 | + padding: 18px 14px 0; |
857 | + font-size: 14px; |
858 | + display: block; |
859 | + height: 36px; |
860 | +} |
861 | +.header-navigation nav a:hover { |
862 | + background-color: #fcece7; |
863 | +} |
864 | +.header-navigation nav .current_page_item a, |
865 | +.header-navigation nav .current_page_parent a, |
866 | +.header-navigation nav .current_page_ancestor a { |
867 | + background-color: #dd4814; |
868 | + color: #fff; |
869 | +} |
870 | +.header-navigation input { |
871 | + margin: 12px 10px 0 10px; |
872 | + padding: 5px; |
873 | + border-top: 1px solid #a1a1a1; |
874 | + border-right: 1px solid #e0e0e0; |
875 | + border-bottom: 1px solid #fff; |
876 | + border-left: 1px solid #e0e0e0; |
877 | + width: 90px; |
878 | + font-style: italic; |
879 | + color: #ccc; |
880 | + -moz-border-radius: 3px; |
881 | + -webkit-border-radius: 3px; |
882 | + border-radius: 3px; |
883 | + -moz-box-shadow: inset 0 1px 1px #e0e0e0; |
884 | + -webkit-box-shadow: inset 0 1px 1px #e0e0e0; |
885 | + box-shadow: inset 0 1px 1px #e0e0e0; |
886 | +} |
887 | +.header-navigation h2 { |
888 | + margin: 18px 0 0 6px; |
889 | + text-transform: lowercase; |
890 | + font-size: 22px; |
891 | + color: #dd4814; |
892 | + float: left; |
893 | +} |
894 | +.header-navigation .logo-ubuntu { |
895 | + margin-top: 12px; |
896 | + float: left; |
897 | +} |
898 | +.header-content .header-navigation-secondary { |
899 | + margin-bottom: 40px; |
900 | + padding: 0; |
901 | + position: relative; |
902 | + z-index: 2; |
903 | +} |
904 | +.header-navigation-secondary div { |
905 | + padding: 0; |
906 | + border: 2px solid #dd4814; |
907 | + -moz-border-radius: 0px 0px 4px 4px; |
908 | + -webkit-border-radius: 0px 0px 4px 4px; |
909 | + border-radius: 0px 0px 4px 4px; |
910 | + background: #fff; |
911 | + border-top: 0px; |
912 | + width: 936px; |
913 | +} |
914 | +.header-navigation-secondary nav li { |
915 | + float: left; |
916 | +} |
917 | +.header-navigation-secondary nav li a { |
918 | + color: #333; |
919 | + display: block; |
920 | + height: 25px; |
921 | + padding: 8px 8px 0; |
922 | +} |
923 | +.header-navigation-secondary nav li:hover, |
924 | +.header-navigation-secondary nav .current_page_item a { |
925 | + background: url("../img/sec-nav-hover.gif"); |
926 | +} |
927 | +.header-content { |
928 | + padding-bottom: 30px; |
929 | + border-bottom: 1px solid #e0e0e0; |
930 | + -moz-box-shadow: 0 1px 3px #e0e0e0; |
931 | + -webkit-box-shadow: 0 1px 3px #e0e0e0; |
932 | + box-shadow: 0 1px 3px #e0e0e0; |
933 | + margin-bottom: 3px; |
934 | + position: relative; |
935 | + overflow: hidden; |
936 | +} |
937 | +footer { |
938 | + padding: 10px 10px 40px 10px; |
939 | + position: relative; |
940 | + -moz-border-radius: 0 0 4px 4px; |
941 | + -webkit-border-radius: 0 0 4px 4px; |
942 | + border-radius: 0 0 4px 4px; |
943 | + font-size: 12px; |
944 | + background: url("../img/background-footer.png") repeat scroll 0 0 #f7f6f5; |
945 | +} |
946 | +footer div { |
947 | + margin: 0 auto; |
948 | + padding: 0 10px; |
949 | + width: 940px; |
950 | +} |
951 | +footer a { |
952 | + color: #000; |
953 | +} |
954 | +footer nav ul { |
955 | + margin: 10px 17px 30px 0; |
956 | + width: 172px; |
957 | + display: inline-block; |
958 | + vertical-align: top; |
959 | + height: auto; |
960 | + zoom: 1; |
961 | + *display: inline; |
962 | +} |
963 | +footer nav ul.last { |
964 | + margin-right: 0; |
965 | +} |
966 | +footer nav li { |
967 | + margin-bottom: 8px; |
968 | +} |
969 | +footer nav li:first-child { |
970 | + font-weight: bold; |
971 | +} |
972 | +footer p { |
973 | + margin-bottom: 0; |
974 | +} |
975 | +#content { |
976 | + padding-top: 35px; |
977 | +} |
978 | +.arrow-nav { |
979 | + display: none; |
980 | + position: absolute; |
981 | + top: -1px; |
982 | + z-index: 3; |
983 | +} |
984 | +.shadow { |
985 | + margin: 30px 0 3px 0; |
986 | + border-bottom: 1px solid #e0e0e0; |
987 | + -moz-box-shadow: 0 2px 3px #e0e0e0; |
988 | + -webkit-box-shadow: 0 2px 3px #e0e0e0; |
989 | + box-shadow: 0 2px 3px #e0e0e0; |
990 | + height: 3px; |
991 | +} |
992 | + |
993 | +/** |
994 | +* @section Site-wide |
995 | +*/ |
996 | + |
997 | +#content h2{ |
998 | + font-size:24px; |
999 | +} |
1000 | + |
1001 | +.box-orange { |
1002 | + padding: 10px; |
1003 | + border: 3px solid #dd4814; |
1004 | + -moz-border-radius: 4px; |
1005 | + -webkit-border-radius: 4px; |
1006 | + border-radius: 4px; |
1007 | +} |
1008 | +.box-orange .link-action-small { |
1009 | + float: right; |
1010 | + margin: 0 0 0 20px; |
1011 | +} |
1012 | +.link-bug { |
1013 | + margin-left: 10px; |
1014 | + color: #999; |
1015 | +} |
1016 | +.link-action { |
1017 | + float: left; |
1018 | + margin-bottom: 20px; |
1019 | + padding: 8px 12px; |
1020 | + display: block; |
1021 | + background-color: #dd4814; |
1022 | + color: #fff; |
1023 | + -moz-border-radius: 20px; |
1024 | + -webkit-border-radius: 20px; |
1025 | + border-radius: 20px; |
1026 | + font-size: 16px; |
1027 | + line-height: 1.3; |
1028 | + border-top: 3px solid #e6633a; |
1029 | + border-bottom: 3px solid #c03d14; |
1030 | +} |
1031 | +.link-action2 { |
1032 | + float: left; |
1033 | + display: block; |
1034 | + color: #fff; |
1035 | + font-size: 16px; |
1036 | + line-height: 1.3; |
1037 | +} |
1038 | +.link-action2 span{ |
1039 | + display:block; |
1040 | + float:left; |
1041 | +} |
1042 | +.link-action2 .cta-left{ |
1043 | + background:url(../img/button-cta-left.png) no-repeat; |
1044 | + width:22px; |
1045 | + height:48px; |
1046 | +} |
1047 | +.link-action2 .cta-center{ |
1048 | + background:url(../img/button-cta-slice.png) repeat-x; |
1049 | + line-height:45px; |
1050 | + height:48px; |
1051 | +} |
1052 | +.link-action2 .cta-right{ |
1053 | + background:url(../img/button-cta-right.png) no-repeat; |
1054 | + width:22px; |
1055 | + height:48px; |
1056 | +} |
1057 | + |
1058 | +.link-action-small { |
1059 | + float: left; |
1060 | + display: block; |
1061 | + color: #fff; |
1062 | + font-size: 16px; |
1063 | +} |
1064 | +.link-action-small span{ |
1065 | + display:block; |
1066 | + float:left; |
1067 | + height:42px; |
1068 | +} |
1069 | +.link-action-small .cta-left{ |
1070 | + background:url(../img/button-cta-left-small.png) no-repeat; |
1071 | + width:19px; |
1072 | +} |
1073 | +.link-action-small .cta-center{ |
1074 | + background:url(../img/button-cta-slice-small.png) repeat-x; |
1075 | + line-height:42px; |
1076 | +} |
1077 | +.link-action-small .cta-right{ |
1078 | + background:url(../img/button-cta-right-small.png) no-repeat; |
1079 | + width:19px; |
1080 | +} |
1081 | + |
1082 | +.link-action:active { |
1083 | + position: relative; |
1084 | + top: 1px; |
1085 | +} |
1086 | +.link-action2:active { |
1087 | + position: relative; |
1088 | + top: 1px; |
1089 | +} |
1090 | +.link-action-small:active { |
1091 | + position: relative; |
1092 | + top: 1px; |
1093 | +} |
1094 | +.list-bullets li { |
1095 | + margin-bottom: 10px; |
1096 | + list-style: disc; |
1097 | + list-style-position: inside; |
1098 | +} |
1099 | +.box { |
1100 | + margin-bottom: 30px; |
1101 | + padding: 15px; |
1102 | + border: 1px solid #aea79f; |
1103 | + -moz-border-radius: 4px; |
1104 | + -webkit-border-radius: 4px; |
1105 | + border-radius: 4px; |
1106 | +} |
1107 | +.box-padded { |
1108 | + margin-bottom: 30px; |
1109 | + padding: 5px; |
1110 | + border: 2px solid #aea79f; |
1111 | + -moz-border-radius: 4px; |
1112 | + -webkit-border-radius: 4px; |
1113 | + border-radius: 4px; |
1114 | + background: url("../img/pattern-featured.gif") repeat scroll 0 0 #ebe9e7; |
1115 | + overflow: hidden; |
1116 | +} |
1117 | +.box-padded h3 { |
1118 | + margin: 5px 0 10px 5px; |
1119 | +} |
1120 | +.box-padded div { |
1121 | + padding: 10px; |
1122 | + border: 1px solid #aea79f; |
1123 | + -moz-border-radius: 4px; |
1124 | + -webkit-border-radius: 4px; |
1125 | + border-radius: 4px; |
1126 | + background-color: #fff; |
1127 | + overflow: hidden; |
1128 | +} |
1129 | +.box-padded li { |
1130 | + padding: 0 10px; |
1131 | + float: left; |
1132 | + width: 211px; |
1133 | + border-right: 1px dotted #aea79f; |
1134 | +} |
1135 | +.box-padded li.first { |
1136 | + padding: 0; |
1137 | + margin-bottom: 0; |
1138 | +} |
1139 | +.box-padded li.last { |
1140 | + border: 0; |
1141 | + width: 217px; |
1142 | +} |
1143 | +.box-padded img { |
1144 | + margin: 0 10px 50px 0; |
1145 | + float: left; |
1146 | + -moz-border-radius: 8px; |
1147 | + -webkit-border-radius: 8px; |
1148 | + border-radius: 8px; |
1149 | +} |
1150 | +.box-clear { |
1151 | + margin-bottom: 40px; |
1152 | +} |
1153 | +.box-clear .grid-4.first { |
1154 | + margin-right: 15px; |
1155 | + padding-right: 15px; |
1156 | +} |
1157 | +.box-clear .grid-4 { |
1158 | + margin-left: 0; |
1159 | + margin-right: 10px; |
1160 | + padding-right: 10px; |
1161 | + width: 298px; |
1162 | +} |
1163 | +.box-clear time { |
1164 | + display: block; |
1165 | + border-bottom: 1px dotted #aea79f; |
1166 | + padding-bottom: 10px; |
1167 | + margin-bottom: 10px; |
1168 | +} |
1169 | +.box-clear div.first { |
1170 | + border-right: 1px dotted #aea79f; |
1171 | +} |
1172 | +.box-clear a { |
1173 | + display: block; |
1174 | +} |
1175 | +.box-clear .rss { |
1176 | + background: url("../img/rss.jpg") no-repeat scroll 0 center; |
1177 | + padding-left: 20px; |
1178 | +} |
1179 | +.box-clear .location { |
1180 | + display: block; |
1181 | + margin-bottom: 1px; |
1182 | +} |
1183 | +.box-clear .last { |
1184 | + margin: 0; |
1185 | + padding-right: 0; |
1186 | + -moz-border-radius: 4px; |
1187 | + -webkit-border-radius: 4px; |
1188 | + border-radius: 4px; |
1189 | + width: 293px; |
1190 | +} |
1191 | + |
1192 | +/* Widgets */ |
1193 | + |
1194 | +.ui-state-focus { |
1195 | + outline: none; |
1196 | +} |
1197 | +.ui-accordion { |
1198 | + border-bottom: 1px dotted #aea79f; |
1199 | +} |
1200 | +.ui-accordion a { |
1201 | + display: block; |
1202 | +} |
1203 | +.ui-accordion h3 { |
1204 | + margin-bottom: 0; |
1205 | + border-top: 1px dotted #aea79f; |
1206 | + position: relative; |
1207 | + font-size: 13px; |
1208 | + font-weight: bold; |
1209 | +} |
1210 | +.ui-accordion h3 a { |
1211 | + padding: 10px 0; |
1212 | + color: #333; |
1213 | +} |
1214 | +.ui-accordion h4 { |
1215 | + margin-bottom: 5px; |
1216 | +} |
1217 | +.ui-accordion div fieldset { |
1218 | + padding-bottom: 5px; |
1219 | +} |
1220 | +.ui-accordion div li, |
1221 | +.ui-accordion div input { |
1222 | + margin-bottom: 10px; |
1223 | +} |
1224 | +.ui-accordion .ui-icon { |
1225 | + position: absolute; |
1226 | + top: 15px; |
1227 | + right: 0; |
1228 | + display: block; |
1229 | + width: 8px; |
1230 | + height: 8px; |
1231 | + background: url("../img/icon-accordion-inactive.png") 0 0 no-repeat transparent; |
1232 | +} |
1233 | +.ui-accordion .ui-state-active .ui-icon { |
1234 | + background-image: url("../img/icon-accordion-active.png"); |
1235 | +} |
1236 | +.ui-accordion .current_page_item a { |
1237 | + color: #333; |
1238 | +} |
1239 | +.container-tweet { |
1240 | + -moz-border-radius: 4px 4px 4px 4px; |
1241 | + -webkit-border-radius: 4px 4px 4px 4px; |
1242 | + border-radius: 4px 4px 4px 4px; |
1243 | + padding: 10px 10px 10px; |
1244 | + background-color: #f7f7f7; |
1245 | +} |
1246 | +.container-tweet .tweet-follow { |
1247 | + margin-top: 10px; |
1248 | + margin-bottom: -10px; |
1249 | + padding-left: 55px; |
1250 | + padding-bottom: 6px; |
1251 | + background: url("../img/tweet-follow.png") 0 5px no-repeat; |
1252 | + display: block; |
1253 | +} |
1254 | +.container-tweet .tweet-follow span { |
1255 | + font-size: 16px; |
1256 | + font-weight: bold; |
1257 | + line-height: 1.2; |
1258 | + display: block; |
1259 | +} |
1260 | +.tweet a { |
1261 | + display: inline; |
1262 | +} |
1263 | +.tweet .tweet_text { |
1264 | + padding: 10px; |
1265 | + background-color: #fff; |
1266 | + -moz-border-radius: 4px 4px 4px 4px; |
1267 | + -webkit-border-radius: 4px 4px 4px 4px; |
1268 | + border-radius: 4px 4px 4px 4px; |
1269 | + border: 1px solid #dd4814; |
1270 | + font-size: 16px; |
1271 | + display: block; |
1272 | + clear: both; |
1273 | +} |
1274 | +.tweet.tweet-small .tweet_text { |
1275 | + font-size: inherit; |
1276 | +} |
1277 | +.tweet .tweet_text a { |
1278 | + color: #333; |
1279 | +} |
1280 | +.tweet .tweet_time, |
1281 | +.tweet .tweet_user_and_time { |
1282 | + padding: 15px 0 10px 0; |
1283 | + position: relative; |
1284 | + top: -2px; |
1285 | + background: url("../img/tweet-arrow.png") no-repeat; |
1286 | + display: block; |
1287 | +} |
1288 | +.tweet .tweet_odd .tweet_time, |
1289 | +.tweet .tweet_odd .tweet_user_and_time { |
1290 | + background-position: right 0; |
1291 | + float: right; |
1292 | +} |
1293 | +.tweet .tweet_even .tweet_time, |
1294 | +.tweet .tweet_even .tweet_user_and_time { |
1295 | + background-position: left 0; |
1296 | + float: left; |
1297 | +} |
1298 | + |
1299 | +/* Search */ |
1300 | + |
1301 | +#content .list-search li { |
1302 | + list-style-type:none; |
1303 | + border:0px; |
1304 | + margin-bottom: 15px; |
1305 | + padding-top: 15px; |
1306 | +} |
1307 | + |
1308 | +/* Blog */ |
1309 | + |
1310 | +.blog-article #nav-single { |
1311 | + margin-top: 30px; |
1312 | + margin-bottom: 30px; |
1313 | +} |
1314 | +.blog-article #nav-single .nav-next { |
1315 | + float: right; |
1316 | +} |
1317 | +.blog-article article header .entry-meta { |
1318 | + margin-bottom: 20px; |
1319 | +} |
1320 | +.blog-article article .entry-meta { |
1321 | + color: #999; |
1322 | +} |
1323 | +.blog-article #respond form input[type="submit"] { |
1324 | + float: left; |
1325 | + cursor: pointer; |
1326 | + margin-bottom: 20px; |
1327 | + padding: 8px 12px; |
1328 | + display: block; |
1329 | + background-color: #dd4814; |
1330 | + color: #fff; |
1331 | + -moz-border-radius: 20px; |
1332 | + -webkit-border-radius: 20px; |
1333 | + border-radius: 20px; |
1334 | + font-size: 16px; |
1335 | + line-height: 1.3; |
1336 | + border-top: 3px solid #e6633a; |
1337 | + border-left: 3px solid #e6633a; |
1338 | + border-right: 3px solid #e6633a; |
1339 | + border-bottom: 3px solid #c03d14; |
1340 | +} |
1341 | +.blog-article #respond form input[type="submit"]:active { |
1342 | + position: relative; |
1343 | + top: 1px; |
1344 | +} |
1345 | + |
1346 | +.alignnone{ |
1347 | + float:left; |
1348 | + margin:10px 20px 10px 0; |
1349 | +} |
1350 | +.alignleft{ |
1351 | + float:left; |
1352 | + margin:10px 20px 10px 0; |
1353 | +} |
1354 | +.alignright{ |
1355 | + float:right; |
1356 | + margin:10px 0 10px 20px; |
1357 | +} |
1358 | + |
1359 | +.aligncenter{ |
1360 | + float:left; |
1361 | + margin:10px 20px 10px 0; |
1362 | +} |
1363 | +.entry-content h2, .entry-content h3{ |
1364 | + margin-top:20px; |
1365 | +} |
1366 | +.entry-content ul li{ |
1367 | + list-style-type: circle; |
1368 | + margin-left:16px; |
1369 | +} |
1370 | + |
1371 | +.entry-content hr{ |
1372 | + border:none; |
1373 | + border-top: 1px dotted #AEA79F; |
1374 | +} |
1375 | |
1376 | === added file 'doc/qt/cpp/css/qtquick.css' |
1377 | --- doc/qt/cpp/css/qtquick.css 1970-01-01 00:00:00 +0000 |
1378 | +++ doc/qt/cpp/css/qtquick.css 2015-05-13 10:12:45 +0000 |
1379 | @@ -0,0 +1,772 @@ |
1380 | +@media screen |
1381 | +{ |
1382 | + |
1383 | +/* basic elements */ |
1384 | + html |
1385 | + { |
1386 | + color: #000000; |
1387 | + background: #FFFFFF; |
1388 | + } |
1389 | + table |
1390 | + { |
1391 | + border-collapse: collapse; |
1392 | + border-spacing: 0; |
1393 | + } |
1394 | + fieldset, img |
1395 | + { |
1396 | + border: 0; |
1397 | + max-width:100%; |
1398 | + } |
1399 | + address, caption, cite, code, dfn, em, strong, th, var, optgroup |
1400 | + { |
1401 | + font-style: inherit; |
1402 | + font-weight: inherit; |
1403 | + } |
1404 | + del, ins |
1405 | + { |
1406 | + text-decoration: none; |
1407 | + } |
1408 | + ol li |
1409 | + { |
1410 | + list-style: decimal; |
1411 | + } |
1412 | + ul li |
1413 | + { |
1414 | + list-style: none; |
1415 | + } |
1416 | + caption, th |
1417 | + { |
1418 | + text-align: left; |
1419 | + } |
1420 | + h1.title |
1421 | + { |
1422 | + font-weight: bold; |
1423 | + font-size: 150%; |
1424 | + } |
1425 | + h0 |
1426 | + { |
1427 | + font-weight: bold; |
1428 | + font-size: 130%; |
1429 | + } |
1430 | + h1, h2, h3, h4, h5, h6 |
1431 | + { |
1432 | + font-size: 100%; |
1433 | + } |
1434 | + q:before, q:after |
1435 | + { |
1436 | + content: ''; |
1437 | + } |
1438 | + abbr, acronym |
1439 | + { |
1440 | + border: 0; |
1441 | + font-variant: normal; |
1442 | + } |
1443 | + sup, sub |
1444 | + { |
1445 | + vertical-align: baseline; |
1446 | + } |
1447 | + tt, .qmlreadonly span, .qmldefault span |
1448 | + { |
1449 | + word-spacing:0.5em; |
1450 | + } |
1451 | + legend |
1452 | + { |
1453 | + color: #000000; |
1454 | + } |
1455 | + strong |
1456 | + { |
1457 | + font-weight: bold; |
1458 | + } |
1459 | + em |
1460 | + { |
1461 | + font-style: italic; |
1462 | + } |
1463 | + |
1464 | + body |
1465 | + { |
1466 | + margin: 0 1.5em 0 1.5em; |
1467 | + font-family: ubuntu; |
1468 | + line-height: normal |
1469 | + } |
1470 | + a |
1471 | + { |
1472 | + color: #00732F; |
1473 | + text-decoration: none; |
1474 | + } |
1475 | + hr |
1476 | + { |
1477 | + background-color: #E6E6E6; |
1478 | + border: 1px solid #E6E6E6; |
1479 | + height: 1px; |
1480 | + width: 100%; |
1481 | + text-align: left; |
1482 | + margin: 1.5em 0 1.5em 0; |
1483 | + } |
1484 | + |
1485 | + pre |
1486 | + { |
1487 | + border: 1px solid #DDDDDD; |
1488 | + -moz-border-radius: 0.7em 0.7em 0.7em 0.7em; |
1489 | + -webkit-border-radius: 0.7em 0.7em 0.7em 0.7em; |
1490 | + border-radius: 0.7em 0.7em 0.7em 0.7em; |
1491 | + padding: 1em 1em 1em 1em; |
1492 | + overflow-x: auto; |
1493 | + } |
1494 | + table, pre |
1495 | + { |
1496 | + -moz-border-radius: 0.7em 0.7em 0.7em 0.7em; |
1497 | + -webkit-border-radius: 0.7em 0.7em 0.7em 0.7em; |
1498 | + border-radius: 0.7em 0.7em 0.7em 0.7em; |
1499 | + background-color: #F6F6F6; |
1500 | + border: 1px solid #E6E6E6; |
1501 | + border-collapse: separate; |
1502 | + margin-bottom: 2.5em; |
1503 | + } |
1504 | + pre { |
1505 | + font-size: 90%; |
1506 | + display: block; |
1507 | + overflow:hidden; |
1508 | + } |
1509 | + thead |
1510 | + { |
1511 | + margin-top: 0.5em; |
1512 | + font-weight: bold |
1513 | + } |
1514 | + th |
1515 | + { |
1516 | + padding: 0.5em 1.5em 0.5em 1em; |
1517 | + background-color: #E1E1E1; |
1518 | + border-left: 1px solid #E6E6E6; |
1519 | + } |
1520 | + td |
1521 | + { |
1522 | + padding: 0.25em 1.5em 0.25em 1em; |
1523 | + } |
1524 | + |
1525 | + td.rightAlign |
1526 | + { |
1527 | + padding: 0.25em 0.5em 0.25em 1em; |
1528 | + } |
1529 | + table tr.odd |
1530 | + { |
1531 | + border-left: 1px solid #E6E6E6; |
1532 | + background-color: #F6F6F6; |
1533 | + color: black; |
1534 | + } |
1535 | + table tr.even |
1536 | + { |
1537 | + border-left: 1px solid #E6E6E6; |
1538 | + background-color: #ffffff; |
1539 | + color: #202020; |
1540 | + } |
1541 | + |
1542 | + div.float-left |
1543 | + { |
1544 | + float: left; margin-right: 2em |
1545 | + } |
1546 | + div.float-right |
1547 | + { |
1548 | + float: right; margin-left: 2em |
1549 | + } |
1550 | + |
1551 | + span.comment |
1552 | + { |
1553 | + color: #008B00; |
1554 | + } |
1555 | + span.string, span.char |
1556 | + { |
1557 | + color: #000084; |
1558 | + } |
1559 | + span.number |
1560 | + { |
1561 | + color: #a46200; |
1562 | + } |
1563 | + span.operator |
1564 | + { |
1565 | + color: #202020; |
1566 | + } |
1567 | + span.keyword |
1568 | + { |
1569 | + color: #840000; |
1570 | + } |
1571 | + span.name |
1572 | + { |
1573 | + color: black |
1574 | + } |
1575 | + span.type |
1576 | + { |
1577 | + font-weight: bold |
1578 | + } |
1579 | + span.type a:visited |
1580 | + { |
1581 | + color: #0F5300; |
1582 | + } |
1583 | + span.preprocessor |
1584 | + { |
1585 | + color: #404040 |
1586 | + } |
1587 | +/* end basic elements */ |
1588 | + |
1589 | +/* font style elements */ |
1590 | + .heading |
1591 | + { |
1592 | + font-weight: bold; |
1593 | + font-size: 125%; |
1594 | + } |
1595 | + .subtitle |
1596 | + { |
1597 | + font-size: 110% |
1598 | + } |
1599 | + .small-subtitle |
1600 | + { |
1601 | + font-size: 100% |
1602 | + } |
1603 | + .red |
1604 | + { |
1605 | + color:red; |
1606 | + } |
1607 | +/* end font style elements */ |
1608 | + |
1609 | +/* global settings*/ |
1610 | + .header, .footer |
1611 | + { |
1612 | + display: block; |
1613 | + clear: both; |
1614 | + overflow: hidden; |
1615 | + } |
1616 | +/* end global settings*/ |
1617 | + |
1618 | +/* header elements */ |
1619 | + .header .qtref |
1620 | + { |
1621 | + color: #00732F; |
1622 | + font-weight: bold; |
1623 | + font-size: 130%; |
1624 | + } |
1625 | + |
1626 | + .header .content |
1627 | + { |
1628 | + margin-left: 5px; |
1629 | + margin-top: 5px; |
1630 | + margin-bottom: 0.5em; |
1631 | + } |
1632 | + |
1633 | + .header .breadcrumb |
1634 | + { |
1635 | + font-size: 90%; |
1636 | + padding: 0.5em 0 0.5em 1em; |
1637 | + margin: 0; |
1638 | + background-color: #fafafa; |
1639 | + height: 1.35em; |
1640 | + border-bottom: 1px solid #d1d1d1; |
1641 | + } |
1642 | + |
1643 | + .header .breadcrumb ul |
1644 | + { |
1645 | + margin: 0; |
1646 | + padding: 0; |
1647 | + } |
1648 | + |
1649 | + .header .content |
1650 | + { |
1651 | + word-wrap: break-word; |
1652 | + } |
1653 | + |
1654 | + .header .breadcrumb ul li |
1655 | + { |
1656 | + float: left; |
1657 | + background: url(../images/breadcrumb.png) no-repeat 0 3px; |
1658 | + padding-left: 1.5em; |
1659 | + margin-left: 1.5em; |
1660 | + } |
1661 | + |
1662 | + .header .breadcrumb ul li.last |
1663 | + { |
1664 | + font-weight: normal; |
1665 | + } |
1666 | + |
1667 | + .header .breadcrumb ul li a |
1668 | + { |
1669 | + color: #00732F; |
1670 | + } |
1671 | + |
1672 | + .header .breadcrumb ul li.first |
1673 | + { |
1674 | + background-image: none; |
1675 | + padding-left: 0; |
1676 | + margin-left: 0; |
1677 | + } |
1678 | + |
1679 | + .header .content ol li { |
1680 | + background: none; |
1681 | + margin-bottom: 1.0em; |
1682 | + margin-left: 1.2em; |
1683 | + padding-left: 0 |
1684 | + } |
1685 | + |
1686 | + .header .content li |
1687 | + { |
1688 | + background: url(../images/bullet_sq.png) no-repeat 0 5px; |
1689 | + margin-bottom: 1em; |
1690 | + padding-left: 1.2em; |
1691 | + } |
1692 | + |
1693 | +/* end header elements */ |
1694 | + |
1695 | +/* content elements */ |
1696 | + .content h1 |
1697 | + { |
1698 | + font-weight: bold; |
1699 | + font-size: 130% |
1700 | + } |
1701 | + |
1702 | + .content h2 |
1703 | + { |
1704 | + font-weight: bold; |
1705 | + font-size: 120%; |
1706 | + width: 100%; |
1707 | + } |
1708 | + .content h3 |
1709 | + { |
1710 | + font-weight: bold; |
1711 | + font-size: 110%; |
1712 | + width: 100%; |
1713 | + } |
1714 | + .content table p |
1715 | + { |
1716 | + margin: 0 |
1717 | + } |
1718 | + .content ul |
1719 | + { |
1720 | + padding-left: 2.5em; |
1721 | + } |
1722 | + .content li |
1723 | + { |
1724 | + padding-top: 0.25em; |
1725 | + padding-bottom: 0.25em; |
1726 | + } |
1727 | + .content ul img { |
1728 | + vertical-align: middle; |
1729 | + } |
1730 | + |
1731 | + .content a:visited |
1732 | + { |
1733 | + color: #4c0033; |
1734 | + text-decoration: none; |
1735 | + } |
1736 | + |
1737 | + .content a:visited:hover |
1738 | + { |
1739 | + color: #4c0033; |
1740 | + text-decoration: underline; |
1741 | + } |
1742 | + |
1743 | + a:hover |
1744 | + { |
1745 | + color: #4c0033; |
1746 | + text-decoration: underline; |
1747 | + } |
1748 | + descr p a |
1749 | + { |
1750 | + text-decoration: underline; |
1751 | + } |
1752 | + |
1753 | + .descr p a:visited |
1754 | + { |
1755 | + text-decoration: underline; |
1756 | + } |
1757 | + |
1758 | + .alphaChar{ |
1759 | + width:95%; |
1760 | + background-color:#F6F6F6; |
1761 | + border:1px solid #E6E6E6; |
1762 | + -moz-border-radius: 7px 7px 7px 7px; |
1763 | + border-radius: 7px 7px 7px 7px; |
1764 | + -webkit-border-radius: 7px 7px 7px 7px; |
1765 | + font-size:12pt; |
1766 | + padding-left:10px; |
1767 | + margin-top:10px; |
1768 | + margin-bottom:10px; |
1769 | + } |
1770 | + .flowList{ |
1771 | + /*vertical-align:top;*/ |
1772 | + /*margin:20px auto;*/ |
1773 | + |
1774 | + column-count:3; |
1775 | + -webkit-column-count:3; |
1776 | + -moz-column-count:3; |
1777 | +/* |
1778 | + column-width:100%; |
1779 | + -webkit-column-width:200px; |
1780 | + -col-column-width:200px; |
1781 | +*/ |
1782 | + column-gap:41px; |
1783 | + -webkit-column-gap:41px; |
1784 | + -moz-column-gap:41px; |
1785 | + |
1786 | + column-rule: 1px dashed #ccc; |
1787 | + -webkit-column-rule: 1px dashed #ccc; |
1788 | + -moz-column-rule: 1px dashed #ccc; |
1789 | + } |
1790 | + |
1791 | + .flowList dl{ |
1792 | + } |
1793 | + .flowList dd{ |
1794 | + /*display:inline-block;*/ |
1795 | + margin-left:10px; |
1796 | + min-width:250px; |
1797 | + line-height: 1.5; |
1798 | + min-width:100%; |
1799 | + min-height:15px; |
1800 | + } |
1801 | + |
1802 | + .flowList dd a{ |
1803 | + } |
1804 | + |
1805 | + .mainContent |
1806 | + { |
1807 | + padding-left:5px; |
1808 | + } |
1809 | + |
1810 | + .content .flowList p{ |
1811 | + padding:0px; |
1812 | + } |
1813 | + |
1814 | + .content .alignedsummary |
1815 | + { |
1816 | + margin: 15px; |
1817 | + } |
1818 | + |
1819 | + |
1820 | + .qmltype |
1821 | + { |
1822 | + text-align: center; |
1823 | + font-size: 120%; |
1824 | + } |
1825 | + .qmlreadonly |
1826 | + { |
1827 | + padding-left: 5px; |
1828 | + float: right; |
1829 | + color: #254117; |
1830 | + } |
1831 | + |
1832 | + .qmldefault |
1833 | + { |
1834 | + padding-left: 5px; |
1835 | + float: right; |
1836 | + color: red; |
1837 | + } |
1838 | + |
1839 | + .qmldoc |
1840 | + { |
1841 | + } |
1842 | + |
1843 | + .generic .alphaChar{ |
1844 | + margin-top:5px; |
1845 | + } |
1846 | + |
1847 | + .generic .odd .alphaChar{ |
1848 | + background-color: #F6F6F6; |
1849 | + } |
1850 | + |
1851 | + .generic .even .alphaChar{ |
1852 | + background-color: #FFFFFF; |
1853 | + } |
1854 | + |
1855 | + .memItemRight{ |
1856 | + padding: 0.25em 1.5em 0.25em 0; |
1857 | + } |
1858 | + .highlightedCode |
1859 | + { |
1860 | + margin: 1.0em; |
1861 | + } |
1862 | + .annotated td { |
1863 | + padding: 0.25em 0.5em 0.25em 0.5em; |
1864 | + } |
1865 | + |
1866 | + .toc |
1867 | + { |
1868 | + font-size: 80% |
1869 | + } |
1870 | + |
1871 | + .header .content .toc ul |
1872 | + { |
1873 | + padding-left: 0px; |
1874 | + } |
1875 | + |
1876 | + .content .toc h3 { |
1877 | + border-bottom: 0px; |
1878 | + margin-top: 0px; |
1879 | + } |
1880 | + |
1881 | + .content .toc h3 a:hover { |
1882 | + color: #00732F; |
1883 | + text-decoration: none; |
1884 | + } |
1885 | + |
1886 | + .content .toc .level2 |
1887 | + { |
1888 | + margin-left: 1.5em; |
1889 | + } |
1890 | + |
1891 | + .content .toc .level3 |
1892 | + { |
1893 | + margin-left: 3.0em; |
1894 | + } |
1895 | + |
1896 | + .content ul li |
1897 | + { |
1898 | + background: url(../images/bullet_sq.png) no-repeat 0 0.7em; |
1899 | + padding-left: 1em |
1900 | + } |
1901 | + |
1902 | + .content .toc li |
1903 | + { |
1904 | + background: url(../images/bullet_dn.png) no-repeat 0 5px; |
1905 | + padding-left: 1em |
1906 | + } |
1907 | + |
1908 | + .relpage |
1909 | + { |
1910 | + -moz-border-radius: 7px 7px 7px 7px; |
1911 | + -webkit-border-radius: 7px 7px 7px 7px; |
1912 | + border-radius: 7px 7px 7px 7px; |
1913 | + border: 1px solid #DDDDDD; |
1914 | + padding: 25px 25px; |
1915 | + clear: both; |
1916 | + } |
1917 | + .relpage ul |
1918 | + { |
1919 | + float: none; |
1920 | + padding: 1.5em; |
1921 | + } |
1922 | + |
1923 | + h3.fn, span.fn |
1924 | + { |
1925 | + -moz-border-radius:7px 7px 7px 7px; |
1926 | + -webkit-border-radius:7px 7px 7px 7px; |
1927 | + border-radius:7px 7px 7px 7px; |
1928 | + background-color: #F6F6F6; |
1929 | + border-width: 1px; |
1930 | + border-style: solid; |
1931 | + border-color: #E6E6E6; |
1932 | + font-weight: bold; |
1933 | + word-spacing:3px; |
1934 | + padding:3px 5px; |
1935 | + } |
1936 | + |
1937 | + .functionIndex { |
1938 | + font-size:12pt; |
1939 | + word-spacing:10px; |
1940 | + margin-bottom:10px; |
1941 | + background-color: #F6F6F6; |
1942 | + border-width: 1px; |
1943 | + border-style: solid; |
1944 | + border-color: #E6E6E6; |
1945 | + -moz-border-radius: 7px 7px 7px 7px; |
1946 | + -webkit-border-radius: 7px 7px 7px 7px; |
1947 | + border-radius: 7px 7px 7px 7px; |
1948 | + width:100%; |
1949 | + } |
1950 | + |
1951 | + .centerAlign |
1952 | + { |
1953 | + text-align:center; |
1954 | + } |
1955 | + |
1956 | + .rightAlign |
1957 | + { |
1958 | + text-align:right; |
1959 | + } |
1960 | + |
1961 | + .leftAlign |
1962 | + { |
1963 | + text-align:left; |
1964 | + } |
1965 | + |
1966 | + .topAlign{ |
1967 | + vertical-align:top |
1968 | + } |
1969 | + |
1970 | + .functionIndex a{ |
1971 | + display:inline-block; |
1972 | + } |
1973 | + |
1974 | +/* end content elements */ |
1975 | +/* footer elements */ |
1976 | + |
1977 | + .footer |
1978 | + { |
1979 | + color: #393735; |
1980 | + font-size: 0.75em; |
1981 | + text-align: center; |
1982 | + padding-top: 1.5em; |
1983 | + padding-bottom: 1em; |
1984 | + background-color: #E6E7E8; |
1985 | + margin: 0; |
1986 | + } |
1987 | + .footer p |
1988 | + { |
1989 | + margin: 0.25em |
1990 | + } |
1991 | + .small |
1992 | + { |
1993 | + font-size: 0.5em; |
1994 | + } |
1995 | +/* end footer elements */ |
1996 | + |
1997 | + .item { |
1998 | + float: left; |
1999 | + position: relative; |
2000 | + width: 100%; |
2001 | + overflow: hidden; |
2002 | + } |
2003 | + |
2004 | + |
2005 | + .item .primary { |
2006 | + margin-right: 220px; |
2007 | + position: relative; |
2008 | + } |
2009 | + |
2010 | + .item hr { |
2011 | + margin-left: -220px; |
2012 | + } |
2013 | + |
2014 | + .item .secondary { |
2015 | + float: right; |
2016 | + width: 200px; |
2017 | + position: relative; |
2018 | + } |
2019 | + |
2020 | + .item .cols { |
2021 | + clear: both; |
2022 | + display: block; |
2023 | + } |
2024 | + |
2025 | + .item .cols .col { |
2026 | + float: left; |
2027 | + margin-left: 1.5%; |
2028 | + } |
2029 | + |
2030 | + .item .cols .col.first { |
2031 | + margin-left: 0; |
2032 | + } |
2033 | + |
2034 | + .item .cols.two .col { |
2035 | + width: 45%; |
2036 | + } |
2037 | + |
2038 | + .item .box { |
2039 | + margin: 0 0 10px 0; |
2040 | + } |
2041 | + |
2042 | + .item .box h3 { |
2043 | + margin: 0 0 10px 0; |
2044 | + } |
2045 | + |
2046 | + .cols.unclear { |
2047 | + clear:none; |
2048 | + } |
2049 | +} |
2050 | + |
2051 | +/* end of screen media */ |
2052 | + |
2053 | +/* start of print media */ |
2054 | + |
2055 | +@media print |
2056 | +{ |
2057 | + input, textarea, .header, .footer, .toolbar, .feedback, .wrapper .hd, .wrapper .bd .sidebar, .wrapper .ft, #feedbackBox, #blurpage, .toc, .breadcrumb, .toolbar, .floatingResult |
2058 | + { |
2059 | + display: none; |
2060 | + background: none; |
2061 | + } |
2062 | + .content |
2063 | + { |
2064 | + background: none; |
2065 | + display: block; |
2066 | + width: 100%; margin: 0; float: none; |
2067 | + } |
2068 | +} |
2069 | +/* end of print media */ |
2070 | + |
2071 | + |
2072 | +/* modify the TOC layouts */ |
2073 | +div.toc ul { |
2074 | + padding-left: 20px; |
2075 | +} |
2076 | +div.toc li { |
2077 | + padding-left: 4px; |
2078 | +} |
2079 | +/* Remove the border around images*/ |
2080 | +a img |
2081 | +{ |
2082 | + border:none; |
2083 | +} |
2084 | + |
2085 | +/*Add styling to the front pages*/ |
2086 | + |
2087 | +.threecolumn_area |
2088 | +{ |
2089 | + padding-top: 20px; |
2090 | + padding-bottom: 20px; |
2091 | +} |
2092 | +.threecolumn_piece |
2093 | +{ |
2094 | + display: inline-block; |
2095 | + margin-left: 78px; |
2096 | + margin-top: 8px; |
2097 | + padding: 0; |
2098 | + vertical-align: top; |
2099 | + width: 25.5%; |
2100 | +} |
2101 | +div.threecolumn_piece ul { |
2102 | + list-style-type: none; |
2103 | + padding-left: 0px; |
2104 | + margin-top: 2px; |
2105 | +} |
2106 | +div.threecolumn_piece p { |
2107 | + margin-bottom: 7px; |
2108 | + color: #5C626E; |
2109 | + text-decoration: none; |
2110 | + font-weight: bold; |
2111 | +} |
2112 | +div.threecolumn_piece li { |
2113 | + padding-left: 0px; |
2114 | + margin-bottom: 5px; |
2115 | +} |
2116 | +div.threecolumn_piece a { |
2117 | + font-weight: normal; |
2118 | +} |
2119 | +/* Add style to guide page*/ |
2120 | +.fourcolumn_area |
2121 | +{ |
2122 | + padding-top: 20px; |
2123 | + padding-bottom: 20px; |
2124 | +} |
2125 | +.fourcolumn_piece |
2126 | +{ |
2127 | + display: inline-block; |
2128 | + margin-left: 35px; |
2129 | + margin-top: 8px; |
2130 | + padding: 0; |
2131 | + vertical-align: top; |
2132 | + width: 21.3%; |
2133 | +} |
2134 | +div.fourcolumn_piece ul { |
2135 | + list-style-type: none; |
2136 | + padding-left: 0px; |
2137 | + margin-top: 2px; |
2138 | +} |
2139 | +div.fourcolumn_piece p { |
2140 | + margin-bottom: 7px; |
2141 | + color: #40444D; |
2142 | + text-decoration: none; |
2143 | + font-weight: bold; |
2144 | +} |
2145 | +div.fourcolumn_piece li { |
2146 | + padding-left: 0px; |
2147 | + margin-bottom: 5px; |
2148 | +} |
2149 | +div.fourcolumn_piece a { |
2150 | + font-weight: normal; |
2151 | +} |
2152 | |
2153 | === added file 'doc/qt/cpp/css/reset.css' |
2154 | --- doc/qt/cpp/css/reset.css 1970-01-01 00:00:00 +0000 |
2155 | +++ doc/qt/cpp/css/reset.css 2015-05-13 10:12:45 +0000 |
2156 | @@ -0,0 +1,8 @@ |
2157 | +/* |
2158 | +Copyright (c) 2010, Yahoo! Inc. All rights reserved. |
2159 | +Code licensed under the BSD License: |
2160 | +http://developer.yahoo.com/yui/license.html |
2161 | +version: 3.3.0 |
2162 | +build: 3167 |
2163 | +*/ |
2164 | +html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;} |
2165 | \ No newline at end of file |
2166 | |
2167 | === added file 'doc/qt/cpp/css/scratch.css' |
2168 | --- doc/qt/cpp/css/scratch.css 1970-01-01 00:00:00 +0000 |
2169 | +++ doc/qt/cpp/css/scratch.css 2015-05-13 10:12:45 +0000 |
2170 | @@ -0,0 +1,61 @@ |
2171 | +body { |
2172 | + margin: 0; |
2173 | +} |
2174 | + |
2175 | + |
2176 | +div.toc ul { |
2177 | + padding: 0; |
2178 | +} |
2179 | + |
2180 | +div.toc li { |
2181 | + margin-bottom: 3px; |
2182 | +} |
2183 | + |
2184 | +h1.title { |
2185 | + font-size: 36px; |
2186 | + line-height: 1.1; |
2187 | + font-weight: normal; |
2188 | +} |
2189 | +h0, h2 { |
2190 | + font-size: 24px; |
2191 | + line-height: 1.2; |
2192 | + margin: 14px 0; |
2193 | + font-weight: normal; |
2194 | + display: block; |
2195 | +} |
2196 | +a:hover { |
2197 | + color: #dd4814; |
2198 | + text-decoration: underline; |
2199 | + outline: 0; |
2200 | +} |
2201 | +table, pre { |
2202 | + border-radius: 0; |
2203 | +} |
2204 | + |
2205 | +.annotated td { |
2206 | + padding: 0.8em 1em 0.3em; |
2207 | +} |
2208 | +.wrapper { |
2209 | + width: 940px; |
2210 | + margin: 0 auto; |
2211 | +} |
2212 | +.main-content { |
2213 | + width: 668px; |
2214 | + position: relative; |
2215 | + left: 270px; |
2216 | +} |
2217 | +.title { |
2218 | + margin-left: -270px; |
2219 | + margin-top: 30px; |
2220 | + margin-bottom: 50px; |
2221 | +} |
2222 | +.toc { |
2223 | + margin-left: -270px; |
2224 | + font-size: 100%; |
2225 | + margin-bottom: 40px; |
2226 | + padding: 0; |
2227 | + z-index: 2; |
2228 | + position: absolute; |
2229 | + top: 100px; |
2230 | + width: 250px; |
2231 | +} |
2232 | |
2233 | === added directory 'doc/qt/cpp/examples' |
2234 | === added file 'doc/qt/cpp/examples/CMakeLists.txt' |
2235 | --- doc/qt/cpp/examples/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
2236 | +++ doc/qt/cpp/examples/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
2237 | @@ -0,0 +1,7 @@ |
2238 | + |
2239 | +include_directories(${CMAKE_SOURCE_DIR}/src/connectivity-api/connectivity-qt) |
2240 | +add_executable( |
2241 | + networking_status |
2242 | + example_networking_status.cpp |
2243 | +) |
2244 | +target_link_libraries(networking_status connectivity-qt) |
2245 | |
2246 | === added file 'doc/qt/cpp/examples/example_networking_status.cpp' |
2247 | --- doc/qt/cpp/examples/example_networking_status.cpp 1970-01-01 00:00:00 +0000 |
2248 | +++ doc/qt/cpp/examples/example_networking_status.cpp 2015-05-13 10:12:45 +0000 |
2249 | @@ -0,0 +1,90 @@ |
2250 | +/* |
2251 | + * Copyright © 2014 Canonical Ltd. |
2252 | + * |
2253 | + * This program is free software: you can redistribute it and/or modify it |
2254 | + * under the terms of the GNU Lesser General Public License version 3, |
2255 | + * as published by the Free Software Foundation. |
2256 | + * |
2257 | + * This program is distributed in the hope that it will be useful, |
2258 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
2259 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
2260 | + * GNU Lesser General Public License for more details. |
2261 | + * |
2262 | + * You should have received a copy of the GNU Lesser General Public License |
2263 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
2264 | + * |
2265 | + * Authors: |
2266 | + * Antti Kaijanmäki <antti.kaijanmaki@canonical.com> |
2267 | + */ |
2268 | + |
2269 | +#include <QCoreApplication> |
2270 | +#include <QScopedPointer> |
2271 | +#include <QDebug> |
2272 | + |
2273 | +//! [include] |
2274 | +#include <connectivityqt/connectivity.h> |
2275 | +using namespace connectivityqt; |
2276 | +//! [include] |
2277 | + |
2278 | +int |
2279 | +main(int argc, char *argv[]) |
2280 | +{ |
2281 | + QCoreApplication app(argc, argv); |
2282 | + |
2283 | + //! [create networkingstatus] |
2284 | + QScopedPointer<Connectivity> ns(new Connectivity()); |
2285 | + //! [create networkingstatus] |
2286 | + |
2287 | + //! [status] |
2288 | + // normal getter |
2289 | + if (ns->status() == Connectivity::Status::Online) |
2290 | + { |
2291 | + qDebug() << "We are online."; |
2292 | + } |
2293 | + |
2294 | + // Subscribe to system networking changes |
2295 | + QObject::connect(ns.data(), |
2296 | + &Connectivity::statusUpdated, |
2297 | + [](Connectivity::Status value) |
2298 | + { |
2299 | + switch(value) { |
2300 | + case Connectivity::Status::Offline: |
2301 | + qDebug() << "System networking status changed to: Offline"; |
2302 | + break; |
2303 | + case Connectivity::Status::Connecting: |
2304 | + qDebug() << "System networking status changed to: Connecting"; |
2305 | + break; |
2306 | + case Connectivity::Status::Online: |
2307 | + qDebug() << "System networking status changed to: Online"; |
2308 | + break; |
2309 | + } |
2310 | + }); |
2311 | + //! [status] |
2312 | + |
2313 | + //! [limitations] |
2314 | + // normal getter |
2315 | + if (ns->limitations().isEmpty()) |
2316 | + qDebug() << "No limitations"; |
2317 | + |
2318 | + // Subscribe to limitation changes |
2319 | + QObject::connect(ns.data(), |
2320 | + &Connectivity::limitationsUpdated, |
2321 | + [&ns](){ |
2322 | + if (ns->limitations().isEmpty()) |
2323 | + { |
2324 | + qDebug() << "No limitations."; |
2325 | + return; |
2326 | + } |
2327 | + |
2328 | + qDebug() << "Limitations:"; |
2329 | + if (ns->limitations().contains(Connectivity::Limitations::Bandwith)) |
2330 | + { |
2331 | + qDebug() << " - Bandwith"; |
2332 | + } |
2333 | + }); |
2334 | + //! [limitations] |
2335 | + |
2336 | + app.exec(); |
2337 | + |
2338 | + return 0; |
2339 | +} |
2340 | |
2341 | === added directory 'doc/qt/cpp/pages' |
2342 | === added file 'doc/qt/cpp/pages/mainpage.dox' |
2343 | --- doc/qt/cpp/pages/mainpage.dox 1970-01-01 00:00:00 +0000 |
2344 | +++ doc/qt/cpp/pages/mainpage.dox 2015-05-13 10:12:45 +0000 |
2345 | @@ -0,0 +1,18 @@ |
2346 | +/*! |
2347 | +\mainpage Ubuntu Connectivity API |
2348 | + |
2349 | +\tableofcontents |
2350 | + |
2351 | +\section sec_introduction Introduction |
2352 | + |
2353 | +Ubuntu Connectivity API offers a way to access the connectivity related information of the system. |
2354 | + |
2355 | +\section sec_general General Topics |
2356 | + |
2357 | + - \ref using-cpp "Using this C++ API" |
2358 | + - \ref networking-status "Getting the networking status." |
2359 | + |
2360 | +\section sec_bug_reports Reporting Bugs |
2361 | +If you find any problems with the or this documentation, |
2362 | +please file a bug in Connectivity API [Launchpad page](https://bugs.launchpad.net/connectivity-api). |
2363 | +*/ |
2364 | |
2365 | === added file 'doc/qt/cpp/pages/networking-status.dox' |
2366 | --- doc/qt/cpp/pages/networking-status.dox 1970-01-01 00:00:00 +0000 |
2367 | +++ doc/qt/cpp/pages/networking-status.dox 2015-05-13 10:12:45 +0000 |
2368 | @@ -0,0 +1,35 @@ |
2369 | +/*! |
2370 | +\page networking-status Networking Status |
2371 | + |
2372 | +Applications needing to access the overall system networking status must access the |
2373 | +ubuntu::connectivity::NetworkingStatus class. The class has properties |
2374 | +for the networking status and connection limitations of the system networking. |
2375 | + |
2376 | +Accessing the networking status from confined applications requires |
2377 | +the <i>connectivity</i> policy group. |
2378 | + |
2379 | +\section Setup |
2380 | + |
2381 | +Manager is accessed by including the appropriate header: |
2382 | +\snippet example_networking_status.cpp include |
2383 | + |
2384 | +and then creating an instance of the NetworkingStatus: |
2385 | +\snippet example_networking_status.cpp create networkingstatus |
2386 | + |
2387 | +\section sec_networking_status Networking Status |
2388 | + |
2389 | +\subsection sec_networking_status_status Status |
2390 | + |
2391 | +The status of the system networking can be accessed through the ubuntu::connectivity::NetworkingStatus::status property: |
2392 | +\snippet example_networking_status.cpp status |
2393 | + |
2394 | +\subsection sec_networking_status_limitations Limitations |
2395 | + |
2396 | +The limitations can be accessed through the ubuntu::connectivity::NetworkingStatus::limitations property: |
2397 | +\snippet example_networking_status.cpp limitations |
2398 | + |
2399 | +--- |
2400 | +The complete example (found in <i>examples/example_networking_status.cpp</i>): |
2401 | +\include example_networking_status.cpp |
2402 | + |
2403 | +*/ |
2404 | |
2405 | === added file 'doc/qt/cpp/pages/using.dox' |
2406 | --- doc/qt/cpp/pages/using.dox 1970-01-01 00:00:00 +0000 |
2407 | +++ doc/qt/cpp/pages/using.dox 2015-05-13 10:12:45 +0000 |
2408 | @@ -0,0 +1,26 @@ |
2409 | +/*! |
2410 | +\page using-cpp Using the C++ API |
2411 | + |
2412 | +Install the development headers: |
2413 | + |
2414 | +\code{.txt} |
2415 | +sudo apt-get install libconnectivity-qt1-dev |
2416 | +\endcode |
2417 | + |
2418 | +Enable c++11 and use pkg-config to get the necessary compilation flags: |
2419 | + |
2420 | +\code{.txt} |
2421 | +$ g++ myapp.cpp -std=c++11 `pkg-config --cflags --libs connectivity-qt1` -o myapp |
2422 | +\endcode |
2423 | + |
2424 | +The headers can then be included as: |
2425 | + |
2426 | +\code{.cpp} |
2427 | +// includes the ubuntu::connectivity::NetworkingStatus class |
2428 | +#include <ubuntu/connectivity/networking-status.h> |
2429 | +\endcode |
2430 | + |
2431 | +<b>note:</b><br /> |
2432 | +Accessing the networking status from confined applications requires the <i>connectivity</i> policy group. |
2433 | + |
2434 | +*/ |
2435 | |
2436 | === added file 'doc/qt/cpp/ubuntu-appdev-site-footer.html' |
2437 | --- doc/qt/cpp/ubuntu-appdev-site-footer.html 1970-01-01 00:00:00 +0000 |
2438 | +++ doc/qt/cpp/ubuntu-appdev-site-footer.html 2015-05-13 10:12:45 +0000 |
2439 | @@ -0,0 +1,53 @@ |
2440 | +</div></div> |
2441 | +<div class="shadow"></div> |
2442 | +<footer> |
2443 | + <div> |
2444 | + <nav role="navigation" class="clearfix"> |
2445 | + <ul> |
2446 | + <li><a href="/get-started">Get started</a></li> |
2447 | + <li class="page_item page-item-16"><a href="http://developer.ubuntu.com/get-started/quickly-workflow/">Quickly workflow</a></li> |
2448 | + <li class="page_item page-item-18"><a href="http://developer.ubuntu.com/get-started/qt-creator/">Qt Creator</a></li> |
2449 | + <li class="page_item page-item-20"><a href="http://developer.ubuntu.com/get-started/eclipse/">Eclipse</a></li> |
2450 | + <li class="page_item page-item-22"><a href="http://developer.ubuntu.com/get-started/monodevelop/">MonoDevelop</a></li> |
2451 | + </ul> |
2452 | + <ul> |
2453 | + <li><a href="/resources">Resources</a></li> |
2454 | + <li><a href="/resources/tools/quickly">Quickly</a></li> |
2455 | + <li><a href="/resources/platform/api">API</a></li> |
2456 | + <li><a href="/resources/platform/documentation/platform-diagram">Platform overview</a></li> |
2457 | + </ul> |
2458 | + <ul> |
2459 | + <li><a href="/publish">Publish</a></li> |
2460 | + <li class="page_item page-item-24"><a href="http://developer.ubuntu.com/publish/commercial-software-faqs/">Commercial software FAQs</a></li> |
2461 | + <li class="page_item page-item-34"><a href="http://developer.ubuntu.com/publish/application-states/">Application states</a></li> |
2462 | + <li class="page_item page-item-577"><a href="http://developer.ubuntu.com/publish/my-apps-packages/">Uploading your app</a></li> |
2463 | + <li class="page_item page-item-404"><a href="http://developer.ubuntu.com/publish/ubuntu-software-centre/">Ubuntu Software Centre</a></li> |
2464 | + <li class="page_item page-item-427"><a href="http://developer.ubuntu.com/publish/licence-key-infrastructure/">Licence key infrastructure</a></li> |
2465 | + <li class="page_item page-item-1230"><a href="http://developer.ubuntu.com/publish/updating-your-app/">Updating your app</a></li> |
2466 | + </ul> |
2467 | + <ul> |
2468 | + <li><a href="/community">Community</a></li> |
2469 | + <li class="page_item page-item-28"><a href="http://developer.ubuntu.com/community/app-developer-blog/">App Developer Blog</a></li> |
2470 | + <li class="page_item page-item-30"><a href="http://developer.ubuntu.com/community/submit-a-tutorial/">Submit a tutorial</a></li> |
2471 | + <li class="page_item page-item-32"><a href="http://developer.ubuntu.com/community/app-review-board-charter/">App Review Board charter</a></li> |
2472 | + <li class="page_item page-item-2987"><a href="http://developer.ubuntu.com/community/on-air/">On air</a> |
2473 | + <ul class='children'> |
2474 | + <li class="page_item page-item-3066"><a href="http://developer.ubuntu.com/community/on-air/recordings/">Recordings</a></li> |
2475 | + </ul> |
2476 | + </li> |
2477 | + </ul> |
2478 | + <ul class="last"> |
2479 | + <li><a href="https://myapps.developer.ubuntu.com/dev">My Apps</a></li> |
2480 | + <li><a href="https://myapps.developer.ubuntu.com/openid/login/?next=/dev">Sign in or register</a></li> |
2481 | + <li><a href="https://myapps.developer.ubuntu.com/dev/account">My account</a></li> |
2482 | + </ul> |
2483 | + </nav> |
2484 | + <p>© 2013 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd. |
2485 | + <a class="link-bug" href="https://bugs.launchpad.net/ubuntudeveloperportal/+filebug"> |
2486 | + Report a bug on this site |
2487 | + </a> |
2488 | + </p> |
2489 | + </div> |
2490 | +</footer> |
2491 | +<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> |
2492 | +<script type="text/javascript" src="http://developer.ubuntu.com/wp-content/themes/wordpress-theme-ubuntudeveloper/js/base.js"></script>\n" |
2493 | |
2494 | === added file 'doc/qt/cpp/ubuntu-appdev-site-header.html' |
2495 | --- doc/qt/cpp/ubuntu-appdev-site-header.html 1970-01-01 00:00:00 +0000 |
2496 | +++ doc/qt/cpp/ubuntu-appdev-site-header.html 2015-05-13 10:12:45 +0000 |
2497 | @@ -0,0 +1,35 @@ |
2498 | +<header> |
2499 | + <div class="header-login"> |
2500 | + <ul> |
2501 | + <li><a href="https://myapps.developer.ubuntu.com/openid/login/?next\=/dev">Sign in or register</a></li> |
2502 | + </ul> |
2503 | + </div> |
2504 | + <div class="header-navigation"> |
2505 | + <div> |
2506 | + <nav role="navigation"> |
2507 | + <ul> |
2508 | + <li class="page_item page-item-5"><a href="http://developer.ubuntu.com/">Home</a></li> |
2509 | + <li class="page_item page-item-7"><a href="http://developer.ubuntu.com/get-started/">Get started</a></li> |
2510 | + <li class="page_item page-item-9"><a href="http://developer.ubuntu.com/resources/">Resources</a></li> |
2511 | + <li class="page_item page-item-11"><a href="http://developer.ubuntu.com/publish/">Publish</a></li> |
2512 | + <li class="page_item page-item-13"><a href="http://developer.ubuntu.com/community/">Community</a></li> |
2513 | + <li><a href="https://myapps.developer.ubuntu.com/dev">My Apps</a></li> |
2514 | + <li> |
2515 | + <form id="form-search" method="get" action="/"> |
2516 | + <fieldset> |
2517 | + <input id="input-search" type="text" name="s" value="Search" /> |
2518 | + </fieldset> |
2519 | + </form> |
2520 | + </li> |
2521 | + </ul> |
2522 | + </nav> |
2523 | + <a class="logo-ubuntu" href="/"><img src="http://developer.ubuntu.com/wp-content/themes/wordpress-theme-ubuntudeveloper/img/logo-ubuntu.png" width="119" height="27" alt="Ubuntu logo" /></a> |
2524 | + <h2><a href="/">App Developer</a></h2> |
2525 | + </div> |
2526 | + </div> |
2527 | + |
2528 | +</header> |
2529 | +<div class="wrapper"> |
2530 | + <div class="main-content">\n" |
2531 | + |
2532 | + |
2533 | |
2534 | === added directory 'doc/qt/qml' |
2535 | === added file 'doc/qt/qml/CMakeLists.txt' |
2536 | --- doc/qt/qml/CMakeLists.txt 1970-01-01 00:00:00 +0000 |
2537 | +++ doc/qt/qml/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
2538 | @@ -0,0 +1,51 @@ |
2539 | +set(DOC_SOURCES |
2540 | + examples/example_networking_status.qml |
2541 | + qml-api/NetworkingStatus.qml |
2542 | + pages/mainpage.qdoc) |
2543 | + |
2544 | +# add a target to generate API documentation with qdoc |
2545 | +FIND_PROGRAM(QDOC_EXECUTABLE qdoc) |
2546 | + |
2547 | +if(QDOC_EXECUTABLE) |
2548 | + |
2549 | +configure_file( |
2550 | + "${CMAKE_CURRENT_SOURCE_DIR}/connectivity-qml.qdocconf.in" |
2551 | + "${CMAKE_CURRENT_BINARY_DIR}/connectivity-qml.qdocconf" |
2552 | + @ONLY |
2553 | +) |
2554 | + |
2555 | +add_custom_target(qmldoc |
2556 | + ALL |
2557 | + COMMAND "${QDOC_EXECUTABLE}" "${CMAKE_CURRENT_BINARY_DIR}/connectivity-qml.qdocconf" |
2558 | + WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}" |
2559 | + COMMENT "Generating QML API documentation with qdoc" VERBATIM |
2560 | + DEPENDS ${DOC_SOURCES} |
2561 | +) |
2562 | + |
2563 | +# copy stylesheet files into build directory for shadow builds |
2564 | +file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/css" |
2565 | + DESTINATION ${CMAKE_CURRENT_BINARY_DIR} |
2566 | +) |
2567 | + |
2568 | +# copy the API files over ot the build directery as there is a |
2569 | +# bug in qt5.2 qdoc for handling absolute paths |
2570 | +file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/qml-api" |
2571 | + DESTINATION ${CMAKE_CURRENT_BINARY_DIR} |
2572 | +) |
2573 | + |
2574 | +file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/pages" |
2575 | + DESTINATION ${CMAKE_CURRENT_BINARY_DIR} |
2576 | +) |
2577 | + |
2578 | +file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/examples" |
2579 | + DESTINATION ${CMAKE_CURRENT_BINARY_DIR} |
2580 | +) |
2581 | + |
2582 | +install( |
2583 | + DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/ |
2584 | + DESTINATION ${INSTALL_DOCDIR}/qml/html/ |
2585 | +) |
2586 | + |
2587 | +endif(QDOC_EXECUTABLE) |
2588 | + |
2589 | + |
2590 | |
2591 | === added file 'doc/qt/qml/connectivity-qml.qdocconf.in' |
2592 | --- doc/qt/qml/connectivity-qml.qdocconf.in 1970-01-01 00:00:00 +0000 |
2593 | +++ doc/qt/qml/connectivity-qml.qdocconf.in 2015-05-13 10:12:45 +0000 |
2594 | @@ -0,0 +1,55 @@ |
2595 | +project = Connectivity |
2596 | +description = Ubuntu Connectivity QML API |
2597 | +version = CONNECTIVITY_QT_VERSION_MAJOR@.@CONNECTIVITY_QT_VERSION_MINOR@ |
2598 | + |
2599 | +outputencoding = UTF-8 |
2600 | +sourceencoding = UTF-8 |
2601 | + |
2602 | +# Bug in Qt5.2 qdoc, does not support absolute paths |
2603 | +# just have to hack this over and copy the files to BINARY_DIR |
2604 | +#sourcedirs = @CMAKE_CURRENT_SOURCE_DIR@/pages @CMAKE_CURRENT_SOURCE_DIR@/qml-api |
2605 | +#exampledirs = @CMAKE_SOURCE_DIR@/examples/ |
2606 | +#imagedirs = @CMAKE_CURRENT_SOURCE_DIR@/../images |
2607 | +sourcedirs = pages qml-api |
2608 | +exampledirs = examples/ |
2609 | + |
2610 | +sources.fileextensions = "*.qdoc *.qml" |
2611 | +headers.fileextensions = "*.h" |
2612 | +examples.fileextensions = "*.js *.qml" |
2613 | +examples.imageextensions = "*.png *.jpeg *.jpg" |
2614 | + |
2615 | +outputdir = @CMAKE_CURRENT_BINARY_DIR@/html |
2616 | +outputformat = HTML |
2617 | + |
2618 | +outputprefixes = QML |
2619 | +outputprefixes.QML = qml- |
2620 | + |
2621 | +HTML.templatedir = @CMAKE_CURRENT_SOURCE_DIR@/ |
2622 | +HTML.nobreadcrumbs = "true" |
2623 | + |
2624 | +HTML.stylesheets = \ |
2625 | + css/reset.css \ |
2626 | + css/qtquick.css \ |
2627 | + css/base.css \ |
2628 | + css/scratch.css |
2629 | + |
2630 | +HTML.headerstyles = \ |
2631 | + "<link rel=\"stylesheet\" type=\"text/css\" href=\"style/reset.css\" />\n" \ |
2632 | + "<link rel=\"stylesheet\" type=\"text/css\" href=\"style/qtquick.css\" />\n" \ |
2633 | + "<link rel=\"stylesheet\" type=\"text/css\" href=\"style/base.css\" />\n" \ |
2634 | + "<link rel=\"stylesheet\" type=\"text/css\" href=\"style/scratch.css\" />\n" |
2635 | + |
2636 | +HTML.postheader = \ |
2637 | + " <div class=\"wrapper\">\n" \ |
2638 | + " <div class=\"main-content\">\n" |
2639 | + |
2640 | +HTML.footer = \ |
2641 | + "</div></div>\n" \ |
2642 | + "<div class=\"shadow\"></div>\n" \ |
2643 | + "<footer>\n" \ |
2644 | + " <div>\n" \ |
2645 | + " <nav role=\"navigation\" class=\"clearfix\">\n" \ |
2646 | + " </nav>\n" \ |
2647 | + " <p>© 2014 Canonical Ltd. Ubuntu and Canonical are registered trademarks of Canonical Ltd.</p>\n" \ |
2648 | + " </div>\n" \ |
2649 | + "</footer>\n" |
2650 | |
2651 | === added directory 'doc/qt/qml/css' |
2652 | === added file 'doc/qt/qml/css/base.css' |
2653 | --- doc/qt/qml/css/base.css 1970-01-01 00:00:00 +0000 |
2654 | +++ doc/qt/qml/css/base.css 2015-05-13 10:12:45 +0000 |
2655 | @@ -0,0 +1,638 @@ |
2656 | +/** |
2657 | +* Ubuntu Developer base stylesheet |
2658 | +* |
2659 | +* A base stylesheet containing site-wide styles |
2660 | +* |
2661 | +* @project Ubuntu Developer |
2662 | +* @version 1.0 |
2663 | +* @author Canonical Web Team: Steve Edwards |
2664 | +* @copyright 2011 Canonical Ltd. |
2665 | +*/ |
2666 | + |
2667 | +/** |
2668 | +* @section Global |
2669 | +*/ |
2670 | + |
2671 | +body { |
2672 | + font-family: 'Ubuntu', 'Ubuntu Beta', UbuntuBeta, Ubuntu, 'Bitstream Vera Sans', 'DejaVu Sans', Tahoma, sans-serif; |
2673 | + font-size: 13px; |
2674 | + line-height: 1.4; |
2675 | + color: #333; |
2676 | +} |
2677 | +a { |
2678 | + color: #dd4814; |
2679 | + text-decoration: none; |
2680 | + outline: 0; |
2681 | +} |
2682 | +p, dl { |
2683 | + margin-bottom: 10px; |
2684 | +} |
2685 | +strong { |
2686 | + font-weight: bold; |
2687 | +} |
2688 | +em { |
2689 | + font-style: italic; |
2690 | +} |
2691 | +code{ |
2692 | + padding: 10px; |
2693 | + font-family: 'Ubuntu Mono', 'Consolas', 'Monaco', 'DejaVu Sans Mono', Courier, monospace; |
2694 | + background-color: #fdf6f2; |
2695 | + display: block; |
2696 | + margin-bottom: 10px; |
2697 | + -moz-border-radius: 4px; |
2698 | + -webkit-border-radius: 4px; |
2699 | + border-radius: 4px; |
2700 | +} |
2701 | +h1 { |
2702 | + font-size: 36px; |
2703 | + line-height: 1.1; |
2704 | + margin-bottom: 20px; |
2705 | +} |
2706 | +article h1, |
2707 | +h2 { |
2708 | + font-size: 24px; |
2709 | + line-height: 1.2; |
2710 | + margin-bottom: 14px; |
2711 | +} |
2712 | +h3 { |
2713 | + font-size: 16px; |
2714 | + line-height: 1.3; |
2715 | + margin-bottom: 8px; |
2716 | +} |
2717 | +h4 { |
2718 | + font-weight: bold; |
2719 | +} |
2720 | + |
2721 | +time { |
2722 | + color:#999; |
2723 | +} |
2724 | + |
2725 | +/** |
2726 | +* @section Structure |
2727 | +*/ |
2728 | + |
2729 | +.header-login, |
2730 | +.header-navigation div, |
2731 | +.header-content div { |
2732 | + margin: 0 auto; |
2733 | + width: 940px; |
2734 | +} |
2735 | + |
2736 | +.header-content h1{ |
2737 | + background-color:#ffffff; |
2738 | + display:inline-block; |
2739 | +} |
2740 | + |
2741 | +.header-content h2{ |
2742 | + background-color:#ffffff; |
2743 | + display:table; |
2744 | +} |
2745 | + |
2746 | +.header-login ul { |
2747 | + margin: 4px 0; |
2748 | + float: right; |
2749 | +} |
2750 | +.header-login li { |
2751 | + margin-right: 10px; |
2752 | + float: left; |
2753 | +} |
2754 | +.header-login a { |
2755 | + color: #333; |
2756 | +} |
2757 | +.header-navigation { |
2758 | + border-top: 2px solid #dd4814; |
2759 | + border-bottom: 2px solid #dd4814; |
2760 | + background-color: #fff; |
2761 | + height: 54px; |
2762 | + clear: right; |
2763 | + overflow: hidden; |
2764 | +} |
2765 | +.header-navigation nav ul { |
2766 | + border-right: 1px solid #dd4814; |
2767 | + float: right; |
2768 | +} |
2769 | +.header-navigation nav li { |
2770 | + border-left: 1px solid #dd4814; |
2771 | + float: left; |
2772 | + height: 54px; |
2773 | +} |
2774 | +.header-navigation nav a { |
2775 | + padding: 18px 14px 0; |
2776 | + font-size: 14px; |
2777 | + display: block; |
2778 | + height: 36px; |
2779 | +} |
2780 | +.header-navigation nav a:hover { |
2781 | + background-color: #fcece7; |
2782 | +} |
2783 | +.header-navigation nav .current_page_item a, |
2784 | +.header-navigation nav .current_page_parent a, |
2785 | +.header-navigation nav .current_page_ancestor a { |
2786 | + background-color: #dd4814; |
2787 | + color: #fff; |
2788 | +} |
2789 | +.header-navigation input { |
2790 | + margin: 12px 10px 0 10px; |
2791 | + padding: 5px; |
2792 | + border-top: 1px solid #a1a1a1; |
2793 | + border-right: 1px solid #e0e0e0; |
2794 | + border-bottom: 1px solid #fff; |
2795 | + border-left: 1px solid #e0e0e0; |
2796 | + width: 90px; |
2797 | + font-style: italic; |
2798 | + color: #ccc; |
2799 | + -moz-border-radius: 3px; |
2800 | + -webkit-border-radius: 3px; |
2801 | + border-radius: 3px; |
2802 | + -moz-box-shadow: inset 0 1px 1px #e0e0e0; |
2803 | + -webkit-box-shadow: inset 0 1px 1px #e0e0e0; |
2804 | + box-shadow: inset 0 1px 1px #e0e0e0; |
2805 | +} |
2806 | +.header-navigation h2 { |
2807 | + margin: 18px 0 0 6px; |
2808 | + text-transform: lowercase; |
2809 | + font-size: 22px; |
2810 | + color: #dd4814; |
2811 | + float: left; |
2812 | +} |
2813 | +.header-navigation .logo-ubuntu { |
2814 | + margin-top: 12px; |
2815 | + float: left; |
2816 | +} |
2817 | +.header-content .header-navigation-secondary { |
2818 | + margin-bottom: 40px; |
2819 | + padding: 0; |
2820 | + position: relative; |
2821 | + z-index: 2; |
2822 | +} |
2823 | +.header-navigation-secondary div { |
2824 | + padding: 0; |
2825 | + border: 2px solid #dd4814; |
2826 | + -moz-border-radius: 0px 0px 4px 4px; |
2827 | + -webkit-border-radius: 0px 0px 4px 4px; |
2828 | + border-radius: 0px 0px 4px 4px; |
2829 | + background: #fff; |
2830 | + border-top: 0px; |
2831 | + width: 936px; |
2832 | +} |
2833 | +.header-navigation-secondary nav li { |
2834 | + float: left; |
2835 | +} |
2836 | +.header-navigation-secondary nav li a { |
2837 | + color: #333; |
2838 | + display: block; |
2839 | + height: 25px; |
2840 | + padding: 8px 8px 0; |
2841 | +} |
2842 | +.header-navigation-secondary nav li:hover, |
2843 | +.header-navigation-secondary nav .current_page_item a { |
2844 | + background: url("../img/sec-nav-hover.gif"); |
2845 | +} |
2846 | +.header-content { |
2847 | + padding-bottom: 30px; |
2848 | + border-bottom: 1px solid #e0e0e0; |
2849 | + -moz-box-shadow: 0 1px 3px #e0e0e0; |
2850 | + -webkit-box-shadow: 0 1px 3px #e0e0e0; |
2851 | + box-shadow: 0 1px 3px #e0e0e0; |
2852 | + margin-bottom: 3px; |
2853 | + position: relative; |
2854 | + overflow: hidden; |
2855 | +} |
2856 | +footer { |
2857 | + padding: 10px 10px 40px 10px; |
2858 | + position: relative; |
2859 | + -moz-border-radius: 0 0 4px 4px; |
2860 | + -webkit-border-radius: 0 0 4px 4px; |
2861 | + border-radius: 0 0 4px 4px; |
2862 | + font-size: 12px; |
2863 | + background: url("../img/background-footer.png") repeat scroll 0 0 #f7f6f5; |
2864 | +} |
2865 | +footer div { |
2866 | + margin: 0 auto; |
2867 | + padding: 0 10px; |
2868 | + width: 940px; |
2869 | +} |
2870 | +footer a { |
2871 | + color: #000; |
2872 | +} |
2873 | +footer nav ul { |
2874 | + margin: 10px 17px 30px 0; |
2875 | + width: 172px; |
2876 | + display: inline-block; |
2877 | + vertical-align: top; |
2878 | + height: auto; |
2879 | + zoom: 1; |
2880 | + *display: inline; |
2881 | +} |
2882 | +footer nav ul.last { |
2883 | + margin-right: 0; |
2884 | +} |
2885 | +footer nav li { |
2886 | + margin-bottom: 8px; |
2887 | +} |
2888 | +footer nav li:first-child { |
2889 | + font-weight: bold; |
2890 | +} |
2891 | +footer p { |
2892 | + margin-bottom: 0; |
2893 | +} |
2894 | +#content { |
2895 | + padding-top: 35px; |
2896 | +} |
2897 | +.arrow-nav { |
2898 | + display: none; |
2899 | + position: absolute; |
2900 | + top: -1px; |
2901 | + z-index: 3; |
2902 | +} |
2903 | +.shadow { |
2904 | + margin: 30px 0 3px 0; |
2905 | + border-bottom: 1px solid #e0e0e0; |
2906 | + -moz-box-shadow: 0 2px 3px #e0e0e0; |
2907 | + -webkit-box-shadow: 0 2px 3px #e0e0e0; |
2908 | + box-shadow: 0 2px 3px #e0e0e0; |
2909 | + height: 3px; |
2910 | +} |
2911 | + |
2912 | +/** |
2913 | +* @section Site-wide |
2914 | +*/ |
2915 | + |
2916 | +#content h2{ |
2917 | + font-size:24px; |
2918 | +} |
2919 | + |
2920 | +.box-orange { |
2921 | + padding: 10px; |
2922 | + border: 3px solid #dd4814; |
2923 | + -moz-border-radius: 4px; |
2924 | + -webkit-border-radius: 4px; |
2925 | + border-radius: 4px; |
2926 | +} |
2927 | +.box-orange .link-action-small { |
2928 | + float: right; |
2929 | + margin: 0 0 0 20px; |
2930 | +} |
2931 | +.link-bug { |
2932 | + margin-left: 10px; |
2933 | + color: #999; |
2934 | +} |
2935 | +.link-action { |
2936 | + float: left; |
2937 | + margin-bottom: 20px; |
2938 | + padding: 8px 12px; |
2939 | + display: block; |
2940 | + background-color: #dd4814; |
2941 | + color: #fff; |
2942 | + -moz-border-radius: 20px; |
2943 | + -webkit-border-radius: 20px; |
2944 | + border-radius: 20px; |
2945 | + font-size: 16px; |
2946 | + line-height: 1.3; |
2947 | + border-top: 3px solid #e6633a; |
2948 | + border-bottom: 3px solid #c03d14; |
2949 | +} |
2950 | +.link-action2 { |
2951 | + float: left; |
2952 | + display: block; |
2953 | + color: #fff; |
2954 | + font-size: 16px; |
2955 | + line-height: 1.3; |
2956 | +} |
2957 | +.link-action2 span{ |
2958 | + display:block; |
2959 | + float:left; |
2960 | +} |
2961 | +.link-action2 .cta-left{ |
2962 | + background:url(../img/button-cta-left.png) no-repeat; |
2963 | + width:22px; |
2964 | + height:48px; |
2965 | +} |
2966 | +.link-action2 .cta-center{ |
2967 | + background:url(../img/button-cta-slice.png) repeat-x; |
2968 | + line-height:45px; |
2969 | + height:48px; |
2970 | +} |
2971 | +.link-action2 .cta-right{ |
2972 | + background:url(../img/button-cta-right.png) no-repeat; |
2973 | + width:22px; |
2974 | + height:48px; |
2975 | +} |
2976 | + |
2977 | +.link-action-small { |
2978 | + float: left; |
2979 | + display: block; |
2980 | + color: #fff; |
2981 | + font-size: 16px; |
2982 | +} |
2983 | +.link-action-small span{ |
2984 | + display:block; |
2985 | + float:left; |
2986 | + height:42px; |
2987 | +} |
2988 | +.link-action-small .cta-left{ |
2989 | + background:url(../img/button-cta-left-small.png) no-repeat; |
2990 | + width:19px; |
2991 | +} |
2992 | +.link-action-small .cta-center{ |
2993 | + background:url(../img/button-cta-slice-small.png) repeat-x; |
2994 | + line-height:42px; |
2995 | +} |
2996 | +.link-action-small .cta-right{ |
2997 | + background:url(../img/button-cta-right-small.png) no-repeat; |
2998 | + width:19px; |
2999 | +} |
3000 | + |
3001 | +.link-action:active { |
3002 | + position: relative; |
3003 | + top: 1px; |
3004 | +} |
3005 | +.link-action2:active { |
3006 | + position: relative; |
3007 | + top: 1px; |
3008 | +} |
3009 | +.link-action-small:active { |
3010 | + position: relative; |
3011 | + top: 1px; |
3012 | +} |
3013 | +.list-bullets li { |
3014 | + margin-bottom: 10px; |
3015 | + list-style: disc; |
3016 | + list-style-position: inside; |
3017 | +} |
3018 | +.box { |
3019 | + margin-bottom: 30px; |
3020 | + padding: 15px; |
3021 | + border: 1px solid #aea79f; |
3022 | + -moz-border-radius: 4px; |
3023 | + -webkit-border-radius: 4px; |
3024 | + border-radius: 4px; |
3025 | +} |
3026 | +.box-padded { |
3027 | + margin-bottom: 30px; |
3028 | + padding: 5px; |
3029 | + border: 2px solid #aea79f; |
3030 | + -moz-border-radius: 4px; |
3031 | + -webkit-border-radius: 4px; |
3032 | + border-radius: 4px; |
3033 | + background: url("../img/pattern-featured.gif") repeat scroll 0 0 #ebe9e7; |
3034 | + overflow: hidden; |
3035 | +} |
3036 | +.box-padded h3 { |
3037 | + margin: 5px 0 10px 5px; |
3038 | +} |
3039 | +.box-padded div { |
3040 | + padding: 10px; |
3041 | + border: 1px solid #aea79f; |
3042 | + -moz-border-radius: 4px; |
3043 | + -webkit-border-radius: 4px; |
3044 | + border-radius: 4px; |
3045 | + background-color: #fff; |
3046 | + overflow: hidden; |
3047 | +} |
3048 | +.box-padded li { |
3049 | + padding: 0 10px; |
3050 | + float: left; |
3051 | + width: 211px; |
3052 | + border-right: 1px dotted #aea79f; |
3053 | +} |
3054 | +.box-padded li.first { |
3055 | + padding: 0; |
3056 | + margin-bottom: 0; |
3057 | +} |
3058 | +.box-padded li.last { |
3059 | + border: 0; |
3060 | + width: 217px; |
3061 | +} |
3062 | +.box-padded img { |
3063 | + margin: 0 10px 50px 0; |
3064 | + float: left; |
3065 | + -moz-border-radius: 8px; |
3066 | + -webkit-border-radius: 8px; |
3067 | + border-radius: 8px; |
3068 | +} |
3069 | +.box-clear { |
3070 | + margin-bottom: 40px; |
3071 | +} |
3072 | +.box-clear .grid-4.first { |
3073 | + margin-right: 15px; |
3074 | + padding-right: 15px; |
3075 | +} |
3076 | +.box-clear .grid-4 { |
3077 | + margin-left: 0; |
3078 | + margin-right: 10px; |
3079 | + padding-right: 10px; |
3080 | + width: 298px; |
3081 | +} |
3082 | +.box-clear time { |
3083 | + display: block; |
3084 | + border-bottom: 1px dotted #aea79f; |
3085 | + padding-bottom: 10px; |
3086 | + margin-bottom: 10px; |
3087 | +} |
3088 | +.box-clear div.first { |
3089 | + border-right: 1px dotted #aea79f; |
3090 | +} |
3091 | +.box-clear a { |
3092 | + display: block; |
3093 | +} |
3094 | +.box-clear .rss { |
3095 | + background: url("../img/rss.jpg") no-repeat scroll 0 center; |
3096 | + padding-left: 20px; |
3097 | +} |
3098 | +.box-clear .location { |
3099 | + display: block; |
3100 | + margin-bottom: 1px; |
3101 | +} |
3102 | +.box-clear .last { |
3103 | + margin: 0; |
3104 | + padding-right: 0; |
3105 | + -moz-border-radius: 4px; |
3106 | + -webkit-border-radius: 4px; |
3107 | + border-radius: 4px; |
3108 | + width: 293px; |
3109 | +} |
3110 | + |
3111 | +/* Widgets */ |
3112 | + |
3113 | +.ui-state-focus { |
3114 | + outline: none; |
3115 | +} |
3116 | +.ui-accordion { |
3117 | + border-bottom: 1px dotted #aea79f; |
3118 | +} |
3119 | +.ui-accordion a { |
3120 | + display: block; |
3121 | +} |
3122 | +.ui-accordion h3 { |
3123 | + margin-bottom: 0; |
3124 | + border-top: 1px dotted #aea79f; |
3125 | + position: relative; |
3126 | + font-size: 13px; |
3127 | + font-weight: bold; |
3128 | +} |
3129 | +.ui-accordion h3 a { |
3130 | + padding: 10px 0; |
3131 | + color: #333; |
3132 | +} |
3133 | +.ui-accordion h4 { |
3134 | + margin-bottom: 5px; |
3135 | +} |
3136 | +.ui-accordion div fieldset { |
3137 | + padding-bottom: 5px; |
3138 | +} |
3139 | +.ui-accordion div li, |
3140 | +.ui-accordion div input { |
3141 | + margin-bottom: 10px; |
3142 | +} |
3143 | +.ui-accordion .ui-icon { |
3144 | + position: absolute; |
3145 | + top: 15px; |
3146 | + right: 0; |
3147 | + display: block; |
3148 | + width: 8px; |
3149 | + height: 8px; |
3150 | + background: url("../img/icon-accordion-inactive.png") 0 0 no-repeat transparent; |
3151 | +} |
3152 | +.ui-accordion .ui-state-active .ui-icon { |
3153 | + background-image: url("../img/icon-accordion-active.png"); |
3154 | +} |
3155 | +.ui-accordion .current_page_item a { |
3156 | + color: #333; |
3157 | +} |
3158 | +.container-tweet { |
3159 | + -moz-border-radius: 4px 4px 4px 4px; |
3160 | + -webkit-border-radius: 4px 4px 4px 4px; |
3161 | + border-radius: 4px 4px 4px 4px; |
3162 | + padding: 10px 10px 10px; |
3163 | + background-color: #f7f7f7; |
3164 | +} |
3165 | +.container-tweet .tweet-follow { |
3166 | + margin-top: 10px; |
3167 | + margin-bottom: -10px; |
3168 | + padding-left: 55px; |
3169 | + padding-bottom: 6px; |
3170 | + background: url("../img/tweet-follow.png") 0 5px no-repeat; |
3171 | + display: block; |
3172 | +} |
3173 | +.container-tweet .tweet-follow span { |
3174 | + font-size: 16px; |
3175 | + font-weight: bold; |
3176 | + line-height: 1.2; |
3177 | + display: block; |
3178 | +} |
3179 | +.tweet a { |
3180 | + display: inline; |
3181 | +} |
3182 | +.tweet .tweet_text { |
3183 | + padding: 10px; |
3184 | + background-color: #fff; |
3185 | + -moz-border-radius: 4px 4px 4px 4px; |
3186 | + -webkit-border-radius: 4px 4px 4px 4px; |
3187 | + border-radius: 4px 4px 4px 4px; |
3188 | + border: 1px solid #dd4814; |
3189 | + font-size: 16px; |
3190 | + display: block; |
3191 | + clear: both; |
3192 | +} |
3193 | +.tweet.tweet-small .tweet_text { |
3194 | + font-size: inherit; |
3195 | +} |
3196 | +.tweet .tweet_text a { |
3197 | + color: #333; |
3198 | +} |
3199 | +.tweet .tweet_time, |
3200 | +.tweet .tweet_user_and_time { |
3201 | + padding: 15px 0 10px 0; |
3202 | + position: relative; |
3203 | + top: -2px; |
3204 | + background: url("../img/tweet-arrow.png") no-repeat; |
3205 | + display: block; |
3206 | +} |
3207 | +.tweet .tweet_odd .tweet_time, |
3208 | +.tweet .tweet_odd .tweet_user_and_time { |
3209 | + background-position: right 0; |
3210 | + float: right; |
3211 | +} |
3212 | +.tweet .tweet_even .tweet_time, |
3213 | +.tweet .tweet_even .tweet_user_and_time { |
3214 | + background-position: left 0; |
3215 | + float: left; |
3216 | +} |
3217 | + |
3218 | +/* Search */ |
3219 | + |
3220 | +#content .list-search li { |
3221 | + list-style-type:none; |
3222 | + border:0px; |
3223 | + margin-bottom: 15px; |
3224 | + padding-top: 15px; |
3225 | +} |
3226 | + |
3227 | +/* Blog */ |
3228 | + |
3229 | +.blog-article #nav-single { |
3230 | + margin-top: 30px; |
3231 | + margin-bottom: 30px; |
3232 | +} |
3233 | +.blog-article #nav-single .nav-next { |
3234 | + float: right; |
3235 | +} |
3236 | +.blog-article article header .entry-meta { |
3237 | + margin-bottom: 20px; |
3238 | +} |
3239 | +.blog-article article .entry-meta { |
3240 | + color: #999; |
3241 | +} |
3242 | +.blog-article #respond form input[type="submit"] { |
3243 | + float: left; |
3244 | + cursor: pointer; |
3245 | + margin-bottom: 20px; |
3246 | + padding: 8px 12px; |
3247 | + display: block; |
3248 | + background-color: #dd4814; |
3249 | + color: #fff; |
3250 | + -moz-border-radius: 20px; |
3251 | + -webkit-border-radius: 20px; |
3252 | + border-radius: 20px; |
3253 | + font-size: 16px; |
3254 | + line-height: 1.3; |
3255 | + border-top: 3px solid #e6633a; |
3256 | + border-left: 3px solid #e6633a; |
3257 | + border-right: 3px solid #e6633a; |
3258 | + border-bottom: 3px solid #c03d14; |
3259 | +} |
3260 | +.blog-article #respond form input[type="submit"]:active { |
3261 | + position: relative; |
3262 | + top: 1px; |
3263 | +} |
3264 | + |
3265 | +.alignnone{ |
3266 | + float:left; |
3267 | + margin:10px 20px 10px 0; |
3268 | +} |
3269 | +.alignleft{ |
3270 | + float:left; |
3271 | + margin:10px 20px 10px 0; |
3272 | +} |
3273 | +.alignright{ |
3274 | + float:right; |
3275 | + margin:10px 0 10px 20px; |
3276 | +} |
3277 | + |
3278 | +.aligncenter{ |
3279 | + float:left; |
3280 | + margin:10px 20px 10px 0; |
3281 | +} |
3282 | +.entry-content h2, .entry-content h3{ |
3283 | + margin-top:20px; |
3284 | +} |
3285 | +.entry-content ul li{ |
3286 | + list-style-type: circle; |
3287 | + margin-left:16px; |
3288 | +} |
3289 | + |
3290 | +.entry-content hr{ |
3291 | + border:none; |
3292 | + border-top: 1px dotted #AEA79F; |
3293 | +} |
3294 | |
3295 | === added file 'doc/qt/qml/css/qtquick.css' |
3296 | --- doc/qt/qml/css/qtquick.css 1970-01-01 00:00:00 +0000 |
3297 | +++ doc/qt/qml/css/qtquick.css 2015-05-13 10:12:45 +0000 |
3298 | @@ -0,0 +1,772 @@ |
3299 | +@media screen |
3300 | +{ |
3301 | + |
3302 | +/* basic elements */ |
3303 | + html |
3304 | + { |
3305 | + color: #000000; |
3306 | + background: #FFFFFF; |
3307 | + } |
3308 | + table |
3309 | + { |
3310 | + border-collapse: collapse; |
3311 | + border-spacing: 0; |
3312 | + } |
3313 | + fieldset, img |
3314 | + { |
3315 | + border: 0; |
3316 | + max-width:100%; |
3317 | + } |
3318 | + address, caption, cite, code, dfn, em, strong, th, var, optgroup |
3319 | + { |
3320 | + font-style: inherit; |
3321 | + font-weight: inherit; |
3322 | + } |
3323 | + del, ins |
3324 | + { |
3325 | + text-decoration: none; |
3326 | + } |
3327 | + ol li |
3328 | + { |
3329 | + list-style: decimal; |
3330 | + } |
3331 | + ul li |
3332 | + { |
3333 | + list-style: none; |
3334 | + } |
3335 | + caption, th |
3336 | + { |
3337 | + text-align: left; |
3338 | + } |
3339 | + h1.title |
3340 | + { |
3341 | + font-weight: bold; |
3342 | + font-size: 150%; |
3343 | + } |
3344 | + h0 |
3345 | + { |
3346 | + font-weight: bold; |
3347 | + font-size: 130%; |
3348 | + } |
3349 | + h1, h2, h3, h4, h5, h6 |
3350 | + { |
3351 | + font-size: 100%; |
3352 | + } |
3353 | + q:before, q:after |
3354 | + { |
3355 | + content: ''; |
3356 | + } |
3357 | + abbr, acronym |
3358 | + { |
3359 | + border: 0; |
3360 | + font-variant: normal; |
3361 | + } |
3362 | + sup, sub |
3363 | + { |
3364 | + vertical-align: baseline; |
3365 | + } |
3366 | + tt, .qmlreadonly span, .qmldefault span |
3367 | + { |
3368 | + word-spacing:0.5em; |
3369 | + } |
3370 | + legend |
3371 | + { |
3372 | + color: #000000; |
3373 | + } |
3374 | + strong |
3375 | + { |
3376 | + font-weight: bold; |
3377 | + } |
3378 | + em |
3379 | + { |
3380 | + font-style: italic; |
3381 | + } |
3382 | + |
3383 | + body |
3384 | + { |
3385 | + margin: 0 1.5em 0 1.5em; |
3386 | + font-family: ubuntu; |
3387 | + line-height: normal |
3388 | + } |
3389 | + a |
3390 | + { |
3391 | + color: #00732F; |
3392 | + text-decoration: none; |
3393 | + } |
3394 | + hr |
3395 | + { |
3396 | + background-color: #E6E6E6; |
3397 | + border: 1px solid #E6E6E6; |
3398 | + height: 1px; |
3399 | + width: 100%; |
3400 | + text-align: left; |
3401 | + margin: 1.5em 0 1.5em 0; |
3402 | + } |
3403 | + |
3404 | + pre |
3405 | + { |
3406 | + border: 1px solid #DDDDDD; |
3407 | + -moz-border-radius: 0.7em 0.7em 0.7em 0.7em; |
3408 | + -webkit-border-radius: 0.7em 0.7em 0.7em 0.7em; |
3409 | + border-radius: 0.7em 0.7em 0.7em 0.7em; |
3410 | + padding: 1em 1em 1em 1em; |
3411 | + overflow-x: auto; |
3412 | + } |
3413 | + table, pre |
3414 | + { |
3415 | + -moz-border-radius: 0.7em 0.7em 0.7em 0.7em; |
3416 | + -webkit-border-radius: 0.7em 0.7em 0.7em 0.7em; |
3417 | + border-radius: 0.7em 0.7em 0.7em 0.7em; |
3418 | + background-color: #F6F6F6; |
3419 | + border: 1px solid #E6E6E6; |
3420 | + border-collapse: separate; |
3421 | + margin-bottom: 2.5em; |
3422 | + } |
3423 | + pre { |
3424 | + font-size: 90%; |
3425 | + display: block; |
3426 | + overflow:hidden; |
3427 | + } |
3428 | + thead |
3429 | + { |
3430 | + margin-top: 0.5em; |
3431 | + font-weight: bold |
3432 | + } |
3433 | + th |
3434 | + { |
3435 | + padding: 0.5em 1.5em 0.5em 1em; |
3436 | + background-color: #E1E1E1; |
3437 | + border-left: 1px solid #E6E6E6; |
3438 | + } |
3439 | + td |
3440 | + { |
3441 | + padding: 0.25em 1.5em 0.25em 1em; |
3442 | + } |
3443 | + |
3444 | + td.rightAlign |
3445 | + { |
3446 | + padding: 0.25em 0.5em 0.25em 1em; |
3447 | + } |
3448 | + table tr.odd |
3449 | + { |
3450 | + border-left: 1px solid #E6E6E6; |
3451 | + background-color: #F6F6F6; |
3452 | + color: black; |
3453 | + } |
3454 | + table tr.even |
3455 | + { |
3456 | + border-left: 1px solid #E6E6E6; |
3457 | + background-color: #ffffff; |
3458 | + color: #202020; |
3459 | + } |
3460 | + |
3461 | + div.float-left |
3462 | + { |
3463 | + float: left; margin-right: 2em |
3464 | + } |
3465 | + div.float-right |
3466 | + { |
3467 | + float: right; margin-left: 2em |
3468 | + } |
3469 | + |
3470 | + span.comment |
3471 | + { |
3472 | + color: #008B00; |
3473 | + } |
3474 | + span.string, span.char |
3475 | + { |
3476 | + color: #000084; |
3477 | + } |
3478 | + span.number |
3479 | + { |
3480 | + color: #a46200; |
3481 | + } |
3482 | + span.operator |
3483 | + { |
3484 | + color: #202020; |
3485 | + } |
3486 | + span.keyword |
3487 | + { |
3488 | + color: #840000; |
3489 | + } |
3490 | + span.name |
3491 | + { |
3492 | + color: black |
3493 | + } |
3494 | + span.type |
3495 | + { |
3496 | + font-weight: bold |
3497 | + } |
3498 | + span.type a:visited |
3499 | + { |
3500 | + color: #0F5300; |
3501 | + } |
3502 | + span.preprocessor |
3503 | + { |
3504 | + color: #404040 |
3505 | + } |
3506 | +/* end basic elements */ |
3507 | + |
3508 | +/* font style elements */ |
3509 | + .heading |
3510 | + { |
3511 | + font-weight: bold; |
3512 | + font-size: 125%; |
3513 | + } |
3514 | + .subtitle |
3515 | + { |
3516 | + font-size: 110% |
3517 | + } |
3518 | + .small-subtitle |
3519 | + { |
3520 | + font-size: 100% |
3521 | + } |
3522 | + .red |
3523 | + { |
3524 | + color:red; |
3525 | + } |
3526 | +/* end font style elements */ |
3527 | + |
3528 | +/* global settings*/ |
3529 | + .header, .footer |
3530 | + { |
3531 | + display: block; |
3532 | + clear: both; |
3533 | + overflow: hidden; |
3534 | + } |
3535 | +/* end global settings*/ |
3536 | + |
3537 | +/* header elements */ |
3538 | + .header .qtref |
3539 | + { |
3540 | + color: #00732F; |
3541 | + font-weight: bold; |
3542 | + font-size: 130%; |
3543 | + } |
3544 | + |
3545 | + .header .content |
3546 | + { |
3547 | + margin-left: 5px; |
3548 | + margin-top: 5px; |
3549 | + margin-bottom: 0.5em; |
3550 | + } |
3551 | + |
3552 | + .header .breadcrumb |
3553 | + { |
3554 | + font-size: 90%; |
3555 | + padding: 0.5em 0 0.5em 1em; |
3556 | + margin: 0; |
3557 | + background-color: #fafafa; |
3558 | + height: 1.35em; |
3559 | + border-bottom: 1px solid #d1d1d1; |
3560 | + } |
3561 | + |
3562 | + .header .breadcrumb ul |
3563 | + { |
3564 | + margin: 0; |
3565 | + padding: 0; |
3566 | + } |
3567 | + |
3568 | + .header .content |
3569 | + { |
3570 | + word-wrap: break-word; |
3571 | + } |
3572 | + |
3573 | + .header .breadcrumb ul li |
3574 | + { |
3575 | + float: left; |
3576 | + background: url(../images/breadcrumb.png) no-repeat 0 3px; |
3577 | + padding-left: 1.5em; |
3578 | + margin-left: 1.5em; |
3579 | + } |
3580 | + |
3581 | + .header .breadcrumb ul li.last |
3582 | + { |
3583 | + font-weight: normal; |
3584 | + } |
3585 | + |
3586 | + .header .breadcrumb ul li a |
3587 | + { |
3588 | + color: #00732F; |
3589 | + } |
3590 | + |
3591 | + .header .breadcrumb ul li.first |
3592 | + { |
3593 | + background-image: none; |
3594 | + padding-left: 0; |
3595 | + margin-left: 0; |
3596 | + } |
3597 | + |
3598 | + .header .content ol li { |
3599 | + background: none; |
3600 | + margin-bottom: 1.0em; |
3601 | + margin-left: 1.2em; |
3602 | + padding-left: 0 |
3603 | + } |
3604 | + |
3605 | + .header .content li |
3606 | + { |
3607 | + background: url(../images/bullet_sq.png) no-repeat 0 5px; |
3608 | + margin-bottom: 1em; |
3609 | + padding-left: 1.2em; |
3610 | + } |
3611 | + |
3612 | +/* end header elements */ |
3613 | + |
3614 | +/* content elements */ |
3615 | + .content h1 |
3616 | + { |
3617 | + font-weight: bold; |
3618 | + font-size: 130% |
3619 | + } |
3620 | + |
3621 | + .content h2 |
3622 | + { |
3623 | + font-weight: bold; |
3624 | + font-size: 120%; |
3625 | + width: 100%; |
3626 | + } |
3627 | + .content h3 |
3628 | + { |
3629 | + font-weight: bold; |
3630 | + font-size: 110%; |
3631 | + width: 100%; |
3632 | + } |
3633 | + .content table p |
3634 | + { |
3635 | + margin: 0 |
3636 | + } |
3637 | + .content ul |
3638 | + { |
3639 | + padding-left: 2.5em; |
3640 | + } |
3641 | + .content li |
3642 | + { |
3643 | + padding-top: 0.25em; |
3644 | + padding-bottom: 0.25em; |
3645 | + } |
3646 | + .content ul img { |
3647 | + vertical-align: middle; |
3648 | + } |
3649 | + |
3650 | + .content a:visited |
3651 | + { |
3652 | + color: #4c0033; |
3653 | + text-decoration: none; |
3654 | + } |
3655 | + |
3656 | + .content a:visited:hover |
3657 | + { |
3658 | + color: #4c0033; |
3659 | + text-decoration: underline; |
3660 | + } |
3661 | + |
3662 | + a:hover |
3663 | + { |
3664 | + color: #4c0033; |
3665 | + text-decoration: underline; |
3666 | + } |
3667 | + descr p a |
3668 | + { |
3669 | + text-decoration: underline; |
3670 | + } |
3671 | + |
3672 | + .descr p a:visited |
3673 | + { |
3674 | + text-decoration: underline; |
3675 | + } |
3676 | + |
3677 | + .alphaChar{ |
3678 | + width:95%; |
3679 | + background-color:#F6F6F6; |
3680 | + border:1px solid #E6E6E6; |
3681 | + -moz-border-radius: 7px 7px 7px 7px; |
3682 | + border-radius: 7px 7px 7px 7px; |
3683 | + -webkit-border-radius: 7px 7px 7px 7px; |
3684 | + font-size:12pt; |
3685 | + padding-left:10px; |
3686 | + margin-top:10px; |
3687 | + margin-bottom:10px; |
3688 | + } |
3689 | + .flowList{ |
3690 | + /*vertical-align:top;*/ |
3691 | + /*margin:20px auto;*/ |
3692 | + |
3693 | + column-count:3; |
3694 | + -webkit-column-count:3; |
3695 | + -moz-column-count:3; |
3696 | +/* |
3697 | + column-width:100%; |
3698 | + -webkit-column-width:200px; |
3699 | + -col-column-width:200px; |
3700 | +*/ |
3701 | + column-gap:41px; |
3702 | + -webkit-column-gap:41px; |
3703 | + -moz-column-gap:41px; |
3704 | + |
3705 | + column-rule: 1px dashed #ccc; |
3706 | + -webkit-column-rule: 1px dashed #ccc; |
3707 | + -moz-column-rule: 1px dashed #ccc; |
3708 | + } |
3709 | + |
3710 | + .flowList dl{ |
3711 | + } |
3712 | + .flowList dd{ |
3713 | + /*display:inline-block;*/ |
3714 | + margin-left:10px; |
3715 | + min-width:250px; |
3716 | + line-height: 1.5; |
3717 | + min-width:100%; |
3718 | + min-height:15px; |
3719 | + } |
3720 | + |
3721 | + .flowList dd a{ |
3722 | + } |
3723 | + |
3724 | + .mainContent |
3725 | + { |
3726 | + padding-left:5px; |
3727 | + } |
3728 | + |
3729 | + .content .flowList p{ |
3730 | + padding:0px; |
3731 | + } |
3732 | + |
3733 | + .content .alignedsummary |
3734 | + { |
3735 | + margin: 15px; |
3736 | + } |
3737 | + |
3738 | + |
3739 | + .qmltype |
3740 | + { |
3741 | + text-align: center; |
3742 | + font-size: 120%; |
3743 | + } |
3744 | + .qmlreadonly |
3745 | + { |
3746 | + padding-left: 5px; |
3747 | + float: right; |
3748 | + color: #254117; |
3749 | + } |
3750 | + |
3751 | + .qmldefault |
3752 | + { |
3753 | + padding-left: 5px; |
3754 | + float: right; |
3755 | + color: red; |
3756 | + } |
3757 | + |
3758 | + .qmldoc |
3759 | + { |
3760 | + } |
3761 | + |
3762 | + .generic .alphaChar{ |
3763 | + margin-top:5px; |
3764 | + } |
3765 | + |
3766 | + .generic .odd .alphaChar{ |
3767 | + background-color: #F6F6F6; |
3768 | + } |
3769 | + |
3770 | + .generic .even .alphaChar{ |
3771 | + background-color: #FFFFFF; |
3772 | + } |
3773 | + |
3774 | + .memItemRight{ |
3775 | + padding: 0.25em 1.5em 0.25em 0; |
3776 | + } |
3777 | + .highlightedCode |
3778 | + { |
3779 | + margin: 1.0em; |
3780 | + } |
3781 | + .annotated td { |
3782 | + padding: 0.25em 0.5em 0.25em 0.5em; |
3783 | + } |
3784 | + |
3785 | + .toc |
3786 | + { |
3787 | + font-size: 80% |
3788 | + } |
3789 | + |
3790 | + .header .content .toc ul |
3791 | + { |
3792 | + padding-left: 0px; |
3793 | + } |
3794 | + |
3795 | + .content .toc h3 { |
3796 | + border-bottom: 0px; |
3797 | + margin-top: 0px; |
3798 | + } |
3799 | + |
3800 | + .content .toc h3 a:hover { |
3801 | + color: #00732F; |
3802 | + text-decoration: none; |
3803 | + } |
3804 | + |
3805 | + .content .toc .level2 |
3806 | + { |
3807 | + margin-left: 1.5em; |
3808 | + } |
3809 | + |
3810 | + .content .toc .level3 |
3811 | + { |
3812 | + margin-left: 3.0em; |
3813 | + } |
3814 | + |
3815 | + .content ul li |
3816 | + { |
3817 | + background: url(../images/bullet_sq.png) no-repeat 0 0.7em; |
3818 | + padding-left: 1em |
3819 | + } |
3820 | + |
3821 | + .content .toc li |
3822 | + { |
3823 | + background: url(../images/bullet_dn.png) no-repeat 0 5px; |
3824 | + padding-left: 1em |
3825 | + } |
3826 | + |
3827 | + .relpage |
3828 | + { |
3829 | + -moz-border-radius: 7px 7px 7px 7px; |
3830 | + -webkit-border-radius: 7px 7px 7px 7px; |
3831 | + border-radius: 7px 7px 7px 7px; |
3832 | + border: 1px solid #DDDDDD; |
3833 | + padding: 25px 25px; |
3834 | + clear: both; |
3835 | + } |
3836 | + .relpage ul |
3837 | + { |
3838 | + float: none; |
3839 | + padding: 1.5em; |
3840 | + } |
3841 | + |
3842 | + h3.fn, span.fn |
3843 | + { |
3844 | + -moz-border-radius:7px 7px 7px 7px; |
3845 | + -webkit-border-radius:7px 7px 7px 7px; |
3846 | + border-radius:7px 7px 7px 7px; |
3847 | + background-color: #F6F6F6; |
3848 | + border-width: 1px; |
3849 | + border-style: solid; |
3850 | + border-color: #E6E6E6; |
3851 | + font-weight: bold; |
3852 | + word-spacing:3px; |
3853 | + padding:3px 5px; |
3854 | + } |
3855 | + |
3856 | + .functionIndex { |
3857 | + font-size:12pt; |
3858 | + word-spacing:10px; |
3859 | + margin-bottom:10px; |
3860 | + background-color: #F6F6F6; |
3861 | + border-width: 1px; |
3862 | + border-style: solid; |
3863 | + border-color: #E6E6E6; |
3864 | + -moz-border-radius: 7px 7px 7px 7px; |
3865 | + -webkit-border-radius: 7px 7px 7px 7px; |
3866 | + border-radius: 7px 7px 7px 7px; |
3867 | + width:100%; |
3868 | + } |
3869 | + |
3870 | + .centerAlign |
3871 | + { |
3872 | + text-align:center; |
3873 | + } |
3874 | + |
3875 | + .rightAlign |
3876 | + { |
3877 | + text-align:right; |
3878 | + } |
3879 | + |
3880 | + .leftAlign |
3881 | + { |
3882 | + text-align:left; |
3883 | + } |
3884 | + |
3885 | + .topAlign{ |
3886 | + vertical-align:top |
3887 | + } |
3888 | + |
3889 | + .functionIndex a{ |
3890 | + display:inline-block; |
3891 | + } |
3892 | + |
3893 | +/* end content elements */ |
3894 | +/* footer elements */ |
3895 | + |
3896 | + .footer |
3897 | + { |
3898 | + color: #393735; |
3899 | + font-size: 0.75em; |
3900 | + text-align: center; |
3901 | + padding-top: 1.5em; |
3902 | + padding-bottom: 1em; |
3903 | + background-color: #E6E7E8; |
3904 | + margin: 0; |
3905 | + } |
3906 | + .footer p |
3907 | + { |
3908 | + margin: 0.25em |
3909 | + } |
3910 | + .small |
3911 | + { |
3912 | + font-size: 0.5em; |
3913 | + } |
3914 | +/* end footer elements */ |
3915 | + |
3916 | + .item { |
3917 | + float: left; |
3918 | + position: relative; |
3919 | + width: 100%; |
3920 | + overflow: hidden; |
3921 | + } |
3922 | + |
3923 | + |
3924 | + .item .primary { |
3925 | + margin-right: 220px; |
3926 | + position: relative; |
3927 | + } |
3928 | + |
3929 | + .item hr { |
3930 | + margin-left: -220px; |
3931 | + } |
3932 | + |
3933 | + .item .secondary { |
3934 | + float: right; |
3935 | + width: 200px; |
3936 | + position: relative; |
3937 | + } |
3938 | + |
3939 | + .item .cols { |
3940 | + clear: both; |
3941 | + display: block; |
3942 | + } |
3943 | + |
3944 | + .item .cols .col { |
3945 | + float: left; |
3946 | + margin-left: 1.5%; |
3947 | + } |
3948 | + |
3949 | + .item .cols .col.first { |
3950 | + margin-left: 0; |
3951 | + } |
3952 | + |
3953 | + .item .cols.two .col { |
3954 | + width: 45%; |
3955 | + } |
3956 | + |
3957 | + .item .box { |
3958 | + margin: 0 0 10px 0; |
3959 | + } |
3960 | + |
3961 | + .item .box h3 { |
3962 | + margin: 0 0 10px 0; |
3963 | + } |
3964 | + |
3965 | + .cols.unclear { |
3966 | + clear:none; |
3967 | + } |
3968 | +} |
3969 | + |
3970 | +/* end of screen media */ |
3971 | + |
3972 | +/* start of print media */ |
3973 | + |
3974 | +@media print |
3975 | +{ |
3976 | + input, textarea, .header, .footer, .toolbar, .feedback, .wrapper .hd, .wrapper .bd .sidebar, .wrapper .ft, #feedbackBox, #blurpage, .toc, .breadcrumb, .toolbar, .floatingResult |
3977 | + { |
3978 | + display: none; |
3979 | + background: none; |
3980 | + } |
3981 | + .content |
3982 | + { |
3983 | + background: none; |
3984 | + display: block; |
3985 | + width: 100%; margin: 0; float: none; |
3986 | + } |
3987 | +} |
3988 | +/* end of print media */ |
3989 | + |
3990 | + |
3991 | +/* modify the TOC layouts */ |
3992 | +div.toc ul { |
3993 | + padding-left: 20px; |
3994 | +} |
3995 | +div.toc li { |
3996 | + padding-left: 4px; |
3997 | +} |
3998 | +/* Remove the border around images*/ |
3999 | +a img |
4000 | +{ |
4001 | + border:none; |
4002 | +} |
4003 | + |
4004 | +/*Add styling to the front pages*/ |
4005 | + |
4006 | +.threecolumn_area |
4007 | +{ |
4008 | + padding-top: 20px; |
4009 | + padding-bottom: 20px; |
4010 | +} |
4011 | +.threecolumn_piece |
4012 | +{ |
4013 | + display: inline-block; |
4014 | + margin-left: 78px; |
4015 | + margin-top: 8px; |
4016 | + padding: 0; |
4017 | + vertical-align: top; |
4018 | + width: 25.5%; |
4019 | +} |
4020 | +div.threecolumn_piece ul { |
4021 | + list-style-type: none; |
4022 | + padding-left: 0px; |
4023 | + margin-top: 2px; |
4024 | +} |
4025 | +div.threecolumn_piece p { |
4026 | + margin-bottom: 7px; |
4027 | + color: #5C626E; |
4028 | + text-decoration: none; |
4029 | + font-weight: bold; |
4030 | +} |
4031 | +div.threecolumn_piece li { |
4032 | + padding-left: 0px; |
4033 | + margin-bottom: 5px; |
4034 | +} |
4035 | +div.threecolumn_piece a { |
4036 | + font-weight: normal; |
4037 | +} |
4038 | +/* Add style to guide page*/ |
4039 | +.fourcolumn_area |
4040 | +{ |
4041 | + padding-top: 20px; |
4042 | + padding-bottom: 20px; |
4043 | +} |
4044 | +.fourcolumn_piece |
4045 | +{ |
4046 | + display: inline-block; |
4047 | + margin-left: 35px; |
4048 | + margin-top: 8px; |
4049 | + padding: 0; |
4050 | + vertical-align: top; |
4051 | + width: 21.3%; |
4052 | +} |
4053 | +div.fourcolumn_piece ul { |
4054 | + list-style-type: none; |
4055 | + padding-left: 0px; |
4056 | + margin-top: 2px; |
4057 | +} |
4058 | +div.fourcolumn_piece p { |
4059 | + margin-bottom: 7px; |
4060 | + color: #40444D; |
4061 | + text-decoration: none; |
4062 | + font-weight: bold; |
4063 | +} |
4064 | +div.fourcolumn_piece li { |
4065 | + padding-left: 0px; |
4066 | + margin-bottom: 5px; |
4067 | +} |
4068 | +div.fourcolumn_piece a { |
4069 | + font-weight: normal; |
4070 | +} |
4071 | |
4072 | === added file 'doc/qt/qml/css/reset.css' |
4073 | --- doc/qt/qml/css/reset.css 1970-01-01 00:00:00 +0000 |
4074 | +++ doc/qt/qml/css/reset.css 2015-05-13 10:12:45 +0000 |
4075 | @@ -0,0 +1,8 @@ |
4076 | +/* |
4077 | +Copyright (c) 2010, Yahoo! Inc. All rights reserved. |
4078 | +Code licensed under the BSD License: |
4079 | +http://developer.yahoo.com/yui/license.html |
4080 | +version: 3.3.0 |
4081 | +build: 3167 |
4082 | +*/ |
4083 | +html{color:#000;background:#FFF;}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}table{border-collapse:collapse;border-spacing:0;}fieldset,img{border:0;}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal;}li{list-style:none;}caption,th{text-align:left;}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal;}q:before,q:after{content:'';}abbr,acronym{border:0;font-variant:normal;}sup{vertical-align:text-top;}sub{vertical-align:text-bottom;}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}input,textarea,select{*font-size:100%;}legend{color:#000;} |
4084 | \ No newline at end of file |
4085 | |
4086 | === added file 'doc/qt/qml/css/scratch.css' |
4087 | --- doc/qt/qml/css/scratch.css 1970-01-01 00:00:00 +0000 |
4088 | +++ doc/qt/qml/css/scratch.css 2015-05-13 10:12:45 +0000 |
4089 | @@ -0,0 +1,61 @@ |
4090 | +body { |
4091 | + margin: 0; |
4092 | +} |
4093 | + |
4094 | + |
4095 | +div.toc ul { |
4096 | + padding: 0; |
4097 | +} |
4098 | + |
4099 | +div.toc li { |
4100 | + margin-bottom: 3px; |
4101 | +} |
4102 | + |
4103 | +h1.title { |
4104 | + font-size: 36px; |
4105 | + line-height: 1.1; |
4106 | + font-weight: normal; |
4107 | +} |
4108 | +h0, h2 { |
4109 | + font-size: 24px; |
4110 | + line-height: 1.2; |
4111 | + margin: 14px 0; |
4112 | + font-weight: normal; |
4113 | + display: block; |
4114 | +} |
4115 | +a:hover { |
4116 | + color: #dd4814; |
4117 | + text-decoration: underline; |
4118 | + outline: 0; |
4119 | +} |
4120 | +table, pre { |
4121 | + border-radius: 0; |
4122 | +} |
4123 | + |
4124 | +.annotated td { |
4125 | + padding: 0.8em 1em 0.3em; |
4126 | +} |
4127 | +.wrapper { |
4128 | + width: 940px; |
4129 | + margin: 0 auto; |
4130 | +} |
4131 | +.main-content { |
4132 | + width: 668px; |
4133 | + position: relative; |
4134 | + left: 270px; |
4135 | +} |
4136 | +.title { |
4137 | + margin-left: -270px; |
4138 | + margin-top: 30px; |
4139 | + margin-bottom: 50px; |
4140 | +} |
4141 | +.toc { |
4142 | + margin-left: -270px; |
4143 | + font-size: 100%; |
4144 | + margin-bottom: 40px; |
4145 | + padding: 0; |
4146 | + z-index: 2; |
4147 | + position: absolute; |
4148 | + top: 100px; |
4149 | + width: 250px; |
4150 | +} |
4151 | |
4152 | === added directory 'doc/qt/qml/examples' |
4153 | === added file 'doc/qt/qml/examples/example_networking_status.qml' |
4154 | --- doc/qt/qml/examples/example_networking_status.qml 1970-01-01 00:00:00 +0000 |
4155 | +++ doc/qt/qml/examples/example_networking_status.qml 2015-05-13 10:12:45 +0000 |
4156 | @@ -0,0 +1,65 @@ |
4157 | +/* |
4158 | + * Copyright (C) 2014 Canonical Ltd. |
4159 | + * |
4160 | + * This program is free software: you can redistribute it and/or modify it |
4161 | + * under the terms of the GNU Lesser General Public License version 3, |
4162 | + * as published by the Free Software Foundation. |
4163 | + * |
4164 | + * This program is distributed in the hope that it will be useful, |
4165 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4166 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4167 | + * GNU Lesser General Public License for more details. |
4168 | + * |
4169 | + * You should have received a copy of the GNU Lesser General Public License |
4170 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
4171 | + */ |
4172 | + |
4173 | + |
4174 | +import QtQuick 2.0 |
4175 | +import Ubuntu.Components 0.1 |
4176 | +import Ubuntu.Connectivity 1.0 |
4177 | + |
4178 | +MainView { |
4179 | + id: root |
4180 | + objectName: "mainView" |
4181 | + applicationName: "NetworkingStatus" |
4182 | + |
4183 | + width: units.gu(100) |
4184 | + height: units.gu(75) |
4185 | + |
4186 | + property real margins: units.gu(2) |
4187 | + property real buttonWidth: units.gu(9) |
4188 | + |
4189 | + Connections { |
4190 | + target: NetworkingStatus |
4191 | + |
4192 | + // full status can be retrieved from the base C++ class |
4193 | + // status property |
4194 | + onStatusChanged: { |
4195 | + if (status === NetworkingStatus.Offline) |
4196 | + console.log("Status: Offline") |
4197 | + if (status === NetworkingStatus.Connecting) |
4198 | + console.log("Status: Connecting") |
4199 | + if (status === NetworkingStatus.Online) |
4200 | + console.log("Status: Online") |
4201 | + } |
4202 | + } |
4203 | + |
4204 | + Page { |
4205 | + title: i18n.tr("Networking Status") |
4206 | + |
4207 | + Column { |
4208 | + anchors.centerIn: parent |
4209 | + Label { |
4210 | + // use the online property |
4211 | + text: NetworkingStatus.online ? "Online" : "Not online" |
4212 | + fontSize: "large" |
4213 | + } |
4214 | + Label { |
4215 | + // use the limitedBandwith property |
4216 | + text: NetworkingStatus.limitedBandwith ? "Bandwith limited" : "Bandwith not limited" |
4217 | + fontSize: "large" |
4218 | + } |
4219 | + } |
4220 | + } |
4221 | +} |
4222 | |
4223 | === added directory 'doc/qt/qml/pages' |
4224 | === added file 'doc/qt/qml/pages/mainpage.qdoc' |
4225 | --- doc/qt/qml/pages/mainpage.qdoc 1970-01-01 00:00:00 +0000 |
4226 | +++ doc/qt/qml/pages/mainpage.qdoc 2015-05-13 10:12:45 +0000 |
4227 | @@ -0,0 +1,25 @@ |
4228 | +/*! |
4229 | +\page index.html overview |
4230 | +\title Ubuntu Connectivity API |
4231 | + |
4232 | +\contentspage {Ubuntu Connectivity API} {Contents} |
4233 | + |
4234 | +\part Introduction |
4235 | + |
4236 | +Ubuntu Connectivity API offers a way to access the connectivity related information of the system. |
4237 | +Qt C++ API version of this API also exists (see the C++ documentation). |
4238 | + |
4239 | +\part Components |
4240 | +Available through: |
4241 | +\code |
4242 | + import Ubuntu.Connectivity 1.0 |
4243 | +\endcode |
4244 | + |
4245 | +\part Items |
4246 | +\annotatedlist connectivity |
4247 | + |
4248 | +\part Reporting Bugs |
4249 | +If you find any problems with the or this documentation, |
4250 | +please file a bug in Connectivity API \l {https://bugs.launchpad.net/connectivity-api} {Launchpad page}. |
4251 | + |
4252 | +*/ |
4253 | |
4254 | === added directory 'doc/qt/qml/qml-api' |
4255 | === added file 'doc/qt/qml/qml-api/NetworkingStatus.qml' |
4256 | --- doc/qt/qml/qml-api/NetworkingStatus.qml 1970-01-01 00:00:00 +0000 |
4257 | +++ doc/qt/qml/qml-api/NetworkingStatus.qml 2015-05-13 10:12:45 +0000 |
4258 | @@ -0,0 +1,86 @@ |
4259 | +/* |
4260 | + * Copyright © 2014 Canonical Ltd. |
4261 | + * |
4262 | + * This program is free software: you can redistribute it and/or modify it |
4263 | + * under the terms of the GNU Lesser General Public License version 3, |
4264 | + * as published by the Free Software Foundation. |
4265 | + * |
4266 | + * This program is distributed in the hope that it will be useful, |
4267 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4268 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4269 | + * GNU Lesser General Public License for more details. |
4270 | + * |
4271 | + * You should have received a copy of the GNU Lesser General Public License |
4272 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
4273 | + * |
4274 | + * Authors: |
4275 | + * Antti Kaijanmäki <antti.kaijanmaki@canonical.com> |
4276 | + */ |
4277 | + |
4278 | +import QtQuick 2.0 |
4279 | + |
4280 | +/*! |
4281 | + \qmltype NetworkingStatus |
4282 | + \ingroup connectivity |
4283 | + \brief Overall system networking status. |
4284 | + |
4285 | + This is the top-level class for accessing networking information. |
4286 | + |
4287 | + This class inherits the Qt C++ ubuntu::connectivity::NetworkingStatus |
4288 | + and provides two utility properties online and limitedBandwith for easier |
4289 | + QML usage. |
4290 | + |
4291 | + This object is exposed as a singleton. |
4292 | + |
4293 | + \b{note:} |
4294 | + Using this component in confined application requires \e{connectivity} policy group. |
4295 | + |
4296 | + \quotefile example_networking_status.qml |
4297 | + */ |
4298 | + |
4299 | +QtObject { |
4300 | + |
4301 | + /*! |
4302 | + \qmlproperty bool NetworkingStatus::online |
4303 | + \b{true} if system has Internet connection. |
4304 | + |
4305 | + shorthand for C++: |
4306 | + \code |
4307 | + networkingStatus->status() == NetworkingStatus::Online |
4308 | + \endcode |
4309 | + */ |
4310 | + property bool online |
4311 | + |
4312 | + /*! |
4313 | + \qmlproperty bool NetworkingStatus::limitedBandwith |
4314 | + \b{true} if Internet connection is bandwith limited. |
4315 | + |
4316 | + shorthand for C++: |
4317 | + \code |
4318 | + networkingStatus->limitations().contains(NetworkingStatus::Limitations::Bandwith) |
4319 | + \endcode |
4320 | + */ |
4321 | + property bool limitedBandwith |
4322 | + |
4323 | + /*! |
4324 | + \qmlproperty list<Limitations> NetworkingStatus::limitations |
4325 | + */ |
4326 | + property list<Limitations> limitations |
4327 | + |
4328 | + /*! |
4329 | + \qmlproperty NetworkingStatus::Status status |
4330 | + status property of the base C++ class. |
4331 | + |
4332 | + \code |
4333 | + onStatusChanged: { |
4334 | + if (status === NetworkingStatus::Offline) |
4335 | + ; |
4336 | + else if (status === NetworkingStatus::Connecting) |
4337 | + ; |
4338 | + else if (status === NetworkingStatus::Online) |
4339 | + ; |
4340 | + } |
4341 | + \endcode |
4342 | + */ |
4343 | + property Status status |
4344 | +} |
4345 | |
4346 | === modified file 'po/CMakeLists.txt' |
4347 | --- po/CMakeLists.txt 2014-05-21 17:04:23 +0000 |
4348 | +++ po/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
4349 | @@ -1,33 +1,13 @@ |
4350 | -cmake_minimum_required(VERSION 2.8.9) |
4351 | -find_package(Gettext REQUIRED) |
4352 | - |
4353 | -set(POT_FILE |
4354 | - indicator-network.pot |
4355 | -) |
4356 | - |
4357 | -file(GLOB PO_FILES |
4358 | - *.po |
4359 | -) |
4360 | - |
4361 | -set(MO_FILE indicator-network.mo) |
4362 | - |
4363 | -foreach(_file ${PO_FILES}) |
4364 | - get_filename_component(_lang ${_file} NAME_WE) |
4365 | - set(_gmoFile ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo) |
4366 | - add_custom_command(OUTPUT ${_gmoFile} |
4367 | - COMMAND ${GETTEXT_MSGFMT_EXECUTABLE} -o ${_gmoFile} ${_file} |
4368 | - COMMAND install -D ${_gmoFile} ${CMAKE_CURRENT_BINARY_DIR}/locale/${_lang}/LC_MESSAGES/${MO_FILE} |
4369 | - WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" |
4370 | - DEPENDS ${_file} |
4371 | - ) |
4372 | - install (FILES ${CMAKE_CURRENT_BINARY_DIR}/${_lang}.gmo DESTINATION ${CMAKE_INSTALL_PREFIX}/share/locale/${_lang}/LC_MESSAGES/ RENAME ${MO_FILE}) |
4373 | - _gettext_get_unique_target_name( pofiles uniqueTargetName) |
4374 | - add_custom_target(${uniqueTargetName} ALL DEPENDS ${_gmoFile}) |
4375 | -endforeach(_file) |
4376 | - |
4377 | -add_custom_command(OUTPUT ${POT_FILE} |
4378 | - COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/update-indicator-network-pot |
4379 | -) |
4380 | -add_custom_target(pot_file |
4381 | - DEPENDS ${POT_FILE} |
4382 | -) |
4383 | +find_package(Intltool REQUIRED) |
4384 | + |
4385 | +intltool_update_potfile( |
4386 | + KEYWORDS "_" "_:1,2" "N_" "N_:1,2" |
4387 | + GETTEXT_PACKAGE ${GETTEXT_PACKAGE} |
4388 | + COPYRIGHT_HOLDER "Canonical Ltd." |
4389 | +) |
4390 | + |
4391 | +intltool_install_translations( |
4392 | + ALL |
4393 | + GETTEXT_PACKAGE ${GETTEXT_PACKAGE} |
4394 | +) |
4395 | + |
4396 | |
4397 | === removed file 'po/update-indicator-network-pot' |
4398 | --- po/update-indicator-network-pot 2014-05-21 17:04:23 +0000 |
4399 | +++ po/update-indicator-network-pot 1970-01-01 00:00:00 +0000 |
4400 | @@ -1,27 +0,0 @@ |
4401 | -#!/bin/sh |
4402 | -set -e |
4403 | -cd $(dirname $0) |
4404 | -PO_DIR=$PWD |
4405 | - |
4406 | -PROGNAME=$(basename $0) |
4407 | - |
4408 | -# Create a list of files to scan |
4409 | -GETTEXT_FILES=$(mktemp --tmpdir indicator-network.lst.XXXXX) |
4410 | -trap 'rm -f "$GETTEXT_FILES"' EXIT |
4411 | -cd .. |
4412 | -find \( -name '*.h' -o -name '*.cpp' -o -name '*.qml' -o -name '*.js' \) \ |
4413 | - -a ! \( -path './debian/*' -o -path './builddir/*' -o -path './build/*' -o -path './.bzr/*' \) | sort \ |
4414 | -> $GETTEXT_FILES |
4415 | - |
4416 | -# Generate pot from our list |
4417 | -xgettext \ |
4418 | - --output $PO_DIR/indicator-network.pot \ |
4419 | - --files-from $GETTEXT_FILES \ |
4420 | - --qt --c++ \ |
4421 | - --keyword=_ \ |
4422 | - --from-code=UTF-8 \ |
4423 | - --add-comments=TRANSLATORS \ |
4424 | - --package-name="indicator-network" \ |
4425 | - --copyright-holder="Canonical Ltd." |
4426 | - |
4427 | -echo "$PROGNAME: $PO_DIR/auto-generated.pot updated" |
4428 | |
4429 | === modified file 'src/CMakeLists.txt' |
4430 | --- src/CMakeLists.txt 2015-04-21 10:59:52 +0000 |
4431 | +++ src/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
4432 | @@ -1,8 +1,4 @@ |
4433 | |
4434 | -if(NOT build_type_lower MATCHES debug) |
4435 | - set(COMMON_FLAGS "${COMMON_FLAGS} -Werror") |
4436 | -endif() |
4437 | - |
4438 | add_subdirectory(connectivity-api) |
4439 | |
4440 | add_subdirectory(indicator) |
4441 | |
4442 | === modified file 'src/connectivity-api/connectivity-qml/CMakeLists.txt' |
4443 | --- src/connectivity-api/connectivity-qml/CMakeLists.txt 2015-04-21 10:59:52 +0000 |
4444 | +++ src/connectivity-api/connectivity-qml/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
4445 | @@ -0,0 +1,33 @@ |
4446 | + |
4447 | +include(QmlPlugins) |
4448 | + |
4449 | +find_package(Qt5Quick REQUIRED) |
4450 | + |
4451 | +include_directories( |
4452 | + "${CMAKE_SOURCE_DIR}/src/connectivity-api/connectivity-qt" |
4453 | +) |
4454 | + |
4455 | +set(CONNECTIVITY_QML_SRC |
4456 | + plugin.cpp |
4457 | +) |
4458 | + |
4459 | +add_library(connectivity-qml MODULE |
4460 | + ${CONNECTIVITY_QML_SRC} |
4461 | +) |
4462 | + |
4463 | +qt5_use_modules(connectivity-qml |
4464 | + Qml |
4465 | +) |
4466 | + |
4467 | +target_link_libraries( |
4468 | + connectivity-qml |
4469 | + connectivity-qt |
4470 | +) |
4471 | + |
4472 | +add_qmlplugin( |
4473 | + Ubuntu.Connectivity |
4474 | + 1.0 |
4475 | + Ubuntu/Connectivity |
4476 | + TARGET_PREFIX Connectivity |
4477 | + TARGETS connectivity-qml |
4478 | +) |
4479 | |
4480 | === added file 'src/connectivity-api/connectivity-qml/plugin.cpp' |
4481 | --- src/connectivity-api/connectivity-qml/plugin.cpp 1970-01-01 00:00:00 +0000 |
4482 | +++ src/connectivity-api/connectivity-qml/plugin.cpp 2015-05-13 10:12:45 +0000 |
4483 | @@ -0,0 +1,51 @@ |
4484 | +/* |
4485 | + * Copyright © 2014 Canonical Ltd. |
4486 | + * |
4487 | + * This program is free software: you can redistribute it and/or modify it |
4488 | + * under the terms of the GNU Lesser General Public License version 3, |
4489 | + * as published by the Free Software Foundation. |
4490 | + * |
4491 | + * This program is distributed in the hope that it will be useful, |
4492 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4493 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4494 | + * GNU Lesser General Public License for more details. |
4495 | + * |
4496 | + * You should have received a copy of the GNU Lesser General Public License |
4497 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
4498 | + * |
4499 | + * Authors: |
4500 | + * Antti Kaijanmäki <antti.kaijanmaki@canonical.com> |
4501 | + */ |
4502 | + |
4503 | +#include <plugin.h> |
4504 | +#include <connectivityqt/connectivity.h> |
4505 | + |
4506 | +#include <QtQml> |
4507 | + |
4508 | +namespace |
4509 | +{ |
4510 | +static QObject * |
4511 | +connectivitySingletonProvider(QQmlEngine *engine, QJSEngine *scriptEngine) |
4512 | +{ |
4513 | + Q_UNUSED(scriptEngine) |
4514 | + |
4515 | + return new connectivityqt::Connectivity(QDBusConnection::sessionBus(), engine); |
4516 | +} |
4517 | +} |
4518 | + |
4519 | +void |
4520 | +QmlConnectivityNetworkingPlugin::registerTypes(const char *uri) |
4521 | +{ |
4522 | + connectivityqt::Connectivity::registerMetaTypes(); |
4523 | + qmlRegisterSingletonType<connectivityqt::Connectivity>(uri, 1, 0, "NetworkingStatus", connectivitySingletonProvider); |
4524 | + qmlRegisterSingletonType<connectivityqt::Connectivity>(uri, 1, 0, "Connectivity", connectivitySingletonProvider); |
4525 | +} |
4526 | + |
4527 | +void |
4528 | +QmlConnectivityNetworkingPlugin::initializeEngine(QQmlEngine *engine, const char *uri) |
4529 | +{ |
4530 | + Q_UNUSED(uri); |
4531 | + Q_UNUSED(engine); |
4532 | +} |
4533 | + |
4534 | + |
4535 | |
4536 | === added file 'src/connectivity-api/connectivity-qml/plugin.h' |
4537 | --- src/connectivity-api/connectivity-qml/plugin.h 1970-01-01 00:00:00 +0000 |
4538 | +++ src/connectivity-api/connectivity-qml/plugin.h 2015-05-13 10:12:45 +0000 |
4539 | @@ -0,0 +1,33 @@ |
4540 | +/* |
4541 | + * Copyright © 2014 Canonical Ltd. |
4542 | + * |
4543 | + * This program is free software: you can redistribute it and/or modify it |
4544 | + * under the terms of the GNU Lesser General Public License version 3, |
4545 | + * as published by the Free Software Foundation. |
4546 | + * |
4547 | + * This program is distributed in the hope that it will be useful, |
4548 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4549 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4550 | + * GNU Lesser General Public License for more details. |
4551 | + * |
4552 | + * You should have received a copy of the GNU Lesser General Public License |
4553 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
4554 | + * |
4555 | + * Authors: |
4556 | + * Antti Kaijanmäki <antti.kaijanmaki@canonical.com> |
4557 | + */ |
4558 | + |
4559 | +#pragma once |
4560 | + |
4561 | +#include <QQmlExtensionPlugin> |
4562 | + |
4563 | +class QmlConnectivityNetworkingPlugin : public QQmlExtensionPlugin { |
4564 | + Q_OBJECT |
4565 | + Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface") |
4566 | + Q_INTERFACES(QQmlExtensionInterface) |
4567 | + |
4568 | +public: |
4569 | + void registerTypes(const char *uri); |
4570 | + void initializeEngine(QQmlEngine *engine, const char *uri); |
4571 | +}; |
4572 | + |
4573 | |
4574 | === added file 'src/connectivity-api/connectivity-qml/qmldir' |
4575 | --- src/connectivity-api/connectivity-qml/qmldir 1970-01-01 00:00:00 +0000 |
4576 | +++ src/connectivity-api/connectivity-qml/qmldir 2015-05-13 10:12:45 +0000 |
4577 | @@ -0,0 +1,2 @@ |
4578 | +module Ubuntu.Connectivity |
4579 | +plugin connectivity-qml |
4580 | |
4581 | === modified file 'src/connectivity-api/connectivity-qt/CMakeLists.txt' |
4582 | --- src/connectivity-api/connectivity-qt/CMakeLists.txt 2015-04-21 10:59:52 +0000 |
4583 | +++ src/connectivity-api/connectivity-qt/CMakeLists.txt 2015-05-13 10:12:45 +0000 |
4584 | @@ -1,10 +1,15 @@ |
4585 | |
4586 | +set(API_VERSION 1) |
4587 | +set(SOVERSION 1) |
4588 | +set(SYMBOL_MAP "${DATA_DIR}/connectivity-qt.map") |
4589 | +set(OUTPUT_NAME "connectivity-qt${SOVERSION}") |
4590 | include_directories("${CMAKE_SOURCE_DIR}/src/qdbus-stubs") |
4591 | |
4592 | set( |
4593 | CONNECTIVITY_QT_SRC |
4594 | connectivityqt/internal/dbus-property-cache.cpp |
4595 | connectivityqt/connectivity.cpp |
4596 | + ubuntu/connectivity/networking-status.cpp |
4597 | ) |
4598 | |
4599 | set_source_files_properties( |
4600 | @@ -50,3 +55,26 @@ |
4601 | connectivity-qt |
4602 | qdbus-stubs |
4603 | ) |
4604 | + |
4605 | +set_target_properties( |
4606 | + connectivity-qt |
4607 | + PROPERTIES |
4608 | + OUTPUT_NAME ${OUTPUT_NAME} |
4609 | + VERSION ${API_VERSION}.0.0 |
4610 | + SOVERSION ${SOVERSION} |
4611 | + LINK_FLAGS "-Wl,--version-script,${SYMBOL_MAP}" |
4612 | + LINK_DEPENDS "${SYMBOL_MAP}" |
4613 | +) |
4614 | + |
4615 | +install( |
4616 | + TARGETS connectivity-qt |
4617 | + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} |
4618 | +) |
4619 | + |
4620 | +install( |
4621 | + DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} |
4622 | + DESTINATION "include" |
4623 | + FILES_MATCHING PATTERN "*.h" |
4624 | + PATTERN "internal" EXCLUDE |
4625 | +) |
4626 | + |
4627 | |
4628 | === modified file 'src/connectivity-api/connectivity-qt/connectivityqt/connectivity.cpp' |
4629 | --- src/connectivity-api/connectivity-qt/connectivityqt/connectivity.cpp 2015-04-23 10:02:23 +0000 |
4630 | +++ src/connectivity-api/connectivity-qt/connectivityqt/connectivity.cpp 2015-05-13 10:12:45 +0000 |
4631 | @@ -49,6 +49,41 @@ |
4632 | |
4633 | shared_ptr<ComUbuntuConnectivity1PrivateInterface> m_writeInterface; |
4634 | |
4635 | + static QVector<Limitations> toLimitations(const QVariant& value) |
4636 | + { |
4637 | + auto l = value.toStringList(); |
4638 | + QVector<Limitations> result; |
4639 | + for (const auto& limit : l) |
4640 | + { |
4641 | + // FIXME KNOWN TYPO |
4642 | + if (limit == "bandwith") |
4643 | + { |
4644 | + result.push_back(Limitations::Bandwith); |
4645 | + } |
4646 | + } |
4647 | + return result; |
4648 | + } |
4649 | + |
4650 | + static Status toStatus(const QVariant& value) |
4651 | + { |
4652 | + auto s = value.toString(); |
4653 | + |
4654 | + if (s == "offline") |
4655 | + { |
4656 | + return Status::Offline; |
4657 | + } |
4658 | + else if (s == "connecting") |
4659 | + { |
4660 | + return Status::Connecting; |
4661 | + } |
4662 | + else if (s == "online") |
4663 | + { |
4664 | + return Status::Online; |
4665 | + } |
4666 | + |
4667 | + return Status::Offline; |
4668 | + } |
4669 | + |
4670 | public Q_SLOTS: |
4671 | |
4672 | void propertyChanged(const QString& name, const QVariant& value) |
4673 | @@ -65,11 +100,32 @@ |
4674 | { |
4675 | Q_EMIT p.unstoppableOperationHappeningUpdated(value.toBool()); |
4676 | } |
4677 | + else if (name == "Limitations") |
4678 | + { |
4679 | + auto limitations = toLimitations(value); |
4680 | + Q_EMIT p.limitationsUpdated(limitations); |
4681 | + Q_EMIT p.limitedBandwithUpdated(limitations.contains(Limitations::Bandwith)); |
4682 | + } |
4683 | + else if (name == "Status") |
4684 | + { |
4685 | + auto status = toStatus(value); |
4686 | + Q_EMIT p.statusUpdated(status); |
4687 | + Q_EMIT p.onlineUpdated(status == Status::Online); |
4688 | + } |
4689 | } |
4690 | }; |
4691 | |
4692 | -Connectivity::Connectivity(const QDBusConnection& sessionConnection) : |
4693 | - d(new Priv(*this, sessionConnection)) |
4694 | +void Connectivity::registerMetaTypes() |
4695 | +{ |
4696 | + DBusTypes::registerMetaTypes(); |
4697 | + |
4698 | + qRegisterMetaType<connectivityqt::Connectivity::Limitations>("connectivityqt::Connectivity::Limitations"); |
4699 | + qRegisterMetaType<QVector<connectivityqt::Connectivity::Limitations>>("QVector<connectivityqt::Connectivity::Limitations>"); |
4700 | + qRegisterMetaType<connectivityqt::Connectivity::Status>("connectivityqt::Connectivity::Status"); |
4701 | +} |
4702 | + |
4703 | +Connectivity::Connectivity(const QDBusConnection& sessionConnection, QObject* parent) : |
4704 | + QObject(parent), d(new Priv(*this, sessionConnection)) |
4705 | { |
4706 | d->m_readInterface = make_shared< |
4707 | ComUbuntuConnectivity1NetworkingStatusInterface>( |
4708 | @@ -110,6 +166,31 @@ |
4709 | return d->m_propertyCache->get("UnstoppableOperationHappening").toBool(); |
4710 | } |
4711 | |
4712 | +QVector<Connectivity::Limitations> Connectivity::limitations() const |
4713 | +{ |
4714 | + return d->toLimitations(d->m_propertyCache->get("Limitations")); |
4715 | +} |
4716 | + |
4717 | +Connectivity::Status Connectivity::status() const |
4718 | +{ |
4719 | + return d->toStatus(d->m_propertyCache->get("Status")); |
4720 | +} |
4721 | + |
4722 | +bool Connectivity::online() const |
4723 | +{ |
4724 | + return (status() == Status::Online); |
4725 | +} |
4726 | + |
4727 | +bool Connectivity::limitedBandwith() const |
4728 | +{ |
4729 | + return limitations().contains(Limitations::Bandwith); |
4730 | +} |
4731 | + |
4732 | +bool Connectivity::isInitialized() const |
4733 | +{ |
4734 | + return d->m_propertyCache->isInitialized(); |
4735 | +} |
4736 | + |
4737 | void Connectivity::setFlightMode(bool enabled) |
4738 | { |
4739 | d->m_writeInterface->SetFlightMode(enabled); |
4740 | @@ -120,11 +201,6 @@ |
4741 | d->m_writeInterface->SetWifiEnabled(enabled); |
4742 | } |
4743 | |
4744 | -bool Connectivity::isInitialized() const |
4745 | -{ |
4746 | - return d->m_propertyCache->isInitialized(); |
4747 | -} |
4748 | - |
4749 | } |
4750 | |
4751 | #include "connectivity.moc" |
4752 | |
4753 | === modified file 'src/connectivity-api/connectivity-qt/connectivityqt/connectivity.h' |
4754 | --- src/connectivity-api/connectivity-qt/connectivityqt/connectivity.h 2015-04-23 10:02:23 +0000 |
4755 | +++ src/connectivity-api/connectivity-qt/connectivityqt/connectivity.h 2015-05-13 10:12:45 +0000 |
4756 | @@ -36,18 +36,57 @@ |
4757 | public: |
4758 | UNITY_DEFINES_PTRS(Connectivity); |
4759 | |
4760 | - Connectivity(const QDBusConnection& sessionConnection = QDBusConnection::sessionBus()); |
4761 | + Q_DISABLE_COPY(Connectivity) |
4762 | + |
4763 | + Q_ENUMS(Limitations) |
4764 | + Q_ENUMS(Status) |
4765 | + |
4766 | + static void registerMetaTypes(); |
4767 | + |
4768 | + /** |
4769 | + * @brief enum for networking limitations |
4770 | + * |
4771 | + * Networking limitations may be accessed through the NetworkingStatus::limitations property. |
4772 | + */ |
4773 | + enum class Limitations |
4774 | + { |
4775 | + /** |
4776 | + * indicates that the bandwith of the Internet connection has limitations. |
4777 | + * Applications should minimize their bandwith usage if possible. |
4778 | + */ |
4779 | + Bandwith |
4780 | + }; |
4781 | + |
4782 | + /** |
4783 | + * @brief enum for networking status |
4784 | + * |
4785 | + * Networking status may be accessed through the NetworkingStatus::status property. |
4786 | + */ |
4787 | + enum class Status |
4788 | + { |
4789 | + Offline, /**< No Internet connection available. */ |
4790 | + Connecting, /**< System is actively establising a connection. */ |
4791 | + Online /**< System is connected to the Internet. */ |
4792 | + }; |
4793 | + |
4794 | + Connectivity(const QDBusConnection& sessionConnection = QDBusConnection::sessionBus(), QObject* parent = 0); |
4795 | |
4796 | ~Connectivity(); |
4797 | |
4798 | Q_PROPERTY(bool FlightMode READ flightMode WRITE setFlightMode NOTIFY flightModeUpdated) |
4799 | bool flightMode() const; |
4800 | |
4801 | -// Q_PROPERTY(QStringList Limitations READ limitations NOTIFY limitationsUpdated) |
4802 | -// QStringList limitations() const; |
4803 | - |
4804 | -// Q_PROPERTY(QString Status READ status NOTIFY statusUpdated) |
4805 | -// QString status() const; |
4806 | + Q_PROPERTY(bool online READ online NOTIFY onlineUpdated) |
4807 | + bool online() const; |
4808 | + |
4809 | + Q_PROPERTY(bool limitedBandwith READ limitedBandwith NOTIFY limitedBandwithUpdated) |
4810 | + bool limitedBandwith() const; |
4811 | + |
4812 | + Q_PROPERTY(QVector<Limitations> Limitations READ limitations NOTIFY limitationsUpdated) |
4813 | + QVector<Limitations> limitations() const; |
4814 | + |
4815 | + Q_PROPERTY(connectivityqt::Connectivity::Status Status READ status NOTIFY statusUpdated) |
4816 | + Status status() const; |
4817 | |
4818 | Q_PROPERTY(bool WifiEnabled READ wifiEnabled WRITE setwifiEnabled NOTIFY wifiEnabledUpdated) |
4819 | bool wifiEnabled() const; |
4820 | @@ -66,9 +105,13 @@ |
4821 | Q_SIGNALS: |
4822 | void flightModeUpdated(bool); |
4823 | |
4824 | -// void limitationsUpdated(const QStringList&); |
4825 | - |
4826 | -// void statusUpdated(const QString&); |
4827 | + void onlineUpdated(bool value); |
4828 | + |
4829 | + void limitedBandwithUpdated(bool value); |
4830 | + |
4831 | + void limitationsUpdated(const QVector<Limitations>&); |
4832 | + |
4833 | + void statusUpdated(connectivityqt::Connectivity::Status value); |
4834 | |
4835 | void wifiEnabledUpdated(bool); |
4836 | |
4837 | @@ -82,3 +125,8 @@ |
4838 | }; |
4839 | |
4840 | } |
4841 | + |
4842 | +Q_DECLARE_METATYPE(connectivityqt::Connectivity::Limitations) |
4843 | +Q_DECLARE_METATYPE(QVector<connectivityqt::Connectivity::Limitations>) |
4844 | +Q_DECLARE_METATYPE(connectivityqt::Connectivity::Status) |
4845 | + |
4846 | |
4847 | === added directory 'src/connectivity-api/connectivity-qt/ubuntu' |
4848 | === added directory 'src/connectivity-api/connectivity-qt/ubuntu/connectivity' |
4849 | === added file 'src/connectivity-api/connectivity-qt/ubuntu/connectivity/networking-status.cpp' |
4850 | --- src/connectivity-api/connectivity-qt/ubuntu/connectivity/networking-status.cpp 1970-01-01 00:00:00 +0000 |
4851 | +++ src/connectivity-api/connectivity-qt/ubuntu/connectivity/networking-status.cpp 2015-05-13 10:12:45 +0000 |
4852 | @@ -0,0 +1,100 @@ |
4853 | +/* |
4854 | + * Copyright © 2014 Canonical Ltd. |
4855 | + * |
4856 | + * This program is free software: you can redistribute it and/or modify it |
4857 | + * under the terms of the GNU Lesser General Public License version 3, |
4858 | + * as published by the Free Software Foundation. |
4859 | + * |
4860 | + * This program is distributed in the hope that it will be useful, |
4861 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4862 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4863 | + * GNU Lesser General Public License for more details. |
4864 | + * |
4865 | + * You should have received a copy of the GNU Lesser General Public License |
4866 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
4867 | + * |
4868 | + * Authors: |
4869 | + * Antti Kaijanmäki <antti.kaijanmaki@canonical.com> |
4870 | + */ |
4871 | + |
4872 | +#include <ubuntu/connectivity/networking-status.h> |
4873 | +#include <connectivityqt/connectivity.h> |
4874 | + |
4875 | +#include <QDebug> |
4876 | + |
4877 | +using namespace std; |
4878 | + |
4879 | +namespace ubuntu |
4880 | +{ |
4881 | +namespace connectivity |
4882 | +{ |
4883 | + |
4884 | +class Q_DECL_HIDDEN NetworkingStatus::Private: public QObject |
4885 | +{ |
4886 | + Q_OBJECT |
4887 | + |
4888 | +public: |
4889 | + NetworkingStatus& p; |
4890 | + |
4891 | + connectivityqt::Connectivity::SPtr m_connectivity; |
4892 | + |
4893 | + Private(NetworkingStatus& parent) : |
4894 | + p(parent) |
4895 | + { |
4896 | + m_connectivity = make_shared<connectivityqt::Connectivity>(); |
4897 | + |
4898 | + connect(m_connectivity.get(), |
4899 | + &connectivityqt::Connectivity::limitationsUpdated, this, |
4900 | + &Private::limitationsUpdated); |
4901 | + |
4902 | + connect(m_connectivity.get(), |
4903 | + &connectivityqt::Connectivity::statusUpdated, this, |
4904 | + &Private::statusUpdated); |
4905 | + } |
4906 | + |
4907 | +public Q_SLOTS: |
4908 | + void limitationsUpdated(const QVector<connectivityqt::Connectivity::Limitations>&) |
4909 | + { |
4910 | + Q_EMIT p.limitationsChanged(); |
4911 | + } |
4912 | + |
4913 | + void statusUpdated(connectivityqt::Connectivity::Status value) |
4914 | + { |
4915 | + Q_EMIT p.statusChanged(static_cast<NetworkingStatus::Status>(value)); |
4916 | + } |
4917 | +}; |
4918 | + |
4919 | +NetworkingStatus::NetworkingStatus(QObject *parent) |
4920 | + : QObject(parent), |
4921 | + d{new Private{*this}} |
4922 | +{ |
4923 | + qRegisterMetaType<ubuntu::connectivity::NetworkingStatus::Limitations>(); |
4924 | + qRegisterMetaType<QVector<ubuntu::connectivity::NetworkingStatus::Limitations>>(); |
4925 | + qRegisterMetaType<ubuntu::connectivity::NetworkingStatus::Status>(); |
4926 | +} |
4927 | + |
4928 | +NetworkingStatus::~NetworkingStatus() |
4929 | +{} |
4930 | + |
4931 | +QVector<NetworkingStatus::Limitations> |
4932 | +NetworkingStatus::limitations() const |
4933 | +{ |
4934 | + QVector<NetworkingStatus::Limitations> result; |
4935 | + for (const auto& limitation : d->m_connectivity->limitations()) |
4936 | + { |
4937 | + result.push_back( |
4938 | + static_cast<NetworkingStatus::Limitations>(limitation)); |
4939 | + } |
4940 | + return result; |
4941 | +} |
4942 | + |
4943 | +NetworkingStatus::Status |
4944 | +NetworkingStatus::status() const |
4945 | +{ |
4946 | + return static_cast<NetworkingStatus::Status>(d->m_connectivity->status()); |
4947 | +} |
4948 | + |
4949 | +} |
4950 | +} |
4951 | + |
4952 | +#include "networking-status.moc" |
4953 | |
4954 | === added file 'src/connectivity-api/connectivity-qt/ubuntu/connectivity/networking-status.h' |
4955 | --- src/connectivity-api/connectivity-qt/ubuntu/connectivity/networking-status.h 1970-01-01 00:00:00 +0000 |
4956 | +++ src/connectivity-api/connectivity-qt/ubuntu/connectivity/networking-status.h 2015-05-13 10:12:45 +0000 |
4957 | @@ -0,0 +1,109 @@ |
4958 | +/* |
4959 | + * Copyright © 2014 Canonical Ltd. |
4960 | + * |
4961 | + * This program is free software: you can redistribute it and/or modify it |
4962 | + * under the terms of the GNU Lesser General Public License version 3, |
4963 | + * as published by the Free Software Foundation. |
4964 | + * |
4965 | + * This program is distributed in the hope that it will be useful, |
4966 | + * but WITHOUT ANY WARRANTY; without even the implied warranty of |
4967 | + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
4968 | + * GNU Lesser General Public License for more details. |
4969 | + * |
4970 | + * You should have received a copy of the GNU Lesser General Public License |
4971 | + * along with this program. If not, see <http://www.gnu.org/licenses/>. |
4972 | + * |
4973 | + * Authors: |
4974 | + * Antti Kaijanmäki <antti.kaijanmaki@canonical.com> |
4975 | + */ |
4976 | + |
4977 | +#pragma once |
4978 | + |
4979 | +#include <QObject> |
4980 | +#include <QScopedPointer> |
4981 | +#include <QVector> |
4982 | + |
4983 | +namespace ubuntu { |
4984 | +namespace connectivity { |
4985 | + |
4986 | +/** |
4987 | + * @brief Overall system networking status. |
4988 | + * |
4989 | + * This is the top-level class for accessing networking information. |
4990 | + * |
4991 | + * * For system networking status, see NetworkingStatus::status. |
4992 | + * * For connection limitations, see NetworkingStatus::limitations. |
4993 | + * |
4994 | + * Examples: |
4995 | + * - @ref networking-status "Getting the networking status." |
4996 | + */ |
4997 | +class Q_DECL_EXPORT NetworkingStatus : public QObject |
4998 | +{ |
4999 | + Q_OBJECT |
5000 | + Q_DISABLE_COPY(NetworkingStatus) |
FAILED: Continuous integration, rev:501 jenkins. qa.ubuntu. com/job/ indicator- network- ci/340/ jenkins. qa.ubuntu. com/job/ indicator- network- vivid-amd64- ci/129/ console jenkins. qa.ubuntu. com/job/ indicator- network- vivid-armhf- ci/129/ console
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild: s-jenkins. ubuntu- ci:8080/ job/indicator- network- ci/340/ rebuild
http://