#include "dolphincolumnviewcontainer.h"
+#include "dolphin_columnmodesettings.h"
+
#include "dolphincolumnview.h"
-#include "dolphincontroller.h"
+#include "dolphinviewcontroller.h"
#include "dolphinsortfilterproxymodel.h"
#include "draganddrophelper.h"
#include "settings/dolphinsettings.h"
-
-#include "dolphin_columnmodesettings.h"
+#include "viewmodecontroller.h"
#include <QPoint>
#include <QScrollBar>
#include <QTimer>
DolphinColumnViewContainer::DolphinColumnViewContainer(QWidget* parent,
- DolphinController* controller) :
+ DolphinViewController* dolphinViewController,
+ const ViewModeController* viewModeController) :
QScrollArea(parent),
- m_controller(controller),
+ m_dolphinViewController(dolphinViewController),
+ m_viewModeController(viewModeController),
m_active(false),
m_index(-1),
m_contentX(0),
m_dragSource(0),
m_activeUrlTimer(0)
{
- Q_ASSERT(controller != 0);
+ Q_ASSERT(dolphinViewController != 0);
+ Q_ASSERT(viewModeController != 0);
setAcceptDrops(true);
setFocusPolicy(Qt::NoFocus);
setFrameShape(QFrame::NoFrame);
setLayoutDirection(Qt::LeftToRight);
- connect(controller, SIGNAL(activationChanged(bool)),
+ connect(viewModeController, SIGNAL(activationChanged(bool)),
this, SLOT(updateColumnsBackground(bool)));
connect(horizontalScrollBar(), SIGNAL(valueChanged(int)),
connect(m_activeUrlTimer, SIGNAL(timeout()),
this, SLOT(updateActiveUrl()));
- DolphinColumnView* column = new DolphinColumnView(viewport(), this, m_controller->url());
+ DolphinColumnView* column = new DolphinColumnView(viewport(), this, viewModeController->url());
m_columns.append(column);
setActiveColumnIndex(0);
columnIndex++;
DolphinColumnView* column = new DolphinColumnView(viewport(), this, childUrl);
- column->setActive(false);
-
m_columns.append(column);
// Before invoking layoutColumns() the column must be set visible temporary.
void DolphinColumnViewContainer::mousePressEvent(QMouseEvent* event)
{
- m_controller->requestActivation();
+ m_dolphinViewController->requestActivation();
QScrollArea::mousePressEvent(event);
}
void DolphinColumnViewContainer::updateActiveUrl()
{
const KUrl activeUrl = m_columns[m_index]->url();
- m_controller->setUrl(activeUrl);
+ m_dolphinViewController->requestUrlChange(activeUrl);
}
void DolphinColumnViewContainer::setActiveColumnIndex(int index)
void DolphinColumnViewContainer::requestActivation(DolphinColumnView* column)
{
- m_controller->setItemView(column);
+ m_dolphinViewController->setItemView(column);
if (column->isActive()) {
assureVisibleActiveColumn();
} else {
return;
}
- if (m_controller->itemView() == column) {
- m_controller->setItemView(0);
+ if (m_dolphinViewController->itemView() == column) {
+ m_dolphinViewController->setItemView(0);
}
// deleteWhenNotDragSource(column) does not necessarily delete column,
// and we want its preview generator destroyed immediately.