Lines 6736-6741
Link Here
|
6736 |
} |
6736 |
} |
6737 |
|
6737 |
|
6738 |
static void |
6738 |
static void |
|
|
6739 |
clear_cb (GtkTextView *text_view) |
6740 |
{ |
6741 |
GtkTextIter buf_start, buf_end; |
6742 |
gtk_text_buffer_get_bounds(get_buffer (text_view), &buf_start, &buf_end); |
6743 |
gtk_text_buffer_delete(get_buffer (text_view), &buf_start, &buf_end); |
6744 |
} |
6745 |
|
6746 |
static void |
6739 |
popup_menu_detach (GtkWidget *attach_widget, |
6747 |
popup_menu_detach (GtkWidget *attach_widget, |
6740 |
GtkMenu *menu) |
6748 |
GtkMenu *menu) |
6741 |
{ |
6749 |
{ |
Lines 6862-6868
Link Here
|
6862 |
gboolean can_insert; |
6870 |
gboolean can_insert; |
6863 |
GtkTextIter iter; |
6871 |
GtkTextIter iter; |
6864 |
GtkTextIter sel_start, sel_end; |
6872 |
GtkTextIter sel_start, sel_end; |
6865 |
|
6873 |
GtkTextIter buf_start, buf_end; |
6866 |
if (text_view->popup_menu) |
6874 |
if (text_view->popup_menu) |
6867 |
gtk_widget_destroy (text_view->popup_menu); |
6875 |
gtk_widget_destroy (text_view->popup_menu); |
6868 |
|
6876 |
|
Lines 6879-6884
Link Here
|
6879 |
&iter, |
6887 |
&iter, |
6880 |
gtk_text_buffer_get_insert (get_buffer (text_view))); |
6888 |
gtk_text_buffer_get_insert (get_buffer (text_view))); |
6881 |
|
6889 |
|
|
|
6890 |
gtk_text_buffer_get_bounds (get_buffer(text_view), &buf_start, &buf_end); |
6882 |
can_insert = gtk_text_iter_can_insert (&iter, text_view->editable); |
6891 |
can_insert = gtk_text_iter_can_insert (&iter, text_view->editable); |
6883 |
|
6892 |
|
6884 |
append_action_signal (text_view, text_view->popup_menu, GTK_STOCK_CUT, "cut_clipboard", |
6893 |
append_action_signal (text_view, text_view->popup_menu, GTK_STOCK_CUT, "cut_clipboard", |
Lines 6900-6905
Link Here
|
6900 |
gtk_widget_show (menuitem); |
6909 |
gtk_widget_show (menuitem); |
6901 |
gtk_menu_shell_append (GTK_MENU_SHELL (text_view->popup_menu), menuitem); |
6910 |
gtk_menu_shell_append (GTK_MENU_SHELL (text_view->popup_menu), menuitem); |
6902 |
|
6911 |
|
|
|
6912 |
if (g_getenv ("GTK_SUPERFLUOUS_ADDITIONS") != NULL) |
6913 |
{ |
6914 |
menuitem = gtk_image_menu_item_new_from_stock (GTK_STOCK_CLEAR, NULL); |
6915 |
gtk_widget_set_sensitive (menuitem, |
6916 |
range_contains_editable_text (&buf_start, |
6917 |
&buf_end, |
6918 |
text_view->editable)); |
6919 |
g_signal_connect_swapped (menuitem, "activate", |
6920 |
G_CALLBACK (clear_cb), text_view); |
6921 |
gtk_widget_show (menuitem); |
6922 |
gtk_menu_shell_append (GTK_MENU_SHELL (text_view->popup_menu), menuitem); |
6923 |
} |
6924 |
|
6903 |
menuitem = gtk_separator_menu_item_new (); |
6925 |
menuitem = gtk_separator_menu_item_new (); |
6904 |
gtk_widget_show (menuitem); |
6926 |
gtk_widget_show (menuitem); |
6905 |
gtk_menu_shell_append (GTK_MENU_SHELL (text_view->popup_menu), menuitem); |
6927 |
gtk_menu_shell_append (GTK_MENU_SHELL (text_view->popup_menu), menuitem); |