]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/treeviewsidebarpage.h
1) Make sure that size qprogressbar is really updated after each change
[dolphin.git] / src / treeviewsidebarpage.h
index ec0907ac256bd20ce6fd3f480c71a7ffa6415e97..ba820ff20c0e4632ce4de84b06805f2442b325af 100644 (file)
@@ -48,6 +48,30 @@ public:
     /** @see QWidget::sizeHint() */
     virtual QSize sizeHint() const;
 
+    void setShowHiddenFiles(bool show);
+    bool showHiddenFiles() const;
+
+signals:
+    /**
+     * Is emitted if the an URL change is requested.
+     */
+    void changeUrl(const KUrl& url, Qt::MouseButtons buttons);
+
+    /**
+     * This signal is emitted when the sidebar requests a change in the
+     * current selection. The file-management view recieving this signal is
+     * not required to select all listed files, limiting the selection to
+     * e.g. the current folder. The new selection will be reported via the
+     * setSelection slot.
+     */
+    void changeSelection(const KFileItemList& selection);
+
+    /**
+     * This signal is emitted whenever a drop action on this widget needs the
+     * MainWindow's attention.
+     */
+    void urlsDropped(const KUrl::List& urls, const KUrl& destination);
+
 public slots:
     /**
      * Changes the current selection inside the tree to \a url.
@@ -62,13 +86,6 @@ protected:
     virtual void contextMenuEvent(QContextMenuEvent* event);
 
 private slots:
-    /**
-     * Expands the tree in a way that the item with the URL m_selectedUrl
-     * gets visible. Is called by TreeViewSidebarPage::updateSelection()
-     * if the dir lister has been completed.
-     */
-    void expandSelectionParent();
-
     /**
      * Updates the active view to the URL
      * which is given by the item with the index \a index.
@@ -85,7 +102,13 @@ private slots:
      * Invokes expandToLeafDir() asynchronously (the expanding
      * may not be done in the context of this slot).
      */
-    void triggerExpanding(const QModelIndex& index);
+    void triggerExpanding();
+
+    /**
+     * Invokes loadSubTree() asynchronously (the loading
+     * may not be done in the context of this slot).
+     */
+    void triggerLoadSubTree();
 
     /**
      * Expands all directories to make m_leafDir visible and
@@ -101,17 +124,11 @@ private slots:
     void loadSubTree();
 
     /**
-     * Is invoked when the directory lister has started the loading
-     * of the URL \a url and sets the internal m_dirListerCompleted
-     * state to false.
+     * Assures that the leaf folder gets visible.
      */
-    void slotDirListerStarted(const KUrl& url);
+    void scrollToLeaf();
 
-    /**
-     * Is invoked when the directory lister has completed the loading
-     * and sets the internal m_dirListerCompleted state to true.
-     */
-    void slotDirListerCompleted();
+    void updateMouseButtons();
 
 private:
     /**
@@ -121,8 +138,16 @@ private:
      */
     void loadTree(const KUrl& url);
 
+    /**
+     * Selects the current leaf directory m_leafDir and assures
+     * that the directory is visible if the leaf has been set by
+     * TreeViewSidebarPage::setUrl().
+     */
+    void selectLeafDirectory();
+
 private:
-    bool m_dirListerCompleted;
+    bool m_setLeafVisible;
+    Qt::MouseButtons m_mouseButtons;
     KDirLister* m_dirLister;
     DolphinModel* m_dolphinModel;
     DolphinSortFilterProxyModel* m_proxyModel;