1998-12-02 08:18:20 +03:00
|
|
|
#ifndef _GTK_DTREE_H
|
|
|
|
#define _GTK_DTREE_H
|
|
|
|
|
|
|
|
#include <gtk/gtkctree.h>
|
|
|
|
|
|
|
|
#define GTK_TYPE_DTREE (gtk_dtree_get_type ())
|
|
|
|
#define GTK_DTREE(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_DTREE, GtkDTree))
|
|
|
|
#define GTK_DTREE_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_DTREE, GtkDTreeClass))
|
|
|
|
#define GTK_IS_DTREE(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_DTREE))
|
|
|
|
#define GTK_IS_DTREE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_DTREE))
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
GtkCTree ctree;
|
|
|
|
|
|
|
|
char *current_path;
|
|
|
|
char *requested_path;
|
|
|
|
|
|
|
|
int visible;
|
1999-02-09 23:10:10 +03:00
|
|
|
int scan_level;
|
1998-12-02 09:51:40 +03:00
|
|
|
|
1998-12-05 00:32:19 +03:00
|
|
|
char *drag_dir;
|
1998-12-13 00:16:01 +03:00
|
|
|
GList *auto_expanded_nodes;
|
1999-08-14 02:45:07 +04:00
|
|
|
|
1998-12-02 08:18:20 +03:00
|
|
|
GtkCTreeNode *root_node; /* root node */
|
|
|
|
GtkCTreeNode *last_node; /* last visited node */
|
|
|
|
|
|
|
|
/* Pixmaps for showing directories */
|
1999-08-14 02:45:07 +04:00
|
|
|
GdkPixmap *pixmap_open;
|
1998-12-02 08:18:20 +03:00
|
|
|
GdkPixmap *pixmap_close;
|
|
|
|
|
|
|
|
/* Masks */
|
|
|
|
GdkBitmap *bitmap_open;
|
|
|
|
GdkBitmap *bitmap_close;
|
1999-01-12 08:55:12 +03:00
|
|
|
|
1999-01-25 08:22:47 +03:00
|
|
|
unsigned short internal;
|
|
|
|
unsigned short loading_dir;
|
1999-01-20 05:16:09 +03:00
|
|
|
int *show_dot_files;
|
1999-02-07 10:23:41 +03:00
|
|
|
unsigned short removing_rows;
|
1998-12-02 08:18:20 +03:00
|
|
|
} GtkDTree;
|
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
GtkCTreeClass parent_class;
|
1999-08-14 02:45:07 +04:00
|
|
|
|
1998-12-02 08:18:20 +03:00
|
|
|
void (* directory_changed) (GtkDTree *dtree, char *directory);
|
1999-02-09 23:10:10 +03:00
|
|
|
void (* scan_begin) (GtkDTree *dtree);
|
|
|
|
void (* scan_end) (GtkDTree *dtree);
|
1999-09-14 00:34:53 +04:00
|
|
|
void (* possibly_ungrab) (GtkDTree *dtree);
|
1998-12-02 08:18:20 +03:00
|
|
|
} GtkDTreeClass;
|
|
|
|
|
|
|
|
guint gtk_dtree_get_type (void);
|
1998-12-05 00:32:19 +03:00
|
|
|
GtkWidget *gtk_dtree_new (void);
|
1998-12-02 08:18:20 +03:00
|
|
|
gboolean gtk_dtree_select_dir (GtkDTree *dtree,
|
|
|
|
char *directory);
|
1999-09-14 03:27:18 +04:00
|
|
|
char *gtk_dtree_get_row_path (GtkDTree *ctree, GtkCTreeNode *row);
|
1998-12-05 00:32:19 +03:00
|
|
|
void gtk_dtree_construct (GtkDTree *dtree);
|
1998-12-02 23:24:25 +03:00
|
|
|
|
1999-04-16 22:25:00 +04:00
|
|
|
gboolean gtk_dtree_is_ancestor (GtkDTree *dtree, GtkCTreeNode *node, GtkCTreeNode *child);
|
|
|
|
|
1998-12-02 08:18:20 +03:00
|
|
|
#endif
|