/* * Copyright (c) 2023, Torsten Engelmann * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include #include namespace GUI { class LabelWithEventDispatcher : public GUI::Label { C_OBJECT(LabelWithEventDispatcher); public: void update_cursor(Gfx::StandardCursor); Function on_double_click; Function on_mouseup_event; Function on_mousemove_event; virtual ~LabelWithEventDispatcher() override = default; protected: void doubleclick_event(MouseEvent&) override; virtual void mouseup_event(MouseEvent&) override; virtual void mousemove_event(MouseEvent&) override; }; }