File indexing completed on 2025-03-09 03:34:32
0001 /* 0002 File : BackgroundWidget.h 0003 Project : LabPlot 0004 Description : background settings widget 0005 -------------------------------------------------------------------- 0006 SPDX-FileCopyrightText: 2022-2023 Alexander Semke <alexander.semke@web.de> 0007 SPDX-License-Identifier: GPL-2.0-or-later 0008 */ 0009 0010 #ifndef BACKGROUNDWIDGET_H 0011 #define BACKGROUNDWIDGET_H 0012 0013 #include "backend/worksheet/Background.h" 0014 #include "ui_backgroundwidget.h" 0015 0016 class QShowEvent; 0017 #include <KConfigGroup> 0018 0019 class BackgroundWidget : public QWidget { 0020 Q_OBJECT 0021 0022 public: 0023 explicit BackgroundWidget(QWidget*); 0024 0025 void setBackgrounds(const QList<Background*>&); 0026 void setEnabled(bool); 0027 0028 void load(); 0029 void loadConfig(const KConfigGroup&); 0030 void saveConfig(KConfigGroup&) const; 0031 0032 private: 0033 Ui::BackgroundWidget ui; 0034 Background* m_background{nullptr}; 0035 QList<Background*> m_backgrounds; 0036 bool m_initializing{false}; 0037 QString m_prefix; 0038 0039 void retranslateUi(); 0040 void showEvent(QShowEvent*) override; 0041 void adjustLayout(); 0042 0043 Q_SIGNALS: 0044 void dataChanged(bool); 0045 0046 private Q_SLOTS: 0047 // SLOTs for changes triggered in BackgroundWidget 0048 void enabledChanged(bool); 0049 void positionChanged(int); 0050 void typeChanged(int); 0051 void colorStyleChanged(int); 0052 void imageStyleChanged(int); 0053 void brushStyleChanged(int); 0054 void firstColorChanged(const QColor&); 0055 void secondColorChanged(const QColor&); 0056 void opacityChanged(int); 0057 void selectFile(); 0058 void fileNameChanged(); 0059 0060 // SLOTs for changes triggered in Background 0061 void backgroundEnabledChanged(bool); 0062 void backgroundPositionChanged(Background::Position); 0063 void backgroundTypeChanged(Background::Type); 0064 void backgroundColorStyleChanged(Background::ColorStyle); 0065 void backgroundImageStyleChanged(Background::ImageStyle); 0066 void backgroundBrushStyleChanged(Qt::BrushStyle); 0067 void backgroundFirstColorChanged(const QColor&); 0068 void backgroundSecondColorChanged(const QColor&); 0069 void backgroundFileNameChanged(const QString&); 0070 void backgroundOpacityChanged(float); 0071 }; 0072 0073 #endif // LABELWIDGET_H