Added RMB menu on locales table

pull/93/head
parent 37e0871dc4
commit bf36e00579
No known key found for this signature in database
GPG Key ID: FF1D842BF4DDE92B

@ -176,7 +176,15 @@ void on_terminal_command_ended(VteTerminal *, gint status, domain_info_window *w
void on_language_default_toggled(GtkWidget *, int status, main_window *widgets){ void on_language_default_toggled(GtkWidget *, int status, main_window *widgets){
gtk_widget_set_sensitive(widgets->LocaleTree,!status); gtk_widget_set_sensitive(widgets->LocaleTree,!status);
gtk_widget_set_sensitive(widgets->LocaleAddButton,!status); gtk_widget_set_sensitive(widgets->LocaleAddButton,!status);
gtk_widget_set_sensitive(widgets->LocaleRemoveButton,!status); GtkTreeModel *model;
GtkTreeIter iter;
if (!status&&gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->LocaleTree)),&model,&iter)){
gtk_widget_set_sensitive(widgets->LocaleRemoveButton,1);
gtk_widget_set_sensitive(GTK_WIDGET(widgets->locale_menu->buttons->first->next->data),1);
} else {
gtk_widget_set_sensitive(widgets->LocaleRemoveButton,0);
gtk_widget_set_sensitive(GTK_WIDGET(widgets->locale_menu->buttons->first->next->data),0);
}
if (!status){ if (!status){
GtkTreeModel *model = GTK_TREE_MODEL(widgets->LanguageList); GtkTreeModel *model = GTK_TREE_MODEL(widgets->LanguageList);
GtkTreeIter iter; GtkTreeIter iter;
@ -199,6 +207,18 @@ void on_language_default_toggled(GtkWidget *, int status, main_window *widgets){
} }
} }
void on_locale_selection_changed(GtkWidget *,main_window *widgets){
GtkTreeModel *model;
GtkTreeIter iter;
if (gtk_tree_selection_get_selected(gtk_tree_view_get_selection(GTK_TREE_VIEW(widgets->LocaleTree)),&model,&iter)){
gtk_widget_set_sensitive(widgets->LocaleRemoveButton,1);
gtk_widget_set_sensitive(GTK_WIDGET(widgets->locale_menu->buttons->first->next->data),1);
} else {
gtk_widget_set_sensitive(widgets->LocaleRemoveButton,0);
gtk_widget_set_sensitive(GTK_WIDGET(widgets->locale_menu->buttons->first->next->data),0);
}
}
main_window *yon_main_window_complete(main_window *widgets){ main_window *yon_main_window_complete(main_window *widgets){
/* Widgets getting | Получение виджетов */ /* Widgets getting | Получение виджетов */
widgets = yon_remalloc(widgets,sizeof(main_window)); widgets = yon_remalloc(widgets,sizeof(main_window));
@ -229,6 +249,11 @@ main_window *yon_main_window_complete(main_window *widgets){
/* Signal connection | Присоединение сигналов */ /* Signal connection | Присоединение сигналов */
widgets->locale_menu = yon_rmb_menu_setup(widgets->LocaleTree,NULL,NULL,
ADD_LANGUAGE_TOOLTIP_LABEL,add_icon_path,G_CALLBACK(on_language_open),widgets,
REMOVE_LANGUAGE_LABEL,remove_icon_path,G_CALLBACK(on_language_remove),widgets,
NULL);
g_signal_connect(G_OBJECT(widgets->LoadGlobalMenuItem),"activate",G_CALLBACK(yon_config_global_load),widgets); g_signal_connect(G_OBJECT(widgets->LoadGlobalMenuItem),"activate",G_CALLBACK(yon_config_global_load),widgets);
g_signal_connect(G_OBJECT(widgets->LoadLocalMenuItem),"activate",G_CALLBACK(yon_config_local_load),widgets); g_signal_connect(G_OBJECT(widgets->LoadLocalMenuItem),"activate",G_CALLBACK(yon_config_local_load),widgets);
g_signal_connect(G_OBJECT(widgets->LoadCustomMenuItem),"activate",G_CALLBACK(yon_config_custom_load),widgets); g_signal_connect(G_OBJECT(widgets->LoadCustomMenuItem),"activate",G_CALLBACK(yon_config_custom_load),widgets);
@ -238,6 +263,8 @@ main_window *yon_main_window_complete(main_window *widgets){
g_signal_connect(G_OBJECT(widgets->SaveLocalMenuItem),"activate",G_CALLBACK(yon_config_local_save),widgets); g_signal_connect(G_OBJECT(widgets->SaveLocalMenuItem),"activate",G_CALLBACK(yon_config_local_save),widgets);
g_signal_connect(G_OBJECT(widgets->SaveCustomMenuItem),"activate",G_CALLBACK(yon_config_custom_save),widgets); g_signal_connect(G_OBJECT(widgets->SaveCustomMenuItem),"activate",G_CALLBACK(yon_config_custom_save),widgets);
g_signal_connect(G_OBJECT(widgets->LocaleTree),"cursor-changed",G_CALLBACK(on_locale_selection_changed),widgets);
g_signal_connect(G_OBJECT(widgets->HostnameEntry),"changed",G_CALLBACK(on_hostname_changed),widgets); g_signal_connect(G_OBJECT(widgets->HostnameEntry),"changed",G_CALLBACK(on_hostname_changed),widgets);
g_signal_connect(G_OBJECT(widgets->IDCombo),"changed",G_CALLBACK(on_id_combo_toggled),widgets); g_signal_connect(G_OBJECT(widgets->IDCombo),"changed",G_CALLBACK(on_id_combo_toggled),widgets);
g_signal_connect(G_OBJECT(widgets->IDEntry),"changed",G_CALLBACK(on_id_changed),widgets); g_signal_connect(G_OBJECT(widgets->IDEntry),"changed",G_CALLBACK(on_id_changed),widgets);
@ -255,6 +282,7 @@ main_window *yon_main_window_complete(main_window *widgets){
g_signal_connect(G_OBJECT(widgets->FindButton),"clicked",G_CALLBACK(on_find_domains_clicked),widgets); g_signal_connect(G_OBJECT(widgets->FindButton),"clicked",G_CALLBACK(on_find_domains_clicked),widgets);
on_locale_selection_changed(NULL,widgets);
on_check_domain_connected(NULL, widgets); on_check_domain_connected(NULL, widgets);

@ -69,6 +69,8 @@
#define domain_connected_icon "com.ublinux.ubl-settings-system.plug-connected-symbolic" #define domain_connected_icon "com.ublinux.ubl-settings-system.plug-connected-symbolic"
#define domain_disconnected_icon "com.ublinux.ubl-settings-system.plug-disconnected-symbolic" #define domain_disconnected_icon "com.ublinux.ubl-settings-system.plug-disconnected-symbolic"
#define add_icon_path "com.ublinux.libublsettingsui-gtk3.increase-symbolic"
#define remove_icon_path "com.ublinux.libublsettingsui-gtk3.trash-symbolic"
#define domain_connect_check "ubdomain-client list|grep -q 'configured'" #define domain_connect_check "ubdomain-client list|grep -q 'configured'"
@ -132,6 +134,8 @@ typedef struct {
GtkListStore *LanguageList; GtkListStore *LanguageList;
rmb_menu_window *locale_menu;
} main_window; } main_window;
@ -297,3 +301,4 @@ void on_domain_options_cell_toggled(GtkCellRenderer*, gchar *path,domain_options
domain_options_window *yon_domain_options_window_new(); domain_options_window *yon_domain_options_window_new();
void yon_domain_additional_options_open(GtkWidget *, connection_window *window); void yon_domain_additional_options_open(GtkWidget *, connection_window *window);
void yon_domain_client_changed_switch(GtkWidget*,int ,connection_window *window); void yon_domain_client_changed_switch(GtkWidget*,int ,connection_window *window);
void on_locale_selection_changed(GtkWidget *,main_window *widgets);

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!-- Generated with glade 3.40.0 <!-- Generated with glade 3.38.2
ubl-settings-system - ubl-settings-system -
Copyright (C) UBGroup Copyright (C) UBGroup

Loading…
Cancel
Save