Confuguration loading has been improved

pull/1/head
parent 365db8409a
commit 748bfa33a2

2
.gitignore vendored

@ -1,5 +1,5 @@
.vscode/
ubl-settings-TEMPLATE
ubl-settings-keyboard
*~
build/
compile/

@ -103,6 +103,10 @@ void on_about(){
//functions
void yon_load_proceed(YON_CONFIG_TYPE type, main_window *widgets){
gtk_list_store_clear(widgets->layoutsList);
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->ModelCombo),0);
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),0);
gtk_entry_set_text(GTK_ENTRY(widgets->OptionsEntry),"");
if (yon_config_load_register(type,"keyboard","XkbModel","keyboard","XkbLayout","keyboard","KEYBOARD","keyboard","XkbOptions","config","NUMLOCK",NULL)){
GtkTreeIter iter;
char *name = yon_config_get_by_key("XkbModel");
@ -262,18 +266,8 @@ void on_options_open(GtkWidget *self, main_window *widgets){
window->AcceptButton = yon_gtk_builder_get_widget(builder,"AcceptButton");
window->CancelButton = yon_gtk_builder_get_widget(builder,"CancelButton");
window->MainTree = yon_gtk_builder_get_widget(builder,"LayoutsTree");
window->list = GTK_LIST_STORE(gtk_builder_get_object(builder,"liststore1"));
int size;
config_str rtn = yon_config_load(get_options_command,&size);
GtkTreeIter iter;
for (int i=0; i<size;i++){
int option_size;
rtn[i] = yon_char_divide_search(rtn[i],"\n",-1);
config_str option = yon_char_parse(rtn[i],&option_size,";");
gtk_list_store_append(window->list,&iter);
gtk_list_store_set(window->list,&iter,0,option[0],1,option[1],-1);
}
window->list = main_config.options_list;
gtk_tree_view_set_model(GTK_TREE_VIEW(window->MainTree),GTK_TREE_MODEL(window->list));
dictionary *dict = NULL;
yon_dictionary_add_or_create_if_exists_with_data(dict,"widgets",widgets);
yon_dictionary_add_or_create_if_exists_with_data(dict,"window",window);
@ -309,15 +303,6 @@ void on_layouts_add(GtkWidget *self, main_window *widgets){
window->MainTree = yon_gtk_builder_get_widget(builder,"LayoutsTree");
window->list = main_config.layouts_list;
gtk_tree_view_set_model(GTK_TREE_VIEW(window->MainTree), GTK_TREE_MODEL(window->list));
int size,laysize;
GtkTreeIter iter;
config_str rtn = yon_config_load(get_layouts_command,&size);
for (int i=0; i<size; i++){
rtn[i] = yon_char_divide_search(rtn[i],"\n",-1);
config_str layout = yon_char_parse(rtn[i],&laysize,";");
gtk_list_store_append(window->list,&iter);
gtk_list_store_set(window->list,&iter,0,layout[0],1,layout[1],-1);
}
gtk_tree_selection_set_mode(gtk_tree_view_get_selection(GTK_TREE_VIEW(window->MainTree)),GTK_SELECTION_MULTIPLE);
dictionary *dict = NULL;
@ -449,7 +434,7 @@ main_window *setup_window(){
models[i] = yon_char_divide_search(models[i],"\n",-1);
models[i+1] = yon_char_divide_search(models[i+1],"\n",-1);
gtk_list_store_append(widgets->modelsList,&iter);
gtk_list_store_set(widgets->modelsList,&iter,1,models[i],0,models[i+1],-1);
gtk_list_store_set(widgets->modelsList,&iter,1,models[i],0,_(models[i+1]),-1);
}
main_config.layouts_list = gtk_list_store_new(2,G_TYPE_STRING,G_TYPE_STRING);
int laysize;
@ -458,7 +443,7 @@ main_window *setup_window(){
rtn[i] = yon_char_divide_search(rtn[i],"\n",-1);
config_str layout = yon_char_parse(rtn[i],&laysize,";");
gtk_list_store_append(main_config.layouts_list,&iter);
gtk_list_store_set(main_config.layouts_list,&iter,0,layout[0],1,layout[1],-1);
gtk_list_store_set(main_config.layouts_list,&iter,0,layout[0],1,_(layout[1]),-1);
}
main_config.options_list = gtk_list_store_new(2,G_TYPE_STRING,G_TYPE_STRING);
rtn = yon_config_load(get_options_command,&size);
@ -467,7 +452,7 @@ main_window *setup_window(){
rtn[i] = yon_char_divide_search(rtn[i],"\n",-1);
config_str option = yon_char_parse(rtn[i],&option_size,";");
gtk_list_store_append(main_config.options_list,&iter);
gtk_list_store_set(main_config.options_list,&iter,0,option[0],1,option[1],-1);
gtk_list_store_set(main_config.options_list,&iter,0,option[0],1,_(option[1]),-1);
}
/* Widget registration for config monitoring | Регистрация виджетов для мониторинга конфига */

@ -85,9 +85,14 @@
<property name="can-focus">True</property>
<property name="model">liststore1</property>
<property name="headers-visible">False</property>
<property name="search-column">1</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">column</property>
<property name="sort-column-id">0</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>

@ -646,6 +646,7 @@ translated and supported by community.</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Num Lock on boot:</property>
<property name="xalign">0</property>
</object>
<packing>
<property name="expand">False</property>
@ -716,7 +717,7 @@ translated and supported by community.</property>
<object class="GtkLabel" id="label5">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Keyboard Model:</property>
<property name="label" translatable="yes">Keyboard model:</property>
<property name="xalign">0</property>
</object>
<packing>
@ -815,6 +816,7 @@ translated and supported by community.</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Move layout up</property>
<child>
<object class="GtkMenuButton">
<property name="visible">True</property>
@ -848,6 +850,7 @@ translated and supported by community.</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Move layout down</property>
<child>
<object class="GtkMenuButton">
<property name="visible">True</property>
@ -880,6 +883,7 @@ translated and supported by community.</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Добавить раскладку</property>
<property name="image">image3</property>
<style>
<class name="thin"/>
@ -896,6 +900,7 @@ translated and supported by community.</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Удалить раскладку</property>
<property name="image">image1</property>
<style>
<class name="thin"/>
@ -1005,6 +1010,7 @@ translated and supported by community.</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Pick an option</property>
<property name="image">image4</property>
<style>
<class name="thin"/>

Loading…
Cancel
Save