//
//     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 KFileItemDelegate : QAbstractItemDelegate
{
%TypeHeaderCode
#include <kfileitemdelegate.h>
%End


public:

    enum Information
    {
        NoInformation,
        Size,
        Permissions,
        OctalPermissions,
        Owner,
        OwnerAndGroup,
        CreationTime,
        ModificationTime,
        AccessTime,
        MimeType,
        FriendlyMimeType
    };

//ig     typedef QList<KFileItemDelegate::Information> InformationList;

    explicit                KFileItemDelegate (QObject* parent /TransferThis/ = 0);
    virtual QSize           sizeHint (const QStyleOptionViewItem& option, const QModelIndex& index) const;
    virtual void            paint (QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const;
    virtual QWidget*        createEditor (QWidget* parent /Transfer/, const QStyleOptionViewItem& option, const QModelIndex& index) const;
    virtual bool            editorEvent (QEvent* event, QAbstractItemModel* model, const QStyleOptionViewItem& option, const QModelIndex& index);
    virtual void            setEditorData (QWidget* editor, const QModelIndex& index) const;
    virtual void            setModelData (QWidget* editor, QAbstractItemModel* model, const QModelIndex& index) const;
    virtual void            updateEditorGeometry (QWidget* editor, const QStyleOptionViewItem& option, const QModelIndex& index) const;
//ig     void               setShowInformation (const KFileItemDelegate::InformationList& list);
    void                    setShowInformation (KFileItemDelegate::Information information);
//ig     KFileItemDelegate::InformationList  showInformation () const;
    void                    setShadowColor (const QColor& color);
    QColor                  shadowColor () const;
    void                    setShadowOffset (const QPointF& offset);
    QPointF                 shadowOffset () const;
    void                    setShadowBlur (qreal radius);
    qreal                   shadowBlur () const;
    void                    setMaximumSize (const QSize& size);
    QSize                   maximumSize () const;
    void                    setShowToolTipWhenElided (bool showToolTip);
    bool                    showToolTipWhenElided () const;
    virtual bool            eventFilter (QObject* object, QEvent* event);
    bool                    helpEvent (QHelpEvent* event, QAbstractItemView* view, const QStyleOptionViewItem& option, const QModelIndex& index);
    QRegion                 shape (const QStyleOptionViewItem& option, const QModelIndex& index);

private:
                            KFileItemDelegate (const KFileItemDelegate&);
};   // KFileItemDelegate


