void DolphinView::restoreContentsPos()
{
- UrlNavigator::HistoryElem historyItem = m_urlNavigator->currentHistoryItem();
- if (!historyItem.url().isEmpty()) {
+ KUrl currentUrl = m_urlNavigator->url();
+ if (!currentUrl.isEmpty()) {
QAbstractItemView* view = itemView();
- // TODO: view->setCurrentItem(historyItem.currentFileName());
- view->horizontalScrollBar()->setValue(historyItem.contentsX());
- view->verticalScrollBar()->setValue(historyItem.contentsY());
+ // TODO: view->setCurrentItem(m_urlNavigator->currentFileName());
+ QPoint pos = m_urlNavigator->savedPosition();
+ view->horizontalScrollBar()->setValue(pos.x());
+ view->verticalScrollBar()->setValue(pos.y());
}
}
#ifndef URLBUTTON_H
#define URLBUTTON_H
-#include <QEvent>
#include <QPushButton>
class KUrl;
+class QEvent;
class UrlNavigator;
-class QPainter;
/**
* @brief Base class for buttons of the URL navigator.
#include <QMouseEvent>
#include <QToolButton>
-UrlNavigator::HistoryElem::HistoryElem() :
+/**
+ * @brief Represents the history element of an URL.
+ *
+ * A history element contains the URL, the name of the current file
+ * (the 'current file' is the file where the cursor is located) and
+ * the x- and y-position of the content.
+ */
+class HistoryElem {
+public:
+ HistoryElem();
+ HistoryElem(const KUrl& url);
+ ~HistoryElem(); // non virtual
+
+ const KUrl& url() const { return m_url; }
+
+ void setCurrentFileName(const QString& name) { m_currentFileName = name; }
+ const QString& currentFileName() const { return m_currentFileName; }
+
+ void setContentsX(int x) { m_contentsX = x; }
+ int contentsX() const { return m_contentsX; }
+
+ void setContentsY(int y) { m_contentsY = y; }
+ int contentsY() const { return m_contentsY; }
+
+private:
+ KUrl m_url;
+ QString m_currentFileName;
+ int m_contentsX;
+ int m_contentsY;
+};
+
+HistoryElem::HistoryElem() :
m_url(),
m_currentFileName(),
m_contentsX(0),
{
}
-UrlNavigator::HistoryElem::HistoryElem(const KUrl& url) :
+HistoryElem::HistoryElem(const KUrl& url) :
m_url(url),
m_currentFileName(),
m_contentsX(0),
{
}
-UrlNavigator::HistoryElem::~HistoryElem()
+HistoryElem::~HistoryElem()
{
}
return newurl;
}
-UrlNavigator::HistoryElem UrlNavigator::currentHistoryItem() const
+QPoint UrlNavigator::savedPosition() const
{
- return d->m_history[d->m_historyIndex];
+ const HistoryElem& histElem = d->m_history[d->m_historyIndex];
+ return QPoint( histElem.contentsX(), histElem.contentsY() );
}
int UrlNavigator::historySize() const
Q_OBJECT
public:
- /**
- * @brief Represents the history element of an URL.
- *
- * A history element contains the URL, the name of the current file
- * (the 'current file' is the file where the cursor is located) and
- * the x- and y-position of the content.
- */
- class HistoryElem {
- public:
- HistoryElem();
- HistoryElem(const KUrl& url);
- ~HistoryElem(); // non virtual
-
- const KUrl& url() const { return m_url; }
-
- void setCurrentFileName(const QString& name) { m_currentFileName = name; }
- const QString& currentFileName() const { return m_currentFileName; }
-
- void setContentsX(int x) { m_contentsX = x; }
- int contentsX() const { return m_contentsX; }
-
- void setContentsY(int y) { m_contentsY = y; }
- int contentsY() const { return m_contentsY; }
-
- private:
- KUrl m_url;
- QString m_currentFileName;
- int m_contentsX;
- int m_contentsY;
- };
-
UrlNavigator(KBookmarkManager* bookmarkManager, const KUrl& url, QWidget* parent);
virtual ~UrlNavigator();
/** Returns the amount of items in the history */
int historySize() const;
- /**
- * Returns one item out of the history. The index 0 indicates the oldest
- * history element.
- * @param index Output parameter which indicates the current
- * index of the location.
- */
- HistoryElem currentHistoryItem() const;
+ /** Returns the saved position from the history */
+ QPoint savedPosition() const;
/**
* Goes back one step in the URL history. The signals