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