Krita Source Code Documentation
Loading...
Searching...
No Matches
KisWindowLayoutResource.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2018 Jouni Pentikäinen <joupent@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7#ifndef KISWINDOWLAYOUTRESOURCE_H
8#define KISWINDOWLAYOUTRESOURCE_H
9
10#include <KoResource.h>
11
12class KisMainWindow;
15
16#include "kritaui_export.h"
17
18class KRITAUI_EXPORT KisWindowLayoutResource : public KoResource
19{
20public:
21 explicit KisWindowLayoutResource(const QString &filename);
22 ~KisWindowLayoutResource() override;
25 KoResourceSP clone() const override;
26
27 static KisWindowLayoutResourceSP fromCurrentWindows (
28 const QString &filename, const QList<QPointer<KisMainWindow>> &mainWindows,
29 bool showImageInAllWindows,
30 bool primaryWorkspaceFollowsFocus,
31 KisMainWindow *primaryWindow
32 );
33
34 void applyLayout();
35
36 bool saveToDevice(QIODevice *dev) const override;
37 bool loadFromDevice(QIODevice *dev, KisResourcesInterfaceSP resourcesInterface) override;
38
39
40 QPair<QString, QString> resourceType() const override
41 {
42 return QPair<QString, QString>(ResourceType::WindowLayouts, "");
43 }
44
45 QString defaultFileExtension() const override;
46
47protected:
48 void setWindows(const QList<QPointer<KisMainWindow>> &mainWindows);
49
50 virtual void saveXml(QDomDocument &doc, QDomElement &root) const;
51
52 virtual void loadXml(const QDomElement &root) const;
53
54private:
55 struct Private;
56
57 QScopedPointer<Private> d;
58};
59
60
61#endif
QSharedPointer< KisWindowLayoutResource > KisWindowLayoutResourceSP
Main window for Krita.
QPair< QString, QString > resourceType() const override
QScopedPointer< Private > d
KisWindowLayoutResource & operator=(const KisWindowLayoutResource &rhs)=delete
const QString WindowLayouts
virtual KoResourceSP clone() const =0
virtual QString defaultFileExtension() const
virtual bool saveToDevice(QIODevice *dev) const
virtual bool loadFromDevice(QIODevice *dev, KisResourcesInterfaceSP resourcesInterface)=0