Handle the "bool" members the same way we handled the members for

enumerated values - "boolp" for pointers, "boolval" for values.

svn path=/trunk/; revision=5678
This commit is contained in:
Guy Harris 2002-06-16 00:58:38 +00:00
parent 3a407d9567
commit 3baa49d71d
3 changed files with 15 additions and 15 deletions

View File

@ -1,7 +1,7 @@
/* prefs_dlg.c
* Routines for handling preferences
*
* $Id: prefs_dlg.c,v 1.47 2002/06/16 00:53:20 guy Exp $
* $Id: prefs_dlg.c,v 1.48 2002/06/16 00:58:38 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@ -165,10 +165,10 @@ pref_show(pref_t *pref, gpointer user_data)
break;
case PREF_BOOL:
pref->saved_val.boolean = *pref->varp.boolean;
pref->saved_val.boolval = *pref->varp.boolp;
pref->control = create_preference_check_button(main_tb, pref->ordinal,
label_string, pref->description,
pref->saved_val.boolean);
pref->saved_val.boolval);
break;
case PREF_ENUM:
@ -715,9 +715,9 @@ pref_fetch(pref_t *pref, gpointer user_data)
case PREF_BOOL:
bval = GTK_TOGGLE_BUTTON(pref->control)->active;
if (*pref->varp.boolean != bval) {
if (*pref->varp.boolp != bval) {
*pref_changed_p = TRUE;
*pref->varp.boolean = bval;
*pref->varp.boolp = bval;
}
break;
@ -949,9 +949,9 @@ pref_revert(pref_t *pref, gpointer user_data)
break;
case PREF_BOOL:
if (*pref->varp.boolean != pref->saved_val.boolean) {
if (*pref->varp.boolp != pref->saved_val.boolval) {
*pref_changed_p = TRUE;
*pref->varp.boolean = pref->saved_val.boolean;
*pref->varp.boolp = pref->saved_val.boolval;
}
break;

View File

@ -2,7 +2,7 @@
* Definitions for implementation of preference handling routines;
* used by "friends" of the preferences type.
*
* $Id: prefs-int.h,v 1.7 2002/06/16 00:53:17 guy Exp $
* $Id: prefs-int.h,v 1.8 2002/06/16 00:58:37 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@ -57,13 +57,13 @@ struct preference {
pref_type_t type; /* type of that preference */
union {
guint *uint;
gboolean *boolean;
gboolean *boolp;
gint *enump;
char **string;
} varp; /* pointer to variable storing the value */
union {
guint uint;
gboolean boolean;
gboolean boolval;
gint enumval;
char *string;
} saved_val; /* original value, when editing from the GUI */

10
prefs.c
View File

@ -1,7 +1,7 @@
/* prefs.c
* Routines for handling preferences
*
* $Id: prefs.c,v 1.85 2002/06/16 00:53:17 guy Exp $
* $Id: prefs.c,v 1.86 2002/06/16 00:58:37 guy Exp $
*
* Ethereal - Network traffic analyzer
* By Gerald Combs <gerald@ethereal.com>
@ -387,7 +387,7 @@ prefs_register_bool_preference(module_t *module, const char *name,
preference = register_preference(module, name, title, description);
preference->type = PREF_BOOL;
preference->varp.boolean = var;
preference->varp.boolp = var;
}
/*
@ -1524,9 +1524,9 @@ set_pref(gchar *pref_name, gchar *value)
bval = TRUE;
else
bval = FALSE;
if (*pref->varp.boolean != bval) {
if (*pref->varp.boolp != bval) {
module->prefs_changed = TRUE;
*pref->varp.boolean = bval;
*pref->varp.boolp = bval;
}
break;
@ -1613,7 +1613,7 @@ write_pref(gpointer data, gpointer user_data)
case PREF_BOOL:
fprintf(arg->pf, "# TRUE or FALSE (case-insensitive).\n");
fprintf(arg->pf, "%s.%s: %s\n", arg->module->name, pref->name,
*pref->varp.boolean ? "TRUE" : "FALSE");
*pref->varp.boolp ? "TRUE" : "FALSE");
break;
case PREF_ENUM: