//
//     Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
//     may also apply


//                 Generated by preSip
//            module kdeui  version KDE 3.5.3


// This software is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License as
// published by the Free Software Foundation; either version 2 of
// the License, or (at your option) any later version.
//
// This software 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 library; see the file COPYING.
// If not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


class KDialogBase : KDialog
{
%TypeHeaderCode
#include <kdialogbase.h>
%End


public:

%If ( KDE_3_3_0 -  )

    enum ButtonCode
    {
        Help, 
        Default, 
        Ok, 
        Apply, 
        Try, 
        Cancel, 
        Close, 
        User1, 
        User2, 
        User3, 
        No, 
        Yes, 
        Details, 
        Filler, 
        Stretch, 
        NoDefault
    };

%End


    enum ActionButtonStyle
    {
        ActionStyle0, 
        ActionStyle1, 
        ActionStyle2, 
        ActionStyle3, 
        ActionStyle4, 
        ActionStyleMAX
    };


    enum DialogType
    {
        TreeList, 
        Tabbed, 
        Plain, 
        Swallow, 
        IconList
    };


public:
                         KDialogBase (QWidget* /TransferThis/ = 0, const char* = 0, bool = 1, const QString& = QString ::null , int = Ok |Apply |Cancel , KDialogBase::ButtonCode = Ok , bool = 0, const KGuiItem& = KGuiItem (), const KGuiItem& = KGuiItem (), const KGuiItem& = KGuiItem ());
                         KDialogBase (int, const QString&, int, KDialogBase::ButtonCode, QWidget* /TransferThis/ = 0, const char* = 0, bool = 1, bool = 0, const KGuiItem& = KGuiItem (), const KGuiItem& = KGuiItem (), const KGuiItem& = KGuiItem ());

%If ( KDE_3_2_0 -  )
                         KDialogBase (KDialogBase::DialogType, WFlags, QWidget* /TransferThis/ = 0, const char* = 0, bool = 1, const QString& = QString ::null , int = Ok |Apply |Cancel , KDialogBase::ButtonCode = Ok , bool = 0, const KGuiItem& = KGuiItem (), const KGuiItem& = KGuiItem (), const KGuiItem& = KGuiItem ());
%End

                         KDialogBase (const QString&, int = Yes |No |Cancel , KDialogBase::ButtonCode = Yes , KDialogBase::ButtonCode = Cancel , QWidget* /TransferThis/ = 0, const char* = 0, bool = 1, bool = 0, const KGuiItem& = KStdGuiItem ::yes (), const KGuiItem& = KStdGuiItem ::no (), const KGuiItem& = KStdGuiItem ::cancel ());
    void                 setButtonBoxOrientation (int);
    void                 setEscapeButton (KDialogBase::ButtonCode);
    virtual void         adjustSize ();
    virtual QSize        sizeHint () const;
    virtual QSize        minimumSizeHint () const;
    QFrame*              plainPage ();
    QFrame*              addPage (const QString&, const QString& = QString ::null , const QPixmap& = QPixmap ());
    QFrame*              addPage (const QStringList&, const QString& = QString ::null , const QPixmap& = QPixmap ());
    QVBox*               addVBoxPage (const QString&, const QString& = QString ::null , const QPixmap& = QPixmap ());
    QVBox*               addVBoxPage (const QStringList&, const QString& = QString ::null , const QPixmap& = QPixmap ());
    QHBox*               addHBoxPage (const QString&, const QString& = QString ::null , const QPixmap& = QPixmap ());
    QHBox*               addHBoxPage (const QStringList&, const QString& = QString ::null , const QPixmap& = QPixmap ());
    QGrid*               addGridPage (int, Qt::Orientation, const QString&, const QString& = QString ::null , const QPixmap& = QPixmap ());
    QGrid*               addGridPage (int, Qt::Orientation, const QStringList&, const QString& = QString ::null , const QPixmap& = QPixmap ());
    void                 setFolderIcon (const QStringList&, const QPixmap&);
    QFrame*              makeMainWidget ();
    QVBox*               makeVBoxMainWidget ();
    QHBox*               makeHBoxMainWidget ();
    QGrid*               makeGridMainWidget (int, Qt::Orientation);
    void                 enableButtonSeparator (bool);
    void                 showButton (KDialogBase::ButtonCode, bool);
    void                 showButtonOK (bool);
    void                 showButtonApply (bool);
    void                 showButtonCancel (bool);
    bool                 showPage (int);
    int                  activePageIndex () const;
    int                  pageIndex (QWidget*) const;
    void                 setMainWidget (QWidget*);
    QWidget*             mainWidget ();
    void                 disableResize ();
    void                 setInitialSize (const QSize&, bool = 0);
    void                 incInitialSize (const QSize&, bool = 0);
    QSize                configDialogSize (const QString&) const;

%If ( KDE_3_2_0 -  )
    QSize                configDialogSize (KConfig&, const QString&) const;
%End

