Commit Graph

680 Commits

Author SHA1 Message Date
8a80b8e73e fixed coding style issues 2004-09-09 17:13:58 +00:00
3f099b0660 added a utility function gimp_preview_area_queue_draw(), which queue the
* libgimpwidgets/gimppreviewarea.c: added a utility function
  gimp_preview_area_queue_draw(), which queue the right part of the
  preview to be redrawn. And use it in all the drawing functions. This
  fix a problem where the preview wasn't updated correctly after a
  resize.
2004-09-09 17:11:16 +00:00
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
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
824b5289db optimized the case where both buffers have the same alpha for a given
* libgimpwidgets/gimppreviewarea.c (gimp_preview_area_blend)
  (gimp_preview_area_mask): optimized the case where both buffers have
  the same alpha for a given pixel.
2004-09-09 13:22:27 +00:00
ee2e6eac86 fixed a stupid typo.
* libgimpwidgets/gimppreviewarea.c: fixed a stupid typo.
2004-09-08 14:51:02 +00:00
7f075c87d8 optimized solid color fills.
2004-09-08  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreviewarea.c (gimp_preview_area_fill):
	optimized solid color fills.
2004-09-08 12:54:36 +00:00
1a9fdcda80 factored out common code. Reduced indentation level by closing a switch
2004-09-08  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreviewarea.c: factored out common code.
	Reduced indentation level by closing a switch earlier.
2004-09-08 12:37:09 +00:00
c59a6de934 use gimp_preview_area_draw when the opacity is 0 or 255, instead of
*  libgimpwidgets/gimppreviewarea.c: (gimp_preview_area_blend)
  use gimp_preview_area_draw when the opacity is 0 or 255, instead of
  duplicating code.
2004-09-08 11:52:05 +00:00
099458184b added new entries.
2004-09-07  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.def: added new entries.

2004-09-07  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/libgimpwidgets-sections.txt
	* devel-docs/libgimpwidgets/tmpl/gimppreviewarea.sgml: added new
	GimpPreviewArea functions.
2004-09-07 21:58:56 +00:00
0a57c5815e fit output into 80 columns.
2004-09-07  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/test-preview-area.c: fit output into 80 columns.
2004-09-07 21:33:11 +00:00
3568671242 added some tests for gimp_preview_area_blend() and
* libgimpwidgets/test-preview-area.c: added some tests for
  gimp_preview_area_blend() and gimp_preview_area_mask().
2004-09-07 21:04:07 +00:00
e733ca0930 libgimpwidgets/gimppreviewarea.c added two functions:
* libgimpwidgets/gimppreviewarea.c
* libgimpwidgets/gimppreviewarea.h: added two functions:
  gimp_preview_area_blend() to draw the blending of two buffers with
  an opacity parameter, and gimp_preview_area_mask() to draw the
  blending of two buffers, with a mask buffer. The code still needs some
  polish, though.

* libgimp/gimpdrawablepreview.c
* libgimp/gimpdrawablepreview.h: use gimp_preview_area_mask() in
  gimp_drawable_preview_draw(), so the previews are now much more
  accurate (respecting the selection, if any).

Also made the buf parameter of gimp_drawable_preview_draw() a pointer
to constants.
2004-09-07 20:20:13 +00:00
6ece077f87 pass a GdkEventButton to gimp_preview_area_menu_popup().
2004-09-04  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreviewarea.[ch]: pass a GdkEventButton to
	gimp_preview_area_menu_popup().

	* libgimpwidgets/gimppreview.c: implement GtkWidget::popup_menu().
2004-09-03 23:41:39 +00:00
f7a2f14211 Changed the way we attach the preview area frame to the table so very
* libgimpwidgets/gimppreview.c: Changed the way we attach the preview
  area frame to the table so very small drawables don't cause a
  malicious bug.
2004-09-03 23:32:35 +00:00
ecca201aa9 added gimp_preview_area_menu_popup(). Not completely finished yet...
2004-09-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreviewarea.[ch]: added
	gimp_preview_area_menu_popup(). Not completely finished yet...

	* libgimpwidgets/gimppreview.c: use the new function.
