File indexing completed on 2024-04-28 16:53:01
0001 /* 0002 * SPDX-FileCopyrightText: 2013 Giorgos Tsiapaliokas <terietor@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef VIEW_H 0008 #define VIEW_H 0009 0010 #include "privateheaders/containmentview.h" 0011 0012 class ViewerCorona; 0013 0014 class View : public PlasmaQuick::ContainmentView 0015 { 0016 Q_OBJECT 0017 Q_PROPERTY(bool konsoleVisible READ konsoleVisible CONSTANT); 0018 0019 public: 0020 View(ViewerCorona *corona, bool konsoleVisible, QWindow *parent = nullptr); 0021 ~View() override; 0022 0023 void addApplet(const QString &applet); 0024 void addContainment(const QString &containment); 0025 void addFormFactor(const QString &formFactor = QStringLiteral("planar")); 0026 void addLocation(const QString &location = QStringLiteral("floating")); 0027 void emitExternalData(const QString &data); 0028 bool konsoleVisible(); 0029 0030 Q_INVOKABLE void changeFormFactor(int formFactor); 0031 Q_INVOKABLE void changeLocation(int location); 0032 Q_INVOKABLE void takeScreenShot(); 0033 0034 static ViewerCorona *createCorona(); 0035 0036 protected: 0037 void resizeEvent(QResizeEvent *event) override; 0038 QString pluginFromPath(const QString &path) const; 0039 0040 private: 0041 QString m_lastAppletName; 0042 bool m_konsoleVisible; 0043 }; 0044 0045 #endif // VIEW_H