Commit Graph

4 Commits

Author SHA1 Message Date
Michael Natterer
6c1d990adc Add infrastructure for copy/paste and DND of rich text for GtkTextBuffer.
2006-03-07  Michael Natterer  <mitch@imendio.com>

	Add infrastructure for copy/paste and DND of rich text for
	GtkTextBuffer. Fixes bug #324177.

	* gtk/gtktextbufferrichtext.[ch]: new files implementing a
	per-buffer registry of rich text formats.

	* gtk/gtk.h: #include gtktextbufferrichtext.h

	* gtk/gtktextbufferserialize.[ch]: new files implementing an
	internal serialization format that can handle all of a text
	buffer's tags and pixbufs. It's not useful for anything except
	tranfer between instances of GtkTextBuffer (Anders Carlsson).

	* gtk/Makefile.am: build the new files.

	* gtk/gtkclipboard.[ch]: added convenience APIs for rich text,
	just as they exist for plain text and pixbufs.

	* gtk/gtkselection.[ch]: added rich text convenience APIs here
	too.  Return the target list from gtk_target_list_ref(). Register
	GtkTargetList as boxed type. Added
	gtk_target_table_new_from_list() and gtk_target_table_free(),
	which make converting between GtkTargetList and arrays of
	GtkTargetEntry considerably easier.

	* gtk/gtktextutil.[ch]: added _gtk_text_util_create_rich_drag_icon()
	which creates a fancy rich text icon (Matthias Clasen).

	* gtk/gtktextbuffer.[ch]: use all the new stuff above and
	implement copy and paste of rich text. Added APIs for getting the
	target lists used for copy and paste. Added public enum
	GtkTextBufferTargetInfo which contains the "info" IDs associated
	with the entries of the target lists.

	* gtk/gtktextview.c: use the new rich text APIs and
	GtkTextBuffer's new target list API to enable DND of rich text
	chunks.

	* gtk/gtk.symbols: export all the new symbols added.

	* tests/testtext.c: added rich text testing stuff.
2006-03-07 13:46:11 +00:00
Matthias Clasen
13a341e0e9 When dragging text, use a drag icon showing the (ellipsized) text that is
2005-07-11  Matthias Clasen  <mclasen@redhat.com>

	When dragging text, use a drag icon showing the (ellipsized)
	text that is being dragged: (#161132, Kevin Duffus, patch
	by Carlos Garnacho Parro)

	* gtk/gtktextutil.h:
	* gtk/gtktextutil.c (_gtk_text_util_create_drag_icon): Add
	a function to create a pixmap for use when dragging text.

	* gtk/gtktextview.c (gtk_text_view_start_selection_dnd):
	* gtk/gtklabel.c (gtk_label_motion):
	* gtk/gtkentry.c (gtk_entry_motion_notify): Use a drag icon
	showing the text being dragged.

2005-07-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkentry.c (gtk_entry_move_forward_word)
	(gtk_entry_move_backward_word): Match the text view change
	to allow selecting whitespace with double-click.
2005-07-11 17:51:54 +00:00
Matthias Clasen
3845ca6eea Trivial cleanups. (#169647, #303455, Fabricio Barros Cabral, Benoit
2005-06-21  Matthias Clasen  <mclasen@redhat.com>

	* gtk/*.h: Trivial cleanups. (#169647, #303455,
	Fabricio Barros Cabral, Benoit Carpentier)
2005-06-21 05:35:43 +00:00
Havoc Pennington
8a44bc0455 Add Unicode control char menu, based on patch from Dov. Bug #63495
2001-12-06  Havoc Pennington  <hp@redhat.com>

        Add Unicode control char menu, based on patch from Dov.
        Bug #63495

        * gtk/gtkentry.c (gtk_entry_commit_cb): share code via
        gtk_entry_enter_text
        (gtk_entry_enter_text): function to do "typing in text"
        (popup_targets_received): add the Unicode menu items

        * gtk/gtktextview.c (popup_targets_received): add missing mnemonic
        on Input Methods item, and add the unicode menu items.

        * gtk/gtktextutil.h, gtk/gtktextutil.c: private utilities to be
        used in GtkEntry and GtkTextView - may become public later.
2001-12-17 16:46:08 +00:00