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


//                 Generated by preSip
//            module kfile  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.,
// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.


class KOpenWithDlg : QDialog
{
%TypeHeaderCode
#include <kopenwith.h>
%End


public:
                         KOpenWithDlg (const KURL::List&, QWidget* /TransferThis/ = 0);
                         KOpenWithDlg (const KURL::List&, const QString&, const QString&, QWidget* /TransferThis/ = 0);
                         KOpenWithDlg (const QString&, const QString&, QWidget* /TransferThis/ = 0);

%If ( KDE_3_1_0 -  )
                         KOpenWithDlg (QWidget* /TransferThis/ = 0);
%End

    QString              text ();

%If ( KDE_3_2_0 -  )
    void                 hideNoCloseOnExit ();
    void                 hideRunInTerminal ();
%End

    KService::Ptr        service ();

%If ( KDE_3_2_0 -  )
    void                 setSaveNewApplications (bool);
%End


public slots:
    void                 slotClear ();
    void                 slotSelected (const QString&, const QString&);
    void                 slotHighlighted (const QString&, const QString&);
    void                 slotTextChanged ();
    void                 slotTerminalToggled (bool);
    void                 slotDbClick ();
    void                 slotOK ();

protected slots:
    virtual void         accept ();

protected:
    void                 setServiceType (const KURL::List&);
    void                 init (const QString&, const QString&);

};  // class KOpenWithDlg


class KFileOpenWithHandler : KOpenWithHandler
{
%TypeHeaderCode
#include <kopenwith.h>
%End


public:
                         KFileOpenWithHandler ();
    virtual bool         displayOpenWithDialog (const KURL::List&);

};  // class KFileOpenWithHandler


%If (  - KDE_3_1_0 )

class KAppTreeListItem : QListViewItem
{
%TypeHeaderCode
#include <kopenwith.h>
%End


protected:
    QString              key (int, bool) const;
    void                 init (const QPixmap&, bool, bool, QString, QString);

public:
                         KAppTreeListItem (KListView* /TransferThis/, const QString&, const QPixmap&, bool, bool, QString, QString);
                         KAppTreeListItem (QListViewItem* /TransferThis/, const QString&, const QPixmap&, bool, bool, QString, QString);
    bool                 isDirectory ();

protected:
    virtual void         activate ();
    virtual void         setOpen (bool);

};  // class KAppTreeListItem

%End


%If (  - KDE_3_1_0 )

class KApplicationTree : KListView
{
%TypeHeaderCode
#include <kopenwith.h>
%End


public:
                         KApplicationTree (QWidget* /TransferThis/);
    void                 addDesktopGroup (QString, KAppTreeListItem* = 0);
    KAppTreeListItem*    it;
    bool                 isDirSel ();

protected:
    void                 resizeEvent (QResizeEvent*);

public slots:
    void                 slotItemHighlighted (QListViewItem*);
    void                 slotSelectionChanged (QListViewItem*);

signals:
    void                 selected (const QString&, const QString&);
    void                 highlighted (const QString&, const QString&);

};  // class KApplicationTree

%End

