Desktop
/* browser.h */
							#ifndef BROWSER_BROWSER_H
							# define BROWSER_BROWSER_H
							# include <gtk/gtk.h>
							# include "mime.h"
							/* Browser */
							/* types */
							enum
							{
								BR_COL_PATH = 0,
								BR_COL_DISPLAY_NAME,
								BR_COL_PIXBUF,
								BR_COL_IS_DIRECTORY,
								BR_NUM_COLS
							};
							# define BR_LAST BR_NUM_COLS
							typedef struct _Browser
							{
								/* config */
							/*	Config * config; */
								/* mime */
								Mime * mime;
								/* history */
								GList * history;
								GList * current;
								/* widgets */
								GtkIconTheme * theme;
								GdkPixbuf * pb_file;
								GdkPixbuf * pb_folder;
								GtkWidget * window;
								GtkToolItem * tb_back;
								GtkToolItem * tb_updir;
								GtkToolItem * tb_forward;
								GtkWidget * tb_path;
								GtkWidget * scrolled;
								GtkWidget * iconview;
								GtkWidget * listview;
								GtkListStore * store;
								GtkWidget * statusbar;
								guint statusbar_id;
							} Browser;
							/* functions */
							Browser * browser_new(char const * directory);
							void browser_delete(Browser * browser);
							/* useful */
							int browser_error(Browser * browser, char const * message, int ret);
							#endif /* !BROWSER_BROWSER_H */
							