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


//                 Generated by preSip
//            module tdeio  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.

%ModuleHeaderCode
#include <progressbase.h>
%End

namespace TDEIO
{

enum Progress
{
    DEFAULT, 
    STATUSBAR, 
    LIST
};


class ProgressBase : TQWidget
{
%TypeHeaderCode
#include <progressbase.h>
%End


public:
                         ProgressBase (TQWidget* /TransferThis/);
    void                 setJob (TDEIO::Job*);
    void                 setJob (TDEIO::CopyJob*);
    void                 setJob (TDEIO::DeleteJob*);
    void                 setStopOnClose (bool);
    bool                 stopOnClose () const;
    void                 setOnlyClean (bool);
    bool                 onlyClean () const;

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


public slots:
    void                 slotStop ();
    virtual void         slotClean ();
    virtual void         slotTotalSize (TDEIO::Job*, TDEIO::filesize_t);
    virtual void         slotTotalFiles (TDEIO::Job*, ulong);
    virtual void         slotTotalDirs (TDEIO::Job*, ulong);
    virtual void         slotProcessedSize (TDEIO::Job*, TDEIO::filesize_t);
    virtual void         slotProcessedFiles (TDEIO::Job*, ulong);
    virtual void         slotProcessedDirs (TDEIO::Job*, ulong);
    virtual void         slotSpeed (TDEIO::Job*, ulong);
    virtual void         slotPercent (TDEIO::Job*, ulong);
    virtual void         slotCopying (TDEIO::Job*, const KURL&, const KURL&);
    virtual void         slotMoving (TDEIO::Job*, const KURL&, const KURL&);
    virtual void         slotDeleting (TDEIO::Job*, const KURL&);
    virtual void         slotCreatingDir (TDEIO::Job*, const KURL&);
    virtual void         slotCanResume (TDEIO::Job*, TDEIO::filesize_t);

signals:
    void                 stopped ();

protected slots:
    void                 slotFinished (TDEIO::Job*);

protected:
    virtual void         closeEvent (TQCloseEvent*);

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

};  // class ProgressBase

};  // namespace TDEIO

