#include <dolphinview.h>
#include <kurl.h>
#include <QObject>
+#include <libdolphin_export.h>
class KUrl;
class QModelIndex;
* when an item should be triggered and a lot more. The controller emits the corresponding signals
* so that the receiver may react on those changes.
*/
-class DolphinController : public QObject
+class LIBDOLPHINPRIVATE_EXPORT DolphinController : public QObject
{
Q_OBJECT
explicit DolphinController(QObject* parent);
virtual ~DolphinController();
- void setUrl(const KUrl& url) { m_url = url; }
- const KUrl& url() const { return m_url; }
+ void setUrl(const KUrl& url)
+ {
+ m_url = url;
+ }
+ const KUrl& url() const
+ {
+ return m_url;
+ }
void triggerContextMenuRequest(const QPoint& pos);
void triggerActivation();
void indicateDroppedUrls(const KUrl::List& urls,
- const QPoint& pos);
+ const QModelIndex& index,
+ QWidget* source);
void indicateSortingChange(DolphinView::Sorting sorting);
void indicateSortOrderChange(Qt::SortOrder order);
void setShowPreview(bool showPreview);
- bool showPreview() const { return m_showPreview; }
+ bool showPreview() const
+ {
+ return m_showPreview;
+ }
+
+ void triggerZoomIn();
+ void setZoomInPossible(bool possible)
+ {
+ m_zoomInPossible = possible;
+ }
+ bool isZoomInPossible() const
+ {
+ return m_zoomInPossible;
+ }
+
+ void triggerZoomOut();
+ void setZoomOutPossible(bool possible)
+ {
+ m_zoomOutPossible = possible;
+ }
+ bool isZoomOutPossible() const
+ {
+ return m_zoomOutPossible;
+ }
public slots:
void triggerItem(const QModelIndex& index);
void activated();
/**
- * Is emitted if the URLs \a urls have been dropped.
- * @param pos Position relative to the view widget where the
- * dropping has been done. It is recommended
- * to get the corresponding model index from
- * this position to find out the destination.
+ * Is emitted if the URLs \a urls have been dropped to the index
+ * \a index. \a source indicates the widget where the dragging has
+ * been started from.
*/
void urlsDropped(const KUrl::List& urls,
- const QPoint& pos);
+ const QModelIndex& index,
+ QWidget* source);
/** Is emitted if the sorting has been changed to \a sorting. */
void sortingChanged(DolphinView::Sorting sorting);
/** Is emitted if the selection has been changed by the user. */
void selectionChanged();
+ /** Is emitted if the view should zoom in. */
+ void zoomIn();
+
+ /** Is emitted if the view should zoom out. */
+ void zoomOut();
+
private:
bool m_showPreview;
+ bool m_zoomInPossible;
+ bool m_zoomOutPossible;
KUrl m_url;
};