2004-09-03 19:34:59 +00:00
4c91c25337 take care of setting the colormap for indexed drawables.
2004-09-03  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpdrawablepreview.c (gimp_drawable_preview_set_drawable):
	take care of setting the colormap for indexed drawables.

	* libgimpwidgets/gimppreview.c (gimp_preview_area_event): pan with
	the first mouse button only. We will need the other buttons.
2004-09-03 16:52:26 +00:00
a1e5a55c7d removed unused function 2004-09-03 13:07:22 +00:00
9b314d0e81 swapped light and gray checks to get a checkerboard that matches the image
2004-09-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreviewarea.c (CHECK_COLOR): swapped light
	and gray checks to get a checkerboard that matches the image window.
2004-09-03 12:57:35 +00:00
4fbc8764b4 libgimpbase/Makefile.am libgimpbase/gimpchecks.[ch] added
2004-09-03  Sven Neumann  <sven@gimp.org>

	* libgimpbase/Makefile.am
	* libgimpbase/gimpchecks.[ch] added gimp_checks_get_shades().

	* app/base/temp-buf.c
	* app/display/gimpdisplayshell-render.c
	* libgimpwidgets/gimppreviewarea.c: use the new function instead
	of replicating these numbers in three different places.
2004-09-03 00:06:21 +00:00
331d85ba29 libgimp/gimpui.def libgimpbase/gimpbase.def added the preview and progress
2004-09-02  Michael Schumacher <schumaml@cvs.gnome.org>

	* libgimp/gimpui.def
	* libgimpbase/gimpbase.def
	* libgimpwidgets/gimpwidgets.def: added the preview and progress
	related entries
2004-09-02 19:54:11 +00:00
3f4de431c1 light and dark check color were swapped for GIMP_CHECK_TYPE_GRAY_CHECKS.
2004-09-02  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (check_combos): light and
	dark check color were swapped for GIMP_CHECK_TYPE_GRAY_CHECKS.

	* libgimpwidgets/gimppreviewarea.[ch]: added "check-size" and
	"check-type" properties and draw the checkerboard accordingly.
2004-09-02 15:39:07 +00:00
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
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
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
e397e4abc4 oops, swapped x and y variables.
2004-09-01  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreviewarea.c (CHECK_COLOR): oops, swapped x
	and y variables.
2004-09-01 08:50:52 +00:00
a7fb4a431a some minor changes, mainly cleanup.
2004-09-01  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.c: some minor changes, mainly cleanup.
2004-09-01 08:18:13 +00:00
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
3a0e874522 added new function gimp_preview_area_set_offsets().
2004-09-01  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreviewarea.[ch]: added new function
	gimp_preview_area_set_offsets().

	* libgimpwidgets/gimppreview.c: use the new function to let the
	checkerboard scroll with the preview.
2004-09-01 01:18:19 +00:00
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
43c21e315e handle the widget size dynamically. Hide scrollbars when there's nothing
2004-08-31  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.c: handle the widget size dynamically.
	Hide scrollbars when there's nothing to scroll.

	* libgimp/gimpdrawablepreview.c: simplified a lot. The scrollbars
	are handled completely in the GimpPreview widget now.
2004-08-31 19:58:25 +00:00
c6dd571113 removed the hardcoded preview size, removed some redundant assertions.
2004-08-31  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimppreview.c: removed the hardcoded preview size,
	removed some redundant assertions.
2004-08-31 18:06:36 +00:00
79da6a9779 notify the "update" property on the preview, not the toggle.
2004-08-31  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppreview.c (gimp_preview_toggle_callback):
	notify the "update" property on the preview, not the toggle.
2004-08-31 15:27:53 +00:00
95a29f9fdc allow to pan the preview with all mouse buttons. Set a cursor to indicate
2004-08-31  Sven Neumann  <sven@gimp.org>

	* libgimp/gimppreview.c: allow to pan the preview with all mouse
	buttons. Set a cursor to indicate that panning is possible.
