55 lines
1.5 KiB
C++
55 lines
1.5 KiB
C++
// ============================================================================
|
|
// main.cpp - Vollständiges Beispiel
|
|
// ============================================================================
|
|
|
|
|
|
#include <QApplication>
|
|
#include <QMainWindow>
|
|
#include <QStatusBar>
|
|
#include <QLabel>
|
|
#include <QVBoxLayout>
|
|
|
|
#include <mainwindow.h>
|
|
#include <themetogglewidget.h>
|
|
|
|
int main(int argc, char *argv[])
|
|
{
|
|
QApplication app(argc, argv);
|
|
|
|
QMainWindow window;
|
|
window.setWindowTitle("Theme Toggle Demo");
|
|
window.resize(600, 400);
|
|
|
|
// Central Widget
|
|
QWidget* central = new QWidget();
|
|
QVBoxLayout* layout = new QVBoxLayout(central);
|
|
|
|
QLabel* label = new QLabel("Toggle theme using the button in the status bar →");
|
|
label->setAlignment(Qt::AlignCenter);
|
|
label->setStyleSheet("font-size: 14pt;");
|
|
layout->addWidget(label);
|
|
|
|
window.setCentralWidget(central);
|
|
|
|
// StatusBar mit Theme Toggle
|
|
QStatusBar* statusBar = window.statusBar();
|
|
statusBar->showMessage("Ready");
|
|
|
|
ThemeToggleWidget* themeToggle = new ThemeToggleWidget();
|
|
statusBar->addPermanentWidget(themeToggle);
|
|
|
|
// Optional: Speichere Theme-Einstellung
|
|
QObject::connect(themeToggle, &ThemeToggleWidget::themeChanged,
|
|
[](bool isDark) {
|
|
// Settings speichern
|
|
// QSettings settings;
|
|
// settings.setValue("theme/darkMode", isDark);
|
|
qDebug() << "Theme:" << (isDark ? "Dark" : "Light");
|
|
});
|
|
|
|
window.show();
|
|
|
|
return app.exec();
|
|
}
|
|
|