Fixed parameter loading

pull/6/head
parent b19c72a303
commit 26d57f1bad

@ -112,12 +112,13 @@ gboolean yon_interface_update(main_window *widgets){
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),0); gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),0);
GtkTreeIter iter; GtkTreeIter iter;
gtk_entry_set_text(GTK_ENTRY(widgets->OptionsEntry),DEFAULT_LABEL); gtk_entry_set_text(GTK_ENTRY(widgets->OptionsEntry),DEFAULT_LABEL);
char *name = yon_config_get_by_key("XkbModel"); {
char *name = yon_config_get_by_key(model_parameter);
char *id; char *id;
if (name) { if (name) {
int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->modelsList),&iter); int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(widgets->modelsList),&iter);
for (;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->modelsList),&iter)){ for (;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(widgets->modelsList),&iter)){
gtk_tree_model_get(GTK_TREE_MODEL(widgets->modelsList),&iter,0,&id,-1); gtk_tree_model_get(GTK_TREE_MODEL(widgets->modelsList),&iter,1,&id,-1);
if (!strcmp(name,id)){ if (!strcmp(name,id)){
gtk_combo_box_set_active_iter(GTK_COMBO_BOX(widgets->ModelCombo),&iter); gtk_combo_box_set_active_iter(GTK_COMBO_BOX(widgets->ModelCombo),&iter);
break; break;
@ -125,18 +126,25 @@ gboolean yon_interface_update(main_window *widgets){
} }
} else gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ModelCombo),0); } else gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ModelCombo),0);
free(name); free(name);
name = yon_config_get_by_key("XkbOptions"); }
{
char *name = yon_config_get_by_key(options_parameter);
if (name) { if (name) {
char *id, *rname; char *id, *rname;
gtk_entry_set_text(GTK_ENTRY(widgets->OptionsEntry),name); gtk_entry_set_text(GTK_ENTRY(widgets->OptionsEntry),name);
int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(main_config.options_list),&iter); int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(main_config.options_list),&iter);
for (;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(main_config.options_list),&iter)){ for (;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(main_config.options_list),&iter)){
gtk_tree_model_get(GTK_TREE_MODEL(main_config.options_list),&iter,0,&id,1,&rname,-1); gtk_tree_model_get(GTK_TREE_MODEL(main_config.options_list),&iter,0,&id,1,&rname,-1);
if (!strcmp(id,name)) gtk_entry_set_text(GTK_ENTRY(widgets->OptionsEntry),rname); if (!strcmp(id,name)){
gtk_entry_set_text(GTK_ENTRY(widgets->OptionsEntry),rname);
break;
}
} }
} }
free(name); free(name);
name = yon_config_get_by_key("NUMLOCK"); }
{
char *name = yon_config_get_by_key(num_lock_boot_parameter);
if (name) { if (name) {
if (!strcmp(name,"yes")) gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),1); if (!strcmp(name,"yes")) gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),1);
else if (!strcmp(name,"no")) gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),2); else if (!strcmp(name,"no")) gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),2);
@ -145,14 +153,13 @@ gboolean yon_interface_update(main_window *widgets){
free(name); free(name);
if (main_config.layouts_list){ if (main_config.layouts_list){
int size=0; int size=0;
name = yon_config_get_by_key("XkbLayout"); name = yon_config_get_by_key(keyboard_layout_parameter);
config_str layouts = yon_char_parse(name,&size,","); config_str layouts = yon_char_parse(name,&size,",");
GtkTreeIter iter; GtkTreeIter iter;
char *rid,*rname; char *rid,*rname;
gtk_list_store_clear(widgets->layoutsList); gtk_list_store_clear(widgets->layoutsList);
for (int i=0;i<size;i++){ for (int i=0;i<size;i++){
int valid = gtk_tree_model_get_iter_first(GTK_TREE_MODEL(main_config.layouts_list),&iter); for_iter(main_config.layouts_list,&iter){
for (;valid;valid=gtk_tree_model_iter_next(GTK_TREE_MODEL(main_config.layouts_list),&iter)){
gtk_tree_model_get(GTK_TREE_MODEL(main_config.layouts_list),&iter,0,&rid,1,&rname,-1); gtk_tree_model_get(GTK_TREE_MODEL(main_config.layouts_list),&iter,0,&rid,1,&rname,-1);
if (!strcmp(layouts[i],rid)){ if (!strcmp(layouts[i],rid)){
gtk_list_store_append(widgets->layoutsList,&iter); gtk_list_store_append(widgets->layoutsList,&iter);
@ -161,6 +168,7 @@ gboolean yon_interface_update(main_window *widgets){
} }
} }
} }
}
return G_SOURCE_REMOVE; return G_SOURCE_REMOVE;
} }

Loading…
Cancel
Save