Commit Graph

29 Commits

Author SHA1 Message Date
Alx Sa 048b2c437d libgimp, libgimpcolor, libgimpconfig: Convert to derivable types
Also converted GimpPreview and
GimpScrolledPreview as they are the
parents of several of these widgets.
2024-08-02 14:02:30 +00:00
Michael Natterer 5f700549e7 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
Michael Natterer 08458dcdf6 libgimpwidgets: port GimpPreview to GtkGrid 2018-05-20 21:06:34 +02:00
Michael Natterer d87eddb1c4 libgimpwidgets: move all GimpPreview members to private
and add tons of API so subclasses can still do their thing, probably
subject to change/fix.
2018-05-20 21:06:33 +02:00
Michael Natterer f4f106ad26 libimp*: add private pointers to all instance structs
even if we don't have private members (yet). Also make class padding 8
pointers in all headers. This commit moves nothing to private, it just
makes all headers consistent and adjusts .c files accordigly.
2018-05-20 21:06:33 +02:00
Michael Natterer 9c6338900e libgimp*: don't derive from GtkHBox and GtkVBox in libgimp either
I know this is not 100% compatible, but is in fact absolutely safe to
change unless somebody is using the headers in ways that are totally
wrong.
2011-07-27 19:53:34 +02:00
Michael Natterer 844df2b4df libgimp*: add guards that #error out if individual files are included
This only helps to maintain proper includes in app/ and shouldn't
affect plug-ins at all, because these are supposed to only include the
main headers from libgimp/ since the beginning of time.

