// qdialogbuttonbox.sip generated by MetaSIP on Sat Dec  8 09:51:33 2012
//
// This file is part of the QtGui Python extension module.
//
// Copyright (c) 2012 Riverbank Computing Limited <info@riverbankcomputing.com>
// 
// This file is part of PyQt.
// 
// This file may be used under the terms of the GNU General Public
// License versions 2.0 or 3.0 as published by the Free Software
// Foundation and appearing in the files LICENSE.GPL2 and LICENSE.GPL3
// included in the packaging of this file.  Alternatively you may (at
// your option) use any later version of the GNU General Public
// License if such license has been publicly approved by Riverbank
// Computing Limited (or its successors, if any) and the KDE Free Qt
// Foundation. In addition, as a special exception, Riverbank gives you
// certain additional rights. These rights are described in the Riverbank
// GPL Exception version 1.1, which can be found in the file
// GPL_EXCEPTION.txt in this package.
// 
// If you are unsure which license is appropriate for your use, please
// contact the sales department at sales@riverbankcomputing.com.
// 
// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.


%If (Qt_4_2_0 -)
%ModuleCode
#include <qdialogbuttonbox.h>
%End
%End

%If (Qt_4_2_0 -)

class QDialogButtonBox : QWidget
{
%TypeHeaderCode
#include <qdialogbuttonbox.h>
%End

public:
    enum ButtonLayout
    {
        WinLayout,
        MacLayout,
        KdeLayout,
        GnomeLayout,
    };

    enum ButtonRole
    {
        InvalidRole,
        AcceptRole,
        RejectRole,
        DestructiveRole,
        ActionRole,
        HelpRole,
        YesRole,
        NoRole,
        ResetRole,
        ApplyRole,
    };

    enum StandardButton
    {
        NoButton,
        Ok,
        Save,
        SaveAll,
        Open,
        Yes,
        YesToAll,
        No,
        NoToAll,
        Abort,
        Retry,
        Ignore,
        Close,
        Cancel,
        Discard,
        Help,
        Apply,
        Reset,
        RestoreDefaults,
    };

    typedef QFlags<QDialogButtonBox::StandardButton> StandardButtons;
    QDialogButtonBox(QWidget *parent /TransferThis/ = 0);
    QDialogButtonBox(Qt::Orientation orientation, QWidget *parent /TransferThis/ = 0);
    QDialogButtonBox(QFlags<QDialogButtonBox::StandardButton> buttons, Qt::Orientation orientation = Qt::Horizontal, QWidget *parent /TransferThis/ = 0);
    virtual ~QDialogButtonBox();
    void setOrientation(Qt::Orientation orientation);
    Qt::Orientation orientation() const;
    void addButton(QAbstractButton *button /Transfer/, QDialogButtonBox::ButtonRole role);
    QPushButton *addButton(const QString &text, QDialogButtonBox::ButtonRole role) /Transfer/;
    QPushButton *addButton(QDialogButtonBox::StandardButton button) /Transfer/;
    void removeButton(QAbstractButton *button /TransferBack/);
    void clear();
    QList<QAbstractButton*> buttons() const;
    QDialogButtonBox::ButtonRole buttonRole(QAbstractButton *button) const;
    void setStandardButtons(QFlags<QDialogButtonBox::StandardButton> buttons);
    QFlags<QDialogButtonBox::StandardButton> standardButtons() const;
    QDialogButtonBox::StandardButton standardButton(QAbstractButton *button) const;
    QPushButton *button(QDialogButtonBox::StandardButton which) const;
    void setCenterButtons(bool center);
    bool centerButtons() const;

signals:
    void accepted();
    void clicked(QAbstractButton *button);
    void helpRequested();
    void rejected();

protected:
    virtual void changeEvent(QEvent *event);
    virtual bool event(QEvent *event);

private:
    QDialogButtonBox(const QDialogButtonBox &);
};

%End
%If (Qt_4_2_0 -)
QFlags<QDialogButtonBox::StandardButton> operator|(QDialogButtonBox::StandardButton f1, QFlags<QDialogButtonBox::StandardButton> f2);
%End
