Added 'Show...' button to user services tab. It shows user-specific data

pull/42/head
parent 8d0720e124
commit b73b7c33c2

@ -936,7 +936,7 @@ void on_units_status(GtkWidget *self, main_window *widgets){
log_window *window = yon_log_window_new();
gtk_label_set_text(GTK_LABEL(window->webHeaderNameLabel),INSTALLED_UNIT_LABEL);
gtk_window_set_title(GTK_WINDOW(window->Window),INSTALLED_UNIT_LABEL);
window->target = installed_units_states_command;
window->target = !gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->MainNotebook))?installed_units_states_command:user_installed_units_states_command;
yon_terminal_integrated_start(window->SystemTerminal,window->target,NULL,NULL);
gtk_widget_show(window->Window);
@ -950,7 +950,7 @@ void on_units_list_status(GtkWidget *self, main_window *widgets){
log_window *window = yon_log_window_new();
gtk_label_set_text(GTK_LABEL(window->webHeaderNameLabel),UNITS_LIST_LABEL);
gtk_window_set_title(GTK_WINDOW(window->Window),UNITS_LIST_LABEL);
window->target = list_of_units_states_command;
window->target = !gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->MainNotebook))?list_of_units_states_command:user_list_of_units_states_command;
yon_terminal_integrated_start(window->SystemTerminal,window->target,NULL,NULL);
gtk_widget_show(window->Window);
@ -964,7 +964,7 @@ void on_sockets_list_status(GtkWidget *self, main_window *widgets){
log_window *window = yon_log_window_new();
gtk_label_set_text(GTK_LABEL(window->webHeaderNameLabel),SOCKETS_LIST_LABEL);
gtk_window_set_title(GTK_WINDOW(window->Window),SOCKETS_LIST_LABEL);
window->target = list_of_sockets_states_command;
window->target = !gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->MainNotebook))?list_of_sockets_states_command:user_list_of_sockets_states_command;
yon_terminal_integrated_start(window->SystemTerminal,window->target,NULL,NULL);
gtk_widget_show(window->Window);
@ -978,7 +978,7 @@ void on_timers_list_status(GtkWidget *self, main_window *widgets){
log_window *window = yon_log_window_new();
gtk_label_set_text(GTK_LABEL(window->webHeaderNameLabel),TIMERS_LIST_LABEL);
gtk_window_set_title(GTK_WINDOW(window->Window),TIMERS_LIST_LABEL);
window->target = list_of_timers_states_command;
window->target = !gtk_notebook_get_current_page(GTK_NOTEBOOK(widgets->MainNotebook))?list_of_timers_states_command:user_list_of_timers_states_command;
yon_terminal_integrated_start(window->SystemTerminal,window->target,NULL,NULL);
gtk_widget_show(window->Window);
@ -1400,12 +1400,17 @@ void yon_main_window_complete(main_window *widgets){
widgets->MainNotebook=yon_gtk_builder_get_widget(builder,"MainNotebook");
widgets->SystemServicesStatusMenuItem=yon_gtk_builder_get_widget(builder,"SystemServicesStatusMenuItem");
widgets->UserServicesStatusMenuItem=yon_gtk_builder_get_widget(builder,"UserServicesStatusMenuItem");
widgets->InstalledUnitsStatusMenuItem=yon_gtk_builder_get_widget(builder,"InstalledUnitsStatusMenuItem");
widgets->UnitsStatusListMenuItem=yon_gtk_builder_get_widget(builder,"UnitsStatusListMenuItem");
widgets->SocketsStatusListMenuItem=yon_gtk_builder_get_widget(builder,"SocketsStatusListMenuItem");
widgets->TimersStatusListMenuItem=yon_gtk_builder_get_widget(builder,"TimersStatusListMenuItem");
widgets->UserServicesStatusMenuItem=yon_gtk_builder_get_widget(builder,"UserServicesStatusMenuItem");
widgets->UserInstalledUnitsStatusMenuItem=yon_gtk_builder_get_widget(builder,"UserInstalledUnitsStatusMenuItem");
widgets->UserUnitsStatusListMenuItem=yon_gtk_builder_get_widget(builder,"UserUnitsStatusListMenuItem");
widgets->UserSocketsStatusListMenuItem=yon_gtk_builder_get_widget(builder,"UserSocketsStatusListMenuItem");
widgets->UserTimersStatusListMenuItem=yon_gtk_builder_get_widget(builder,"UserTimersStatusListMenuItem");
widgets->SystemSearchEntry=yon_gtk_builder_get_widget(builder,"SystemSearchEntry");
widgets->SystemFiltersCombo=yon_gtk_builder_get_widget(builder,"SystemFiltersCombo");
widgets->SystemInactiveShowCheck=yon_gtk_builder_get_widget(builder,"SystemInactiveShowCheck");
@ -1520,12 +1525,17 @@ void yon_main_window_complete(main_window *widgets){
g_signal_connect(G_OBJECT(widgets->SessionBlockButton),"clicked",G_CALLBACK(on_session_block),widgets);
g_signal_connect(G_OBJECT(widgets->SystemServicesStatusMenuItem),"activate",G_CALLBACK(on_system_services_status),widgets);
g_signal_connect(G_OBJECT(widgets->UserServicesStatusMenuItem),"activate",G_CALLBACK(on_user_services_status),widgets);
g_signal_connect(G_OBJECT(widgets->InstalledUnitsStatusMenuItem),"activate",G_CALLBACK(on_units_status),widgets);
g_signal_connect(G_OBJECT(widgets->UnitsStatusListMenuItem),"activate",G_CALLBACK(on_units_list_status),widgets);
g_signal_connect(G_OBJECT(widgets->SocketsStatusListMenuItem),"activate",G_CALLBACK(on_sockets_list_status),widgets);
g_signal_connect(G_OBJECT(widgets->TimersStatusListMenuItem),"activate",G_CALLBACK(on_timers_list_status),widgets);
g_signal_connect(G_OBJECT(widgets->UserServicesStatusMenuItem),"activate",G_CALLBACK(on_user_services_status),widgets);
g_signal_connect(G_OBJECT(widgets->UserInstalledUnitsStatusMenuItem),"activate",G_CALLBACK(on_units_status),widgets);
g_signal_connect(G_OBJECT(widgets->UserUnitsStatusListMenuItem),"activate",G_CALLBACK(on_units_list_status),widgets);
g_signal_connect(G_OBJECT(widgets->UserSocketsStatusListMenuItem),"activate",G_CALLBACK(on_sockets_list_status),widgets);
g_signal_connect(G_OBJECT(widgets->UserTimersStatusListMenuItem),"activate",G_CALLBACK(on_timers_list_status),widgets);
g_signal_connect(G_OBJECT(widgets->ConfigAutostartCell),"toggled",G_CALLBACK(on_config_autostart_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->ConfigAutostopCell),"toggled",G_CALLBACK(on_config_autostop_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->ConfigBlockCell),"toggled",G_CALLBACK(on_config_block_clicked),widgets);
@ -1533,6 +1543,7 @@ void yon_main_window_complete(main_window *widgets){
g_signal_connect(G_OBJECT(widgets->UserConfigAutostartCell),"toggled",G_CALLBACK(on_config_autostart_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->UserConfigAutostopCell),"toggled",G_CALLBACK(on_config_autostop_clicked),widgets);
g_signal_connect(G_OBJECT(widgets->UserConfigBlockCell),"toggled",G_CALLBACK(on_config_block_clicked),widgets);
if (getuid()==0){
gtk_widget_set_sensitive(widgets->UserUpdateButton,0);
gtk_widget_set_sensitive(widgets->UserPrevButton,0);

@ -58,13 +58,18 @@
#define get_config_files_command "find /etc/systemd -iname *.conf -exec du -sh --time {} \\;|sed -e 's/\t/;/g'"
#define system_services_status_command "systemctl status --no-pager"
#define user_services_status_command yon_char_unite("systemctl --user --machine=",yon_ubl_root_user_get(),"@ status --no-pager",NULL)
#define installed_units_states_command "systemctl list-unit-files --no-pager"
#define list_of_units_states_command "systemctl list-units --all --no-pager"
#define list_of_sockets_states_command "systemctl list-sockets --all --no-pager"
#define list_of_timers_states_command "systemctl list-timers --all --no-pager"
#define get_timers_command "systemctl list-timers --all --no-pager --plain --no-legend --output=json"
#define user_services_status_command !getuid()?yon_char_unite("systemctl --user --machine=",yon_ubl_root_user_get(),"@ status --no-pager",NULL):"systemctl --user status --no-pager"
#define user_installed_units_states_command !getuid()?yon_char_unite("systemctl --user --machine=",yon_ubl_root_user_get(),"@ list-unit-files --no-pager",NULL):"systemctl --user list-unit-files --no-pager"
#define user_list_of_units_states_command !getuid()?yon_char_unite("systemctl --user --machine=",yon_ubl_root_user_get(),"@ list-units --all --no-pager",NULL):"systemctl --user list-units --all --no-pager"
#define user_list_of_sockets_states_command !getuid()?yon_char_unite("systemctl --user --machine=",yon_ubl_root_user_get(),"@ list-sockets --all --no-pager",NULL):"systemctl --user list-sockets --all --no-pager"
#define user_list_of_timers_states_command !getuid()?yon_char_unite("systemctl --user --machine=",yon_ubl_root_user_get(),"@ list-timers --all --no-pager",NULL):"systemctl --user list-timers --all --no-pager"
#define installed_units_command "systemctl list-unit-files --no-pager| sed -e 's/ */;/g'"
#define list_of_units_command "systemctl list-units --all --no-pager| sed -e 's/ */;/g'"
#define list_of_sockets_command "systemctl list-sockets --all --no-pager| sed -e 's/ */;/g'"
@ -189,11 +194,17 @@ typedef struct {
GtkWidget *MainNotebook;
GtkWidget *SystemServicesStatusMenuItem;
GtkWidget *UserServicesStatusMenuItem;
GtkWidget *InstalledUnitsStatusMenuItem;
GtkWidget *UnitsStatusListMenuItem;
GtkWidget *SocketsStatusListMenuItem;
GtkWidget *TimersStatusListMenuItem;
GtkWidget *UserServicesStatusMenuItem;
GtkWidget *UserInstalledUnitsStatusMenuItem;
GtkWidget *UserUnitsStatusListMenuItem;
GtkWidget *UserSocketsStatusListMenuItem;
GtkWidget *UserTimersStatusListMenuItem;
GtkTreeModelFilter *SystemFilter;
GtkTreeModelFilter *UserFilter;

@ -198,14 +198,6 @@
<property name="use-underline">True</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="UserServicesStatusMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">User services status</property>
<property name="use-underline">True</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="InstalledUnitsStatusMenuItem">
<property name="visible">True</property>
@ -239,6 +231,45 @@
</object>
</child>
</object>
<object class="GtkMenu" id="menu2">
<property name="visible">True</property>
<property name="can-focus">False</property>
<child>
<object class="GtkMenuItem" id="UserServicesStatusMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">User services status</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="UserInstalledUnitsStatusMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Installed unit files</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="UserUnitsStatusListMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Units and status list</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="UserSocketsStatusListMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Sockets and status list</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="UserTimersStatusListMenuItem">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="label" translatable="yes">Timers and status list</property>
</object>
</child>
</object>
<object class="GtkBox" id="BoxMain">
<property name="visible">True</property>
<property name="can-focus">False</property>
@ -1020,12 +1051,48 @@
<class name="thin"/>
</style>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">6</property>
</packing>
</child>
<child>
<object class="GtkSeparator">
<property name="visible">True</property>
<property name="can-focus">False</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">7</property>
</packing>
</child>
<child>
<object class="GtkMenuButton">
<property name="visible">True</property>
<property name="can-focus">True</property>
<property name="focus-on-click">False</property>
<property name="receives-default">True</property>
<property name="tooltip-text" translatable="yes">Show...</property>
<property name="popup">menu2</property>
<child>
<object class="GtkImage">
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="icon-name">com.ublinux.ubl-settings-services.menu-symbolic</property>
</object>
</child>
<style>
<class name="thin"/>
</style>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">8</property>
</packing>
</child>
</object>
<packing>
<property name="expand">False</property>
@ -1802,8 +1869,4 @@
</packing>
</child>
</object>
<object class="GtkMenu" id="menu2">
<property name="visible">True</property>
<property name="can-focus">False</property>
</object>
</interface>

Loading…
Cancel
Save