example/gui/material/material_radius_scale/MaterialRadiusScaleMainWindow.h¶
Material Design 3 Radius Scale Gallery - Main Window. More...
Namespaces¶
| Name |
|---|
| cf |
| cf::ui |
| cf::ui::gallery |
Classes¶
| Name | |
|---|---|
| class | cf::ui::gallery::RadiusPreviewWidget 圆角预览卡片 - 显示一个带圆角的矩形 |
| class | cf::ui::gallery::MaterialRadiusScaleMainWindow 主窗口 - 展示所有 7 个圆角级别 |
Detailed Description¶
Material Design 3 Radius Scale Gallery - Main Window.
Author: CFDesktop Team
Version: 0.1
Date: 2026-02-26
A visual gallery to display all Material Design 3 corner radius tokens with visual preview cards.
Source code¶
#pragma once
#include <QGridLayout>
#include <QHBoxLayout>
#include <QLabel>
#include <QMainWindow>
#include <QScrollArea>
#include <QVBoxLayout>
#include <QWidget>
#include "ui/core/material/cfmaterial_radius_scale.h"
namespace cf::ui::gallery {
class RadiusPreviewWidget : public QWidget {
Q_OBJECT
public:
explicit RadiusPreviewWidget(const QString& name, float radiusDp, const QColor& accentColor,
QWidget* parent = nullptr);
protected:
void paintEvent(QPaintEvent* event) override;
private:
QString name_;
float radiusDp_;
QColor accentColor_;
};
class MaterialRadiusScaleMainWindow : public QMainWindow {
Q_OBJECT
public:
explicit MaterialRadiusScaleMainWindow(QWidget* parent = nullptr);
~MaterialRadiusScaleMainWindow() override = default;
private:
void setupUI();
void createHeader();
void createRadiusCards();
private:
cf::ui::core::MaterialRadiusScale radiusScale_;
QWidget* centralWidget_;
QVBoxLayout* mainLayout_;
QScrollArea* scrollArea_;
QWidget* scrollContent_;
QGridLayout* cardsLayout_;
};
} // namespace cf::ui::gallery
Updated on 2026-03-09 at 10:14:01 +0000