/* * Copyright 2015 (c) Anna Schumaker. */ #ifndef OCARINA_GUI_QUEUE_LABEL_H #define OCARINA_GUI_QUEUE_LABEL_H #include #include class QueueLabel : public Gtk::HBox { protected: Glib::RefPtr _builder; Queue *_queue; public: QueueLabel(BaseObjectType *, const Glib::RefPtr); ~QueueLabel(); virtual void init(Queue *); virtual void set_sensitive(bool) {}; virtual void set_size() {}; }; class CollectionLabel : public QueueLabel { public: Gtk::Label *collection_size; CollectionLabel(BaseObjectType *, const Glib::RefPtr); void set_size(); }; class HistoryLabel : public QueueLabel { public: Gtk::Label *history_size; HistoryLabel(BaseObjectType *, const Glib::RefPtr); void set_size(); }; class PlaylistLabel : public QueueLabel { public: PlaylistLabel(BaseObjectType *, const Glib::RefPtr); }; class TempLabel : public QueueLabel { public: Gtk::Label *temp_number; Gtk::Label *temp_size; Gtk::Button *temp_close; TempLabel(BaseObjectType *, const Glib::RefPtr); void set_sensitive(bool); void set_size(); }; #endif /* OCARINA_GUI_QUEUE_LABEL_H */