2004-08-31 15:13:31 +00:00
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
931eac64b3 libgimp/gimpuitypes.h moved the GimpDrawablePreview typedef to the header
2004-08-31  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpuitypes.h
	* libgimpwidgets/gimpwidgetstypes.h: moved the GimpDrawablePreview
	typedef to the header file that it belongs to.

	* libgimp/gimpdrawablepreview.[ch]: minor include cleanups and
	gtk-doc fixes.

2004-08-31  Sven Neumann  <sven@gimp.org>

	* libgimp/Makefile.am
	* libgimp/libgimp-docs.sgml
	* libgimp/libgimp-sections.txt
	* libgimp/libgimp.types
	* libgimp/tmpl/gimpdrawablepreview.sgml: updated for
	GimpDrawablePreview

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/libgimpwidgets-include.c: removed this file, it
	isn't needed since libgimpwidgets doesn't need to be linked
	against libgimp.

	* libgimpwidgets/libgimpwidgets-docs.sgml
	* libgimpwidgets/libgimpwidgets-sections.txt
	* libgimpwidgets/libgimpwidgets.types
	* libgimpwidgets/tmpl/gimppreview.sgml: updated for GimpPreview.
2004-08-31 09:16:47 +00:00
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
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
3cb42821c2 added gimp_scale_entry_set_logarithmic
2004-08-29  Michael Schumacher <schumaml@cvs.gnome.org>

	* libgimpwidgets/gimpwidgets.def: added
	gimp_scale_entry_set_logarithmic
2004-08-29 12:32:43 +00:00
7e9f0d4a71 applied a patch from Joao S. O. Bueno which adds an API that allows to
2004-08-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.[ch]: applied a patch from Joao
	S. O. Bueno which adds an API that allows to make the scale widget
	of a GimpScaleEntry behave logarithmic. Fixes bug #149420.

	* app/widgets/gimpbrusheditor.c: use the new functionality for the
	radius control.
2004-08-28 16:57:37 +00:00
cddf61a3e6 app/widgets/gimppreview.c renamed these two files to...
* app/widgets/gimppreview.c
* app/widgets/gimppreview.h: renamed these two files to...

* app/widgets/gimpview.c
* app/widgets/gimpview.h: ... these files.

Also renamed GimpPreview to GimpView.
This is the first step of the great Preview->View renaming process.

* app/actions/palettes-commands.c

* app/display/gimpdisplayshell-layer-select.c
* app/display/gimpnavigationview.c

* app/gui/palette-import-dialog.c

* app/tools/gimppaintoptions-gui.c

* app/widgets/Makefile.am
* app/widgets/gimpaction.c
* app/widgets/gimpactiongroup.c
* app/widgets/gimpbrusheditor.c
* app/widgets/gimpbufferview.c
* app/widgets/gimpcontainerbox.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainergridview.h
* app/widgets/gimpdevicestatus.c
* app/widgets/gimpdnd.c
* app/widgets/gimpdockbook.c
* app/widgets/gimpfiledialog.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpnavigationpreview.c
* app/widgets/gimpnavigationpreview.h
* app/widgets/gimppaletteeditor.c
* app/widgets/gimppreview-popup.c
* app/widgets/gimppropwidgets.c
* app/widgets/gimpselectioneditor.c
* app/widgets/gimpthumbbox.c
* app/widgets/gimptoolbox-image-area.c
* app/widgets/gimptoolbox-indicator-area.c
* app/widgets/gimptooloptionseditor.c
* app/widgets/gimpviewabledialog.c
* app/widgets/widgets-types.h: changed accordingly.
2004-08-24 17:16:46 +00:00
0620ee069e no need to set a size_request here.
2004-08-18  Sven Neumann  <sven@gimp.org>

	* app/gui/color-notebook.c: no need to set a size_request here.

	* libgimpwidgets/gimpcolorselection.c: HIG-ified spacings.

	* libgimpwidgets/gimpcolorscales.c
	* modules/colorsel_cmyk.c: don't set a minimum width on the color
	scales. Improves behaviour for narrow color dockables.
