// Copyright 2010 Simon Edwards <simon@simonzone.com>

//                 Generated by twine2

// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU Library General Public License as
// published by the Free Software Foundation; either version 2, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details

// You should have received a copy of the GNU Library General Public
// License along with this program; if not, write to the
// Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.

class KDualAction : KAction
{
%TypeHeaderCode
#include <kdualaction.h>
%End

public:
    explicit                KDualAction (QObject* parent /TransferThis/);
                            KDualAction (const QString& inactiveText, const QString& activeText, QObject* parent /TransferThis/);
    ~KDualAction ();
    void                    setActiveGuiItem (const KGuiItem&);
    KGuiItem                activeGuiItem () const;
    void                    setInactiveGuiItem (const KGuiItem&);
    KGuiItem                inactiveGuiItem () const;
    void                    setActiveIcon (const QIcon&);
    QIcon                   activeIcon () const;
    void                    setInactiveIcon (const QIcon&);
    QIcon                   inactiveIcon () const;
    void                    setActiveText (const QString&);
    QString                 activeText () const;
    void                    setInactiveText (const QString&);
    QString                 inactiveText () const;
    void                    setActiveToolTip (const QString&);
    QString                 activeToolTip () const;
    void                    setInactiveToolTip (const QString&);
    QString                 inactiveToolTip () const;
    void                    setIconForStates (const QIcon& icon);
    bool                    isActive () const;
    void                    setAutoToggle (bool);
    bool                    autoToggle () const;
    void                    setActive (bool state);
signals:
    void                    activeChanged (bool);
    void                    activeChangedByUser (bool);
};
