X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/396d620466e2a3042650d95b114e79e7d32c970b..846b21edf57e7aeb83e84ee68e9f61c5981fbacd:/src/dolphinview.h diff --git a/src/dolphinview.h b/src/dolphinview.h index 4a2f5be02..215a2a23c 100644 --- a/src/dolphinview.h +++ b/src/dolphinview.h @@ -38,18 +38,21 @@ #include #include -class KAction; -class KToggleAction; +class QActionGroup; class DolphinController; -class KDirLister; -class KFileItemDelegate; -class KUrl; -class DolphinModel; class DolphinColumnView; class DolphinDetailsView; class DolphinIconsView; class DolphinMainWindow; +class DolphinModel; class DolphinSortFilterProxyModel; +class IconManager; +class KAction; +class KActionCollection; +class KDirLister; +class KFileItemDelegate; +class KUrl; +class KToggleAction; class QModelIndex; class ViewProperties; @@ -115,15 +118,15 @@ public: }; /** - * @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, @@ -161,39 +164,18 @@ public: * Changes the view mode for the current directory to \a mode. * If the view properties should be remembered for each directory * (GeneralSettings::globalViewProps() returns false), then the - * changed view mode will be be stored automatically. + * changed view mode will be stored automatically. */ void setMode(Mode mode); Mode mode() const; - /** - * Turns on the file preview for the all files of the current directory, - * if \a show is true. - * If the view properties should be remembered for each directory - * (GeneralSettings::globalViewProps() returns false), then the - * preview setting will be be stored automatically. - */ - void setShowPreview(bool show); + /** See setShowPreview */ bool showPreview() const; - /** - * Shows all hidden files of the current directory, - * if \a show is true. - * If the view properties should be remembered for each directory - * (GeneralSettings::globalViewProps() returns false), then the - * show hidden file setting will be be stored automatically. - */ - void setShowHiddenFiles(bool show); + /** See setShowHiddenFiles */ bool showHiddenFiles() const; - /** - * Summarizes all sorted items by their category \a categorized - * is true. - * If the view properties should be remembered for each directory - * (GeneralSettings::globalViewProps() returns false), then the - * categorized sorting setting will be be stored automatically. - */ - void setCategorizedSorting(bool categorized); + /** See setCategorizedSorting */ bool categorizedSorting() const; /** @@ -341,22 +323,9 @@ public: static KToggleAction* columnsModeAction(KActionCollection* collection); /** - * Creates the rename action. - * This code is here to share it between the mainwindow and the part - */ - static KAction* createRenameAction(KActionCollection* collection); - - /** - * Creates the "move to trash" action. - * This code is here to share it between the mainwindow and the part + * Updates the state of the 'Additional Information' actions in \a collection. */ - static KAction* createMoveToTrashAction(KActionCollection* collection); - - /** - * Creates the delete action. - * This code is here to share it between the mainwindow and the part - */ - static KAction* createDeleteAction(KActionCollection* collection); + void updateAdditionalInfoActions(KActionCollection* collection); /** * Returns the action name corresponding to the current view mode @@ -413,6 +382,42 @@ public slots: /** Pastes the clipboard data to this view. */ void paste(); + /** + * Turns on the file preview for the all files of the current directory, + * if \a show is true. + * If the view properties should be remembered for each directory + * (GeneralSettings::globalViewProps() returns false), then the + * preview setting will be stored automatically. + */ + void setShowPreview(bool show); + + /** + * Shows all hidden files of the current directory, + * if \a show is true. + * If the view properties should be remembered for each directory + * (GeneralSettings::globalViewProps() returns false), then the + * show hidden file setting will be stored automatically. + */ + void setShowHiddenFiles(bool show); + + /** + * Summarizes all sorted items by their category \a categorized + * is true. + * If the view properties should be remembered for each directory + * (GeneralSettings::globalViewProps() returns false), then the + * categorized sorting setting will be stored automatically. + */ + void setCategorizedSorting(bool categorized); + + /** Switches between an ascending and descending sorting order. */ + void toggleSortOrder(); + + /** + * Switches on or off the displaying of additional information + * as specified by \a action. + */ + void toggleAdditionalInfo(QAction* action); + signals: /** * Is emitted if the view has been activated by e. g. a mouse click. @@ -448,8 +453,8 @@ signals: /** Is emitted if the sort order (ascending or descending) has been changed. */ void sortOrderChanged(Qt::SortOrder order); - /** Is emitted if the additional information for an item has been changed. */ - void additionalInfoChanged(const KFileItemDelegate::InformationList& info); + /** Is emitted if the additional information shown for this view has been changed. */ + void additionalInfoChanged(); /** * Is emitted if information of an item is requested to be shown e. g. in the sidebar. @@ -472,14 +477,6 @@ signals: */ 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. @@ -530,19 +527,6 @@ private slots: */ void triggerItem(const KFileItem& index); - /** - * Generates a preview image for each file item in \a items. - * The current preview settings (maximum size, 'Show Preview' menu) - * are respected. - */ - void generatePreviews(const KFileItemList& items); - - /** - * Replaces the icon of the item \a item by the preview pixmap - * \a pixmap. - */ - void showPreview(const KFileItem& item, const QPixmap& pixmap); - void emitSelectionChangedSignal(); /** @@ -562,8 +546,8 @@ private slots: 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); @@ -581,7 +565,7 @@ private slots: /** * 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); @@ -591,9 +575,6 @@ private slots: */ void emitContentsMoved(); - /** Applies an item effect to all cut items of the clipboard. */ - void updateCutItems(); - /** * Updates the status bar to show hover information for the * item \a item. If currently other items are selected, @@ -652,9 +633,6 @@ private: */ bool isCutItem(const KFileItem& item) const; - /** Applies an item effect to all cut items. */ - void applyCutItemEffect(); - /** * Returns true, if the ColumnView is activated. As the column view * requires some special handling for iterating through directories, @@ -666,16 +644,6 @@ private: } private: - /** - * Remembers the original pixmap for an item before - * the cut effect is applied. - */ - struct CutItem - { - KUrl url; - QPixmap pixmap; - }; - bool m_active; bool m_showPreview; bool m_loadingDirectory; @@ -690,13 +658,13 @@ private: DolphinDetailsView* m_detailsView; DolphinColumnView* m_columnView; KFileItemDelegate* m_fileItemDelegate; - QItemSelectionModel *m_selectionModel; + QItemSelectionModel* m_selectionModel; DolphinModel* m_dolphinModel; KDirLister* m_dirLister; DolphinSortFilterProxyModel* m_proxyModel; - QList m_cutItemsCache; + IconManager* m_iconManager; KUrl m_rootUrl; };