#ifndef THEMESETTINGSWIDGET_H
#define THEMESETTINGSWIDGET_H

#include <QColor>
#include <QWidget>

#include <widgets/framelessbase.h>

class QPushButton;
class QRadioButton;
class QButtonGroup;
class QGroupBox;
class QLineEdit;
class QCheckBox;
class QSlider;

class ThemeSettingsWidget : public TWidget
{
    Q_OBJECT
public:
    explicit ThemeSettingsWidget(QWidget *parent = nullptr);

signals:
    void themeChanged();

private slots:
    void toggleThemeMode();
    void updatePrimaryColor();
    void changeSizeMode(int mode);
    void refreshPreview();

private:
    void setupUI();
    QGroupBox *createSizeGroup();
    QWidget *createPreviewGroup();
    void updateColorButton();

    // UI Components
    QPushButton *m_themeToggle;
    QPushButton *m_colorPicker;
    QButtonGroup *m_sizeGroup;
    QWidget *m_previewArea;

    // Preview Controls
    QPushButton *m_sampleButton;
    QLineEdit *m_sampleInput;
    QCheckBox *m_sampleCheck;
    QSlider *m_sampleSlider;

    class ColorListWidget *colorList;
};
#endif // THEMESETTINGSWIDGET_H
