m_decorationPosition(QStyleOptionViewItem::Top),
m_displayAlignment(Qt::AlignHCenter),
m_itemSize(),
- m_dragging(false),
m_dropRect()
{
Q_ASSERT(controller != 0);
viewport()->setAcceptDrops(true);
setMouseTracking(true);
- viewport()->setAttribute(Qt::WA_Hover);
// TODO: Connecting to the signal 'activated()' is not possible, as kstyle
// does not forward the single vs. doubleclick to it yet (KDE 4.1?). Hence it is
if (event->mimeData()->hasUrls()) {
event->acceptProposedAction();
}
- m_dragging = true;
}
void DolphinIconsView::dragLeaveEvent(QDragLeaveEvent* event)
{
KCategorizedView::dragLeaveEvent(event);
-
- // TODO: remove this code when the issue #160611 is solved in Qt 4.4
- m_dragging = false;
setDirtyRegion(m_dropRect);
}
}
KCategorizedView::dropEvent(event);
-
- m_dragging = false;
-}
-
-void DolphinIconsView::paintEvent(QPaintEvent* event)
-{
- KCategorizedView::paintEvent(event);
-
- // TODO: remove this code when the issue #160611 is solved in Qt 4.4
- if (m_dragging) {
- const QBrush& brush = viewOptions().palette.brush(QPalette::Normal, QPalette::Highlight);
- DragAndDropHelper::drawHoverIndication(this, m_dropRect, brush);
- }
}
void DolphinIconsView::keyPressEvent(QKeyEvent* event)
} else {
newIconSize = increasedIconSize(oldIconSize);
settings->setIconSize(newIconSize);
- if (settings->previewSize() < newIconSize) {
- // assure that the preview size is always >= the icon size
- settings->setPreviewSize(newIconSize);
- }
}
// increase also the grid size
if (showPreview) {
const int previewSize = decreasedIconSize(settings->previewSize());
settings->setPreviewSize(previewSize);
- if (settings->iconSize() > previewSize) {
- // assure that the icon size is always <= the preview size
- newIconSize = previewSize;
- settings->setIconSize(newIconSize);
- }
} else {
newIconSize = decreasedIconSize(settings->iconSize());
settings->setIconSize(newIconSize);
if (showPreview) {
const int previewSize = settings->previewSize();
const int diff = previewSize - size;
- Q_ASSERT(diff >= 0);
itemWidth += diff;
itemHeight += diff;