r339: The menu key bindings are now only saved if they actually changed.
[rox-filer.git] / ROX-Filer / src / options.h
blobd40cefbc8330cebd48f3ef4df7dc887825271a1c
1 /*
2 * $Id$
4 * ROX-Filer, filer for the ROX desktop project
5 * By Thomas Leonard, <tal197@users.sourceforge.net>.
6 */
8 #ifndef _OPTIONS_H
9 #define _OPTIONS_H
11 #include <gtk/gtk.h>
13 #define OPTION_TIP(widget, tip) \
14 gtk_tooltips_set_tip(option_tooltips, widget, _(tip), NULL)
16 typedef char *OptionFunc(char *value);
18 typedef struct _OptionsSection OptionsSection;
20 struct _OptionsSection
22 char *name;
23 GtkWidget *(*create)(void); /* Create widgets */
24 void (*update)(void); /* Update widgets */
25 void (*set)(void); /* Read values from widgets */
26 void (*save)(void); /* Save values to Choices */
29 extern GSList *options_sections;
30 extern GtkTooltips *option_tooltips;
32 /* Prototypes */
34 void options_init(void);
35 void option_register(char *key, OptionFunc *func);
36 void options_load(void);
37 void options_show(void);
38 void option_write(char *name, char *value);
40 #endif /* _OPTIONS_H */