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


//                 Generated by preSip
//            module tdefile  version KDE_3_1_1


// 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 KPropertiesDialog : KDialogBase
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
    static bool          canDisplay (KFileItemList);
                         KPropertiesDialog (KFileItem*, TQWidget*/TransferThis/ = 0, const char* = 0, bool = 0, bool = 1);
                         KPropertiesDialog (KFileItemList, TQWidget*/TransferThis/ = 0, const char* = 0, bool = 0, bool = 1);
                         KPropertiesDialog (const KURL&, mode_t = -1, TQWidget*/TransferThis/ = 0, const char* = 0, bool = 0, bool = 1);
                         KPropertiesDialog (const KURL&, const KURL&, const TQString&, TQWidget*/TransferThis/ = 0, const char* = 0, bool = 0, bool = 1);
                         KPropertiesDialog (const TQString&, TQWidget*/TransferThis/ = 0, const char* = 0, bool = 0);
    void                 insertPlugin (KPropsDlgPlugin*);
    const KURL&          kurl () const;
    KFileItem*           item ();
    KFileItemList        items () const;
    KDialogBase*         dialog ();
    const KURL&          currentDir () const;
    const TQString&       defaultName () const;
    void                 updateUrl (const KURL&);
    void                 rename (const TQString&);
    void                 abortApplying ();

public slots:
    virtual void         slotOk ();
    virtual void         slotCancel ();

signals:
    void                 propertiesClosed ();
    void                 applied ();
    void                 canceled ();

};  // class KPropertiesDialog


class KPropsDlgPlugin : TQObject
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
                         KPropsDlgPlugin (KPropertiesDialog*);
    virtual void         applyChanges ();
    static bool          isDesktopFile (KFileItem*);
    void                 setDirty (bool);
    bool                 isDirty () const;

public slots:
    void                 setDirty ();

signals:
    void                 changed ();

protected:

};  // class KPropsDlgPlugin


class KFilePropsPlugin : KPropsDlgPlugin
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
                         KFilePropsPlugin (KPropertiesDialog*);
    virtual void         applyChanges ();
    static bool          supports (KFileItemList);
    void                 postApplyChanges ();

protected slots:
    void                 slotCopyFinished (TDEIO::Job*);
    void                 slotFileRenamed (TDEIO::Job*, const KURL&, const KURL&);
    void                 slotDirSizeFinished (TDEIO::Job*);
    void                 slotFoundMountPoint (const TQString&, ulong, ulong, ulong);
    void                 slotSizeStop ();
    void                 slotSizeDetermine ();

};  // class KFilePropsPlugin


class KFilePermissionsPropsPlugin : KPropsDlgPlugin
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
                         KFilePermissionsPropsPlugin (KPropertiesDialog*);
    virtual void         applyChanges ();
    static bool          supports (KFileItemList);

};  // class KFilePermissionsPropsPlugin


class KExecPropsPlugin : KPropsDlgPlugin
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
                         KExecPropsPlugin (KPropertiesDialog*);
    virtual void         applyChanges ();
    static bool          supports (KFileItemList);

public slots:
    void                 slotBrowseExec ();

};  // class KExecPropsPlugin


class KURLPropsPlugin : KPropsDlgPlugin
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
                         KURLPropsPlugin (KPropertiesDialog*);
    virtual void         applyChanges ();
    static bool          supports (KFileItemList);

};  // class KURLPropsPlugin


class TDEApplicationPropsPlugin : KPropsDlgPlugin
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
                         TDEApplicationPropsPlugin (KPropertiesDialog*);
    virtual void         applyChanges ();
    static bool          supports (KFileItemList);

public slots:
    void                 slotDelExtension ();
    void                 slotAddExtension ();

};  // class TDEApplicationPropsPlugin


class KBindingPropsPlugin : KPropsDlgPlugin
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
                         KBindingPropsPlugin (KPropertiesDialog*);
    virtual void         applyChanges ();
    static bool          supports (KFileItemList);

};  // class KBindingPropsPlugin


class KDevicePropsPlugin : KPropsDlgPlugin
{
%TypeHeaderCode
#include <kpropsdlg.h>
%End


public:
                         KDevicePropsPlugin (KPropertiesDialog*);
    virtual void         applyChanges ();
    static bool          supports (KFileItemList);

};  // class KDevicePropsPlugin

