ocarina/include/gui/queue/window.h

38 lines
820 B
C++

/*
* Copyright 2015 (c) Anna Schumaker.
*/
#ifndef OCARINA_GUI_QUEUE_WINDOW_H
#define OCARINA_GUI_QUEUE_WINDOW_H
extern "C" {
#include <core/containers/set.h>
}
#include <gui/queue/model.h>
#include <gtkmm.h>
class QueueWindow : public Gtk::ScrolledWindow {
private:
Glib::RefPtr<Gtk::Builder> _builder;
Queue *_queue;
struct set _q_search_res;
bool _q_search_empty;
public:
Gtk::TreeView *q_treeview;
Glib::RefPtr<QueueModel> q_model;
Glib::RefPtr<Gtk::TreeModelFilter> q_filter;
QueueWindow(BaseObjectType *, const Glib::RefPtr<Gtk::Builder>);
~QueueWindow();
void init(Queue *);
void filter(std::string &);
bool filter_ids(const Gtk::TreeIter &);
bool on_key_press(GdkEventKey *);
void on_row_activated(const Gtk::TreePath &, Gtk::TreeViewColumn *);
};
#endif /* OCARINA_GUI_QUEUE_WINDOW_H */