Commit Graph

31 Commits

Author SHA1 Message Date
Michael Henning e060da8278 Bug 680795 - GIMP segfaults in gimp_clipboard_set_buffer when...
Fix segfault in gimp_clipboard_set_buffer when n_target_entries is 0.
2012-07-30 16:43:37 +02:00
Michael Natterer d771249466 app: completely port GimpBuffer to using GeglBuffer not TileManager 2012-05-02 17:45:47 +02:00
Michael Natterer bc8d5f84d6 app: remove the "offset" API from TileManager
It made the transform code hard to read and never belonged into the
tile manager anyway. It's a simple pixel buffer that should not know
about any position in an image. Instead, pass around the offsets of
tile managers explicitly, so everything is less obscure for the price
of having more parameters. This will also help replacing TileManagers
with GeglBuffers.
2011-03-26 08:30:15 +01:00
Michael Natterer 4b729086a9 app: cast GtkTargetEntry.target to gchar* when freeing it
because it was made const in GTK+.
2010-11-29 15:41:38 +01:00
Michael Natterer fdde593fc5 app: enable copy and paste for curves
Add GimpCurve support to the clipboard and handle ctrl-x, ctrl-c and
ctrl-v in GimpCurveView.
2010-02-16 19:58:51 +01:00
Michael Natterer d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
Sven Neumann 17f8ab01e6 app/widgets/gimpclipboard.c app/widgets/gimpcontainerview.c allocate
2007-05-22  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpclipboard.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpdialogfactory.c: allocate structs using 
GSlice.


svn path=/trunk/; revision=22582
2007-05-22 18:08:42 +00:00
Sven Neumann efb221acc7 app/widgets/gimpclipboard.c app/widgets/gimpdnd-xds.c use
2007-04-28  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpclipboard.c
	* app/widgets/gimpdnd-xds.c
	* plug-ins/helpbrowser/dialog.c: use 
gdk_atom_intern_static_string().


svn path=/trunk/; revision=22360
2007-04-28 10:11:37 +00:00
Sven Neumann 41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Michael Natterer b53aa45a76 Changed GimpViewable preview rendering to have a context to get
2006-08-29  Michael Natterer  <mitch@gimp.org>

	Changed GimpViewable preview rendering to have a context to get
	FG/BG/whatever from. Use the context to enable dynamic FG/BG
	colors in gradients. Fixes bug #127676 and bug #352214. Addresses
	bug #128367 (doesn't fix it because there's no loading/saving and
	no GUI yet).

	* app/core/core-enums.[ch]: added enum GimpGradientColor to enable
	specifying gradient colors in terms of foreground and background.

	* app/core/gimpgradient.[ch]: added color_type members to the
	GimpGradientSegment struct and honor them in
	gimp_gradient_get_color_at(). Added GimpContext parameters to all
	functions which finally call get_color_at().

	* app/core/gimp-gradients.c: use the new method to implement the
	builtin gradients.

	* app/core/gimpviewable.[ch]: added GimpContext parameters to all
	get_preview() and get_pixbuf() functions.

	* app/core/gimpbrush.c
	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpgradient.c
	* app/core/gimpimage-preview.[ch]
	* app/core/gimpimagefile.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpundo.[ch]
	* app/text/gimpfont.c
	* app/vectors/gimpvectors-preview.[ch]: changed ::get_preview()
	and ::get_pixbuf() implementations accordingly.

	* app/core/gimpdrawable-blend.c
	* app/core/gimppalette-import.[ch]
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/resize-dialog.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpnavigationeditor.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimptexttool.c
	* app/actions/gradient-editor-commands.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpbrusheditor.[ch]
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcellrendererviewable.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpclipboard.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainercombobox.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerentry.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpdnd.[ch]
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimppropwidgets.[ch]
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpthumbbox.[ch]
	* app/widgets/gimptoolbox-image-area.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptooloptionseditor.c
	* app/widgets/gimpundoeditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpview-popup.[ch]
	* app/widgets/gimpview.[ch]
	* app/widgets/gimpviewablebutton.c
	* app/widgets/gimpviewabledialog.c
	* app/widgets/gimpviewrenderer.[ch]
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrendererbrush.c
	* app/widgets/gimpviewrendererbuffer.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrenderergradient.c
	* app/widgets/gimpviewrendererimage.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb: added tons of GimpContext members
	and parameters, implement GimpDocked::set_context() in many
	widgets. Pass these locally remembered contexts to GimpViewable
	functions. Did some minor cleanups on the way. There are still
	some minor FIXMEs around where the code uses a NULL context (which
	is allowed by the APIs)

	* app/pdb/drawable_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/image_cmds.c: regenerated.
2006-08-29 21:44:51 +00:00
Michael Natterer 3fac0dd74f fix parameter name in API docs.
2006-04-15  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpclipboard.c (gimp_clipboard_set_buffer): fix
	parameter name in API docs.
2006-04-15 16:49:59 +00:00
Michael Natterer 82282ea86c added g_return_if_fail (GIMP_IS_GIMP (gimp)).
2005-11-02  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpclipboard.c (gimp_clipboard_set_text): added
	g_return_if_fail (GIMP_IS_GIMP (gimp)).
