File indexing completed on 2025-03-09 04:51:28

0001 /*
0002    SPDX-FileCopyrightText: 2013-2024 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 #pragma once
0007 
0008 #include <QColor>
0009 #include <QFont>
0010 #include <QPoint>
0011 
0012 #include "knotes_export.h"
0013 namespace NoteShared
0014 {
0015 class NoteDisplayAttribute;
0016 }
0017 
0018 class KNOTES_EXPORT KNoteDisplaySettings
0019 {
0020 public:
0021     explicit KNoteDisplaySettings(NoteShared::NoteDisplayAttribute *attr = nullptr);
0022     ~KNoteDisplaySettings();
0023 
0024     void setDisplayAttribute(const NoteShared::NoteDisplayAttribute *attr);
0025     const NoteShared::NoteDisplayAttribute *displayAttribute() const;
0026     [[nodiscard]] QColor backgroundColor() const;
0027 
0028     [[nodiscard]] QColor foregroundColor() const;
0029     [[nodiscard]] QSize size() const;
0030     [[nodiscard]] bool rememberDesktop() const;
0031     [[nodiscard]] int tabSize() const;
0032     [[nodiscard]] QFont font() const;
0033     [[nodiscard]] QFont titleFont() const;
0034     [[nodiscard]] int desktop() const;
0035     [[nodiscard]] bool isHidden() const;
0036     [[nodiscard]] QPoint position() const;
0037     [[nodiscard]] bool showInTaskbar() const;
0038     [[nodiscard]] bool keepAbove() const;
0039     [[nodiscard]] bool keepBelow() const;
0040     [[nodiscard]] bool autoIndent() const;
0041 
0042 private:
0043     const NoteShared::NoteDisplayAttribute *mDisplayAttribute = nullptr;
0044 };