The gimpfootypes.h files do not have these guards, so we can continue
to maintain app/'s include policy that is very likely to error out if
wrong things are included.
2011-04-28 14:30:41 +02: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
Michael Natterer 598da617b0 Stop including single headers from gtk+ to be prepared for the upcoming
2008-05-23  Michael Natterer  <mitch@gimp.org>

	Stop including single headers from gtk+ to be prepared
	for the upcoming GTK_DISABLE_SINGLE_INCLUDES:

	* configure.in: add -DGTK_DISABLE_SINGLE_INCLUDES to CPPFLAGS.

	* app/display/gimpcanvas.h
	* app/display/gimpscalecombobox.h
	* app/display/gimpstatusbar.h
	* app/widgets/*.h
	* libgimp/gimpprogressbar.h
	* libgimp/gimpselectbutton.h
	* libgimpwidgets/*.h
	* libgimpwidgets/gimpstock.c
	* plug-ins/uri/gimpmountoperation.h: remove inclusion of parent
	classes and single files from gtk+.

	* app/widgets/gtkwrapbox.h
	* libgimp/gimpbrushmenu.c
	* libgimp/gimpfontmenu.c
	* libgimp/gimpgradientmenu.c
	* libgimp/gimppalettemenu.c
	* libgimp/gimppatternmenu.c
	* libgimp/gimpselectbutton.c: #include <gtk/gtk.h>

	* plug-ins/common/poppler.c: undef GTK_DISABLE_SINGLE_INCLUDES
	when including <poppler.h>.


svn path=/trunk/; revision=25781
2008-05-23 20:38:52 +00:00
Sven Neumann 511a488aa2 added transform and untransform methods.
2007-01-11  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]: added transform and 
untransform
	methods.

	* libgimp/gimpzoompreview.c: more cleanups. Override the new
	GimpPreview methods.

	* plug-ins/common/nova.c: use the new transform functions.

	* libgimpwidgets/gimpwidgets.def: updated.


svn path=/trunk/; revision=21689
2007-01-11 23:41:45 +00:00
Sven Neumann 3670d4c3ae renamed newly added function to gimp_preview_get_controls(). Increased row
2005-09-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]: renamed newly added function to
	gimp_preview_get_controls(). Increased row padding for controls.

	* libgimpwidgets/gimpwidgets.def
	* libgimp/gimpzoompreview.c: changed accordingly.

	* libgimpbase/gimputils.c (gimp_enum_get_value): ref the enum
	class instead of only peeking at it.

	* libgimpwidgets/gimpzoommodel.c (gimp_zoom_button_new): set a
	tooltip on zoom buttons that only show an icon.
2005-09-28 11:02:02 +00:00
Sven Neumann 9ab6ffa950 added a hbox to the table and the "Update Preview" checkbutton there.
2005-09-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]: added a hbox to the table and
	the "Update Preview" checkbutton there. Added a function to access
	this control box. Increased default size to 200.

	* libgimpwidgets/gimpscrolledpreview.[ch]: added function
	gimp_scrolled_preview_set_policy() to control when the scrollbars
	should be shown.

	* libgimpwidgets/gimpwidgets.def: updated.

	* libgimp/gimpzoompreview.c: pack the zoom buttons into the
	preview's control box. Commented out the label, it shows a bogus
	zoom factor. Set scrollbar policy to ALWAYS to avoid resizing.
2005-09-28 02:46:06 +00:00
Sven Neumann 6a4b454431 added gimp_preview_get_area() for the rare case when one needs access to
2005-07-21  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]: added gimp_preview_get_area()
	for the rare case when one needs access to the GimpPreviewArea
	used in the preview.

	* libgimpwidgets/gimpwidgets.def: updated.
2005-07-21 14:02:29 +00:00
Michael Natterer 66529903b9 libgimp/gimpaspectpreview.h libgimp/gimpdrawablepreview.h
2004-10-23  Michael Natterer  <mitch@gimp.org>

	* libgimp/gimpaspectpreview.h
	* libgimp/gimpdrawablepreview.h
	* libgimp/gimpprogressbar.h
	* libgimpwidgets/gimpcellrenderercolor.h
	* libgimpwidgets/gimpcellrenderertoggle.h
	* libgimpwidgets/gimpframe.h
	* libgimpwidgets/gimpintcombobox.h
	* libgimpwidgets/gimpintstore.h
	* libgimpwidgets/gimppreview.h
	* libgimpwidgets/gimppreviewarea.h
	* libgimpwidgets/gimpscrolledpreview.h: added padding to all class
	structs which have been added since 2.0.
2004-10-23 19:59:18 +00:00
David Odin 3eb00e0350 added a new function to set the default cursor on preview:
* libgimpwidgets/gimppreview.[ch]: added a new function to set the
  default cursor on preview: gimp_preview_set_default_cursor().

* libgimpwidgets/gimpscrolledpreview.c: changed accordlingly.

* plug-ins/common/flarefx.c:
* plug-ins/common/nova.c: use this function.

This addresses bug #90519.
2004-10-13 18:56:28 +00:00
Sven Neumann de37bbb7f8 libgimpwidgets/gimppreview.[ch] added gimp_preview_draw_buffer().
2004-09-29  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]
	* libgimpwidgets/gimpwidgets.def: added gimp_preview_draw_buffer().

	* libgimp/gimpaspectpreview.[ch]
	* libgimp/gimpdrawablepreview.[ch]
	* libgimp/gimpui.def: removed the public draw_buffer API.
	Implement the virtual GimpPreview::draw_buffer method instead.

	* plug-ins/common/cartoon.c
	* plug-ins/common/deinterlace.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/dog.c
	* plug-ins/common/edge.c
	* plug-ins/common/engrave.c
	* plug-ins/common/exchange.c
	* plug-ins/common/gauss.c
	* plug-ins/common/grid.c
	* plug-ins/common/neon.c
	* plug-ins/common/noisify.c
	* plug-ins/common/oilify.c
	* plug-ins/common/photocopy.c
	* plug-ins/common/plasma.c
	* plug-ins/common/sel_gauss.c
	* plug-ins/common/sharpen.c
	* plug-ins/common/shift.c
	* plug-ins/common/snoise.c
	* plug-ins/common/sobel.c
	* plug-ins/common/spread.c
	* plug-ins/common/struc.c: changed accordingly. Don't pass the
	preview around as GimpDrawablePreview or GimpAspectPreview. It
	should whenever possible be accessed as GimpPreview.
2004-09-29 15:33:02 +00:00
Sven Neumann c4bf786cc2 libgimpwidgets/gimppreview.[ch] libgimpwidgets/gimpscrolledpreview.[ch]
2004-09-29  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]
	* libgimpwidgets/gimpscrolledpreview.[ch]
	* libgimpwidgets/gimpwidgets.def: moved the offsets and the
	draw_thumb method back to the GimpPreview class.

	* libgimp/gimpdrawablepreview.c: changed accordingly.

	* plug-ins/common/bumpmap.c
	* plug-ins/common/cartoon.c
	* plug-ins/common/deinterlace.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/dog.c
	* plug-ins/common/edge.c
	* plug-ins/common/engrave.c
	* plug-ins/common/exchange.c
	* plug-ins/common/gauss.c
	* plug-ins/common/grid.c
	* plug-ins/common/mblur.c
	* plug-ins/common/neon.c
	* plug-ins/common/noisify.c
	* plug-ins/common/oilify.c
	* plug-ins/common/photocopy.c
	* plug-ins/common/sel_gauss.c
	* plug-ins/common/sharpen.c
	* plug-ins/common/shift.c
	* plug-ins/common/sobel.c
	* plug-ins/common/softglow.c
	* plug-ins/common/spread.c
	* plug-ins/common/struc.c
	* plug-ins/common/unsharp.c
	* plug-ins/common/wind.c: back to using gimp_preview_get_position().

	* libgimp/gimpregioniterator.c (gimp_rgn_iterator_new): corrected
	gtk-doc comment.
2004-09-29 13:39:23 +00:00
David Odin a001920ead libgimpwidgets/gimppreview.c split this widget into itself (more abstract
* libgimpwidgets/gimppreview.c
* libgimpwidgets/gimppreview.h: split this widget into itself (more
  abstract now) and ...

* libgimpwidgets/gimpscrolledpreview.c
* libgimpwidgets/gimpscrolledpreview.h: this widget which also have
  some scrollbars and a nagivation preview.

* libgimpwidgets/Makefile.am
* libgimpwidgets/gimpwidgetstypes.h: changed accordingly.

* libgimp/gimpaspectpreview.c
* libgimp/gimpaspectpreview.h: Added this widget, derived from
  GimpPreview, which has always the same ratio has the given drawable.
  This widget has almost the same api as GimpDrawablePreview, and is
  useful for plug-ins that show the whole (scaled) drawable in their
  preview.

* libgimp/gimpdrawablepreview.c
* libgimp/gimpdrawablepreview.h: GimpDrawablePreview is now derived
  from GimpScrolledPreview.

* libgimp/Makefile.am
* libgimp/gimpui.h
* libgimp/gimpuitypes.h: changed accordingly.

* plug-ins/common/plasma.c: use a GimpAspectPreview.

* plug-ins/common/bumpmap.c
* plug-ins/common/cartoon.c
* plug-ins/common/deinterlace.c
* plug-ins/common/despeckle.c
* plug-ins/common/dog.c
* plug-ins/common/edge.c
* plug-ins/common/engrave.c
* plug-ins/common/exchange.c
* plug-ins/common/gauss.c
* plug-ins/common/grid.c
* plug-ins/common/mblur.c
* plug-ins/common/neon.c
* plug-ins/common/noisify.c
* plug-ins/common/oilify.c
* plug-ins/common/photocopy.c
* plug-ins/common/sel_gauss.c
* plug-ins/common/sharpen.c
* plug-ins/common/shift.c
* plug-ins/common/sobel.c
* plug-ins/common/softglow.c
* plug-ins/common/spread.c
* plug-ins/common/struc.c
* plug-ins/common/unsharp.c
* plug-ins/common/wind.c: use gimp_scrolled_preview_get_position
  instead of gimp_preview_get_position.
2004-09-28 23:23:09 +00:00
Sven Neumann 025e58a12d libgimp/gimpdrawablepreview.c added a navigation popup similar to the one
2004-09-09  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpdrawablepreview.c
	* libgimpwidgets/gimppreview.[ch]: added a navigation popup
	similar to the one in the image window. Needs some more work.
2004-09-09 21:36:52 +00:00
Sven Neumann b3c30779a0 right-align the preview for RTL layouts.
2004-09-09  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]: right-align the preview for RTL
	layouts.
2004-09-09 15:27:34 +00:00
Sven Neumann a514ce7db1 allow to set a maximum size and center the preview area if its allocation
2004-09-09  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreviewarea.[ch]: allow to set a maximum size
	and center the preview area if its allocation extends the maximum.

	* libgimpwidgets/gimppreview.[ch]: derive from GtkVBox, moved the
	toggle button out of the table and put the table into an aspect
	frame. Added an API to set the preview boundaries. Set the maximum
	size of the GimpPreviewArea from that function.

	* libgimpwidgets/gimpwidgets.def: added new entries.

	* libgimp/gimpdrawablepreview.c: use gimp_preview_set_bounds().

	* plug-ins/common/gauss.c: pack the preview widget so that it
	resizes with the dialog.
2004-09-09 14:47:39 +00:00
Sven Neumann 50627802d0 made gimp_preview_draw() public, added some gtk-doc comments.
2004-09-02  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]: made gimp_preview_draw() public,
	added some gtk-doc comments.
	(gimp_preview_toggle_callback): immidiately invalidate the preview.

	* plug-ins/common/gauss.c (gauss): fixed (and simplified) handling
	of zero radii by using the new GimpPreview API.
2004-09-02 10:23:52 +00:00
Sven Neumann 3155d682a5 libgimp/gimpdrawablepreview.[ch] always show the "Preview" check button.
2004-09-01  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpdrawablepreview.[ch]
	* libgimpwidgets/gimppreview.[ch]: always show the "Preview" check
	button. Simplified the preview APIs, moved the "size" style
	property to the GimpPreview class.

	* etc/gtkrc: changed the example accordingly.

	* plug-ins/common/despeckle.c
	* plug-ins/common/gauss.c
	* plug-ins/common/neon.c
	* plug-ins/common/sobel.c
	* plug-ins/common/softglow.c
	* plug-ins/common/spread.c
	* plug-ins/common/unsharp.c: follow change in GimpDrawablePreview API.
2004-09-01 14:01:10 +00:00
Sven Neumann b76075922c set a busy cursor while the preview is being recalculated.
2004-09-01  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]: set a busy cursor while the
	preview is being recalculated.

	* libgimp/gimpdrawablepreview.c (gimp_drawable_preview_draw_original):
	do nothing if there's no drawable.
2004-09-01 12:10:09 +00:00
Sven Neumann 4e513adc61 increased default preview size to 150 pixels. Added a border of 10 pixels
2004-09-01  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpdrawablepreview.c: increased default preview size to
	150 pixels. Added a border of 10 pixels around the bounding box of
	the selection.

	* libgimpwidgets/gimppreview.[ch]: only show the GDK_FLEUR cursor
	if there's something to pan. Set the correct page size on the
	scrollbar adjustments.
2004-09-01 02:10:40 +00:00
Sven Neumann 6f7adcf985 delay the emission of the "invalidated" signal using a timeout. Removed
2004-09-01  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.[ch]: delay the emission of the
	"invalidated" signal using a timeout. Removed hack that used to
	invalidate the preview on button-release.

	* plug-ins/common/unsharp.c: no need to fiddle with the slider
	update policies any longer.
2004-08-31 23:37:04 +00:00
David Odin 06c4f31bb7 libgimpwidgets/gimppreview.c renamed the "updated" signal to "invalidated"
* libgimpwidgets/gimppreview.c
* libgimpwidgets/gimppreview.h: renamed the "updated" signal to
  "invalidated" and the confusing "update" virtual function to "draw".

Renamed the property with saner names, too.

Removed _get_width and _get_height functions in favor of a _get_size on.

Added a gimp_preview_invalidate function that emit the "invalidated"
signal if needed.

* libgimp/gimpdrawablepreview.c
* libgimp/gimpdrawablepreview.h: modified accordingly and fixed the
  scrollbar range.

* plug-ins/common/despeckle.c
* plug-ins/common/gauss.c
* plug-ins/common/neon.c
* plug-ins/common/sobel.c
* plug-ins/common/softglow.c
* plug-ins/common/spread.c
* plug-ins/common/unsharp.c: modified accordingly.
2004-08-31 14:29:25 +00:00
Sven Neumann 2222be0f16 libgimp/gimpdrawablepreview.[ch] minor code cleanup, fixes to gtk-doc
2004-08-31  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpdrawablepreview.[ch]
	* libgimpwidgets/gimppreview.[ch]: minor code cleanup, fixes to
	gtk-doc comments and to the handling of object properties.
2004-08-30 22:49:06 +00:00
David Odin 18139487f9 libgimpwidgets/gimppreview.c added a GimpPreview widget, abstract base for
* libgimpwidgets/gimppreview.c
* libgimpwidgets/gimppreview.h: added a GimpPreview widget, abstract
  base for a GimpDrawablePreview.

* libgimpwidgets/Makefile.am
* libgimpwidgets/gimpwidgets.h
* libgimpwidgets/gimpwidgetstypes.h: modified accordingly.

* libgimp/gimpdrawablepreview.c
* libgimp/gimpdrawablepreview.h: added a GimpDrawablePreview widget
  to ease	the use of previews by plug-ins.

* libgimp/Makefile.am
* libgimp/gimpui.h: Changed accordingly.

* plug-ins/common/despeckle.c
* plug-ins/common/gauss.c
* plug-ins/common/neon.c
* plug-ins/common/sobel.c
* plug-ins/common/softglow.c
* plug-ins/common/spread.c
* plug-ins/common/unsharp.c: use a GimpDrawablePreview with these plug-ins.
2004-08-30 22:10:26 +00:00