blah the XrmGetFileDatabase is implementation specific in its handling of
2002-09-24 Jody Goldberg <jody@gnome.org> * accessibility-keyboard.c (load_CDE_file) : blah the XrmGetFileDatabase is implementation specific in its handling of invalid files. Add a hack that if the imported file did not contain any resources it was invalid. * gnome-accessibility-keyboard-properties.glade : add mnemonic_widget for mousekeys_init_delay_title. Remove the atkrelations for things with mnemonic_widget.
This commit is contained in:
parent
3274ad719c
commit
237ffc56dc
3 changed files with 57 additions and 44 deletions
|
@ -1,3 +1,14 @@
|
||||||
|
2002-09-24 Jody Goldberg <jody@gnome.org>
|
||||||
|
|
||||||
|
* accessibility-keyboard.c (load_CDE_file) : blah the
|
||||||
|
XrmGetFileDatabase is implementation specific in its handling of
|
||||||
|
invalid files. Add a hack that if the imported file did not contain
|
||||||
|
any resources it was invalid.
|
||||||
|
|
||||||
|
* gnome-accessibility-keyboard-properties.glade : add mnemonic_widget
|
||||||
|
for mousekeys_init_delay_title. Remove the atkrelations for things
|
||||||
|
with mnemonic_widget.
|
||||||
|
|
||||||
2002-09-11 Jody Goldberg <jody@gnome.org>
|
2002-09-11 Jody Goldberg <jody@gnome.org>
|
||||||
|
|
||||||
* gnome-accessibility-keyboard-properties.glade : Fix conflicting
|
* gnome-accessibility-keyboard-properties.glade : Fix conflicting
|
||||||
|
|
|
@ -263,19 +263,22 @@ setup_dialog (GladeXML *dialog, GConfChangeSet *changeset)
|
||||||
|
|
||||||
/*******************************************************************************/
|
/*******************************************************************************/
|
||||||
|
|
||||||
static void
|
static gboolean
|
||||||
xrm_get_bool (GConfClient *client, XrmDatabase *db, char const *gconf_key,
|
xrm_get_bool (GConfClient *client, XrmDatabase *db, char const *gconf_key,
|
||||||
char const *res_str, char const *class_str)
|
char const *res_str, char const *class_str)
|
||||||
{
|
{
|
||||||
XrmValue resourceValue;
|
XrmValue resourceValue;
|
||||||
char *res;
|
char *res;
|
||||||
|
|
||||||
if (XrmGetResource (*db, res_str, class_str, &res, &resourceValue))
|
if (!XrmGetResource (*db, res_str, class_str, &res, &resourceValue))
|
||||||
|
return FALSE;
|
||||||
gconf_client_set_bool (client, gconf_key,
|
gconf_client_set_bool (client, gconf_key,
|
||||||
!g_ascii_strcasecmp (resourceValue.addr, "True"), NULL);
|
!g_ascii_strcasecmp (resourceValue.addr, "True"), NULL);
|
||||||
|
|
||||||
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static gboolean
|
||||||
xrm_get_int (GConfClient *client, XrmDatabase *db, char const *gconf_key,
|
xrm_get_int (GConfClient *client, XrmDatabase *db, char const *gconf_key,
|
||||||
char const *res_str, char const *class_str, float scale)
|
char const *res_str, char const *class_str, float scale)
|
||||||
{
|
{
|
||||||
|
@ -286,12 +289,12 @@ xrm_get_int (GConfClient *client, XrmDatabase *db, char const *gconf_key,
|
||||||
|
|
||||||
snprintf (resource, sizeof (resource), "%s.value", res_str);
|
snprintf (resource, sizeof (resource), "%s.value", res_str);
|
||||||
if (!XrmGetResource (*db, resource, class_str, &res, &resourceValue))
|
if (!XrmGetResource (*db, resource, class_str, &res, &resourceValue))
|
||||||
return;
|
return FALSE;
|
||||||
value = atoi (resourceValue.addr);
|
value = atoi (resourceValue.addr);
|
||||||
|
|
||||||
snprintf (resource, sizeof (resource), "%s.decimalPoints", res_str);
|
snprintf (resource, sizeof (resource), "%s.decimalPoints", res_str);
|
||||||
if (!XrmGetResource (*db, resource, class_str, &res, &resourceValue))
|
if (!XrmGetResource (*db, resource, class_str, &res, &resourceValue))
|
||||||
return;
|
return FALSE;
|
||||||
log_scale = atoi (resourceValue.addr);
|
log_scale = atoi (resourceValue.addr);
|
||||||
|
|
||||||
while (log_scale-- > 0)
|
while (log_scale-- > 0)
|
||||||
|
@ -299,7 +302,7 @@ xrm_get_int (GConfClient *client, XrmDatabase *db, char const *gconf_key,
|
||||||
|
|
||||||
gconf_client_set_int (client, gconf_key, value, NULL);
|
gconf_client_set_int (client, gconf_key, value, NULL);
|
||||||
|
|
||||||
printf ("%f * %d\n", scale, value);
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* This loads the current users XKB settings from their file */
|
/* This loads the current users XKB settings from their file */
|
||||||
|
@ -309,6 +312,7 @@ load_CDE_file (GtkFileSelection *fsel)
|
||||||
char const *file = gtk_file_selection_get_filename (fsel);
|
char const *file = gtk_file_selection_get_filename (fsel);
|
||||||
GConfClient *client;
|
GConfClient *client;
|
||||||
XrmDatabase db;
|
XrmDatabase db;
|
||||||
|
gboolean found = FALSE;
|
||||||
|
|
||||||
if (!(db = XrmGetFileDatabase (file))) {
|
if (!(db = XrmGetFileDatabase (file))) {
|
||||||
GtkWidget *warn = gtk_message_dialog_new (
|
GtkWidget *warn = gtk_message_dialog_new (
|
||||||
|
@ -326,45 +330,60 @@ load_CDE_file (GtkFileSelection *fsel)
|
||||||
client = gconf_client_get_default ();
|
client = gconf_client_get_default ();
|
||||||
gconf_client_set_bool (client, CONFIG_ROOT "/enable", TRUE, NULL);
|
gconf_client_set_bool (client, CONFIG_ROOT "/enable", TRUE, NULL);
|
||||||
|
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/feature_state_change_beep",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/feature_state_change_beep",
|
||||||
"*SoundOnOffToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*SoundOnOffToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/timeout_enable",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/timeout_enable",
|
||||||
"*TimeOutToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*TimeOutToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/stickykeys_enable",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/stickykeys_enable",
|
||||||
"*StickyKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*StickyKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/mousekeys_enable",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/mousekeys_enable",
|
||||||
"*MouseKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*MouseKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/togglekeys_enable",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/togglekeys_enable",
|
||||||
"*ToggleKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*ToggleKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/slowkeys_enable",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/slowkeys_enable",
|
||||||
"*SlowKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*SlowKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/bouncekeys_enable",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/bouncekeys_enable",
|
||||||
"*BounceKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*BounceKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/stickykeys_modifier_beep",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/stickykeys_modifier_beep",
|
||||||
"*StickyModSoundToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*StickyModSoundToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/stickykeys_two_key_off",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/stickykeys_two_key_off",
|
||||||
"*StickyTwoKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*StickyTwoKeysToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/slowkeys_beep_press",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/slowkeys_beep_press",
|
||||||
"*SlowKeysOnPressToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*SlowKeysOnPressToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/slowkeys_beep_accept",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/slowkeys_beep_accept",
|
||||||
"*SlowKeysOnAcceptToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*SlowKeysOnAcceptToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
xrm_get_int (client, &db, CONFIG_ROOT "/timeout",
|
found |= xrm_get_int (client, &db, CONFIG_ROOT "/timeout",
|
||||||
"*TimeOutScale", "AccessX*XmScale", 60);
|
"*TimeOutScale", "AccessX*XmScale", 60);
|
||||||
xrm_get_int (client, &db, CONFIG_ROOT "/mousekeys_max_speed",
|
found |= xrm_get_int (client, &db, CONFIG_ROOT "/mousekeys_max_speed",
|
||||||
"*MouseMaxSpeedScale", "AccessX*XmScale", 1);
|
"*MouseMaxSpeedScale", "AccessX*XmScale", 1);
|
||||||
xrm_get_int (client, &db, CONFIG_ROOT "/mousekeys_accel_time",
|
found |= xrm_get_int (client, &db, CONFIG_ROOT "/mousekeys_accel_time",
|
||||||
"*MouseAccelScale", "AccessX*XmScale", 1);
|
"*MouseAccelScale", "AccessX*XmScale", 1);
|
||||||
xrm_get_int (client, &db, CONFIG_ROOT "/mousekeys_init_delay",
|
found |= xrm_get_int (client, &db, CONFIG_ROOT "/mousekeys_init_delay",
|
||||||
"*MouseDelayScale", "AccessX*XmScale", 1);
|
"*MouseDelayScale", "AccessX*XmScale", 1);
|
||||||
xrm_get_int (client, &db, CONFIG_ROOT "/slowkeys_delay",
|
found |= xrm_get_int (client, &db, CONFIG_ROOT "/slowkeys_delay",
|
||||||
"*KRGSlowKeysDelayScale", "AccessX*XmScale", 1000);
|
"*KRGSlowKeysDelayScale", "AccessX*XmScale", 1000);
|
||||||
xrm_get_int (client, &db, CONFIG_ROOT "/bouncekeys_delay",
|
found |= xrm_get_int (client, &db, CONFIG_ROOT "/bouncekeys_delay",
|
||||||
"*KRGDebounceScale", "AccessX*XmScale", 1000);
|
"*KRGDebounceScale", "AccessX*XmScale", 1000);
|
||||||
|
|
||||||
/* Set the master enable flag last */
|
/* Set the master enable flag last */
|
||||||
xrm_get_bool (client, &db, CONFIG_ROOT "/enable",
|
found |= xrm_get_bool (client, &db, CONFIG_ROOT "/enable",
|
||||||
"*EnableAccessXToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
"*EnableAccessXToggle.set", "AccessX*ToggleButtonGadget.XmCSet");
|
||||||
|
|
||||||
|
if (!found) {
|
||||||
|
/* it would be nice to have a better message bu that would
|
||||||
|
* break string freeze
|
||||||
|
*/
|
||||||
|
GtkWidget *warn = gtk_message_dialog_new (
|
||||||
|
gtk_window_get_transient_for (GTK_WINDOW (fsel)),
|
||||||
|
GTK_DIALOG_MODAL, GTK_MESSAGE_ERROR, GTK_BUTTONS_OK,
|
||||||
|
_("Unable to import AccessX settings from file '%s'"),
|
||||||
|
file);
|
||||||
|
g_signal_connect (warn,
|
||||||
|
"response",
|
||||||
|
G_CALLBACK (gtk_widget_destroy), NULL);
|
||||||
|
gtk_widget_show (warn);
|
||||||
|
return FALSE;
|
||||||
|
}
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -452,9 +452,6 @@ two keys pressed simultaneously</property>
|
||||||
<property name="xpad">9</property>
|
<property name="xpad">9</property>
|
||||||
<property name="ypad">0</property>
|
<property name="ypad">0</property>
|
||||||
<property name="mnemonic_widget">slowkeys_delay_spin</property>
|
<property name="mnemonic_widget">slowkeys_delay_spin</property>
|
||||||
<accessibility>
|
|
||||||
<atkrelation target="slowkeys_delay_spin" type="label-for"/>
|
|
||||||
</accessibility>
|
|
||||||
</widget>
|
</widget>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">1</property>
|
<property name="left_attach">1</property>
|
||||||
|
@ -732,9 +729,6 @@ two keys pressed simultaneously</property>
|
||||||
<property name="xpad">10</property>
|
<property name="xpad">10</property>
|
||||||
<property name="ypad">0</property>
|
<property name="ypad">0</property>
|
||||||
<property name="mnemonic_widget">bouncekeys_delay_spin</property>
|
<property name="mnemonic_widget">bouncekeys_delay_spin</property>
|
||||||
<accessibility>
|
|
||||||
<atkrelation target="bouncekeys_delay_spin" type="label-for"/>
|
|
||||||
</accessibility>
|
|
||||||
</widget>
|
</widget>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">1</property>
|
<property name="left_attach">1</property>
|
||||||
|
@ -911,9 +905,6 @@ two keys pressed simultaneously</property>
|
||||||
<property name="xpad">0</property>
|
<property name="xpad">0</property>
|
||||||
<property name="ypad">0</property>
|
<property name="ypad">0</property>
|
||||||
<property name="mnemonic_widget">mousekeys_max_speed_spin</property>
|
<property name="mnemonic_widget">mousekeys_max_speed_spin</property>
|
||||||
<accessibility>
|
|
||||||
<atkrelation target="mousekeys_max_speed_spin" type="label-for"/>
|
|
||||||
</accessibility>
|
|
||||||
</widget>
|
</widget>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">1</property>
|
<property name="left_attach">1</property>
|
||||||
|
@ -938,9 +929,7 @@ two keys pressed simultaneously</property>
|
||||||
<property name="yalign">0.5</property>
|
<property name="yalign">0.5</property>
|
||||||
<property name="xpad">0</property>
|
<property name="xpad">0</property>
|
||||||
<property name="ypad">0</property>
|
<property name="ypad">0</property>
|
||||||
<accessibility>
|
<property name="mnemonic_widget">mousekeys_init_delay_spin</property>
|
||||||
<atkrelation target="mousekeys_init_delay_title" type="label-for"/>
|
|
||||||
</accessibility>
|
|
||||||
</widget>
|
</widget>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">1</property>
|
<property name="left_attach">1</property>
|
||||||
|
@ -1070,9 +1059,6 @@ two keys pressed simultaneously</property>
|
||||||
<property name="xpad">0</property>
|
<property name="xpad">0</property>
|
||||||
<property name="ypad">0</property>
|
<property name="ypad">0</property>
|
||||||
<property name="mnemonic_widget">mousekeys_accel_time_spin</property>
|
<property name="mnemonic_widget">mousekeys_accel_time_spin</property>
|
||||||
<accessibility>
|
|
||||||
<atkrelation target="mousekeys_accel_time_spin" type="label-for"/>
|
|
||||||
</accessibility>
|
|
||||||
</widget>
|
</widget>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">1</property>
|
<property name="left_attach">1</property>
|
||||||
|
@ -1198,9 +1184,6 @@ two keys pressed simultaneously</property>
|
||||||
<property name="xpad">2</property>
|
<property name="xpad">2</property>
|
||||||
<property name="ypad">0</property>
|
<property name="ypad">0</property>
|
||||||
<property name="mnemonic_widget">mousekeys_init_delay_spin</property>
|
<property name="mnemonic_widget">mousekeys_init_delay_spin</property>
|
||||||
<accessibility>
|
|
||||||
<atkrelation target="mousekeys_init_delay_spin" type="label-for"/>
|
|
||||||
</accessibility>
|
|
||||||
</widget>
|
</widget>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="left_attach">3</property>
|
<property name="left_attach">3</property>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue