跳转至

example/ui/widget/material/checkbox/CheckBoxExampleWindow.h

Material Design 3 CheckBox Example - Main Window. More...

Namespaces

Name
cf
cf::ui
cf::ui::example

Classes

Name
class cf::ui::example::CheckBoxExampleWindow
Main window for the Material CheckBox Example.

Detailed Description

Material Design 3 CheckBox Example - Main Window.

Author: CFDesktop Team

Version: 0.1

Date: 2026-03-01

A visual gallery to display Material Design 3 checkbox with various states and configurations.

Source code

#pragma once

#include <QGridLayout>
#include <QGroupBox>
#include <QHBoxLayout>
#include <QLabel>
#include <QMainWindow>
#include <QScrollArea>
#include <QVBoxLayout>
#include <QWidget>

namespace cf::ui::example {

class CheckBoxExampleWindow : public QMainWindow {
    Q_OBJECT

  public:
    explicit CheckBoxExampleWindow(QWidget* parent = nullptr);
    ~CheckBoxExampleWindow() override;

  private:
    void setupUI();
    void createHeader();
    void createCheckboxStatesSection();
    void createTristateSection();
    void createErrorStateSection();
    void createDisabledSection();
    void createInteractiveDemoSection();
    void createCustomLabelsSection();

    QGroupBox* createGroupBox(const QString& title);
    QWidget* createScrollContent();

  private slots:
    void onAcceptCheckboxClicked(bool checked);
    void onTermsCheckboxClicked(bool checked);
    void onNewsletterCheckboxClicked(bool checked);
    void onErrorToggleClicked(bool checked);

  private:
    // UI components
    QWidget* centralWidget_;
    QVBoxLayout* mainLayout_;
    QScrollArea* scrollArea_;
    QWidget* scrollContent_;
    QVBoxLayout* scrollLayout_;

    // Header
    QLabel* titleLabel_;
    QLabel* subtitleLabel_;

    // Interactive demo
    QLabel* statusLabel_;
};

} // namespace cf::ui::example

Updated on 2026-03-09 at 10:14:01 +0000