]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinviewcontainer.h
Create the new architecture for KCategorizedView. Now DolphinModel is created, inheri...
[dolphin.git] / src / dolphinviewcontainer.h
index 88b4b3b47c6a0df694a2e66696d648ad5826e0a3..f73fb8a26d6c86a1c4915329b5f519c539643b6d 100644 (file)
@@ -23,7 +23,6 @@
 
 #include "dolphinview.h"
 
-#include <kparts/part.h>
 #include <kfileitem.h>
 #include <kfileitemdelegate.h>
 #include <kio/job.h>
 #include <QtGui/QBoxLayout>
 #include <QtGui/QWidget>
 
-class DolphinController;
 class FilterBar;
-class KFileItemDelegate;
 class KUrl;
-class KDirModel;
+class DolphinModel;
 class KUrlNavigator;
-class DolphinColumnView;
-class DolphinDetailsView;
 class DolphinDirLister;
-class DolphinIconsView;
 class DolphinMainWindow;
 class DolphinSortFilterProxyModel;
 class DolphinStatusBar;
 class QModelIndex;
-class ViewProperties;
 
 /**
  * @short Represents a view for the directory content
@@ -71,9 +64,7 @@ class DolphinViewContainer : public QWidget
 public:
     DolphinViewContainer(DolphinMainWindow* mainwindow,
                          QWidget *parent,
-                         const KUrl& url,
-                         DolphinView::Mode mode = DolphinView::IconsView,
-                         bool showHiddenFiles = false);
+                         const KUrl& url);
 
     virtual ~DolphinViewContainer();
 
@@ -105,9 +96,10 @@ public:
      */
     void renameSelectedItems();
 
-    KFileItem* fileItem(const QModelIndex index) const;
+    KFileItem fileItem(const QModelIndex& index) const;
 
-    DolphinStatusBar* statusBar() const;
+    inline const DolphinStatusBar* statusBar() const;
+    inline DolphinStatusBar* statusBar();
 
     /**
      * Returns true, if the URL shown by the navigation bar is editable.
@@ -115,9 +107,11 @@ public:
      */
     bool isUrlEditable() const;
 
-    inline KUrlNavigator* urlNavigator() const;
+    inline const KUrlNavigator* urlNavigator() const;
+    inline KUrlNavigator* urlNavigator();
 
-    inline DolphinView* view() const;
+    inline const DolphinView* view() const;
+    inline DolphinView* view();
 
     /** Returns true, if the filter bar is visible. */
     bool isFilterBarVisible() const;
@@ -126,7 +120,7 @@ public:
      * Return the DolphinMainWindow this View belongs to. It is guaranteed
      * that we have one.
      */
-    DolphinMainWindow* mainWindow() const ;
+    inline const DolphinMainWindow* mainWindow() const;
 
 public slots:
     /**
@@ -157,10 +151,15 @@ private slots:
     void updateItemCount();
 
     /**
-     * Shows the item information for the URL \a url inside the statusbar. If the
-     * URL is empty, the default statusbar information is shown.
+     * Handles clicking on an item
      */
-    void showItemInfo(const KUrl& url);
+    void slotItemTriggered(const KFileItem& item);
+
+    /**
+     * Shows the information for the item \a item inside the statusbar. If the
+     * item is null, the default statusbar information is shown.
+     */
+    void showItemInfo(const KFileItem& item);
 
     /** Shows the information \a msg inside the statusbar. */
     void showInfoMessage(const QString& msg);
@@ -177,12 +176,12 @@ private slots:
     void changeNameFilter(const QString& nameFilter);
 
     /**
-     * Opens the context menu on the current mouse postition.
+     * Opens the context menu on the current mouse position.
      * @item  File item context. If item is 0, the context menu
      *        should be applied to \a url.
      * @url   URL which contains \a item.
      */
-    void openContextMenu(KFileItem* item, const KUrl& url);
+    void openContextMenu(const KFileItem& item, const KUrl& url);
 
     /**
      * Saves the position of the contents to the
@@ -231,19 +230,43 @@ private:
     FilterBar* m_filterBar;
     DolphinStatusBar* m_statusBar;
 
-    KDirModel* m_dirModel;
+    DolphinModel* m_dolphinModel;
     DolphinDirLister* m_dirLister;
     DolphinSortFilterProxyModel* m_proxyModel;
 };
 
-KUrlNavigator* DolphinViewContainer::urlNavigator() const
+const DolphinStatusBar* DolphinViewContainer::statusBar() const
+{
+    return m_statusBar;
+}
+
+DolphinStatusBar* DolphinViewContainer::statusBar()
+{
+    return m_statusBar;
+}
+
+const KUrlNavigator* DolphinViewContainer::urlNavigator() const
 {
     return m_urlNavigator;
 }
 
-DolphinView* DolphinViewContainer::view() const
+KUrlNavigator* DolphinViewContainer::urlNavigator()
+{
+    return m_urlNavigator;
+}
+
+const DolphinView* DolphinViewContainer::view() const
 {
     return m_view;
 }
 
+DolphinView* DolphinViewContainer::view()
+{
+    return m_view;
+}
+
+const DolphinMainWindow* DolphinViewContainer::mainWindow() const
+{
+    return m_mainWindow;
+}
 #endif // DOLPHINVIEWCONTAINER_H