2005-11-02 19:52:47 +00:00
Sven Neumann afde82bb8f clear the GIMP clipboard. Suppress debug output unless gimp is started
2005-11-02  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpclipboard.[ch] (gimp_clipboard_set_text): clear
	the GIMP clipboard. Suppress debug output unless gimp is started
	with the --verbose command-line option.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c: adapt to clipboard API change.
2005-11-02 12:03:37 +00:00
Sven Neumann 6ad8c74080 app/actions/data-commands.c app/actions/documents-commands.c moved text
2005-11-01  Sven Neumann  <sven@gimp.org>

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/widgets/gimpclipboard.[ch]: moved text clipboard handling to
	utility function to avoid code duplication.
2005-11-01 11:01:44 +00:00
Michael Natterer ae4d65ac04 Separated the global buffer logic from the clipboard implementation:
2005-09-21  Michael Natterer  <mitch@gimp.org>

	Separated the global buffer logic from the clipboard
	implementation:

	* app/widgets/gimpclipboard.[ch]: removed all knowledge about
	gimp->global_buffer. Removed the Gimp::buffer-changed callback.
	Made gimp_clipboard_set_buffer() public and remember the set
	buffer in the GimpClipboard struct. Fixed the has_buffer() and
	has_svg() functions.

	* app/gui/gui.c: connect to Gimp::buffer-changed here and call
	gimp_clipboard_set_buffer() from the callback.
2005-09-21 14:35:51 +00:00
Michael Natterer c7998a1855 added new public function gimp_clipboard_set_svg() and internal stuff to
2005-09-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpclipboard.[ch]: added new public function
	gimp_clipboard_set_svg() and internal stuff to offer and transfer
	the svg data to the clipboard.

	* app/actions/vectors-commands.c (vectors_copy_cmd_callback)
	(vectors_paste_cmd_callback): implement copy/paste of vectors as
	SVG. Fixes bug #316547.

	* app/widgets/gimpvectorstreeview.c
	(gimp_vectors_tree_view_drag_svg): don't add the terminating
	nul-byte of the svg string to svg_data_length, it confuses the XML
	parser.

	* app/actions/vectors-actions.c
	* app/actions/vectors-commands.[ch]
	* menus/vectors-menu.xml: reordered export/import so they are in
	the same order as copy/paste.
2005-09-19 21:33:03 +00:00
Sven Neumann b8fc8e6050 themes/Default/images/Makefile.am
2005-07-29  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/stock-tool-foreground-select-16.png
	* themes/Default/images/tools/stock-tool-foreground-select-22.png:
	added placeholder for yet-to-be-drawn tool icon.

	* libgimpwidgets/gimpstock.[ch]: register it.

	* app/tools/gimpforegroundselecttool.c: use it.

	* app/widgets/gimpclipboard.[ch] (gimp_clipboard_get_svg): return
	a signed char pointer.

	* app/actions/edit-commands.c
	* app/tools/gimpinkoptions-gui.c: fixed signedness issues.
2005-07-29 18:04:59 +00:00
Sven Neumann 93eab43eef Use the canonical form for signal names.
2005-05-27  Sven Neumann  <sven@gimp.org>

	* (lots of files): Use the canonical form for signal names.
2005-05-27 16:51:39 +00:00
Sven Neumann e0b3fdfc3c fixed gtk-doc comments.
2005-05-25  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpclipboard.[ch]: fixed gtk-doc comments.
2005-05-25 11:23:06 +00:00
Michael Natterer cd53b60701 added gimp_clipboard_has_svg() and gimp_clipboard_get_svg().
2005-05-16  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpclipboard.[ch]: added gimp_clipboard_has_svg()
	and gimp_clipboard_get_svg().

	* app/actions/edit-commands.c (edit_paste_cmd_callback): enabled
	pasting of SVG data using gimp_vectors_import_buffer().
2005-05-16 12:31:04 +00:00
Sven Neumann 55be97a021 free all memory allocated for GimpClipboard.
2005-04-27  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpclipboard.c (gimp_clipboard_free): free all
	memory allocated for GimpClipboard.

	* libgimpwidgets/gimppatheditor.c (gimp_path_editor_set_path):
	always free old_path.
2005-04-27 15:59:14 +00:00
Michael Natterer 1fe869bbfd don't include "core/gimpviewable.h"
2005-04-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpclipboard.c: don't include "core/gimpviewable.h"
2005-04-11 16:01:25 +00:00
Michael Natterer 9d439fe018 added gimp_buffer_new_from_pixbuf().
2005-04-09  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpbuffer.[ch]: added gimp_buffer_new_from_pixbuf().

	* app/widgets/gimpclipboard.c: removed
	tile_manager_new_from_pixbuf() and base/ dependency.
