gladish: Daemon exit (reactivate) menu item

This commit is contained in:
Nedko Arnaudov 2009-08-30 22:48:13 +03:00
parent 7f5855f6ba
commit 8161c68142
2 changed files with 28 additions and 0 deletions

View File

@ -179,6 +179,21 @@
<property name="visible">True</property>
</widget>
</child>
<child>
<widget class="GtkImageMenuItem" id="menu_item_daemon_exit">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="label" translatable="yes">Daemon exit (reactivate)</property>
<property name="use_underline">True</property>
<child internal-child="image">
<widget class="GtkImage" id="menu-item-image16">
<property name="visible">True</property>
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
<property name="stock">gtk-refresh</property>
</widget>
</child>
</widget>
</child>
<child>
<widget class="GtkImageMenuItem" id="menu_item_quit">
<property name="visible">True</property>

View File

@ -58,6 +58,7 @@ GtkWidget * g_menu_item_create_room;
GtkWidget * g_menu_item_destroy_room;
GtkWidget * g_menu_item_load_project;
GtkWidget * g_menu_item_start_app;
GtkWidget * g_menu_item_daemon_exit;
GtkWidget * g_name_dialog;
@ -221,6 +222,16 @@ static void arrange(void)
}
}
static void daemon_exit(GtkWidget * item)
{
lash_info("Daemon exit request");
if (!control_proxy_exit())
{
/* TODO: display error message */
}
}
static void on_load_studio(GtkWidget * item)
{
const char * studio_name;
@ -566,6 +577,7 @@ int main(int argc, char** argv)
g_menu_item_destroy_room = get_glade_widget("menu_item_destroy_room");
g_menu_item_load_project = get_glade_widget("menu_item_load_project");
g_menu_item_start_app = get_glade_widget("menu_item_start_app");
g_menu_item_daemon_exit = get_glade_widget("menu_item_daemon_exit");
g_name_dialog = get_glade_widget("name_dialog");
@ -607,6 +619,7 @@ int main(int argc, char** argv)
g_signal_connect(G_OBJECT(g_menu_item_unload_studio), "activate", G_CALLBACK(unload_studio), NULL);
g_signal_connect(G_OBJECT(g_menu_item_save_studio), "activate", G_CALLBACK(save_studio), NULL);
g_signal_connect(G_OBJECT(g_menu_item_rename_studio), "activate", G_CALLBACK(rename_studio), NULL);
g_signal_connect(G_OBJECT(g_menu_item_daemon_exit), "activate", G_CALLBACK(daemon_exit), NULL);
gtk_widget_show(g_main_win);