#include <QListView>
#include <QWidget>
+class QActionGroup;
class KAction;
class KToggleAction;
class DolphinController;
class DolphinSortFilterProxyModel;
class QModelIndex;
class ViewProperties;
+namespace KIO
+{
+ class PreviewJob;
+}
/**
* @short Represents a view for the directory content.
};
/**
- * @param parent Parent widget of the view.
- * @param url Specifies the content which should be shown.
- * @param dirLister Used directory lister. The lister is not owned
- * by the view and won't get deleted.
- * @param dolphinModel Used directory model. The model is not owned
- * by the view and won't get deleted.
- * @param proxyModel Used proxy model which specifies the sorting. The
- * model is not owned by the view and won't get
- * deleted.
+ * @param parent Parent widget of the view.
+ * @param url Specifies the content which should be shown.
+ * @param dirLister Used directory lister. The lister is not owned
+ * by the view and won't get deleted.
+ * @param dolphinModel Used directory model. The model is not owned
+ * by the view and won't get deleted.
+ * @param proxyModel Used proxy model which specifies the sorting. The
+ * model is not owned by the view and won't get
+ * deleted.
*/
DolphinView(QWidget* parent,
const KUrl& url,
*/
static KAction* createDeleteAction(KActionCollection* collection);
+ /**
+ * Creates the "new directory" action.
+ * This code is here to share it between the mainwindow and the part
+ */
+ static KAction* createNewDirAction(KActionCollection* collection);
+
+ /**
+ * Creates the "sort descending" action.
+ * This code is here to share it between the mainwindow and the part
+ */
+ static KAction* createSortDescendingAction(KActionCollection* collection);
+
+ /**
+ * Creates an action group with all the "show additional information" actions in it.
+ * This code is here to share it between the mainwindow and the part
+ */
+ static QActionGroup* createAdditionalInformationActionGroup(KActionCollection* collection);
+
/**
* Returns the action name corresponding to the current view mode
*/
/** Pastes the clipboard data to this view. */
void paste();
+ /** Switches between an ascending and descending sorting order. */
+ void toggleSortOrder();
+
signals:
/**
* Is emitted if the view has been activated by e. g. a mouse click.
*/
void requestContextMenu(const KFileItem& item, const KUrl& url);
- /**
- * Is emitted if the URLs \a are dropped to the destination URL
- * \a destination. No operation is done within the DolphinView, the
- * receiver of the signal has to take care about the corresponding
- * operation.
- */
- void urlsDropped(const KUrl::List& urls, const KUrl& destination);
-
/**
* Is emitted if an information message with the content \a msg
* should be shown.
* Replaces the icon of the item \a item by the preview pixmap
* \a pixmap.
*/
- void showPreview(const KFileItem& item, const QPixmap& pixmap);
+ void replaceIcon(const KFileItem& item, const QPixmap& pixmap);
void emitSelectionChangedSignal();
const KFileItem& destItem);
/**
- * Drops the URLs \a urls at the
- * destination \a destination.
+ * Handles the dropping of URLs to the given destination.
+ * @see DolphinDropController
*/
void dropUrls(const KUrl::List& urls,
const KUrl& destination);
/**
* Updates the view properties of the current URL to the
- * additional informations given by \a info.
+ * additional information given by \a info.
*/
void updateAdditionalInfo(const KFileItemDelegate::InformationList& info);
*/
void slotDeleteFileFinished(KJob* job);
+ /**
+ * Is invoked when the preview job has been finished and
+ * set m_previewJob to 0.
+ */
+ void slotPreviewJobFinished(KJob* job);
+
private:
void loadDirectory(const KUrl& url, bool reload = false);
KDirLister* m_dirLister;
DolphinSortFilterProxyModel* m_proxyModel;
+ KIO::PreviewJob* m_previewJob;
+
QList<CutItem> m_cutItemsCache;
KUrl m_rootUrl;