summaryrefslogtreecommitdiffstats
path: root/examples
Commit message (Collapse)AuthorAgeFilesLines
* Update AddressBook ExampleSteven Ceuppens2014-04-283-3/+3
| | | | | | | | | | Adding parent to QDialog As proposed on qt-project.org forum: http://qt-project.org/forums/viewthread/41686/ Change-Id: Ib66d24e4afd0be803a1080c37bc6c0a189844786 Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* purge vestiges of opengl es 1 supportOswald Buddenhagen2014-04-0410-483/+9
| | | | | | | | amends 0d5170256c1. Change-Id: Ifa178d38f602bb7c66ef13334673ff47e332af5b Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* Updated outdated README for thread examplesKai Koehne2014-03-311-8/+6
| | | | | | Change-Id: I3fa8ac350dc89546793d49a31cc5a152c1f55958 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Polish the image gestures example.Friedemann Kleint2014-03-285-34/+138
| | | | | | | | | | | | | | | | | | - Add a command line parser to properly evaluate help option and directory argument, add options to disable gestures. - Add logging category so that the user can actually see what is happening. - Scale large images. - Use qreal instead of float. - Minor polishing: set window title, position file dialog at pictures location. Task-number: QTBUG-37759 Task-number: QTBUG-37203 Change-Id: Ibaf54a13034b150386a8aee476f83a9eba298298 Reviewed-by: Indrajit Tapadar <indrajit.tapadar@digia.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
* Doc: Move IPC example documentationTopi Reinio2014-03-277-0/+210
| | | | | | | | | | | | Examples under examples/ipc were not part of any module documentation. This change adds the above folder to Qt Core documentation, and moves the corresponding files so that the example documentation is built correctly. Change-Id: If1f34ce7ef04a02df8a87f820bb2e68ffa723dd4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Doc: Remove empty and duplicated fileSergio Ahumada2014-03-271-31/+0
| | | | | | | | | | This example already exists under examples/dbus/remotecontrolledcar/doc/src/dbus-remotecontrolledcar.qdoc Change-Id: If50efa704fb29ed111d6d589ea74cd2575131372 Reviewed-by: Sze Howe Koh <szehowe.koh@gmail.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* Save using a window-modal sheet on Mac OS X.Morten Johan Sørvig2014-03-201-3/+8
| | | | | | Change-Id: Icd150787f9ff0878fafd459b3741d1b1e008f8bc Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Fix compiler warning in exampleKai Koehne2014-03-201-1/+1
| | | | | | | | | | | | | Fix warning main.cpp:160: warning: no return statement in function returning non-void [-Wreturn-type] } ^ Change-Id: I4b74e8f56136077ef9a71b803d2756394fcd7658 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Use QCommandLineParser in example dnslookup.Friedemann Kleint2014-03-152-55/+136
| | | | | | | | | | | Show how use QCommandLineParser with additional parameter checking for custom options and positional arguments. Also explain how to display help in GUI applications. Change-Id: I03513e09b7dd5b150259593da0af2ef2a281cab2 Reviewed-by: David Faure <david.faure@kdab.com>
* contextinfo: Make it more responsive and improve error handlingLaszlo Agocs2014-03-141-2/+7
| | | | | Change-Id: If05cd906edc8b7f1fd4744d8d0a392aeec46a454 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* contextinfo example: Print the format() both for context and surfaceLaszlo Agocs2014-03-142-15/+30
| | | | | | | And make the output a bit nicer. Change-Id: I5f0f82374b6e9f9feca70a60c30967adb35d48ec Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Remove calls to setlocale in QtOpenGL cube example.Friedemann Kleint2014-03-141-7/+0
| | | | | | | | | | | | This is causing compilation errors on some Windows CE configurations: mainwidget.cpp(130) : error C3861: 'setlocale': identifier not found mainwidget.cpp(149) : error C3861: 'setlocale': identifier not found Change-Id: Ie863cd7c9c53cfef4074dabffe157d9068654a1c Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Doc: correction link, example and parameter issues qtbaseNico Vertriest2014-03-102-1/+1
| | | | | | | | | | | | | Moved codecs folder to qtbase/examples Corrected quote in dropsite.qdoc Replaced snippet statement by include statement Added doc for undocumented parameters Task-number: QTBUG-34749 Change-Id: If4de95b8d39e5680fd0f63f8d2b6685a4b0a8052 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Build the cube opengl example both for desktop and ESLaszlo Agocs2014-03-071-2/+2
| | | | | | | | | No reason to restrict it to desktop only, the code works on ES2 too. Task-number: QTBUG-35730 Change-Id: I915a88cbf3c95a941d6bafd88ed57fef0b6a25b9 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Do not attempt to open multiple windows in hellowindow on embeddedLaszlo Agocs2014-03-061-2/+3
| | | | | | | | | | Platforms like eglfs will not allow opening more than one OpenGL-based window. To prevent aborting the hellowindow example when invoked without --single, enhance the capability check to include also WindowManagement in addition to ThreadedOpenGL. Change-Id: I147d90b31d9fd94912c36339d36af3f311aaa874 Reviewed-by: Andy Nichols <andy.nichols@digia.com>
* Fix warning about unused memberJędrzej Nowacki2014-03-061-2/+1
| | | | | | | sub-attaq/boat_p.h:134:9: warning: private field 'key' is not used [-Wunused-private-field] Change-Id: I3f4cb1325aaac71d2bf0e7807381742937d173f7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* CustomSortFilterModel example: fix build with QT_NO_CURSORAndrew Knight2014-03-061-0/+2
| | | | | Change-Id: Icb40e49365114fedd5f1ef118dbd61ff2c413863 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* Extend QOpenGLFunctions with GL1 functionsLaszlo Agocs2014-03-045-21/+27
| | | | | | | | | | | | | | | | | | This introduces the ability to indirectly invoke all common GL1-GLES2 functions via QOpenGLFunctions. The GL1 functions are not yet resolved, since this would not work anyway when linking to an OpenGL implementation directly. However this may change later but that will be a completely internal change without affecting any public APIs. Also migrate some of the opengl examples to use QOpenGLFunctions for everything. Once dynamic GL loading becomes available on some platforms, these examples should continue to function without any changes since they do not anymore invoke any OpenGL functions directly. Task-number: QTBUG-36483 Change-Id: Ie630029651e5a4863a480aac5306edd67ee36813 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Dynamic GL: remove exporting symbolsLaszlo Agocs2014-03-041-2/+2
| | | | | | | | | | | | | | | | | | | | | Remove the opengl proxy for now. Later it will either be moved into a separate library or replaced by a QOpenGLFunctions-based approach. This means that the -opengl dynamic configuration is not usable for the time being. The rest of the enablers remain in place. The convenience function QOpenGLFunctions::isES() is now moved to QOpenGLContext and is changed to check the renderable type. This is extremely useful since besides supporting dynamic GL it solves also the problem of GL_ARB_ES2_compatibility (i.e. it triggers the real ES path when creating an ES-compatible context with a desktop OpenGL implementation). Task-number: QTBUG-36483 Task-number: QTBUG-37172 Change-Id: I045be3fc16e9043e1528cf48e6bf0903da4fa7ca Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Add an example for creating OpenGL contextsLaszlo Agocs2014-02-287-1/+800
| | | | | | | | | | | | | | | | | | | Besides serving as an example for performing OpenGL rendering inside a window container in a way that it works across all GL versions, this is an extremely useful tool for developers and users alike since it allows quick and easy checking of what sort of context a particular driver returns for a particular QSurfaceFormat. NB! Depending on the OpenGL driver, some surprises can be expected. The handling of core/compatibility profiles, the fwdcompat bit, the supported GLSL versions, etc. tend to be somewhat different across the different OpenGL implementations. Task-number: QTBUG-37071 Change-Id: Iae4328e66cd0bb19f74a77fefef93ea5a3221e31 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* Doc: Replace obsolete types with their newer counterpartsSze Howe Koh2014-02-251-1/+1
| | | | | | | | | This patch ignores: - Docs for obsolete types themselves - Comparisons between new and obsolete types Change-Id: Id9b1e628255113e7c44520abe0f8a4e0db4a283d Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
* Fix division by zero in hellogl_es2 example.Friedemann Kleint2014-02-241-6/+6
| | | | | | | | Task-number: QTBUG-37027 Change-Id: Id18ee9c44650de9c434a82d3d10cf48e6ba9e78c Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Avoid truncation warning in openglwindow exampleLaszlo Agocs2014-02-211-1/+1
| | | | | | | | msvc shows a warning about double -> float truncation. Avoid this. Change-Id: I1b74cf407c81c881df5e95cc7d64a210888595e3 Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Gunnar Sletta <gunnar.sletta@jollamobile.com>
* Dynamic GL switch on WindowsLaszlo Agocs2014-02-142-37/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The patch introduces a new build configuration on Windows which can be requested by passing -opengl dynamic to configure. Platforms other than Windows (including WinRT) are not affected. The existing Angle and desktop configurations are not affected. These continue to function as before and Angle remains the default. In the future, when all modules have added support for the dynamic path, as described below, the default configuration could be changed to be the dynamic one. This would allow providing a single set of binaries in the official builds instead of the current two. When requesting dynamic GL, Angle is built but QT_OPENGL_ES[_2] are never defined. Instead, the code path that has traditionally been desktop GL only becomes the dynamic path that has to do runtime checks. Qt modules and applications are not linked to opengl32.dll or libegl/glesv2.dll in this case. Instead, QtGui exports all necessary egl/egl/gl functions which will, under the hood, forward all requests to a dynamically loaded EGL/WGL/GL implementation. Porting guide (better said, changes needed to prepare your code to work with dynamic GL builds when the fallback to Angle is utilized): 1. In !QT_OPENGL_ES[_2] code branches use QOpenGLFunctions::isES() to differentiate between desktop and ES where needed. Keep in mind that it is the desktop GL header (plus qopenglext.h) that is included, not the GLES one. QtGui's proxy will handle some differences, for example calling glClearDepth will route to glClearDepthf when needed. The built-in eglGetProcAddress is able to retrieve pointers for standard GLES2 functions too so code resolving OpenGL 2 functions will function in any case. 2. QT_CONFIG will contain "opengl" and "dynamicgl" in dynamic builds, but never "angle" or "opengles2". 3. The preprocessor define QT_OPENGL_DYNAMIC is also available in dynamic builds. The usage of this is strongly discouraged and should not be needed anywhere except for QtGui and the platform plugin. 4. Code in need of the library handle can use QOpenGLFunctions::platformGLHandle(). The decision on which library to load is currently based on a simple test that creates a dummy window/context and tries to resolve an OpenGL 2 function. If this fails, it goes for Angle. This seems to work well on Win7 PCs for example that do not have proper graphics drivers providing OpenGL installed but are D3D9 capable using the default drivers. Setting QT_OPENGL to desktop or angle skips the test and forces usage of the given GL. There are also two new application attributes that could be used for the same purpose. If Angle is requested but the libraries are not present, desktop is tried. If desktop is requested, or if angle is requested but nothing works, the EGL/WGL functions will still be callable but will return 0. This conveniently means that eglInitialize() and such will report a failure. Debug messages can be enabled by setting QT_OPENGLPROXY_DEBUG. This will tell which implementation is chosen. The textures example application is ported to OpenGL 2, the GL 1 code path is removed. [ChangeLog][QtGui] Qt builds on Windows can now be configured for dynamic loading of the OpenGL implementation. This can be requested by passing -opengl dynamic to configure. In this mode no modules will link to opengl32.dll or Angle's libegl/libglesv2. Instead, QtGui will dynamically choose between desktop and Angle during the first GL/EGL/WGL call. This allows deploying applications with a single set of Qt libraries with the ability of transparently falling back to Angle in case the opengl32.dll is not suitable, due to missing graphics drivers for example. Task-number: QTBUG-36483 Change-Id: I716fdebbf60b355b7d9ef57d1e069eef366b4ab9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
* Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-02-122-4/+1
|\ | | | | | | | | | | | | | | | | | | Conflicts: src/gui/image/qimage.cpp src/gui/text/qtextengine.cpp src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp src/printsupport/kernel/qprintengine_win.cpp Change-Id: I09ce991a57f39bc7b1ad6978d0e0d858df0cd444
| * Fix out-of-tree compilation of widget examplesKai Koehne2014-02-112-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | 'styles' are only defined in the qt build internals, when the examples are compiled inside a configured Qt source. That's not the case for the examples e.g. in the Qt SDK. (windows is a default style on all platforms, anyway. So I think the check is superfluous in the first place.) Task-number: QTBUG-36655 Change-Id: I7114619efd479408dad99c8514f8e33ddcab7c7c Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Frederik Gladhorn2014-02-1126-19/+119
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-02-0726-19/+119
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/gui/kernel/qguiapplication.cpp src/plugins/platforms/android/androidjnimain.cpp src/plugins/platforms/android/qandroidplatformintegration.cpp src/plugins/platforms/android/qandroidplatformintegration.h src/plugins/platforms/android/qandroidplatformopenglcontext.cpp src/plugins/platforms/cocoa/qcocoawindow.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/xcb/qxcbconnection_xi2.cpp src/sql/doc/src/sql-driver.qdoc src/widgets/widgets/qtoolbararealayout.cpp Change-Id: Ifd7e58760c3cb6bd8a7d1dd32ef83b7ec190d41e
| | * Update some more screenshots in qtbase/examples/widgets.Mitch Curtis2014-01-314-0/+0
| | | | | | | | | | | | | | | | | | | | | The screenshots were taken on Windows 7 with the Aero theme. Change-Id: I2517664e25389f4fb87408daec7b720dfb785bf0 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
| | * Doc: corrected link/example errorsNico Vertriest2014-01-3114-15/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update pro files after move gestures folder Update snippet statements Corrected path in imagegestures.pro Task-number: QTBUG-34749 Change-Id: Icc19908914e36507e412ab63bf0cc2809aa48e17 Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
| | * Update some screenshots in qtbase/examples/widgets.Mitch Curtis2014-01-318-0/+0
| | | | | | | | | | | | | | | | | | | | | The screenshots were taken on Windows 7 with the Aero theme. Change-Id: Ief04c3a9c0084a778606ba72f1f3199119d5c64e Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
| | * Doc: corrected broken linksNico Vertriest2014-01-232-10/+110
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Links fixed: Extra Filters Basic Tools blockingfortuneclient Thread Support Drag and drop examples qBinaryFind qmake common project types imagegestures Task-number: QTBUG-34749 Change-Id: Ib93dda00716dc596db327fee5b97e110a9f27fa7 Reviewed-by: Martin Smith <martin.smith@digia.com>
* | | widgets/mainwindows/mainwindow example: Use mouse release event for dock title.Friedemann Kleint2014-02-072-2/+2
|/ / | | | | | | | | | | | | Task-number: QTBUG-36364 Change-Id: Ie3352c8e72a636aee2099ca3138eb0ac77425e7e Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | Fix MSVC-warnings about double to float truncation.Friedemann Kleint2014-01-241-24/+24
| | | | | | | | | | Change-Id: I4aef12bd8fe37dffb06fc7d0b6a330bfc42fa270 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@digia.com>
* | Fix MSVC-warnings about stray */* in sources.Friedemann Kleint2014-01-242-2/+2
| | | | | | | | | | Change-Id: Ifa8de548dc8df79fa2b5d884383dc120661cb45a Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2014-01-201-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.h src/corelib/tools/qstring.cpp src/gui/image/image.pri src/gui/image/qimage.cpp src/plugins/platforms/cocoa/qcocoawindow.h src/plugins/platforms/cocoa/qcocoawindow.mm src/plugins/platforms/eglfs/qeglfshooks_stub.cpp tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp Change-Id: I3b9ba029c8f2263b011f204fdf68c3231c6d4ce5
| * Doc: Fix typo in Fade Message Effect Example documentationJonathan Liu2014-01-161-1/+1
| | | | | | | | | | Change-Id: I3a64f296d01f2b0147f87b406163ff25c4d12ada Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@digia.com>
* | expand tabs and related whitespace fixes in *.{cpp,h,qdoc}Oswald Buddenhagen2014-01-1332-178/+178
| | | | | | | | | | | | | | | | the diff -w for this commit is empty. Started-by: Thiago Macieira <thiago.macieira@intel.com> Change-Id: I77bb84e71c63ce75e0709e5b94bee18e3ce6ab9e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/stable' into devSimon Hausmann2014-01-031-2/+2
|\| | | | | | | Change-Id: Id13badc270db98806048753fd7fb658aa17f1ede
| * Fix some typos in documentation.Jeff Tranter2014-01-021-2/+2
| | | | | | | | | | | | | | | | Fix some spelling and grammatical errors in comments that show up in Qt documentation. No changes to code. Change-Id: I2e946fda0bd9a2117f8e9b2fb300df9bf0a98a6c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-245-4/+118
|\| | | | | | | Change-Id: I2defae1904154283446b069d151c3ef57302ec7b
| * Doc: corrected broken linksNico Vertriest2013-12-202-4/+4
| | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-34749 Corrected link to drag and drop example. Corrected link to {mandatory fields} Created target referring to macros for defining plugins Change-Id: I387a2d9bab428b2eacd8d371f08c72f42f7e2be2 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
| * Doc: Move XML example documentation to correct locationNico Vertriest2013-12-203-0/+74
| | | | | | | | | | | | | | | | | | Moving the examples documentation to resolve doc linking issues. Task-number: QTBUG-34749 Change-Id: I2adb1b5d37911c7df6a78a03741d3d43ab24eafb Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
| * Doc: solved link problem for dombookmarks.qdocNico Vertriest2013-12-162-0/+40
| | | | | | | | | | | | | | Task-number: QTBUG-34749 Change-Id: I2f2fbf16314e069ab04e5c5ab4bcef9780c008a2 Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | Merge "Merge remote-tracking branch 'origin/stable' into dev" into ↵Simon Hausmann2013-12-092-0/+48
|\ \ | | | | | | | | | refs/staging/dev
| * | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-12-052-0/+48
| |\| | | | | | | | | | | | | | | | | | | Conflicts: src/sql/drivers/sqlite/qsql_sqlite.cpp Change-Id: Ia7cffd2c99ae3d5eea6b5740683c06e921336dcd
| | * Doc: Moved Books SQL Example documentationNico Vertriest2013-12-052-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Moved qdoc and image file to correct qdoc folder. Added brief and ingroup statements to books.qdoc. Task-number: QTBUG-34749 Change-Id: I5806ffd6f116cccf10238e3e1a9fc627ad0e93a9 Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | | WinRT: Fixed compilation of bearermonitor exampleOliver Wolff2013-12-062-6/+6
|/ / | | | | | | | | Change-Id: I761ad1d85d97d7746d826225f03f95c2f04f8b88 Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* | Merge remote-tracking branch 'origin/stable' into devFrederik Gladhorn2013-11-294-5/+5
|\| | | | | | | Change-Id: Ibb342cc5fc55ff9a3f4b3ecbd53936b57bc13e63
| * Make OpenGL examples work on retina displays.Morten Johan Sørvig2013-11-294-5/+5
| | | | | | | | | | | | | | | | | | glViewport expects device pixels, but the various geometry accessors returns values in device-independent pixels. Change-Id: I8004692de82251e4f1f25bf8f2698895f222ede3 Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>