Fixes; Added new console settings

pull/17/head
parent c64175be2d
commit 6183fafafc
No known key found for this signature in database
GPG Key ID: FF1D842BF4DDE92B

@ -2,35 +2,8 @@
void on_layouts_accept(GtkWidget *self, layouts_window *window){
main_window *widgets = g_object_get_data(G_OBJECT(window->Window),"widgets");
gtk_list_store_clear(widgets->LayoutsList);
GtkTreeModel *model = GTK_TREE_MODEL(window->list);
GtkTreeIter window_iter;
char *save_string = NULL;
for_iter(window->list,&window_iter){
char *id, *variant, *name;
int status;
gtk_tree_model_get(model,&window_iter,0,&id,2,&name,3,&status,-1);
if (status){
char *temp = yon_char_append_element(save_string,id,",");
if (!yon_char_is_empty(save_string)) free(save_string);
save_string = temp;
}
GtkTreeIter child_iter;
if (gtk_tree_model_iter_children(model,&child_iter,&window_iter)){
for (int valid2=1;valid2;valid2=gtk_tree_model_iter_next(model,&child_iter)){
gtk_tree_model_get(model,&child_iter,0,&id,1,&variant,2,&name,3,&status,-1);
if (status){
char *full_id = yon_char_unite(id,"_",variant,NULL);
char *temp = yon_char_append_element(save_string,full_id,",");
if (!yon_char_is_empty(save_string)) free(save_string);
save_string = temp;
free(full_id);
}
}
}
}
if (!yon_char_is_empty(save_string)){
yon_config_register(keyboard_layout_parameter,keyboard_layout_parameter_command,save_string);
if (!yon_char_is_empty(window->parameters)){
yon_config_register(keyboard_layout_parameter,keyboard_layout_parameter_command,window->parameters);
} else {
yon_config_remove_by_key(keyboard_layout_parameter);
}
@ -42,8 +15,27 @@ void on_layouts_chosen(GtkCellRenderer *, gchar *path, layouts_window *window){
GtkTreeIter iter;
gtk_tree_model_get_iter_from_string(GTK_TREE_MODEL(window->list),&iter,path);
int chosen;
gtk_tree_model_get(GTK_TREE_MODEL(window->list),&iter,3,&chosen,-1);
char *layout, *variant;
gtk_tree_model_get(GTK_TREE_MODEL(window->list),&iter,0,&layout,1,&variant,3,&chosen,-1);
gtk_tree_store_set(GTK_TREE_STORE(window->list),&iter,3,!chosen,-1);
char *full_layout = NULL;
if (!yon_char_is_empty(variant)){
yon_char_unite(layout,"_",variant,NULL);
} else {
full_layout = layout;
}
if (!chosen){
char *temp = yon_char_append_element(window->parameters,full_layout,",");
free(window->parameters);
window->parameters = temp;
} else {
char *temp = yon_char_remove_element(window->parameters,full_layout,",");
free(window->parameters);
window->parameters = temp;
}
free(full_layout);
}
void on_system_layouts_add(GtkWidget *, main_window *widgets){
@ -59,6 +51,7 @@ layouts_window *yon_layouts_window_new(){
window->CancelButton = yon_gtk_builder_get_widget(builder,"CancelButton");
window->ChosenCell = GTK_CELL_RENDERER(gtk_builder_get_object(builder,"ChosenCell"));
window->MainTree = yon_gtk_builder_get_widget(builder,"LayoutsTree");
window->parameters = yon_char_new(config(keyboard_layout_parameter));
g_signal_connect(G_OBJECT(window->CancelButton),"clicked",G_CALLBACK(on_subwindow_close),NULL);
g_signal_connect(G_OBJECT(window->ChosenCell),"toggled",G_CALLBACK(on_layouts_chosen),window);
@ -183,7 +176,7 @@ void yon_layout_build(layouts_window *window){
yon_char_parsed_free(variants,variants_size);
}
yon_char_parsed_free(layouts,size);
yon_char_parsed_free(layouts,size);
}

@ -76,7 +76,7 @@ void yon_options_setup(layouts_window *window){
int parsed_size;
config_str parsed = yon_char_parse(options[i],&parsed_size,"|");
gtk_list_store_append(window->OptionsList,&iter);
gtk_list_store_set(window->OptionsList,&iter,0,parsed[0],1,parsed[1],2,yon_char_check_element(config_options,parsed[0],","),-1);
gtk_list_store_set(window->OptionsList,&iter,0,parsed[0],1,_(parsed[1]),2,yon_char_check_element(config_options,parsed[0],","),-1);
char *str = yon_char_new(parsed[0]);
char *type = yon_char_divide_search(str,":",-1);
if (yon_char_parsed_check_exist(filter,filter_size,type)==-1){
@ -98,31 +98,14 @@ void on_options_filter_changed(GtkWidget *, layouts_window *window){
void on_options_accept(GtkWidget *self, layouts_window *window){
main_window *widgets = g_object_get_data(G_OBJECT(window->Window),"widgets");
// char *main_option = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->LayoutChangingCombo));
char *options = (char*)gtk_entry_get_text(GTK_ENTRY(window->OptionsEntry));
if (!yon_char_is_empty(options)){
// char *full_options = yon_char_unite(!yon_char_is_empty(main_option)?main_option:"",",",options,NULL);
yon_config_register(options_parameter,options_parameter_command,options);
// free(full_options);
// } else if (!yon_char_is_empty(main_option)){
// yon_config_register(options_parameter,options_parameter_command,main_option);
} else {
yon_config_remove_by_key(options_parameter);
}
// GtkTreeModel *model = GTK_TREE_MODEL(window->OptionsList);
// GtkTreeIter iter, itar;
// char *name, *id;
// int status;
// for_iter(model,&iter){
// gtk_tree_model_get(model,&iter,0,&id,1,&name,2,&status,-1);
// if (status){
// gtk_list_store_append(widgets->OptionsList,&itar);
// gtk_list_store_set(widgets->OptionsList,&itar,0,id,1,_(name),-1);
// }
// }
on_subwindow_close(self);
yon_interface_update(widgets);
// on_options_save(NULL, widgets);
}
void on_options_save(GtkWidget *,main_window *widgets){
@ -173,7 +156,6 @@ layouts_window *yon_options_window_new(){
void on_options_open(GtkWidget *, main_window *widgets){
layouts_window *window = yon_options_window_new();
// window->list = main_config.options_list;
g_object_set_data(G_OBJECT(window->Window),"widgets",widgets);
g_signal_connect(G_OBJECT(window->AcceptButton),"clicked",G_CALLBACK(on_options_accept),window);
}

@ -12,7 +12,6 @@ gboolean yon_interface_update(main_window *widgets){
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->KeyboardModelCombo),0);
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->NumLockCombo),0);
// gtk_entry_set_text(GTK_ENTRY(widgets->SystemKeyboardOptionsCombo),DEFAULT_LABEL);
{
char *kbmodel = yon_config_get_by_key(model_parameter);
if (kbmodel) {
@ -52,6 +51,18 @@ gboolean yon_interface_update(main_window *widgets){
} else {
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->TTYLayoutCombo),0);
}
char *tty_keymap_change = config(console_keymap_toggle_parameter);
if (!yon_char_is_empty(tty_keymap_change)){
gtk_combo_box_set_active_id(GTK_COMBO_BOX(widgets->TTYKeymapCombo),tty_keymap_change);
} else {
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->TTYKeymapCombo),0);
}
char *tty_font = config(console_font_parameter);
if (!yon_char_is_empty(tty_font)){
gtk_combo_box_set_active_id(GTK_COMBO_BOX(widgets->TTYFontCombo),tty_font);
} else {
gtk_combo_box_set_active(GTK_COMBO_BOX(widgets->TTYFontCombo),0);
}
}
{
gtk_list_store_clear(widgets->OptionsList);
@ -215,6 +226,24 @@ void on_tty_changed(GtkWidget *, main_window *widgets){
}
}
void on_tty_keymap_changed(GtkWidget *, main_window *widgets){
char *tty_layout = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->TTYKeymapCombo));
if (!yon_char_is_empty(tty_layout)){
yon_config_register(console_keymap_toggle_parameter,console_keymap_toggle_parameter_command,tty_layout);
} else {
yon_config_remove_by_key(console_keymap_toggle_parameter);
}
}
void on_tty_font_changed(GtkWidget *, main_window *widgets){
char *tty_layout = (char*)gtk_combo_box_get_active_id(GTK_COMBO_BOX(widgets->TTYFontCombo));
if (!yon_char_is_empty(tty_layout)){
yon_config_register(console_font_parameter,console_font_parameter_command,tty_layout);
} else {
yon_config_remove_by_key(console_font_parameter);
}
}
void yon_main_window_complete(main_window *widgets){
widgets = yon_remalloc(widgets,sizeof(main_window));
GtkBuilder *builder = gtk_builder_new_from_resource(glade_path);
@ -237,6 +266,8 @@ void yon_main_window_complete(main_window *widgets){
widgets->ScrollLockSwitch = yon_gtk_builder_get_widget(builder,"ScrollLockSwitch");
widgets->NumLockCombo = yon_gtk_builder_get_widget(builder,"NumLockCombo");
widgets->TTYLayoutCombo = yon_gtk_builder_get_widget(builder,"TTYLayoutCombo");
widgets->TTYKeymapCombo = yon_gtk_builder_get_widget(builder,"TTYKeymapCombo");
widgets->TTYFontCombo = yon_gtk_builder_get_widget(builder,"TTYFontCombo");
widgets->LayoutsList = GTK_LIST_STORE(gtk_builder_get_object(builder,"LayoutsList"));
widgets->OptionsList = GTK_LIST_STORE(gtk_builder_get_object(builder,"OptionsList"));
@ -248,6 +279,8 @@ void yon_main_window_complete(main_window *widgets){
g_signal_connect(G_OBJECT(widgets->LayoutAddButton),"clicked",G_CALLBACK(on_system_layouts_add),widgets);
g_signal_connect(G_OBJECT(widgets->LayoutRemoveButton),"clicked",G_CALLBACK(on_system_layouts_remove),widgets);
g_signal_connect(G_OBJECT(widgets->TTYLayoutCombo),"changed",G_CALLBACK(on_tty_changed),widgets);
g_signal_connect(G_OBJECT(widgets->TTYKeymapCombo),"changed",G_CALLBACK(on_tty_keymap_changed),widgets);
g_signal_connect(G_OBJECT(widgets->TTYFontCombo),"changed",G_CALLBACK(on_tty_font_changed),widgets);
g_signal_connect(G_OBJECT(widgets->KeyboardModelCombo),"changed",G_CALLBACK(on_model_changed),widgets);
g_signal_connect(G_OBJECT(widgets->OptionsEditButton),"clicked",G_CALLBACK(on_options_open),widgets);
g_signal_connect(G_OBJECT(widgets->OptionsRemoveButton),"clicked",G_CALLBACK(on_option_remove),widgets);
@ -302,6 +335,13 @@ void yon_main_window_complete(main_window *widgets){
}
yon_char_parsed_free(models,size);
{
config_str parsed = yon_config_load(tty_keymaps_command,&size);
for (int i=0;i<size;i++){
yon_char_remove_last_symbol(parsed[i],'\n');
gtk_combo_box_text_append(GTK_COMBO_BOX_TEXT(widgets->TTYKeymapCombo),parsed[i],parsed[i]);
}
}
yon_root_button_setup((template_main_window*)widgets,main_config.launch_arguments,main_config.launch_size);
yon_save_window_set_postsave_function(on_save_done,widgets);
gtk_tree_view_column_clicked(GTK_TREE_VIEW_COLUMN(gtk_tree_view_get_column(GTK_TREE_VIEW(widgets->LayoutTree),0)));

@ -38,6 +38,10 @@
#define num_lock_boot_parameter_command "ubconfig --source global get keyboard NUMLOCK"
#define console_keymap_parameter "CONSOLE_KEYMAP"
#define console_keymap_parameter_command "ubconfig --source global get keyboard CONSOLE_KEYMAP"
#define console_keymap_toggle_parameter "CONSOLE_KEYMAP_TOGGLE"
#define console_keymap_toggle_parameter_command "ubconfig --source global get keyboard CONSOLE_KEYMAP_TOGGLE"
#define console_font_parameter "CONSOLE_FONT"
#define console_font_parameter_command "ubconfig --source global get keyboard CONSOLE_FONT"
#define yon_config_get_custom_command(target) yon_char_unite("ubconfig --source ",target," get keyboard XKBMODEL XKBLAYOUT XKBOPTIONS NUMLOCK",NULL)
#define config_get_local_command "ubconfig --source system get keyboard XKBMODEL XKBLAYOUT XKBOPTIONS NUMLOCK"
@ -115,6 +119,8 @@
// terminate : Key sequence to kill the X server
#define terminate_options_command "sed -En '/^! option$/,/^ *$/!d;s/[[:blank:]]+(terminate:[^ ]+)[[:blank:]]+(.*)/\\1|\\2/p' /usr/share/X11/xkb/rules/evdev.lst"
#define tty_keymaps_command "find /usr/share/kbd/keymaps/ -type f -name \"*.map.*\" | sed -E \"s:.*/(.*)\\..*\\..*:\\1:g\" | sort -u"
typedef char* string;
__attribute__((unused)) static \
@ -155,6 +161,8 @@ typedef struct {
GtkWidget *ScrollLockSwitch;
GtkWidget *NumLockCombo;
GtkWidget *TTYLayoutCombo;
GtkWidget *TTYKeymapCombo;
GtkWidget *TTYFontCombo;
GtkListStore *LayoutsList;
GtkListStore *OptionsList;
} main_window;
@ -183,6 +191,7 @@ typedef struct {
GtkTreeStore *list;
GtkListStore *OptionsList;
GtkTreeModel *OptionsFilter;
char *parameters;
} layouts_window;
typedef struct {
@ -242,3 +251,5 @@ void on_layout_move_up(GtkWidget *, main_window *widgets);
void on_layout_dnd_inserted(GtkTreeModel *, GtkTreePath* path, GtkTreeIter* iter, main_window *widgets);
void on_layout_dnd_deleted(GtkTreeModel *, GtkTreePath* path, GtkTreeIter* iter, main_window *widgets);
void on_tty_changed(GtkWidget *, main_window *widgets);
void on_tty_keymap_changed(GtkWidget *, main_window *widgets);
void on_tty_font_changed(GtkWidget *, main_window *widgets);

@ -5,114 +5,54 @@
<object class="GtkImage" id="image1">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="icon-name">emblem-ok-symbolic</property>
<property name="icon-name">com.ublinux.libublsettingsui-gtk3.accept-symbolic</property>
</object>
<object class="GtkImage" id="image2">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="icon-name">process-stop-symbolic</property>
<property name="icon-name">com.ublinux.libublsettingsui-gtk3.cancel-uncolored-symbolic</property>
</object>
<object class="GtkDialog" id="Window">
<object class="GtkWindow" id="Window">
<property name="width-request">450</property>
<property name="height-request">550</property>
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="type-hint">dialog</property>
<child internal-child="vbox">
<object class="GtkBox">
<property name="can-focus">False</property>
<property name="margin-start">3</property>
<property name="margin-end">3</property>
<property name="margin-top">3</property>
<property name="margin-bottom">3</property>
<property name="orientation">vertical</property>
<property name="spacing">5</property>
<child internal-child="action_area">
<object class="GtkButtonBox">
<property name="can-focus">False</property>
<property name="layout-style">end</property>
<child>
<object class="GtkButton" id="CancelButton">
<property name="label" translatable="yes">Cancel</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image2</property>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkButton" id="AcceptButton">
<property name="label" translatable="yes">Accept</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image1</property>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">False</property>
<property name="position">0</property>
</packing>
</child>
<property name="icon-name">com.ublinux.ubl-settings-keyboard</property>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="shadow-type">in</property>
<child>
<object class="GtkScrolledWindow">
<object class="GtkTreeView" id="LayoutsTree">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="shadow-type">in</property>
<property name="headers-visible">False</property>
<property name="search-column">1</property>
<child>
<object class="GtkTreeView" id="LayoutsTree">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="headers-visible">False</property>
<property name="search-column">1</property>
<child internal-child="selection">
<object class="GtkTreeSelection">
<property name="mode">none</property>
</object>
</child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">column</property>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">column</property>
<child>
<object class="GtkCellRendererToggle" id="ChosenCell"/>
<attributes>
<attribute name="active">3</attribute>
</attributes>
</child>
</object>
<object class="GtkCellRendererToggle" id="ChosenCell"/>
<attributes>
<attribute name="active">3</attribute>
</attributes>
</child>
</object>
</child>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">column</property>
<property name="sort-column-id">0</property>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">column</property>
<property name="sort-column-id">0</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">2</attribute>
</attributes>
</child>
</object>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">2</attribute>
</attributes>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
@ -120,7 +60,6 @@
<object class="GtkHeaderBar" id="headerBar">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="show-close-button">True</property>
<child type="title">
<object class="GtkLabel" id="headerTopic">
<property name="visible">True</property>
@ -150,6 +89,31 @@
<property name="icon-name">com.ublinux.ubl-settings-keyboard</property>
</object>
</child>
<child>
<object class="GtkButton" id="CancelButton">
<property name="label" translatable="yes">Cancel</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image2</property>
</object>
<packing>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkButton" id="AcceptButton">
<property name="label" translatable="yes">Accept</property>
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image1</property>
</object>
<packing>
<property name="pack-type">end</property>
<property name="position">2</property>
</packing>
</child>
<style>
<class name="toolbar"/>
</style>

@ -43,6 +43,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<column type="gchararray"/>
</columns>
</object>
<object class="GtkSizeGroup"/>
<object class="GtkImage" id="image1">
<property name="visible">True</property>
<property name="can-focus">False</property>
@ -162,20 +163,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="spacing">5</property>
<child>
<object class="GtkLabel" id="label7">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="valign">start</property>
<property name="label" translatable="yes">Layouts:</property>
<property name="xalign">1</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
@ -187,6 +174,19 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="spacing">10</property>
<child>
<object class="GtkLabel" id="label7">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Layouts:</property>
<property name="xalign">1</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkSwitch" id="DefaultLayoutsSwitch">
<property name="visible">True</property>
@ -196,7 +196,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
<property name="position">1</property>
</packing>
</child>
<child>
@ -208,7 +208,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
<property name="position">2</property>
</packing>
</child>
</object>
@ -295,6 +295,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<property name="sensitive">False</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Move layout up</property>
<property name="image">image4</property>
<style>
<class name="thin"/>
@ -312,6 +313,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<property name="sensitive">False</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Move layout down</property>
<property name="image">image5</property>
<style>
<class name="thin"/>
@ -329,6 +331,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<property name="sensitive">False</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Add layout</property>
<property name="image">image2</property>
<style>
<class name="thin"/>
@ -346,6 +349,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<property name="sensitive">False</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Remove layout</property>
<property name="image">image6</property>
<style>
<class name="thin"/>
@ -437,7 +441,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Additional options:</property>
<property name="xalign">1</property>
<property name="xalign">0</property>
</object>
<packing>
<property name="expand">False</property>
@ -445,103 +449,112 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<property name="position">0</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="shadow-type">in</property>
<property name="min-content-height">100</property>
<property name="max-content-height">150</property>
<child>
<object class="GtkTreeView" id="OptionsTree">
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="model">OptionsList</property>
<property name="enable-grid-lines">both</property>
<child internal-child="selection">
<object class="GtkTreeSelection"/>
</child>
<property name="can-focus">False</property>
<property name="spacing">5</property>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Name</property>
<object class="GtkScrolledWindow">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="shadow-type">in</property>
<property name="min-content-height">100</property>
<property name="max-content-height">150</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">0</attribute>
</attributes>
<object class="GtkTreeView" id="OptionsTree">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="model">OptionsList</property>
<property name="enable-grid-lines">both</property>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Name</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">0</attribute>
</attributes>
</child>
</object>
</child>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Description</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">1</attribute>
</attributes>
</child>
</object>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkTreeViewColumn">
<property name="title" translatable="yes">Description</property>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<property name="spacing">5</property>
<child>
<object class="GtkButton" id="OptionsEditButton">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image1</property>
<style>
<class name="thin"/>
</style>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">1</attribute>
</attributes>
<object class="GtkButton" id="OptionsRemoveButton">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image3</property>
<style>
<class name="thin"/>
</style>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<property name="spacing">5</property>
<child>
<object class="GtkButton" id="OptionsEditButton">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image1</property>
<style>
<class name="thin"/>
</style>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkButton" id="OptionsRemoveButton">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="receives-default">True</property>
<property name="image">image3</property>
<style>
<class name="thin"/>
</style>
</object>
<packing>
<property name="expand">False</property>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">2</property>
<property name="position">0</property>
</packing>
</child>
</object>
@ -736,13 +749,46 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="orientation">vertical</property>
<property name="spacing">5</property>
<child>
<object class="GtkLabel" id="label1">
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Secondary layout:</property>
<property name="xalign">1</property>
<property name="spacing">5</property>
<child>
<object class="GtkLabel" id="label1">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Secondary layout:</property>
<property name="xalign">1</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkComboBox" id="TTYLayoutCombo">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="model">LayoutsList</property>
<property name="active">0</property>
<property name="id-column">0</property>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">2</attribute>
</attributes>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
@ -751,25 +797,85 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
</packing>
</child>
<child>
<object class="GtkComboBox" id="TTYLayoutCombo">
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="model">LayoutsList</property>
<property name="active">0</property>
<property name="id-column">0</property>
<property name="spacing">5</property>
<child>
<object class="GtkLabel" id="label3">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Keymap and layout change:</property>
<property name="xalign">1</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkCellRendererText"/>
<attributes>
<attribute name="text">2</attribute>
</attributes>
<object class="GtkComboBoxText" id="TTYKeymapCombo">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="active">0</property>
<items>
<item translatable="yes">Default</item>
</items>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">True</property>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
<child>
<object class="GtkBox">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="spacing">5</property>
<child>
<object class="GtkLabel" id="label9">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Font:</property>
<property name="xalign">1</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">0</property>
</packing>
</child>
<child>
<object class="GtkComboBoxText" id="TTYFontCombo">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="active">0</property>
<items>
<item translatable="yes">Default</item>
</items>
</object>
<packing>
<property name="expand">True</property>
<property name="fill">True</property>
<property name="position">1</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
</packing>
</child>
</object>
</child>
</object>
@ -778,7 +884,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
<object class="GtkLabel">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">TTY layout</property>
<property name="label" translatable="yes">Setting up TTY VT</property>
</object>
</child>
</object>
@ -800,17 +906,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
</packing>
</child>
</object>
<object class="GtkSizeGroup">
<widgets>
<widget name="label5"/>
<widget name="label7"/>
<widget name="label6"/>
<widget name="label4"/>
<widget name="label8"/>
<widget name="label2"/>
<widget name="label1"/>
</widgets>
</object>
<object class="GtkListStore" id="liststore1">
<columns>
<!-- column-name gchararray1 -->

Loading…
Cancel
Save