Files
Renderive/Widget/Qt/Message.h
T
2026-07-29 18:08:57 +08:00

37 lines
934 B
C++

#pragma once
#include <unordered_map>
#include <QPointer>
#include <queue>
#include <vector>
#include <QWidget>
namespace Psc::Message {
enum Type { success,
error,
warning,
info };
enum Corner { Top_Left,
Top_Right,
Bottom_Left,
Bottom_Right };
enum class Theme_Mode { Light,
Dark,
Auto };
struct Config {
Corner default_corner = Top_Right;
int default_duration = 3000;
int max_count = 5;
int max_width = 360;
int queue_interval = 120;
Theme_Mode theme = Theme_Mode::Auto;
bool enable_blur = true;
bool acrylic_mode = false;
double animation_speed = 1.0;
};
void set_config(const Config& cfg);
void show(Type type,
const QString& text,
QWidget* parent,
int duration_ms = -1,
Corner corner = Top_Right);
} // namespace Psc::Message