1 #pragma once 2 3 #include <gtkmm/box.h> 4 #include <gtkmm/image.h> 5 6 #include "ALabel.hpp" 7 8 namespace waybar { 9 10 class AIconLabel : public ALabel { 11 public: 12 AIconLabel(const Json::Value &config, const std::string &name, const std::string &id, 13 const std::string &format, uint16_t interval = 0, bool ellipsize = false, 14 bool enable_click = false, bool enable_scroll = false); 15 virtual ~AIconLabel() = default; 16 virtual auto update() -> void; 17 18 protected: 19 Gtk::Image image_; 20 Gtk::Box box_; 21 22 bool iconEnabled() const; 23 }; 24 25 } // namespace waybar 26