29 #include YFM_YSLib_UI_UIContainerEx
30 #include YFM_YSLib_UI_YGUI
31 #include YFM_YSLib_UI_Border
41 btnClose(
Rect(GetWidth() - 20, 4, 16, 16), 330)
43 const auto invalidator([
this]{
51 FetchEvent<GotFocus>(*this) += invalidator,
52 FetchEvent<LostFocus>(*this) += invalidator
59 btnClose(
Rect(GetWidth() - 20, 4, 16, 16), 330),
60 btnOK(
Rect(GetWidth() - 40, 4, 16, 16), 120)
62 const auto invalidator([
this]{
70 FetchEvent<Click>(
btnOK) += [
this]{
74 DrawCircle(e.Target, e.ClipArea, {e.Location.X + 8, e.Location.Y + 8},
78 FetchEvent<GotFocus>(*this) += invalidator,
79 FetchEvent<LostFocus>(*this) += invalidator
DialogBox(const Rect &={})
YF_API GUIState & FetchGUIState()
取默认图形用户界面公共状态。
YF_API void Invalidate(IWidget &, const Rect &)
无效化:使相对于部件的指定区域在直接和间接的窗口缓冲区中无效。
DialogPanel(const Rect &={})
void AddWidgets(_tCon &con, _tWidgets &...wgts)
向部件容器添加子部件。
bounds c YF_API void DrawCircle(const Graphics &, const Rect &, const Point &, SDst, Color c)
描画圆形。
#define yunseq
无序列依赖表达式组求值。
bool IsEnabled(const IWidget &wgt)
判断部件是否为可用的控件。
void DecorateAsCloseButton(Thumb &tmb)
yconstexpr EventPriority BackgroundPriority(0xC0)
用户界面绘制优先级。