    void                 saveDialogSize (const QString&, bool = 0);

%If ( KDE_3_2_0 -  )
    void                 saveDialogSize (KConfig&, const QString&, bool = 0) const;
    void                 setButtonOK (const KGuiItem& = KStdGuiItem ::ok ());
%End

    void                 setButtonOKText (const QString& = QString ::null , const QString& = QString ::null , const QString& = QString ::null );

%If ( KDE_3_2_0 -  )
    void                 setButtonApply (const KGuiItem& = KStdGuiItem ::apply ());
%End

    void                 setButtonApplyText (const QString& = QString ::null , const QString& = QString ::null , const QString& = QString ::null );

%If ( KDE_3_2_0 -  )
    void                 setButtonCancel (const KGuiItem& = KStdGuiItem ::cancel ());
%End

    void                 setButtonCancelText (const QString& = QString ::null , const QString& = QString ::null , const QString& = QString ::null );
    void                 setButtonText (KDialogBase::ButtonCode, const QString&);
    void                 setButtonTip (KDialogBase::ButtonCode, const QString&);
    void                 setButtonWhatsThis (KDialogBase::ButtonCode, const QString&);

%If ( KDE_3_3_0 -  )
    void                 setButtonGuiItem (KDialogBase::ButtonCode, const KGuiItem&);
%End

    void                 setTreeListAutoResize (bool);
    void                 setShowIconsInTreeList (bool);
    void                 setRootIsDecorated (bool);

%If ( KDE_3_2_0 -  )
    void                 unfoldTreeList (bool = 0);
    void                 addWidgetBelowList (QWidget*);
    void                 addButtonBelowList (const QString&, QObject*, const char*);
    void                 addButtonBelowList (const KGuiItem&, QObject*, const char*);
%End

    void                 setIconListAllVisible (bool);
    static bool          haveBackgroundTile ();
    static const QPixmap* backgroundTile ();
    static const QPixmap* getBackgroundTile ();
    static void          setBackgroundTile (const QPixmap*);
    void                 showTile (bool);
    void                 getBorderWidths (int&, int&, int&, int&) const;
    QRect                getContentsRect ();
    QSize                calculateSize (int, int);
    QString              helpLinkText ();
    QPushButton*         actionButton (KDialogBase::ButtonCode);

public slots:
    void                 enableButton (KDialogBase::ButtonCode, bool);
    void                 enableButtonOK (bool);
    void                 enableButtonApply (bool);
    void                 enableButtonCancel (bool);
    void                 enableLinkedHelp (bool);

%If ( KDE_3_1_0 -  )
    void                 delayedDestruct ();
%End

    void                 setHelpLinkText (const QString&);
    void                 setHelp (const QString&, const QString& = QString ::null );
    void                 helpClickedSlot (const QString&);
    void                 setDetails (bool);
    void                 setDetailsWidget (QWidget*);
    void                 updateBackground ();

%If ( KDE_3_1_0 -  )
    void                 cancel ();
%End


signals:
    void                 helpClicked ();
    void                 defaultClicked ();
    void                 user3Clicked ();
    void                 user2Clicked ();
    void                 user1Clicked ();
    void                 applyClicked ();
    void                 tryClicked ();
    void                 okClicked ();
    void                 yesClicked ();
    void                 noClicked ();
    void                 cancelClicked ();
    void                 closeClicked ();
    void                 apply ();
    void                 backgroundChanged ();
    void                 hidden ();
    void                 finished ();
    void                 aboutToShowDetails ();
    void                 aboutToShowPage (QWidget*);

protected:
    virtual void         keyPressEvent (QKeyEvent*);
    virtual void         hideEvent (QHideEvent*);
    virtual void         closeEvent (QCloseEvent*);

protected slots:
    virtual void         slotHelp ();
    virtual void         slotDefault ();
    virtual void         slotDetails ();
    virtual void         slotUser3 ();
    virtual void         slotUser2 ();
    virtual void         slotUser1 ();
    virtual void         slotOk ();
    virtual void         slotApply ();
    virtual void         slotTry ();
    virtual void         slotYes ();
    virtual void         slotNo ();
    virtual void         slotCancel ();
    virtual void         slotClose ();
    virtual void         applyPressed ();
    void                 updateGeometry ();
    void                 slotDelayedDestruct ();

protected:
//igx     virtual void         virtual_hook (int, void*);

public:

%If (  - KDE_3_3_0 )

    enum ButtonCode
    {
        Help, 
        Default, 
        Ok, 
        Apply, 
        Try, 
        Cancel, 
        Close, 
        User1, 
        User2, 
        User3, 
        No, 
        Yes, 
        Details, 
        Filler, 
        Stretch
    };

%End


public:

%If (  - KDE_3_1_0 )
    void                 delayedDestruct ();
%End


};  // class KDialogBase