2004-08-18 21:50:26 +00:00
dbd5eb769b do not build test-preview-area by default, put it into EXTRA_PROGRAMS.
2004-08-08  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am: do not build test-preview-area by
	default, put it into EXTRA_PROGRAMS. Fixes parallel builds.
2004-08-08 11:55:34 +00:00
084f814e1b emit the COLOR_CHANGED signal when the hex entry is changed.
2004-08-07  Simon Budig  <simon@gimp.org>

	* libgimpwidgets/gimpcolorscales.c: emit the COLOR_CHANGED signal
	when the hex entry is changed.
2004-08-07 18:53:32 +00:00
e08e1d746b fixed the rendering for INDEXED and INDEXEDA image types.
* libgimpwidgets/gimppreviewarea.c: fixed the rendering for INDEXED
  and INDEXEDA image types.

* plug-ins/common/grid.c: ported to GimpPreviewArea.
2004-08-07 00:04:16 +00:00
c912a954f3 allocate the empty_iter using g_new0(). Fixes valgrind warnings about
2004-08-05  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpintstore.c (gimp_int_store_add_empty):
	allocate the empty_iter using g_new0(). Fixes valgrind warnings
	about reads from uninitialized memory.
2004-08-05 12:13:02 +00:00
50c962af54 themes/Default/images/Makefile.am removed ...
2004-08-04  Sven Neumann  <sven@gimp.org>

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-brush-generated-*-16.png: removed ...

	* themes/Default/images/stock-shape-*-16.png: ... and added back
	with more generic names.

	* libgimpwidgets/gimpstock.[ch]
	* app/widgets/gimpbrusheditor.c: changed accordingly.

	* app/tools/gimpinkoptions-gui.c: use the new stock icons here as
	well.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpblobeditor.[ch]: added a simple blob shape
	editor widget factored out of app/tools/gimpinkoptions-gui.c.
2004-08-04 18:15:41 +00:00
3b3039148c build but *dont link* display-enums.obj, widget-enums.obj and
2004-07-31  Hans Breuer  <hans@breuer.org>

	* app/display/makefile.msc app/widgets/makefile.msc : build
	but *dont link* display-enums.obj, widget-enums.obj and
	gimpdisplayoptions.obj. They must be in the dll
	* app/makefile.msc : build gimp.exe and gimp-console.exe both
	using the same gimp-core.dll
	* app/gimpcore.def : new file, exports for gimp-core.dll
	* app/Makefile.am : added to EXTRA_DIST

	* cursors/makefile.msc : new file to create gimp-tool-cursors.h
	* cursors/Makefile.am : added to EXTRA_DIST

	* **/makefile.msc : updated

	* app/main.c app/app_procs.c : moved code to close the console
	from the former to the later. It only is to be used if The Gimp
	is not build as console app.

	* plug-ins/gfig/gfig.c : dont gimp_drawable_detach() the same
	drawable twice
	* plug-ins/gfig-dialog.c() : added a g_return_if_fail() to avoid
	crashing on File/Import
2004-08-01 20:51:12 +00:00
f460fda503 added gimp_preview_area_fill
2004-08-01  Michael Schumacher <schumaml@cvs.gnome.org>

	* libgimpwidgets/gimpwidgets.def: added gimp_preview_area_fill
2004-08-01 14:50:09 +00:00
c40e29399d app/core/core-enums.h Implement three different brush shapes for generated
2004-08-01  Simon Budig  <simon@gimp.org>

	* app/core/core-enums.h
	* app/core/gimpbrushgenerated.[ch]: Implement three different
	brush shapes for generated brushes.

	* app/core/gimpbrush.c: changed accordingly.
	* app/core/core-enums.c: regenerated.

	* app/widgets/gimpbrusheditor.[ch]: Add toggles for the shape.
	* themes/Default/images/stock-brush-generated-*-16.png: New stock
	icons for the brush shapes.

	* themes/Default/images/Makefile.am
	* libgimpwidgets/gimpstock.[ch]: changed accordingly

	untabified the files touched.
2004-08-01 03:06:58 +00:00