Warning, file /office/calligra/gemini/MainWindow.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* This file is part of the KDE project 0002 * SPDX-FileCopyrightText: 2012 Arjen Hiemstra <ahiemstra@heimr.nl> 0003 * SPDX-FileCopyrightText: 2013 Dan Leinir Turthra Jensen <admin@leinir.dk> 0004 * 0005 * SPDX-License-Identifier: LGPL-2.0-or-later 0006 */ 0007 0008 #ifndef MAINWINDOW_H 0009 #define MAINWINDOW_H 0010 0011 #include <QMainWindow> 0012 0013 class MainWindow : public QMainWindow 0014 { 0015 Q_OBJECT 0016 Q_PROPERTY(bool allowClose READ allowClose WRITE setAllowClose) 0017 Q_PROPERTY(bool slateMode READ slateMode NOTIFY slateModeChanged) 0018 Q_PROPERTY(QString applicationName READ applicationName CONSTANT) 0019 Q_PROPERTY(QString currentTouchPage READ currentTouchPage WRITE setCurrentTouchPage NOTIFY currentTouchPageChanged) 0020 Q_PROPERTY(bool temporaryFile READ temporaryFile WRITE setTemporaryFile NOTIFY temporaryFileChanged) 0021 Q_PROPERTY(bool fullScreen READ fullScreen WRITE setFullScreen NOTIFY fullScreenChanged) 0022 Q_PROPERTY(QObject* desktopKoView READ desktopKoView NOTIFY desktopKoViewChanged) 0023 0024 public: 0025 explicit MainWindow(QStringList fileNames, QWidget* parent = 0, Qt::WindowFlags flags = Qt::WindowFlags()); 0026 ~MainWindow() override; 0027 0028 bool allowClose() const; 0029 void setAllowClose(bool allow); 0030 0031 bool slateMode() const; 0032 0033 QString applicationName() const { 0034 return QLatin1String("CALLIGRA GEMINI"); 0035 } 0036 0037 QString currentTouchPage() const; 0038 void setCurrentTouchPage(QString newPage); 0039 0040 bool temporaryFile() const; 0041 void setTemporaryFile(bool newValue); 0042 0043 bool fullScreen() const; 0044 void setFullScreen(bool newValue); 0045 0046 QObject* desktopKoView() const; 0047 Q_INVOKABLE int lastScreen() const; 0048 0049 Q_INVOKABLE void setAlternativeSaveAction(QAction* altAction); 0050 0051 void closeEvent(QCloseEvent* event) override; 0052 0053 Q_INVOKABLE void setDocAndPart(QObject* document, QObject* part); 0054 0055 public Q_SLOTS: 0056 void minimize(); 0057 void closeWindow(); 0058 0059 void switchToTouch(); 0060 void switchToDesktop(); 0061 void documentChanged(); 0062 void resetWindowTitle(); 0063 void resourceChanged(int key, const QVariant& v); 0064 void resourceChangedTouch(int key, const QVariant& v); 0065 /** 0066 * Used to open an arbitrary file from the welcome screen, 0067 * not from the normal UI (desktopproxy does that) 0068 */ 0069 void openFile(); 0070 Q_SIGNALS: 0071 void closeRequested(); 0072 void switchedToTouch(); 0073 void slateModeChanged(); 0074 void currentTouchPageChanged(); 0075 void temporaryFileChanged(); 0076 void fullScreenChanged(); 0077 void desktopKoViewChanged(); 0078 void documentSaved(); 0079 0080 private Q_SLOTS: 0081 void switchDesktopForced(); 0082 void switchTouchForced(); 0083 void touchChange(); 0084 void enableAltSaveAction(); 0085 0086 private: 0087 class Private; 0088 Private * const d; 0089 0090 #ifdef Q_OS_WIN 0091 bool winEvent(MSG * message, long * result); 0092 #endif 0093 }; 0094 0095 #endif // MAINWINDOW_H