diff options
author | Shawn Rutledge <shawn.rutledge@qt.io> | 2016-02-09 14:19:46 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2018-09-25 14:15:40 +0000 |
commit | 4c631c0bf971f0b41eb319cd3c6d5c723055aac6 (patch) | |
tree | abb82a4a0200bceeff929691ecf9312538879dca /src/gui/kernel/qplatformdialoghelper.h | |
parent | 2d587a03eb41cc907660deffeaf6805237706594 (diff) |
Android: add support for custom buttons in native MessageDialog helper
New API in QMessageDialogOptions and implementation on Android.
Task-number: QTBUG-35545
Change-Id: I59567251199f220862d01ba76979266379eecd86
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Diffstat (limited to 'src/gui/kernel/qplatformdialoghelper.h')
-rw-r--r-- | src/gui/kernel/qplatformdialoghelper.h | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/gui/kernel/qplatformdialoghelper.h b/src/gui/kernel/qplatformdialoghelper.h index 64b703e524..bfcb658172 100644 --- a/src/gui/kernel/qplatformdialoghelper.h +++ b/src/gui/kernel/qplatformdialoghelper.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2018 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the QtGui module of the Qt Toolkit. @@ -460,6 +460,26 @@ public: void setStandardButtons(QPlatformDialogHelper::StandardButtons buttons); QPlatformDialogHelper::StandardButtons standardButtons() const; + struct CustomButton { + explicit CustomButton( + int id = -1, const QString &label = QString(), + QPlatformDialogHelper::ButtonRole role = QPlatformDialogHelper::InvalidRole, + void *button = nullptr) : + label(label), role(role), id(id), button(button) + {} + + QString label; + QPlatformDialogHelper::ButtonRole role; + int id; + void *button; // strictly internal use only + }; + + int addButton(const QString &label, QPlatformDialogHelper::ButtonRole role, + void *buttonImpl = nullptr); + void removeButton(int id); + const QVector<CustomButton> &customButtons(); + const CustomButton *customButton(int id); + private: QMessageDialogOptionsPrivate *d; }; |