Skip to content
Snippets Groups Projects
Commit 7016b09c authored by Emmanuel Milou's avatar Emmanuel Milou
Browse files

Add a menu item to clear the history

In the edit menu
parent 2ec7f41d
No related branches found
Tags
No related merge requests found
...@@ -67,6 +67,18 @@ msgstr "_Assistant SFLphone" ...@@ -67,6 +67,18 @@ msgstr "_Assistant SFLphone"
msgid "_Accounts" msgid "_Accounts"
msgstr "Co_mptes" msgstr "Co_mptes"
#: sflphone-gtk/src/menus.c: 523
msgid "_Clear history"
msgstr "Effacer l'historique"
#: sflphone-gtk/src/menus.c: 523
msgid "History empty"
msgstr "L'historique est vide"
#: sflphone-gtk/src/menus.c: 523
msgid "Clear the call history?"
msgstr "Effacer l'historique des appels?"
#: sflphone-gtk/src/menus.c: 438 #: sflphone-gtk/src/menus.c: 438
msgid "_Edit" msgid "_Edit"
msgstr "_Options" msgstr "_Options"
......
...@@ -65,6 +65,10 @@ msgstr "" ...@@ -65,6 +65,10 @@ msgstr ""
msgid "_Accounts" msgid "_Accounts"
msgstr "" msgstr ""
#: sflphone-gtk/src/menus.c: 523
msgid "_Clear history"
msgstr ""
#: sflphone-gtk/src/menus.c: 438 #: sflphone-gtk/src/menus.c: 438
msgid "_Edit" msgid "_Edit"
msgstr "" msgstr ""
......
...@@ -37,6 +37,8 @@ GtkWidget * newCallMenu; ...@@ -37,6 +37,8 @@ GtkWidget * newCallMenu;
GtkWidget * holdMenu; GtkWidget * holdMenu;
GtkWidget * copyMenu; GtkWidget * copyMenu;
GtkWidget * pasteMenu; GtkWidget * pasteMenu;
GtkWidget * clearhistoryMenu;
guint holdConnId; //The hold_menu signal connection ID guint holdConnId; //The hold_menu signal connection ID
GtkWidget * dialpadMenu; GtkWidget * dialpadMenu;
...@@ -482,12 +484,46 @@ edit_paste ( void * foo) ...@@ -482,12 +484,46 @@ edit_paste ( void * foo)
update_call_tree(current_calls,selectedCall); update_call_tree(current_calls,selectedCall);
} }
}
static void
clear_history( void* foo )
{
gchar *markup;
GtkWidget *dialog;
int response;
if( call_list_get_size( history ) == 0 ){
markup = g_markup_printf_escaped(_("History empty"));
dialog = gtk_message_dialog_new_with_markup ( GTK_WINDOW(get_main_window()),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_OK,
markup);
response = gtk_dialog_run (GTK_DIALOG(dialog));
gtk_widget_destroy (GTK_WIDGET(dialog));
}
else{
markup = g_markup_printf_escaped(_("Clear the call history?"));
dialog = gtk_message_dialog_new_with_markup ( GTK_WINDOW(get_main_window()),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_YES_NO,
markup);
response = gtk_dialog_run (GTK_DIALOG(dialog));
gtk_widget_destroy (GTK_WIDGET(dialog));
if (response == GTK_RESPONSE_YES)
{
call_list_clean_history();
}
}
} }
GtkWidget * GtkWidget *
create_edit_menu() create_edit_menu()
{ {
GtkWidget * menu; GtkWidget * menu;
GtkWidget * image;
GtkWidget * root_menu; GtkWidget * root_menu;
GtkWidget * menu_items; GtkWidget * menu_items;
...@@ -510,6 +546,18 @@ create_edit_menu() ...@@ -510,6 +546,18 @@ create_edit_menu()
menu_items = gtk_separator_menu_item_new (); menu_items = gtk_separator_menu_item_new ();
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
menu_items = gtk_image_menu_item_new_with_mnemonic(_("_Clear history"));
image = gtk_image_new_from_stock( GTK_STOCK_CLEAR , GTK_ICON_SIZE_MENU );
gtk_image_menu_item_set_image( GTK_IMAGE_MENU_ITEM ( menu_items ), image );
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
G_CALLBACK (clear_history),
NULL);
gtk_widget_show (menu_items);
menu_items = gtk_separator_menu_item_new ();
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
menu_items = gtk_menu_item_new_with_mnemonic( _("_Accounts") ); menu_items = gtk_menu_item_new_with_mnemonic( _("_Accounts") );
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items); gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_items);
g_signal_connect_swapped (G_OBJECT (menu_items), "activate", g_signal_connect_swapped (G_OBJECT (menu_items), "activate",
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment