From cc1d22ae9dcd56854ff9f166d27e636a32459897 Mon Sep 17 00:00:00 2001 From: Alexander Baskikh Date: Fri, 1 Nov 2024 02:27:25 +0700 Subject: [PATCH] allow attach lambda function for `Widget` MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Теперь можно приаттачить не только простые лямбды, но и использовать [_захват_], что полезно, например, при использовании в классах --- src/ui/widget.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/ui/widget.h b/src/ui/widget.h index 921a64e..44b2002 100644 --- a/src/ui/widget.h +++ b/src/ui/widget.h @@ -197,19 +197,19 @@ class Widget { // ===================== ATTACH ===================== // Подключить функцию вида void f() - Widget& attach(void (*cb)()) { + Widget& attach(std::function cb) { if (_click && cb) cb(); return *this; } // Подключить функцию вида void f(gh::Build& build) - Widget& attach(void (*cb)(gh::Build& build)) { + Widget& attach(std::function cb) { if (_click && cb && _build) cb(*_build); return *this; } // Подключить функцию вида void f(gh::Builder& build) - Widget& attach(void (*cb)(gh::Builder& build), gh::Builder& b) { + Widget& attach(std::function cb, gh::Builder& b) { if (_click && cb && _build) cb(b); return *this; } @@ -250,4 +250,4 @@ class Widget { } }; -} // namespace ghc \ No newline at end of file +} // namespace ghc