// // Copyright 2008 Jim Bublitz // 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 . %ModuleHeaderCode #include %End class KDirModel : QAbstractItemModel { %TypeHeaderCode #include %End public: explicit KDirModel (QObject* parent /TransferThis/ = 0); void setDirLister (KDirLister* dirLister); KDirLister* dirLister () const; KFileItem itemForIndex (const QModelIndex& index) const; QModelIndex indexForItem (const KFileItem&) const; QModelIndex indexForUrl (const KUrl& url) const; void expandToUrl (const KUrl& url); void itemChanged (const QModelIndex& index); enum ModelColumns { Name, Size, ModifiedTime, Permissions, Owner, Group, Type, ColumnCount }; enum { ChildCountUnknown }; enum AdditionalRoles { FileItemRole, ChildCountRole, HasJobRole }; enum DropsAllowedFlag { NoDrops, DropOnDirectory, DropOnAnyFile, DropOnLocalExecutable }; typedef QFlags DropsAllowed; void setDropsAllowed (KDirModel::DropsAllowed dropsAllowed); virtual bool canFetchMore (const QModelIndex& parent /Transfer/) const; virtual int columnCount (const QModelIndex& parent /Transfer/ = QModelIndex()) const; virtual QVariant data (const QModelIndex& index, int role = Qt::DisplayRole) const; virtual bool dropMimeData (const QMimeData* data, Qt::DropAction action, int row, int column, const QModelIndex& parent /Transfer/); virtual void fetchMore (const QModelIndex& parent /Transfer/); virtual Qt::ItemFlags flags (const QModelIndex& index) const; virtual bool hasChildren (const QModelIndex& parent /Transfer/ = QModelIndex()) const; virtual QVariant headerData (int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; virtual QModelIndex index (int row, int column, const QModelIndex& parent /Transfer/ = QModelIndex()) const; virtual QMimeData* mimeData (const QModelIndexList& indexes) const; virtual QStringList mimeTypes () const; virtual QModelIndex parent (const QModelIndex& index) const; virtual int rowCount (const QModelIndex& parent /Transfer/ = QModelIndex()) const; virtual bool setData (const QModelIndex& index, const QVariant& value, int role = Qt::EditRole); virtual void sort (int column, Qt::SortOrder order = Qt::AscendingOrder); static KUrl::List simplifiedUrlList (const KUrl::List& urls); void requestSequenceIcon (const QModelIndex& index, int sequenceIndex); signals: void expand (const QModelIndex& index); void needSequenceIcon (const QModelIndex& index, int sequenceIndex); public: ~KDirModel (); void setJobTransfersVisible (bool value); bool jobTransfersVisible () const; //force private: virtual bool removeColumns(int, int, const QModelIndex&); virtual bool removeRows(int, int, const QModelIndex&); virtual bool insertColumns(int, int, const QModelIndex&); virtual bool insertRows(int, int, const QModelIndex&); //end }; // KDirModel