//
//     Copyright 2008 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2007 Jim Bublitz also apply

//                 Generated by twine

// This file is part of PyKDE4.

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

// PyKDE4 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 General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.




class KShortcutsEditor : QWidget
{
%TypeHeaderCode
#include <kshortcutseditor.h>
%End


public:

    enum ActionType
    {
        WidgetAction,
        WindowAction,
        ApplicationAction,
        GlobalAction,
        AllActions
    };

    typedef QFlags<KShortcutsEditor::ActionType> ActionTypes;


    enum LetterShortcuts
    {
        LetterShortcutsDisallowed,
        LetterShortcutsAllowed
    };

                            KShortcutsEditor (KActionCollection* collection, QWidget* parent /TransferThis/, KShortcutsEditor::ActionTypes actionTypes = KShortcutsEditor::AllActions, KShortcutsEditor::LetterShortcuts allowLetterShortcuts = KShortcutsEditor::LetterShortcutsAllowed);
    explicit                KShortcutsEditor (QWidget* parent /TransferThis/, KShortcutsEditor::ActionTypes actionTypes = KShortcutsEditor::AllActions, KShortcutsEditor::LetterShortcuts allowLetterShortcuts = KShortcutsEditor::LetterShortcutsAllowed);
    bool                    isModified () const;
    void                    clearCollections ();
    void                    addCollection (KActionCollection*, const QString& title = QString());
    void                    undoChanges ();
    void                    save ();
    void                    commit ();
    void                    clearConfiguration ();
    void                    writeConfiguration (KConfigGroup* config = 0) const;
    void                    exportConfiguration (KConfig* config) const;
    void                    exportConfiguration (KConfigBase* config) const;
    void                    importConfiguration (KConfig* config);
    void                    importConfiguration (KConfigBase* config);

signals:
    void                    keyChange ();

public:
    void                    resizeColumns ();
    void                    allDefault ();
    void                    printShortcuts () const;

private:
                            KShortcutsEditor (const KShortcutsEditor&);

public:
//ig     static bool        checkGlobalShortcutsConflict (const KShortcut& cut, bool warnUser, QWidget* parent /Transfer/);
//ig     static bool        checkStandardShortcutsConflict (const KShortcut& cut, bool warnUser, QWidget* parent /Transfer/);
};   // KShortcutsEditor


