example/ui/widget/material/button/ButtonExampleWindow.h¶
Material Design 3 Button Example - Main Window. More...
Namespaces¶
| Name |
|---|
| cf |
| cf::ui |
| cf::ui::example |
Classes¶
| Name | |
|---|---|
| class | cf::ui::example::ButtonExampleWindow Main window for the Material Button Example. |
Detailed Description¶
Material Design 3 Button Example - Main Window.
Author: CFDesktop Team
Version: 0.1
Date: 2026-03-01
A visual gallery to display all Material Design 3 button variants 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 ButtonExampleWindow : public QMainWindow {
Q_OBJECT
public:
explicit ButtonExampleWindow(QWidget* parent = nullptr);
~ButtonExampleWindow() override;
private:
void setupUI();
void createHeader();
void createButtonVariantsSection();
void createButtonStatesSection();
void createButtonWithIconSection();
void createElevationSection();
void createInteractionDemoSection();
QGroupBox* createGroupBox(const QString& title);
QWidget* createScrollContent();
private slots:
void onDemoButtonClicked();
private:
// UI components
QWidget* centralWidget_;
QVBoxLayout* mainLayout_;
QScrollArea* scrollArea_;
QWidget* scrollContent_;
QVBoxLayout* scrollLayout_;
// Header
QLabel* titleLabel_;
QLabel* subtitleLabel_;
// Interaction demo
int clickCount_ = 0;
};
} // namespace cf::ui::example
Updated on 2026-03-09 at 10:14:01 +0000