2005-04-09 21:52:21 +00:00
Michael Natterer 7609645970 Implement dragging and dropping in any GdkPixbuf supported format. Fixes
2005-04-09  Michael Natterer  <mitch@gimp.org>

	Implement dragging and dropping in any GdkPixbuf supported
	format. Fixes bug #172794 and bug #172795.

	* app/core/gimplayer.[ch] (gimp_layer_new_from_region): new
	function which contains all stuff that was in
	gimp_layer_new_from_tiles().

	(gimp_layer_new_from_tiles): use above function.
	(gimp_layer_new_from_pixbuf): new function.

	* app/widgets/Makefile.am
	* app/widgets/gimppixbuf.[ch]: new files containing GdkPixbuf
	utility functions for clipboard and DnD.

	* app/widgets/gimpselectiondata.[ch]: removed
	gimp_selection_data_set,get_pixbuf(), GTK+ provides the same API.
	Also removed GdkAtom parameters all over the place because it's
	always the same as selection_data->target.

	* app/widgets/gimpclipboard.c: use the new pixbuf utility
	functions and gtk_selection_data_set,get_pixbuf().

	* app/widgets/widgets-enums.h
	* app/widgets/gimpdnd.[ch]: removed never-implemented
	GIMP_DND_TYPE_PNG and added a generic GIMP_DND_TYPE_PIXBUF
	instead. Added API to drag and drop GdkPixbufs which transparently
	converts from/to and GdkPixbuf-supported image format. Removed
	passing around of GdkAtoms, since they were always the same
	as selection_data->target.

	* app/widgets/gimpdnd-xds.[ch]: follow GdkAtom parameter removal.

	* app/widgets/gimpcontainertreeview.[ch]: added virtual function
	GimpContainerTreeView::drop_pixbuf().

	* app/widgets/gimpcontainertreeview-dnd.c: dispatch drop_pixbuf().

	* app/widgets/gimplayertreeview.c: implement drop_pixbuf().

	* app/widgets/gimpdrawabletreeview.c: allow to drag all drawables
	as pixbufs.

	* app/display/gimpdisplayshell-dnd.c: allow dropping of pixbufs.
2005-04-09 17:56:04 +00:00
Tor Lillqvist 61ca231ce2 On Win32, move the "bmp" format to the front. Means less conversion in
2005-04-04  Tor Lillqvist  <tml@novell.com>

	* app/widgets/gimpclipboard.c (gimp_clipboard_format_compare): On
	Win32, move the "bmp" format to the front. Means less conversion
	in most cases, as other apps on Win32 typically provide/want the
	BMP format on the Clipboard. (Actually CF_DIB, but that's the
	same, just without the BMP file header.) See also bug #168173.
2005-04-04 00:33:35 +00:00
Sven Neumann cf56c79553 allow to store the clipboard content in a clipboard manager when GIMP
2005-03-30  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpclipboard.c: allow to store the clipboard content
	in a clipboard manager when GIMP exits.
2005-03-29 22:05:50 +00:00
Sven Neumann a27b0bff1c app/widgets/gimpuimanager.c (gimp_ui_manager_entry_load) only be verbose
2004-10-29  Sven Neumann  <sven@gimp.org>

        * app/widgets/gimpuimanager.c (gimp_ui_manager_entry_load)
        * app/widgets/gimpclipboard.c (gimp_clipboard_init): only be
        verbose on request.

        * app/plug-in/plug-in.c (plug_in_close): turned warnings into
        messages and respect gimp->be_verbose.
2004-10-29 21:54:32 +00:00
Michael Natterer d18097028e added a "const gchar *format" parameter to
2004-07-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpselectiondata.[ch]: added a "const gchar *format"
	parameter to gimp_selection_data_set_pixbuf() which selects the
	format in which to encode the pixbuf (was defaulting to "png"
	before).

	* app/widgets/gimpclipboard.c: when copying, offer all formats which
	are savable with GdkPixbuf. Added a GimpClipboard struct which is
	attached to the Gimp and which stores all the persistent data
	needed by the clipboard. Renamed some private functions.

	(unfortunately this change breaks pasting to AbiWord:
	 http://bugzilla.abisource.com/show_bug.cgi?id=7068)
2004-07-08 11:27:48 +00:00
Sven Neumann 73b1182c80 sort the list of pixbuf formats so that PNG is the preferred format and
2004-07-07  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpclipboard.c: sort the list of pixbuf formats so
	that PNG is the preferred format and GIF and JPEG come last.
2004-07-07 18:09:14 +00:00
Michael Natterer 94163a8beb changed to allow pasting any GdkPixbuf supported format (makes pasting
2004-07-07  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpclipboard.[ch]: changed to allow pasting any
	GdkPixbuf supported format (makes pasting from OpenOffice
	work). Cleaned up a bit to perpare pasting of SVG data.
2004-07-07 16:02:23 +00:00
Michael Natterer 8fc8cb487c app/gui/Makefile.am removed...
2004-07-07  Michael Natterer  <mitch@gimp.org>

	* app/gui/Makefile.am
	* app/gui/clipboard.[ch]: removed...

	* app/widgets/Makefile.am
	* app/widgets/gimpclipboard.[ch]: ...and added here.

	* app/actions/edit-commands.c
	* app/gui/gui.c: changed accordingly.
2004-07-07 14:38:23 +00:00