more leaks plugged and more *_OPTIONAL
[dia.git] / app / diagram_tree_window.h
blobd70e02ebe0641e3234cf0cab86811a8b427e871b
1 /* Dia -- a diagram creation/manipulation program
2 * Copyright (C) 1998 Alexander Larsson
4 * diagram_tree_window.h : a window showing open diagrams
5 * Copyright (C) 2001 Jose A Ortega Ruiz
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24 #ifndef DIAGRAM_TREE_WINDOW_H
25 #define DIAGRAM_TREE_WINDOW_H
27 #include <gtk/gtk.h>
28 #include "diagram_tree.h"
30 /* configuration parameters */
31 typedef struct _DiagramTreeConfig DiagramTreeConfig;
33 struct _DiagramTreeConfig {
34 DiagramTreeSortType dia_sort; /* default sort mode for diagrams */
35 DiagramTreeSortType obj_sort; /* default sort mode for objects */
36 gboolean save_hidden; /* remember current hidden types on restart */
37 gchar *hidden; /* hidden object type list */
40 /* for use as default initialisation value */
41 extern gchar *DIA_TREE_DEFAULT_HIDDEN;
43 /* get the diagram tree and window*/
44 extern DiagramTree *
45 diagram_tree(void);
47 extern void
48 create_diagram_tree_window(DiagramTreeConfig *config, GtkWidget *menuitem);
51 /* show the diagtree window (menu callback) */
52 extern void
53 diagtree_show_callback(gpointer data, guint action,
54 GtkWidget *widget);
57 /* functions manipulating the config */
58 extern GList * /* destroyed by client */
59 diagram_tree_config_get_hidden_types(const DiagramTreeConfig *config);
61 extern void
62 diagram_tree_config_set_hidden_types(DiagramTreeConfig *config,
63 const GList *types);
65 extern void
66 diagram_tree_config_add_hidden_type(DiagramTreeConfig *config,
67 const gchar *type);
69 extern void
70 diagram_tree_config_remove_hidden_type(DiagramTreeConfig *config,
71 const gchar *type);
74 #endif /* DIAGRAM_TREE_WINDOW_H */