aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/platform
Commit message (Collapse)AuthorAgeFilesLines
* Update plugins.qmltypesJ-P Nurmi2016-10-051-1/+65
| | | | | Change-Id: I276dbd1464577fdee9c6920deb38e890c1a18daf Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Fix FileDialog::selectedNameFilter review findingsJ-P Nurmi2016-09-146-21/+242
| | | | | | | | | | | | | | | | FileDialog::nameFilters contains an array of name filter strings that combine the name and extensions. For example: - "Text files (*.txt)" - "HTML files (*.html *.htm)" When dealing with multiple name filters, it is quite clumsy to use a string type of 'selectedNameFilter' which is one of the above full file name filter string values. Make it possible to read/write the index of the selected name filter, and provide the filter's name and extensions separately. Change-Id: Ie416cc4ab3dcde93c10769b6f7ac44915307f194 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Platform: add experimental StandardPathsJ-P Nurmi2016-09-136-3/+265
| | | | | | | This complements the File/FolderDialog offering. Change-Id: I44a105724321092a6efc4126c8fb25f7d31b77e2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Doc: add example snippet to FileDialog::nameFiltersJ-P Nurmi2016-08-251-0/+6
| | | | | Change-Id: Iac753e53ff838d232365c13b92e150d528daef2a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Platform: widget-based fallbacks no longer need to check availabilityJ-P Nurmi2016-08-166-143/+80
| | | | | | | | | | | It is done in qwidgetplatform_p.h createWidget() outside QT_WIDGETS_LIB guards so you get the important warnings even in -no-widgets builds. Now that the widget platform instances are created only when really available, they can unconditionally instantiate the respective widget, which simplifies the code quite a bit. Change-Id: I7430f8e803050e43edb3af3a139b0508445f6a37 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: offload widget fallback creation to qwidgetplatform_p.hJ-P Nurmi2016-08-155-53/+65
| | | | | Change-Id: If51b359fa44a539c236e1a070e69451c75e190f7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: align logging outputJ-P Nurmi2016-08-154-4/+9
| | | | | Change-Id: I3438e1da864f6d7c710e4770f12aa2596f091a9d Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: handle QPlatformTheme::usePlatformNativeDialog()J-P Nurmi2016-08-151-1/+2
| | | | | Change-Id: Iee7c700666d866ac28b8102a17ee86121af1af4e Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: fix Menu logging outputJ-P Nurmi2016-08-151-2/+1
| | | | | | | It should be _after_ the potential widget-instance creation. Change-Id: I7534a5914aeb96b441807945030a1ea1d8370378 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: respect Qt::AA_DontUseNativeDialogsJ-P Nurmi2016-08-155-5/+9
| | | | | Change-Id: I107d51c9e3a874b92c627735dc88c7d296ec799f Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: cleanup creationJ-P Nurmi2016-08-1512-111/+58
| | | | | | | | Now that we know the type and whether it should be native, it can be all done in the base class to reduce a lot of code duplication. Change-Id: I7d7d7057fa499df75b72914d2b505bfa0288048d Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Add QQuickPlatformDialog::useNativeDialog()J-P Nurmi2016-08-1511-5/+37
| | | | | Change-Id: Id1699a6045eb9066a80ebdbb3cb5d3a01e58a36f Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: pass the dialog type to QQuickPlatformDialog ctorJ-P Nurmi2016-08-157-7/+16
| | | | | Change-Id: I42b5e403e6cb16e607d9ce0d0e9f624b150bec03 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: revise the names of the protected helper methodsJ-P Nurmi2016-08-1512-31/+31
| | | | | Change-Id: I4b65c7623a34d016243e626146437d2fa20fd93b Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: add Dialog::done(int) and Dialog::resultJ-P Nurmi2016-08-145-43/+72
| | | | | | | A more generic replacement for MessageDialog.clickedButton. Change-Id: I060f70a48ab258485e3155188e483c4cf24210e0 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: apply the optionsJ-P Nurmi2016-08-1412-13/+24
| | | | | Change-Id: I6bccfebcbb32dcafeea0814d88f7882857a62a85 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: respect (undocumented) DontUseNativeDialogJ-P Nurmi2016-08-144-4/+12
| | | | | Change-Id: I56ad5025fb873261ccd96e82e4c9fff0731ddf92 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: postpone the platform handle creation furtherJ-P Nurmi2016-08-141-2/+0
| | | | | | | | It is no longer necessary to force the creation when accessing the handle, because all places where it is used have a fallback member. Change-Id: I7051b79e12c48aff0065a5a478c9c6c0c3ad2559 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform dialogs: make properties independent of the platform instanceJ-P Nurmi2016-08-144-2/+6
| | | | | | | | This allows us to postpone to creation further, and even re-create the instance on the fly later, without losing information. Change-Id: I116d332d10d637bbc393ee31ec1bc8b0cd156835 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: set DontUseNativeDialog on the QtWidgets-based fallbacksJ-P Nurmi2016-08-143-3/+3
| | | | | | | | Make sure the widget-based fallback implementation will never call back to the platform plugin. Change-Id: I860e61d23a34edcd0a8f85aabbd8d9c86ceac9ad Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* File|FolderDialog: fill in and use the initial values in the optionsJ-P Nurmi2016-08-142-8/+7
| | | | | Change-Id: I5805e03327cea6cba8083f636e061b561e87f215 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* FileDialog: add missing selectedNameFilter-propertyJ-P Nurmi2016-08-143-0/+30
| | | | | Change-Id: If31d657e29a9cc3049af5cd3cf39d68979ff2db0 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* FileDialog: add missing folder-propertyJ-P Nurmi2016-08-143-0/+29
| | | | | Change-Id: I60d60072f1cc6a876228e647b1d6db943e303ea2 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* FileDialog: replace file(s)Selected() with declarative propertiesJ-P Nurmi2016-08-143-50/+127
| | | | | | | Follow the same convention that ColorDialog, FontDialog and FolderDialog. Change-Id: I960d4fc1ba275ab997f2a079a799d2b90796eca3 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* FolderDialog: replace folderSelected() with a declarative propertyJ-P Nurmi2016-08-143-46/+60
| | | | | | | Follow the same convention that ColorDialog and FontDialog. Change-Id: I49834daf908aadf145949c0b749c6c066f63fd83 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* FontDialog: replace fontSelected() with a declarative propertyJ-P Nurmi2016-08-144-20/+57
| | | | | | | This is consistent with the QML FontDialog from QtQuick Dialogs 1. Change-Id: I14a5a313be5ba9a9e0fb1645fe272cf9c2cdd389 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* ColorDialog: replace colorSelected() with a declarative propertyJ-P Nurmi2016-08-145-22/+59
| | | | | | | This is consistent with the QML ColorDialog from QtQuick Dialogs 1. Change-Id: I4068a98156494eb36b2d9ecf4c1af90ad173bb97 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: create platform dialog instances lazily on demandJ-P Nurmi2016-08-1412-102/+131
| | | | | Change-Id: Ie963cb5c082b49205f7b7244ace3b88254ec37c7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: add missing logging to FontDialogJ-P Nurmi2016-08-141-0/+5
| | | | | | | See 8868f35 for details. Change-Id: Ief74515e3be385e5d248f5082063e3f8dde72c81 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: update plugins.qmltypesJ-P Nurmi2016-08-141-0/+87
| | | | | Change-Id: Iea162f6960d20758e5fdfd0544f38ea8d22d007d Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Doc: fix linking errors in platform dialogsJ-P Nurmi2016-08-131-2/+2
| | | | | Change-Id: I1c90622135d4fc5156aa40b258fd79de72c21331 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: add MessageDialog.clickedButtonJ-P Nurmi2016-08-132-3/+27
| | | | | | | To be more in line with QtQuick.Dialogs 1.x. Change-Id: Ic512222a88a376ebc142563dceccbbb1c3b98a75 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform.MessageDialog: add button-specific clicked signalsJ-P Nurmi2016-08-132-0/+150
| | | | | | | | This is similar to what MessageDialog from QtQuick Dialogs 1.x does, and evidently very convenient and intuitive to use. Change-Id: I8f7e0f98cfbc256e0dd398471b63ecf04d884314 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: enable widgets also on other platforms than Win & LinuxJ-P Nurmi2016-08-131-3/+1
| | | | | | | | | None of the platforms provide _all_ native types. There is always at least one type on every platform that needs to fallback to widgets. For example, without this, MessageDialog does not appear on macOS. Change-Id: I40e83f58da6a510cec4f8280d5b8d8aa1e2e4fc1 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: register StandardButton for compatibilityJ-P Nurmi2016-08-131-0/+1
| | | | | | | StandardButton is used by QtQuick.Dialogs 1.x Change-Id: I12da1f00f60e08ac10fb5c0dda04e1d1c16179bc Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: add logging categories to help with debuggingJ-P Nurmi2016-08-138-0/+39
| | | | | | | | | | | | | | | | | | | | | | | Available categories: - qt.labs.platform.dialogs - qt.labs.platform.menus - qt.labs.platform.tray The output shows which implementation is used. Example: $ QT_LOGGING_RULES=qt.labs.platform.*=true ./texteditor qt.labs.platform.menus: MenuBar: QCocoaMenuBar(0x7fe27bdf7730) qt.labs.platform.menus: Menu: QPlatformMenu(0x7fe27bdf8450) qt.labs.platform.menus: Menu: QPlatformMenu(0x7fe27bdfa510) qt.labs.platform.menus: Menu: QPlatformMenu(0x7fe27e500000) qt.labs.platform.dialogs: FileDialog: QPlatformFileDialogHelper(0x7fe27e500f30) qt.labs.platform.dialogs: FileDialog: QPlatformFileDialogHelper(0x7fe27e501ac0) qt.labs.platform.dialogs: ColorDialog: QPlatformColorDialogHelper(0x7fe27e502920) qt.labs.platform.dialogs: MessageDialog: QWidgetPlatformMessageDialog(0x7fe27e523b40) qt.labs.platform.menus: Menu: QPlatformMenu(0x7fe27bcd9c30) Change-Id: I07fc8b13f05f365337bc171149bb848639b3fbd0 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform.MessageDialog: fix accepted and rejected signalsJ-P Nurmi2016-08-132-2/+17
| | | | | | | | The clicked signal from the platform dialog cannot be wired to the close slot. We must check the role and act accordingly. Change-Id: I2cb9e106814f9b901d76dd79ff8eeeafe98d4d46 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: add missing Dialog::visibleJ-P Nurmi2016-08-133-5/+37
| | | | | | | To be more in line with QtQuick.Dialogs 1.x. Change-Id: Ied68abee9574ff8705c4abfc1940081ab3686a2b Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: add MenuSeparator for convenience and consistencyJ-P Nurmi2016-08-126-1/+139
| | | | | Change-Id: I0c0aae219c81b9248a5a8a0fd0e78521cbe86360 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* FileDialog: handle defaultSuffixJ-P Nurmi2016-08-102-3/+29
| | | | | | | | | Looks like defaultSuffix is not handled by QPlatformFileDialog even if it is passed via QFileDialogOptions. This patch makes QML FileDialog handle the defaultSuffix the same way QFileDialog from QtWidgets does. Change-Id: Icdb527715a6bdfc8d90b55639c4926941cbd5afd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Remove execute permission from image filesEdward Welbourne2016-08-092-0/+0
| | | | | Change-Id: Ia7652d201cdaec4e930582416c4327f9f63df545 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Platform: fix inconsistent missing override warningsJ-P Nurmi2016-08-052-4/+4
| | | | | Change-Id: Ib3111bf9378d7910b99658a1747f6407ff69a943 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Platform: add missing plugins.qmltypesJ-P Nurmi2016-06-291-0/+293
| | | | | Change-Id: I223f19db90f8c1183399831a12e7beaf9923413d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Platform dialogs: set the options on constructionJ-P Nurmi2016-06-273-6/+3
| | | | | | | | | | | | Platform dialogs hold a shared pointer to an options structure. Dialog implementations may access the options in various places (eg. QGtk3FileDialogHelper::selectFile()) and seem to rely that the options are not null at this point. Thus, pass the options pointer right away on construction instead of unnecessarily delaying to applyOptions(), to avoid potential crashes. Change-Id: I14b0801eb58a9834867dd302a6610e64adeea0cd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Platform: add FileDialog and FolderDialogJ-P Nurmi2016-06-2711-0/+1108
| | | | | Change-Id: I4328c273e48139d6ddd5a3d3c8492d06f48a5c24 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Doc: fix names in Qt Labs Platform docsJ-P Nurmi2016-06-246-7/+7
| | | | | | | | OS X -> macOS, GTK -> GTK+ Change-Id: I501bc5bc6d8ecff647f701febb777c5207b593cd Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Platform: fix missing titles for ColorDialog & FontDialogJ-P Nurmi2016-06-242-0/+2
| | | | | Change-Id: I9bf88049d4c6c77cbd438398fd13a11c07efc7f3 Reviewed-by: Liang Qi <liang.qi@qt.io>
* qtlabsplatform.qdocconf: add missing qtwidgets dependencyJ-P Nurmi2016-06-241-1/+1
| | | | | Change-Id: I205d62325cf3ce2ce16c725752c02762cec877c1 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Platform: add MessageDialogJ-P Nurmi2016-06-229-0/+526
| | | | | Change-Id: I89f67fa4f620dc81dd9e7fe848f37ea5c12d5db7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* ColorDialog & FontDialog: use widgets as a fallbackJ-P Nurmi2016-06-229-2/+509
| | | | | | | | | | | | This makes these dialogs available on Windows and KDE. One more reason to keep the module experimental. In the long run, platforms should implement QPA dialogs so that we can remove the undesired dependency. Also simple instance creation tests are included to make sure it won't crash with non-QApplication apps. Change-Id: Ib4dabe7b656a1aa1f114052a3f57c9b1232ff27f Reviewed-by: J-P Nurmi <jpnurmi@qt.io>