/*
		    Manual Page Viewer: Callbacks
 */

#ifndef VIEWERCB_H
#define VIEWERCB_H

#include <gtk/gtk.h>


extern void ViewerIndexBranchDestroyCB(gpointer data);

extern gint ViewerCloseCB(GtkWidget *widget, GdkEvent *event, gpointer data);
extern void ViewerCloseMCB(GtkWidget *widget, gpointer data);
extern void ViewerCloseAllCB(GtkWidget *widget, gpointer data);

extern void ViewerSwitchPageCB(
	GtkNotebook *notebook, GtkNotebookPage *page, guint page_num,
	gpointer data
);
extern void ViewerPageToggleCB(GtkWidget *widget, gpointer data);
extern gint ViewerPageChangedTOCB(gpointer data);

extern gint ViewerViewKeyEventCB(
	GtkWidget *widget, GdkEventKey *key, gpointer data
);
extern gint ViewerViewButtonEventCB(
	GtkWidget *widget, GdkEventButton *button, gpointer data
);

extern void ViewerIndexBranchExpandCB(GtkWidget *widget, gpointer data);

extern void ViewerOpenCB(GtkWidget *widget, gpointer data);
extern void ViewerClearCB(GtkWidget *widget, gpointer data);
extern void ViewerStopCB(GtkWidget *widget, gpointer data);
extern void ViewerIndexGotoParentCB(GtkWidget *widget, gpointer data);
extern void ViewerGotoCB(GtkWidget *widget, gpointer data);
extern void ViewerIndexRefreshCB(GtkWidget *widget, gpointer data);
extern void ViewerCopyCB(GtkWidget *widget, gpointer data);
extern void ViewerSelectAllCB(GtkWidget *widget, gpointer data);
extern void ViewerUnselectAllCB(GtkWidget *widget, gpointer data);
extern void ViewerPreferencesCB(GtkWidget *widget, gpointer data);

extern gint ViewerMenuMapCB(GtkWidget *widget, GdkEvent *event, gpointer data);

extern void ViewerManPageActivateCB(GtkWidget *widget, void *data);
extern void ViewerFindActivateCB(GtkWidget *widget, void *data);

extern void ViewerFindInPagesActivateCB(GtkWidget *widget, void *data);

extern void ViewerIndexCTreeSelectCB(
	GtkCTree *ctree, GtkCTreeNode *branch, gint column, gpointer data
); 
extern void ViewerIndexCTreeUnselectCB(
	GtkCTree *ctree, GtkCTreeNode *branch, gint column, gpointer data
);
extern void ViewerIndexCTreeExpandCB(
	GtkCTree *ctree, GtkCTreeNode *node, gpointer data
);

extern void ViewerTextChangeCB(GtkEditable *editable, gpointer data);


#endif	/* VIEWERCB_H */
