diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gui/kernel/qplatformwindow.cpp | 5 | ||||
-rw-r--r-- | src/gui/kernel/qplatformwindow.h | 1 | ||||
-rw-r--r-- | src/gui/kernel/qwindow.cpp | 21 | ||||
-rw-r--r-- | src/gui/kernel/qwindow.h | 4 | ||||
-rw-r--r-- | src/gui/kernel/qwindow_p.h | 1 |
5 files changed, 32 insertions, 0 deletions
diff --git a/src/gui/kernel/qplatformwindow.cpp b/src/gui/kernel/qplatformwindow.cpp index 9e1e6be532..cdf5c6135a 100644 --- a/src/gui/kernel/qplatformwindow.cpp +++ b/src/gui/kernel/qplatformwindow.cpp @@ -253,6 +253,11 @@ void QPlatformWindow::setParent(const QPlatformWindow *parent) void QPlatformWindow::setWindowTitle(const QString &title) { Q_UNUSED(title); } /*! + Reimplement to set the window file path to \a filePath +*/ +void QPlatformWindow::setWindowFilePath(const QString &filePath) { Q_UNUSED(filePath); } + +/*! Reimplement to set the window icon to \a icon */ void QPlatformWindow::setWindowIcon(const QIcon &icon) { Q_UNUSED(icon); } diff --git a/src/gui/kernel/qplatformwindow.h b/src/gui/kernel/qplatformwindow.h index 5586b3c35a..7ea17d05aa 100644 --- a/src/gui/kernel/qplatformwindow.h +++ b/src/gui/kernel/qplatformwindow.h @@ -97,6 +97,7 @@ public: virtual void setParent(const QPlatformWindow *window); virtual void setWindowTitle(const QString &title); + virtual void setWindowFilePath(const QString &title); virtual void setWindowIcon(const QIcon &icon); virtual void raise(); virtual void lower(); diff --git a/src/gui/kernel/qwindow.cpp b/src/gui/kernel/qwindow.cpp index 98c9451de1..1e2ac5b0a6 100644 --- a/src/gui/kernel/qwindow.cpp +++ b/src/gui/kernel/qwindow.cpp @@ -571,6 +571,27 @@ QString QWindow::windowTitle() const } /*! + \property QWindow::windowFilePath + \brief the file name this window is representing. + + This property might be used by the windowing system to display the file + path of the document this window is representing in the tile bar. +*/ +void QWindow::setWindowFilePath(const QString &filePath) +{ + Q_D(QWindow); + d->windowFilePath = filePath; + if (d->platformWindow) + d->platformWindow->setWindowFilePath(filePath); +} + +QString QWindow::windowFilePath() const +{ + Q_D(const QWindow); + return d->windowFilePath; +} + +/*! \property QWindow::windowIcon \brief the window's icon in the windowing system diff --git a/src/gui/kernel/qwindow.h b/src/gui/kernel/qwindow.h index c3ac78fab2..62268cd88a 100644 --- a/src/gui/kernel/qwindow.h +++ b/src/gui/kernel/qwindow.h @@ -94,6 +94,7 @@ class Q_GUI_EXPORT QWindow : public QObject, public QSurface Q_DECLARE_PRIVATE(QWindow) Q_PROPERTY(QString windowTitle READ windowTitle WRITE setWindowTitle) + Q_PROPERTY(QString windowFilePath READ windowFilePath WRITE setWindowFilePath) Q_PROPERTY(QIcon windowIcon READ windowIcon WRITE setWindowIcon) Q_PROPERTY(Qt::WindowModality windowModality READ windowModality WRITE setWindowModality NOTIFY windowModalityChanged) Q_PROPERTY(int x READ x WRITE setX NOTIFY xChanged) @@ -203,6 +204,9 @@ public: void resize(const QSize &newSize); inline void resize(int w, int h) { resize(QSize(w, h)); } + void setWindowFilePath(const QString &filePath); + QString windowFilePath() const; + void setWindowIcon(const QIcon &icon); QIcon windowIcon() const; diff --git a/src/gui/kernel/qwindow_p.h b/src/gui/kernel/qwindow_p.h index caa5184594..57f79f1faa 100644 --- a/src/gui/kernel/qwindow_p.h +++ b/src/gui/kernel/qwindow_p.h @@ -114,6 +114,7 @@ public: bool exposed; QSurfaceFormat requestedFormat; QString windowTitle; + QString windowFilePath; QIcon windowIcon; QRect geometry; Qt::WindowState windowState; |