X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/d99e541453bac0bddadd27e87868d9fbe7814d2a..a7692611315065b308cd8243563cc50d40bd0f71:/src/panels/panel.cpp diff --git a/src/panels/panel.cpp b/src/panels/panel.cpp index 9e7ff4ff3..767313445 100644 --- a/src/panels/panel.cpp +++ b/src/panels/panel.cpp @@ -1,6 +1,6 @@ /*************************************************************************** * Copyright (C) 2006 by Cvetoslav Ludmiloff * - * Copyright (C) 2006 by Peter Penz * + * Copyright (C) 2006-2010 by Peter Penz * * * * This program is free software; you can redistribute it and/or modify * * it under the terms of the GNU General Public License as published by * @@ -19,11 +19,12 @@ ***************************************************************************/ #include "panel.h" -#include +#include Panel::Panel(QWidget* parent) : QWidget(parent), - m_url(KUrl()) + m_url(), + m_customContextMenuActions() { } @@ -31,14 +32,47 @@ Panel::~Panel() { } -const KUrl& Panel::url() const +KUrl Panel::url() const { return m_url; } +void Panel::setCustomContextMenuActions(const QList& actions) +{ + m_customContextMenuActions = actions; +} + +QList Panel::customContextMenuActions() const +{ + return m_customContextMenuActions; +} + +QSize Panel::sizeHint() const +{ + // The size hint will be requested already when starting Dolphin even + // if the panel is invisible. For performance reasons most panels delay + // the creation and initialization of widgets until a showEvent() is called. + // Because of this the size-hint of the embedded widgets cannot be used + // and a default size is provided: + return QSize(180, 180); +} + void Panel::setUrl(const KUrl& url) { + if (url.equals(m_url, KUrl::CompareWithoutTrailingSlash)) { + return; + } + + const KUrl oldUrl = m_url; m_url = url; + const bool accepted = urlChanged(); + if (!accepted) { + m_url = oldUrl; + } +} + +void Panel::readSettings() +{ + } -#include "panel.moc"