|
|
|
@ -904,6 +904,7 @@ int cur_slide=0;
|
|
|
|
|
|
|
|
|
|
|
|
int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled);
|
|
|
|
int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled);
|
|
|
|
int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled) {
|
|
|
|
int yon_image_resize_from_container(GtkImage *target, GdkPixbuf *pixbuf_unscaled) {
|
|
|
|
|
|
|
|
if (target&&pixbuf_unscaled){};
|
|
|
|
// int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target))));
|
|
|
|
// int width = gtk_widget_get_allocated_width((gtk_widget_get_parent(GTK_WIDGET(target))));
|
|
|
|
// int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target))));
|
|
|
|
// int height = gtk_widget_get_allocated_height((gtk_widget_get_parent(GTK_WIDGET(target))));
|
|
|
|
|
|
|
|
|
|
|
|
@ -2548,144 +2549,144 @@ main_window *yon_main_window_complete(){
|
|
|
|
gtk_window_set_title(GTK_WINDOW(widgets->MainWindow),TITLE_LABEL);
|
|
|
|
gtk_window_set_title(GTK_WINDOW(widgets->MainWindow),TITLE_LABEL);
|
|
|
|
gtk_window_set_icon_name(GTK_WINDOW(widgets->MainWindow),icon_path);
|
|
|
|
gtk_window_set_icon_name(GTK_WINDOW(widgets->MainWindow),icon_path);
|
|
|
|
|
|
|
|
|
|
|
|
int size;
|
|
|
|
// int size;
|
|
|
|
config_str parsed = yon_file_open(licence_path,&size);
|
|
|
|
// config_str parsed = yon_file_open(licence_path,&size);
|
|
|
|
if (size){
|
|
|
|
// if (size){
|
|
|
|
char *licence = yon_char_parsed_to_string(parsed,size,"");
|
|
|
|
// char *licence = yon_char_parsed_to_string(parsed,size,"");
|
|
|
|
gtk_label_set_text(GTK_LABEL(widgets->LicenceLabel),licence);
|
|
|
|
// gtk_label_set_text(GTK_LABEL(widgets->LicenceLabel),licence);
|
|
|
|
// free(licence);
|
|
|
|
// // free(licence);
|
|
|
|
// yon_char_parsed_free(parsed,size);
|
|
|
|
// // yon_char_parsed_free(parsed,size);
|
|
|
|
}
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
config_str slides = yon_char_parsed_new(&size,slide_repeat_path);
|
|
|
|
|
|
|
|
widgets->regions_original = gdk_pixbuf_new_from_resource(regions_path,NULL);
|
|
|
|
|
|
|
|
widgets->keyboard_original = gdk_pixbuf_new_from_resource(keyboard_path,NULL);
|
|
|
|
|
|
|
|
widgets->slides_original = malloc(sizeof(GdkPixbuf*)*size);
|
|
|
|
|
|
|
|
widgets->slides_original[0] = gdk_pixbuf_new_from_resource(slide_0_path,NULL);
|
|
|
|
|
|
|
|
for (int i=1;i<size;i++){
|
|
|
|
|
|
|
|
widgets->slides_original[i] = gdk_pixbuf_new_from_resource(slides[i-1],NULL);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// yon_char_parsed_free(slides,size);
|
|
|
|
|
|
|
|
int width = gdk_pixbuf_get_width(widgets->regions_original);
|
|
|
|
|
|
|
|
int height = gdk_pixbuf_get_height(widgets->regions_original);
|
|
|
|
|
|
|
|
widgets->region_height_mult = (float)height/width;
|
|
|
|
|
|
|
|
GdkPixbuf *pix = gdk_pixbuf_scale_simple(widgets->regions_original,600,400,GDK_INTERP_BILINEAR);
|
|
|
|
|
|
|
|
gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->RegionImage),pix);
|
|
|
|
|
|
|
|
g_object_unref(pix);
|
|
|
|
|
|
|
|
pix = gdk_pixbuf_scale_simple(widgets->keyboard_original,600,400,GDK_INTERP_BILINEAR);
|
|
|
|
|
|
|
|
gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->KeyboardImage),pix);
|
|
|
|
|
|
|
|
g_object_unref(pix);
|
|
|
|
|
|
|
|
pix = gdk_pixbuf_scale_simple(widgets->slides_original[0],600,400,GDK_INTERP_BILINEAR);
|
|
|
|
|
|
|
|
gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),pix);
|
|
|
|
|
|
|
|
g_object_unref(pix);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
int langsize;
|
|
|
|
|
|
|
|
config_str lang = default_langs(&langsize);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GtkTreeIter iter;
|
|
|
|
|
|
|
|
gtk_list_store_clear(widgets->LanguagesList);
|
|
|
|
|
|
|
|
parsed = yon_file_open(languages_path,&size);
|
|
|
|
|
|
|
|
for (int i=0;i<size;i++){
|
|
|
|
|
|
|
|
int cur_size;
|
|
|
|
|
|
|
|
yon_char_remove_last_symbol(parsed[i],'\n')
|
|
|
|
|
|
|
|
config_str cur = yon_char_parse(parsed[i],&cur_size,";");
|
|
|
|
|
|
|
|
if (cur_size){
|
|
|
|
|
|
|
|
gtk_list_store_append(widgets->LanguagesList,&iter);
|
|
|
|
|
|
|
|
gtk_list_store_set(widgets->LanguagesList,&iter,0,0,1,_(cur[1]),2,cur[0],-1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// yon_char_parsed_free(cur,cur_size);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
if (lang)
|
|
|
|
|
|
|
|
// yon_char_parsed_free(lang,langsize);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
parsed = yon_dir_get_contents(zone_path,&size);
|
|
|
|
|
|
|
|
for (int i=0;i<size;i++){
|
|
|
|
|
|
|
|
if (!strstr(parsed[i],".")&&strcmp(parsed[i],"posix")&&strcmp(parsed[i],"right")){
|
|
|
|
|
|
|
|
char *path = yon_char_append(zone_path,parsed[i]);
|
|
|
|
|
|
|
|
if (yon_file_is_directory(path)){
|
|
|
|
|
|
|
|
gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(widgets->RegionCombo),parsed[i],_(parsed[i]));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// free(path);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->RegionCombo),0);
|
|
|
|
|
|
|
|
// yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
parsed = yon_config_load(get_layouts_command,&size);
|
|
|
|
|
|
|
|
GtkTreeIter itar;
|
|
|
|
|
|
|
|
for (int i=0;i<size;i++){
|
|
|
|
|
|
|
|
yon_char_remove_last_symbol(parsed[i],'\n');
|
|
|
|
|
|
|
|
int layout_size;
|
|
|
|
|
|
|
|
config_str layout = yon_char_parse(parsed[i],&layout_size,"|");
|
|
|
|
|
|
|
|
if (layout_size){
|
|
|
|
|
|
|
|
char *layout_id = yon_char_new(layout[0]);
|
|
|
|
|
|
|
|
gtk_tree_store_append(widgets->LayoutList,&iter,NULL);
|
|
|
|
|
|
|
|
gtk_tree_store_set(widgets->LayoutList,&iter,0,layout[0],1,_(layout[1]),2,1,-1);
|
|
|
|
|
|
|
|
// yon_char_parsed_free(layout,layout_size);
|
|
|
|
|
|
|
|
char *command = get_layouts_local_command(layout_id);
|
|
|
|
|
|
|
|
config_str layout_local = yon_config_load(command,&layout_size);
|
|
|
|
|
|
|
|
// free(command);
|
|
|
|
|
|
|
|
// free(layout_id);
|
|
|
|
|
|
|
|
for (int j=0;j<layout_size;j++){
|
|
|
|
|
|
|
|
yon_char_remove_last_symbol(layout_local[j],'\n');
|
|
|
|
|
|
|
|
int parsed_size;
|
|
|
|
|
|
|
|
config_str layouts_parsed = yon_char_parse(layout_local[j],&parsed_size,"|");
|
|
|
|
|
|
|
|
if (parsed_size){
|
|
|
|
|
|
|
|
gtk_tree_store_append(widgets->LayoutList,&itar,&iter);
|
|
|
|
|
|
|
|
gtk_tree_store_set(widgets->LayoutList,&itar,0,layouts_parsed[0],1,_(layouts_parsed[1]),2,1,3,0,-1);
|
|
|
|
|
|
|
|
// yon_char_parsed_free(layouts_parsed,parsed_size);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
if (layout_size==-1) {
|
|
|
|
|
|
|
|
gtk_tree_store_set(widgets->LayoutList,&iter,2,1,-1);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// yon_char_parsed_free(layout_local,layout_size);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
// yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
parsed = yon_config_load(get_devices_command,&size);
|
|
|
|
|
|
|
|
char *string = yon_char_parsed_to_string(parsed,size,"");
|
|
|
|
|
|
|
|
struct json_object *root;
|
|
|
|
|
|
|
|
struct json_object *blockdevices;
|
|
|
|
|
|
|
|
root = json_tokener_parse(string);
|
|
|
|
|
|
|
|
// free(string);
|
|
|
|
|
|
|
|
json_object_object_get_ex(root, "blockdevices", &blockdevices);
|
|
|
|
|
|
|
|
for (long unsigned int i = 0; i < json_object_array_length(blockdevices); i++) {
|
|
|
|
|
|
|
|
struct json_object *device = json_object_array_get_idx(blockdevices, i);
|
|
|
|
|
|
|
|
struct json_object *path, *size, *model, *vendor, *serial;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
json_object_object_get_ex(device, "path", &path);
|
|
|
|
|
|
|
|
json_object_object_get_ex(device, "size", &size);
|
|
|
|
|
|
|
|
json_object_object_get_ex(device, "model", &model);
|
|
|
|
|
|
|
|
json_object_object_get_ex(device, "vendor", &vendor);
|
|
|
|
|
|
|
|
json_object_object_get_ex(device, "serial", &serial);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
gtk_list_store_append(widgets->DevicesList,&iter);
|
|
|
|
|
|
|
|
gtk_list_store_set(widgets->DevicesList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
// config_str slides = yon_char_parsed_new(&size,slide_repeat_path);
|
|
|
|
// yon_char_parsed_free(parsed,size);
|
|
|
|
// widgets->regions_original = gdk_pixbuf_new_from_resource(regions_path,NULL);
|
|
|
|
}
|
|
|
|
// widgets->keyboard_original = gdk_pixbuf_new_from_resource(keyboard_path,NULL);
|
|
|
|
|
|
|
|
// widgets->slides_original = malloc(sizeof(GdkPixbuf*)*size);
|
|
|
|
|
|
|
|
// widgets->slides_original[0] = gdk_pixbuf_new_from_resource(slide_0_path,NULL);
|
|
|
|
|
|
|
|
// for (int i=1;i<size;i++){
|
|
|
|
|
|
|
|
// widgets->slides_original[i] = gdk_pixbuf_new_from_resource(slides[i-1],NULL);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(slides,size);
|
|
|
|
|
|
|
|
// int width = gdk_pixbuf_get_width(widgets->regions_original);
|
|
|
|
|
|
|
|
// int height = gdk_pixbuf_get_height(widgets->regions_original);
|
|
|
|
|
|
|
|
// widgets->region_height_mult = (float)height/width;
|
|
|
|
|
|
|
|
// GdkPixbuf *pix = gdk_pixbuf_scale_simple(widgets->regions_original,600,400,GDK_INTERP_BILINEAR);
|
|
|
|
|
|
|
|
// gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->RegionImage),pix);
|
|
|
|
|
|
|
|
// g_object_unref(pix);
|
|
|
|
|
|
|
|
// pix = gdk_pixbuf_scale_simple(widgets->keyboard_original,600,400,GDK_INTERP_BILINEAR);
|
|
|
|
|
|
|
|
// gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->KeyboardImage),pix);
|
|
|
|
|
|
|
|
// g_object_unref(pix);
|
|
|
|
|
|
|
|
// pix = gdk_pixbuf_scale_simple(widgets->slides_original[0],600,400,GDK_INTERP_BILINEAR);
|
|
|
|
|
|
|
|
// gtk_image_set_from_pixbuf(GTK_IMAGE(widgets->SlidesImage),pix);
|
|
|
|
|
|
|
|
// g_object_unref(pix);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// int langsize;
|
|
|
|
|
|
|
|
// config_str lang = default_langs(&langsize);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// GtkTreeIter iter;
|
|
|
|
|
|
|
|
// gtk_list_store_clear(widgets->LanguagesList);
|
|
|
|
|
|
|
|
// parsed = yon_file_open(languages_path,&size);
|
|
|
|
|
|
|
|
// for (int i=0;i<size;i++){
|
|
|
|
|
|
|
|
// int cur_size;
|
|
|
|
|
|
|
|
// yon_char_remove_last_symbol(parsed[i],'\n')
|
|
|
|
|
|
|
|
// config_str cur = yon_char_parse(parsed[i],&cur_size,";");
|
|
|
|
|
|
|
|
// if (cur_size){
|
|
|
|
|
|
|
|
// gtk_list_store_append(widgets->LanguagesList,&iter);
|
|
|
|
|
|
|
|
// gtk_list_store_set(widgets->LanguagesList,&iter,0,0,1,_(cur[1]),2,cur[0],-1);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(cur,cur_size);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
// if (lang)
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(lang,langsize);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// parsed = yon_dir_get_contents(zone_path,&size);
|
|
|
|
|
|
|
|
// for (int i=0;i<size;i++){
|
|
|
|
|
|
|
|
// if (!strstr(parsed[i],".")&&strcmp(parsed[i],"posix")&&strcmp(parsed[i],"right")){
|
|
|
|
|
|
|
|
// char *path = yon_char_append(zone_path,parsed[i]);
|
|
|
|
|
|
|
|
// if (yon_file_is_directory(path)){
|
|
|
|
|
|
|
|
// gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(widgets->RegionCombo),parsed[i],_(parsed[i]));
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // free(path);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->RegionCombo),0);
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
// parsed = yon_config_load(get_layouts_command,&size);
|
|
|
|
|
|
|
|
// GtkTreeIter itar;
|
|
|
|
|
|
|
|
// for (int i=0;i<size;i++){
|
|
|
|
|
|
|
|
// yon_char_remove_last_symbol(parsed[i],'\n');
|
|
|
|
|
|
|
|
// int layout_size;
|
|
|
|
|
|
|
|
// config_str layout = yon_char_parse(parsed[i],&layout_size,"|");
|
|
|
|
|
|
|
|
// if (layout_size){
|
|
|
|
|
|
|
|
// char *layout_id = yon_char_new(layout[0]);
|
|
|
|
|
|
|
|
// gtk_tree_store_append(widgets->LayoutList,&iter,NULL);
|
|
|
|
|
|
|
|
// gtk_tree_store_set(widgets->LayoutList,&iter,0,layout[0],1,_(layout[1]),2,1,-1);
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(layout,layout_size);
|
|
|
|
|
|
|
|
// char *command = get_layouts_local_command(layout_id);
|
|
|
|
|
|
|
|
// config_str layout_local = yon_config_load(command,&layout_size);
|
|
|
|
|
|
|
|
// // free(command);
|
|
|
|
|
|
|
|
// // free(layout_id);
|
|
|
|
|
|
|
|
// for (int j=0;j<layout_size;j++){
|
|
|
|
|
|
|
|
// yon_char_remove_last_symbol(layout_local[j],'\n');
|
|
|
|
|
|
|
|
// int parsed_size;
|
|
|
|
|
|
|
|
// config_str layouts_parsed = yon_char_parse(layout_local[j],&parsed_size,"|");
|
|
|
|
|
|
|
|
// if (parsed_size){
|
|
|
|
|
|
|
|
// gtk_tree_store_append(widgets->LayoutList,&itar,&iter);
|
|
|
|
|
|
|
|
// gtk_tree_store_set(widgets->LayoutList,&itar,0,layouts_parsed[0],1,_(layouts_parsed[1]),2,1,3,0,-1);
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(layouts_parsed,parsed_size);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// if (layout_size==-1) {
|
|
|
|
|
|
|
|
// gtk_tree_store_set(widgets->LayoutList,&iter,2,1,-1);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(layout_local,layout_size);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
// {
|
|
|
|
|
|
|
|
// parsed = yon_config_load(get_devices_command,&size);
|
|
|
|
|
|
|
|
// char *string = yon_char_parsed_to_string(parsed,size,"");
|
|
|
|
|
|
|
|
// struct json_object *root;
|
|
|
|
|
|
|
|
// struct json_object *blockdevices;
|
|
|
|
|
|
|
|
// root = json_tokener_parse(string);
|
|
|
|
|
|
|
|
// // free(string);
|
|
|
|
|
|
|
|
// json_object_object_get_ex(root, "blockdevices", &blockdevices);
|
|
|
|
|
|
|
|
// for (long unsigned int i = 0; i < json_object_array_length(blockdevices); i++) {
|
|
|
|
|
|
|
|
// struct json_object *device = json_object_array_get_idx(blockdevices, i);
|
|
|
|
|
|
|
|
// struct json_object *path, *size, *model, *vendor, *serial;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// json_object_object_get_ex(device, "path", &path);
|
|
|
|
|
|
|
|
// json_object_object_get_ex(device, "size", &size);
|
|
|
|
|
|
|
|
// json_object_object_get_ex(device, "model", &model);
|
|
|
|
|
|
|
|
// json_object_object_get_ex(device, "vendor", &vendor);
|
|
|
|
|
|
|
|
// json_object_object_get_ex(device, "serial", &serial);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// gtk_list_store_append(widgets->DevicesList,&iter);
|
|
|
|
|
|
|
|
// gtk_list_store_set(widgets->DevicesList,&iter,0,json_object_get_string(path),1,json_object_get_string(model),2,json_object_get_string(serial),3,json_object_get_string(size),4,json_object_get_string(vendor),-1);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
// // yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
|
|
parsed = yon_resource_open_file(additional_software_path,&size);
|
|
|
|
// parsed = yon_resource_open_file(additional_software_path,&size);
|
|
|
|
for (int i=1;i<size;i++){
|
|
|
|
// for (int i=1;i<size;i++){
|
|
|
|
int module_size;
|
|
|
|
// int module_size;
|
|
|
|
config_str module_parsed = yon_char_parse(parsed[i],&module_size,"|");
|
|
|
|
// config_str module_parsed = yon_char_parse(parsed[i],&module_size,"|");
|
|
|
|
if (module_size){
|
|
|
|
// if (module_size){
|
|
|
|
gtk_list_store_append(widgets->AdditionalSoftwareList,&iter);
|
|
|
|
// gtk_list_store_append(widgets->AdditionalSoftwareList,&iter);
|
|
|
|
gtk_list_store_set(widgets->AdditionalSoftwareList,&iter,0,1,1,module_parsed[0],3,module_parsed[1],-1); //2,module_parsed[2]
|
|
|
|
// gtk_list_store_set(widgets->AdditionalSoftwareList,&iter,0,1,1,module_parsed[0],3,module_parsed[1],-1); //2,module_parsed[2]
|
|
|
|
// yon_char_parsed_free(module_parsed,module_size);
|
|
|
|
// // yon_char_parsed_free(module_parsed,module_size);
|
|
|
|
}
|
|
|
|
// }
|
|
|
|
}
|
|
|
|
// }
|
|
|
|
// if (size) yon_char_parsed_free(parsed,size);
|
|
|
|
// // if (size) yon_char_parsed_free(parsed,size);
|
|
|
|
|
|
|
|
|
|
|
|
config_str models = yon_config_load(get_models_command,&size);
|
|
|
|
// config_str models = yon_config_load(get_models_command,&size);
|
|
|
|
for (int i=0;i<size;i+=2){
|
|
|
|
// for (int i=0;i<size;i+=2){
|
|
|
|
models[i] = yon_char_divide_search(models[i],"\n",-1);
|
|
|
|
// models[i] = yon_char_divide_search(models[i],"\n",-1);
|
|
|
|
models[i+1] = yon_char_divide_search(models[i+1],"\n",-1);
|
|
|
|
// models[i+1] = yon_char_divide_search(models[i+1],"\n",-1);
|
|
|
|
gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(widgets->KeyboardModelCombo),models[i],_(models[i+1]));
|
|
|
|
// gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(widgets->KeyboardModelCombo),models[i],_(models[i+1]));
|
|
|
|
}
|
|
|
|
// }
|
|
|
|
// if (size) yon_char_parsed_free(models,size);
|
|
|
|
// if (size) yon_char_parsed_free(models,size);
|
|
|
|
gtk_builder_connect_signals(builder,NULL);
|
|
|
|
gtk_builder_connect_signals(builder,NULL);
|
|
|
|
// yon_load_proceed(YON_CONFIG_DEFAULT);
|
|
|
|
// yon_load_proceed(YON_CONFIG_DEFAULT);
|
|
|
|
|