#include "dolphincolumnview.h"
-#include "dolphinmodel.h"
#include "dolphincolumnwidget.h"
#include "dolphincontroller.h"
-#include "dolphindirlister.h"
-#include "dolphinmodel.h"
-#include "dolphinsortfilterproxymodel.h"
#include "dolphinsettings.h"
#include "dolphin_columnmodesettings.h"
-#include <kcolorutils.h>
-#include <kcolorscheme.h>
-#include <kdirlister.h>
-
-#include <QAbstractProxyModel>
-#include <QApplication>
#include <QPoint>
#include <QScrollBar>
-#include <QTimer>
#include <QTimeLine>
DolphinColumnView::DolphinColumnView(QWidget* parent, DolphinController* controller) :
m_contentX(0),
m_columns(),
m_emptyViewport(0),
- m_animation(0)
+ m_animation(0),
+ m_nameFilter()
{
Q_ASSERT(controller != 0);
setFocusPolicy(Qt::NoFocus);
setFrameShape(QFrame::NoFrame);
- connect(this, SIGNAL(entered(const QModelIndex&)),
- controller, SLOT(emitItemEntered(const QModelIndex&)));
connect(this, SIGNAL(viewportEntered()),
controller, SLOT(emitViewportEntered()));
connect(controller, SIGNAL(zoomIn()),
this, SLOT(zoomIn()));
connect(controller, SIGNAL(zoomOut()),
this, SLOT(zoomOut()));
- connect(controller, SIGNAL(showHiddenFilesChanged(bool)),
- this, SLOT(slotShowHiddenFilesChanged(bool)));
- connect(controller, SIGNAL(showPreviewChanged(bool)),
- this, SLOT(slotShowPreviewChanged(bool)));
connect(controller, SIGNAL(activationChanged(bool)),
this, SLOT(updateColumnsBackground(bool)));
+ const DolphinView* view = controller->dolphinView();
+ connect(view, SIGNAL(showHiddenFilesChanged()),
+ this, SLOT(slotShowHiddenFilesChanged()));
+ connect(view, SIGNAL(showPreviewChanged()),
+ this, SLOT(slotShowPreviewChanged()));
+
connect(horizontalScrollBar(), SIGNAL(valueChanged(int)),
this, SLOT(moveContentHorizontally(int)));
void DolphinColumnView::setNameFilter(const QString& nameFilter)
{
- foreach (DolphinColumnWidget* column, m_columns) {
- column->setNameFilter(nameFilter);
+ if (nameFilter != m_nameFilter) {
+ m_nameFilter = nameFilter;
+ foreach (DolphinColumnWidget* column, m_columns) {
+ column->setNameFilter(nameFilter);
+ }
}
}
QString DolphinColumnView::nameFilter() const
{
- return activeColumn()->nameFilter();
+ return m_nameFilter;
}
KUrl DolphinColumnView::rootUrl() const
if (column->url() == url) {
// the column represents already the requested URL, hence activate it
requestActivation(column);
+ layoutColumns();
return;
} else if (!column->url().isParentOf(url)) {
// the column is no parent of the requested URL, hence
QAbstractItemView::resizeEvent(event);
layoutColumns();
updateScrollBar();
+ assureVisibleActiveColumn();
}
void DolphinColumnView::zoomIn()
}
}
-void DolphinColumnView::slotShowHiddenFilesChanged(bool show)
+void DolphinColumnView::slotShowHiddenFilesChanged()
{
+ const bool show = m_controller->dolphinView()->showHiddenFiles();
foreach (DolphinColumnWidget* column, m_columns) {
column->setShowHiddenFiles(show);
}
}
-void DolphinColumnView::slotShowPreviewChanged(bool show)
+void DolphinColumnView::slotShowPreviewChanged()
{
+ const bool show = m_controller->dolphinView()->showPreview();
foreach (DolphinColumnWidget* column, m_columns) {
column->setShowPreview(show);
}