ocarina/include/ocarina/songlist.h
Bryan Schumaker 236cf0fee5 ocarina: Move songlist.h
It really should go into the include directory.  I don't want to use
relative paths to include header files in a subdirectory... I don't know
why I even did it in the first place!
2011-10-27 16:39:27 -04:00

52 lines
852 B
C++

#ifndef OCARINA_SONGLIST_H
#define OCARINA_SONGLIST_H
#include <ocarina/gtk.h>
#include <libsaria/track.h>
#include <list>
#include <string>
using namespace std;
/* Make this a class to inherit from? */
struct SongListFuncs
{
void (*for_each)(void (*)(Track &));
void (*insert_track)(Track &);
unsigned int (*size)();
};
class SongList
{
private:
int ins_next;
SongListFuncs *list_funcs;
string name;
GtkWidget *window;
GtkWidget *label;
GtkWidget *treeview;
GtkListStore *liststore;
GtkCellRenderer *text_cell;
void set_label_text();
void add_column(unsigned int);
void freeze();
void thaw();
public:
SongList();
~SongList();
void init(string, SongListFuncs *);
GtkWidget *get_window();
GtkWidget *get_label();
void insert(Track &);
void fill();
void clear();
};
#endif /* OCARINA_SONGLIST_H */