27 class OSDCommand final :
public Command {
30 void execute(std::span<const TclObject> tokens,
TclObject& result)
override;
31 [[nodiscard]] std::string help(std::span<const TclObject> tokens)
const override;
32 void tabCompletion(std::vector<std::string>& tokens)
const override;
35 void create (std::span<const TclObject> tokens,
TclObject& result);
36 void destroy (std::span<const TclObject> tokens,
TclObject& result);
37 void info (std::span<const TclObject> tokens,
TclObject& result);
38 void exists (std::span<const TclObject> tokens,
TclObject& result);
39 void configure(std::span<const TclObject> tokens,
TclObject& result);
40 [[nodiscard]] std::unique_ptr<OSDWidget> create(
41 std::string_view type,
const TclObject& name)
const;
42 void configure(
OSDWidget& widget, std::span<const TclObject> tokens)
const;
44 [[nodiscard]]
OSDWidget& getWidget(std::string_view name)
const;
47 OSDTopWidget topWidget;