git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git]
/
scripts
/
kconfig
/
gconf.c
diff --git
a/scripts/kconfig/gconf.c
b/scripts/kconfig/gconf.c
index
665bd53
..
61d8166
100644
(file)
--- a/
scripts/kconfig/gconf.c
+++ b/
scripts/kconfig/gconf.c
@@
-38,8
+38,6
@@
static gboolean show_all = FALSE;
static gboolean show_debug = FALSE;
static gboolean resizeable = FALSE;
static gboolean show_debug = FALSE;
static gboolean resizeable = FALSE;
-static gboolean config_changed = FALSE;
-
static char nohelp_text[] =
N_("Sorry, no help available for this option yet.\n");
static char nohelp_text[] =
N_("Sorry, no help available for this option yet.\n");
@@
-50,6
+48,8
@@
GtkWidget *text_w = NULL;
GtkWidget *hpaned = NULL;
GtkWidget *vpaned = NULL;
GtkWidget *back_btn = NULL;
GtkWidget *hpaned = NULL;
GtkWidget *vpaned = NULL;
GtkWidget *back_btn = NULL;
+GtkWidget *save_btn = NULL;
+GtkWidget *save_menu_item = NULL;
GtkTextTag *tag1, *tag2;
GdkColor color;
GtkTextTag *tag1, *tag2;
GdkColor color;
@@
-75,7
+75,7
@@
static void display_tree_part(void);
static void update_tree(struct menu *src, GtkTreeIter * dst);
static void set_node(GtkTreeIter * node, struct menu *menu, gchar ** row);
static gchar **fill_row(struct menu *menu);
static void update_tree(struct menu *src, GtkTreeIter * dst);
static void set_node(GtkTreeIter * node, struct menu *menu, gchar ** row);
static gchar **fill_row(struct menu *menu);
-
+static void conf_changed(void);
/* Helping/Debugging Functions */
/* Helping/Debugging Functions */
@@
-114,12
+114,6
@@
const char *dbg_print_flags(int val)
bzero(buf, 256);
bzero(buf, 256);
- if (val & SYMBOL_YES)
- strcat(buf, "yes/");
- if (val & SYMBOL_MOD)
- strcat(buf, "mod/");
- if (val & SYMBOL_NO)
- strcat(buf, "no/");
if (val & SYMBOL_CONST)
strcat(buf, "const/");
if (val & SYMBOL_CHECK)
if (val & SYMBOL_CONST)
strcat(buf, "const/");
if (val & SYMBOL_CHECK)
@@
-138,8
+132,6
@@
const char *dbg_print_flags(int val)
strcat(buf, "write/");
if (val & SYMBOL_CHANGED)
strcat(buf, "changed/");
strcat(buf, "write/");
if (val & SYMBOL_CHANGED)
strcat(buf, "changed/");
- if (val & SYMBOL_NEW)
- strcat(buf, "new/");
if (val & SYMBOL_AUTO)
strcat(buf, "auto/");
if (val & SYMBOL_AUTO)
strcat(buf, "auto/");
@@
-232,6
+224,10
@@
void init_main_window(const gchar * glade_file)
gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget,
show_value);
gtk_check_menu_item_set_active((GtkCheckMenuItem *) widget,
show_value);
+ save_btn = glade_xml_get_widget(xml, "button3");
+ save_menu_item = glade_xml_get_widget(xml, "save1");
+ conf_set_changed_callback(conf_changed);
+
style = gtk_widget_get_style(main_wnd);
widget = glade_xml_get_widget(xml, "toolbar1");
style = gtk_widget_get_style(main_wnd);
widget = glade_xml_get_widget(xml, "toolbar1");
@@
-520,14
+516,14
@@
static void text_insert_msg(const char *title, const char *message)
/* Main Windows Callbacks */
/* Main Windows Callbacks */
-void on_save
1
_activate(GtkMenuItem * menuitem, gpointer user_data);
+void on_save_activate(GtkMenuItem * menuitem, gpointer user_data);
gboolean on_window1_delete_event(GtkWidget * widget, GdkEvent * event,
gpointer user_data)
{
GtkWidget *dialog, *label;
gint result;
gboolean on_window1_delete_event(GtkWidget * widget, GdkEvent * event,
gpointer user_data)
{
GtkWidget *dialog, *label;
gint result;
- if (
config_changed == FALSE
)
+ if (
!conf_get_changed()
)
return FALSE;
dialog = gtk_dialog_new_with_buttons(_("Warning !"),
return FALSE;
dialog = gtk_dialog_new_with_buttons(_("Warning !"),
@@
-551,7
+547,7
@@
gboolean on_window1_delete_event(GtkWidget * widget, GdkEvent * event,
result = gtk_dialog_run(GTK_DIALOG(dialog));
switch (result) {
case GTK_RESPONSE_YES:
result = gtk_dialog_run(GTK_DIALOG(dialog));
switch (result) {
case GTK_RESPONSE_YES:
- on_save
1
_activate(NULL, NULL);
+ on_save_activate(NULL, NULL);
return FALSE;
case GTK_RESPONSE_NO:
return FALSE;
return FALSE;
case GTK_RESPONSE_NO:
return FALSE;
@@
-629,12
+625,10
@@
void on_load1_activate(GtkMenuItem * menuitem, gpointer user_data)
}
}
-void on_save
1
_activate(GtkMenuItem * menuitem, gpointer user_data)
+void on_save_activate(GtkMenuItem * menuitem, gpointer user_data)
{
if (conf_write(NULL))
text_insert_msg(_("Error"), _("Unable to save configuration !"));
{
if (conf_write(NULL))
text_insert_msg(_("Error"), _("Unable to save configuration !"));
-
- config_changed = FALSE;
}
}
@@
-827,12
+821,6
@@
void on_load_clicked(GtkButton * button, gpointer user_data)
}
}
-void on_save_clicked(GtkButton * button, gpointer user_data)
-{
- on_save1_activate(NULL, user_data);
-}
-
-
void on_single_clicked(GtkButton * button, gpointer user_data)
{
view_mode = SINGLE_VIEW;
void on_single_clicked(GtkButton * button, gpointer user_data)
{
view_mode = SINGLE_VIEW;
@@
-907,7
+895,6
@@
static void renderer_edited(GtkCellRendererText * cell,
sym_set_string_value(sym, new_def);
sym_set_string_value(sym, new_def);
- config_changed = TRUE;
update_tree(&rootmenu, NULL);
gtk_tree_path_free(path);
update_tree(&rootmenu, NULL);
gtk_tree_path_free(path);
@@
-938,7
+925,6
@@
static void change_sym_value(struct menu *menu, gint col)
if (!sym_tristate_within_range(sym, newval))
newval = yes;
sym_set_tristate_value(sym, newval);
if (!sym_tristate_within_range(sym, newval))
newval = yes;
sym_set_tristate_value(sym, newval);
- config_changed = TRUE;
if (view_mode == FULL_VIEW)
update_tree(&rootmenu, NULL);
else if (view_mode == SPLIT_VIEW) {
if (view_mode == FULL_VIEW)
update_tree(&rootmenu, NULL);
else if (view_mode == SPLIT_VIEW) {
@@
-1192,9
+1178,7
@@
static gchar **fill_row(struct menu *menu)
row[COL_OPTION] =
g_strdup_printf("%s %s", menu_get_prompt(menu),
row[COL_OPTION] =
g_strdup_printf("%s %s", menu_get_prompt(menu),
- sym ? (sym->
- flags & SYMBOL_NEW ? "(NEW)" : "") :
- "");
+ sym && sym_has_value(sym) ? "(NEW)" : "");
if (show_all && !menu_is_visible(menu))
row[COL_COLOR] = g_strdup("DarkGray");
if (show_all && !menu_is_visible(menu))
row[COL_COLOR] = g_strdup("DarkGray");
@@
-1643,3
+1627,10
@@
int main(int ac, char *av[])
return 0;
}
return 0;
}
+
+static void conf_changed(void)
+{
+ bool changed = conf_get_changed();
+ gtk_widget_set_sensitive(save_btn, changed);
+ gtk_widget_set_sensitive(save_menu_item, changed);
+}