Commit Graph

96 Commits

Author SHA1 Message Date
Øyvind Kolås 17ac225558 modified some constants and shifts to avoid checkerboard artifacts
svn path=/trunk/; revision=23350
2007-08-22 15:25:16 +00:00
Øyvind Kolås 91c63e4956 replaced bilinear interpolation from next larger pyramid level with a
* app/display/gimpdisplayshell-render.c: replaced bilinear
interpolation from next larger pyramid level with a boxfilter
of the next larger pyramid level.
This is probably the last update to the quality of the display
in GIMP 2.4.

svn path=/trunk/; revision=23349
2007-08-22 14:31:22 +00:00
Øyvind Kolås cfd90e3851 added a bilinear filtering like weighting of neighbourhood pixels for
* app/display/gimpdisplayshell-render.c: added a bilinear filtering
like weighting of neighbourhood pixels for approximating the
downsampling from the next larger level in the projection mipmap.
Also some general code cleanup.

svn path=/trunk/; revision=23278
2007-08-15 21:29:43 +00:00
Øyvind Kolås 38dacc4571 Fixed regression at zoom levels > 100%, and moved some floating point code
* app/display/gimpdisplayshell-render.c: Fixed regression at zoom
levels > 100%, and moved some floating point code out of the worker
function.

svn path=/trunk/; revision=23251
2007-08-14 15:17:30 +00:00
Øyvind Kolås 2b11d50cfb replaced a computed lookup table acceleration with fixed point logic.
* app/display/gimpdisplayshell-render.c: replaced a computed lookup
table acceleration with fixed point logic.

svn path=/trunk/; revision=23249
2007-08-14 13:52:42 +00:00
Sven Neumann 0c64210b15 app/display/gimpdisplay.c formatting.
2007-08-13  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.c
	* app/display/gimpdisplay-render.c: formatting.


svn path=/trunk/; revision=23241
2007-08-13 19:36:18 +00:00
Martin Nordholts 17f91f0491 Refactored the two helper functions render_image_init_info(_full)? and
2007-06-21  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-render.c (gimp_display_shell_render):
	Refactored the two helper functions render_image_init_info(_full)?
	and always use the shell base scale for the shell->mask. Fixes
	bug #448417.

svn path=/trunk/; revision=22822
2007-06-21 20:27:19 +00:00
Sven Neumann a4079a37db minor API cleanup. Use horizontal and vertical scale to determine the
2007-06-06  Sven Neumann  <sven@gimp.org>

	* app/core/gimpprojection.[ch]: minor API cleanup. Use 
horizontal
	and vertical scale to determine the pyramid level to use.

	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-render.c: follow the API change.


svn path=/trunk/; revision=22730
2007-06-06 21:40:31 +00:00
Martin Nordholts 7917611e53 Implemented an image pyramid for the GimpProjection. An image pyramid
2007-06-06  Martin Nordholts  <martinn@svn.gnome.org>

	Implemented an image pyramid for the GimpProjection. An image pyramid
	caches a projection at several sizes, causing the rendering code not to
	have to swap in all tiles of a (potentially) large image; it can use
	small versions of the projection if the user is zoomed out.

	The image pyramid also imroves visual quality, especially at zoom levels
	where there is a pyramid level that matches perfectly (i.e. at e.g. 50%,
	25%, and 12.5% zoom). A step on the right track for bug #76096.

	* app/core/gimpprojection.[ch]: Adjusted to make use of an image
	pyramid. GimpProjection now keeps an array of TileManager:s, one per
	pyramid level. Renamed _alloc_tiles to _alloc_levels.

	* app/display/gimpdisplayshell-draw.c: (gimp_display_shell_draw_area):
	Use the right GimpProjection level when drawing

	* app/display/gimpdisplayshell-render.c: (render_image_init_info_full):
	Setup RenderInfo with level in mind

	* app/base/tile-manager.[ch]: Extended API a bit, nothing complicated.

	* app/base/tile-manager-private.h (struct _TileManager): Keep a pointer
	to the level below for use in an image pyramid.


svn path=/trunk/; revision=22727
2007-06-06 13:45:44 +00:00
Sven Neumann 2e551e08fd sprinkled some const qualifiers and removed obscure shift code in favor of
2007-03-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c: sprinkled some const
	qualifiers and removed obscure shift code in favor of letting the
	compiler do this optimization.


svn path=/trunk/; revision=22121
2007-03-14 14:37:04 +00:00
Sven Neumann b95ead41e3 renamed newly added members to scale_x and scale_y and removed the
2007-03-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.[ch]: renamed newly added members
	to scale_x and scale_y and removed the SCALEFACTOR macros.

	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpnavigationeditor.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimprectangletool.c: changed accordingly.


svn path=/trunk/; revision=22120
2007-03-14 10:26:19 +00:00
Michael Natterer 83d3a750d4 include "libgimpmath/gimpmathtypes.h" instead of "libgimpmath/gimpmath.h".
2007-03-09  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: include "libgimpmath/gimpmathtypes.h"
	instead of "libgimpmath/gimpmath.h".

	* app/core/gimpbrush.h
	* app/paint/gimppaintcore.h
	* app/paint/gimpperspectiveclone.h
	* app/text/gimptext.h
	* app/tools/gimptransformtool.h: include gimpvector.h and
	gimpmatrix.h explicitely where they are needed in public structs.

	* app/*/*.c
	* tools/pdbgen/pdb/paths.pdb: include "libgimpmath/gimpmath.h"
	where needed.

	* app/pdb/paths_cmds.c: regenerated.


svn path=/trunk/; revision=22084
2007-03-09 13:00:01 +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
Sven Neumann 049872b361 app/*.[ch] converted tabs to spaces.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* app/*.[ch]
	* app/*/*.[ch]: converted tabs to spaces.
2006-04-12 12:49:29 +00:00
Sven Neumann cef9db57fe renamed gimp_drawable_data() to gimp_drawable_get_tiles().
2006-04-07  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable.[ch]: renamed gimp_drawable_data() to
	gimp_drawable_get_tiles().

	[lots of files]: changed accordingly.
2006-04-07 09:21:18 +00:00
Sven Neumann 5439aa4995 did a global gdisp -> display substitution.
2006-03-28  Sven Neumann  <sven@gimp.org>

	* app/*: did a global gdisp -> display substitution.
2006-03-28 17:55:52 +00:00
Sven Neumann 905fdfcbed did a global gimage -> image substitution.
2006-03-28  Sven Neumann  <sven@gimp.org>

	* app/*: did a global gimage -> image substitution.
2006-03-28 17:08:36 +00:00
Sven Neumann ac777da954 app/display/gimpdisplayshell-render.c app/display/gimpdisplayshell.[ch]
2006-03-17  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell.[ch]
	* app/tools/gimpforegroundselectoptions.[ch]
	* app/tools/gimpforegroundselecttool.c: allow to use red, green or
	blue for the selection preview used by the foreground selection tool.
2006-03-17 13:27:08 +00:00
Sven Neumann 11b6874947 app/display/gimpdisplayshell-render.c
2005-07-31  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c

	* app/display/gimpdisplayshell.[ch]: removed the overlay again.
	This needs to be done differently.

	* app/tools/gimpforegroundselecttool.c: changed accordingly.
2005-07-31 10:40:54 +00:00
Sven Neumann d53a10c004 app/display/gimpdisplayshell-render.c renamed overlay to mask and added a
2005-07-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell.[ch]: renamed overlay to mask and
	added a different overlay implementation that will be needed to
	finish the new foreground-select tool.

	* app/tools/gimpforegroundselecttool.c: changed accordingly.
2005-07-30 22:29:02 +00:00
Sven Neumann 1016a3dc14 app/display/gimpdisplayshell-render.c added
2005-07-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell.[ch]: added
	gimp_display_shell_set_overlay(); allows to overlay a mask over the
	display to visualize a selection.

	* app/tools/gimpforegroundselecttool.[ch]: use the new functionality
	to display the selection. Escape cancels the tool, Enter applies the
	selection.
2005-07-30 18:19:54 +00:00
Michael Natterer 19ea2a9db4 app/widgets/Makefile.am new files keeping the render acceleration check
2005-07-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimprender.[ch]: new files keeping the render
	acceleration check buffers.

	* app/display/gimpdisplayshell-render.[ch]: removed them here.

	* app/gui/gui.c: initialize/shutdown the new buffers.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpviewrenderer.c
	* app/widgets/gimpviewrenderergradient.c
	* app/actions/view-actions.c
	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell.c: use the new stuff. Removes
	lots of broken widgets -> display dependencies.
2005-07-19 20:42:14 +00:00
Sven Neumann 3bb2f79984 inline tile_manager_get_tile_num().
2005-05-09  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.c: inline tile_manager_get_tile_num().

	* app/display/gimpdisplayshell-render.c (render_image_tile_fault):
	reverted one of the changes I did here earlier.
2005-05-08 23:30:54 +00:00
Sven Neumann a2428303fc fixed an oversight from yesterday's changes.
2005-04-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (render_image_rgb): fixed
	an oversight from yesterday's changes.
2005-04-28 10:48:38 +00:00
Sven Neumann 5953d527df spare a few CPU cycles.
2005-04-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c: spare a few CPU cycles.
2005-04-27 23:27:10 +00:00
Sven Neumann 928b4f23a6 removed redundant check.
2005-04-27  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.c (tile_manager_get_tile): removed
	redundant check.

	* app/display/gimpdisplayshell-render.c: don't access the next
	tile if we are at the end of the render loop anyway.
2005-04-27 17:53:10 +00:00
Sven Neumann 1b142e3b2a removed unused byte_order variables.
2005-04-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c: removed unused byte_order
	variables.
2005-04-27 17:01:56 +00:00
Sven Neumann 61d6c9353f declared the return value of gimp_image_get_colormap() as const.
2005-04-27  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-colormap.[ch]: declared the return value of
	gimp_image_get_colormap() as const.

	* app/display/gimpdisplayshell-render.c: added some const qualifiers.
2005-04-27 16:44:28 +00:00
Sven Neumann 297b53a466 no need to include gimpdisplayshell-render.h here.
2004-10-01  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: no need to include
	gimpdisplayshell-render.h here.

	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-render.[ch]

	* app/display/gimpdisplayshell.[ch]: added an API to highlight a
	rectangle (specified in image coordinates). Actually it doesn't
	highlight but dims the area outside the rectangle.

	* app/tools/gimpcroptool.c: use the new functionality to show the
	area to be cropped. Fixes bug #93360.
2004-10-01 09:50:04 +00:00
Sven Neumann 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
Sven Neumann 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
Sven Neumann b9bd1bfa06 app/base/base-enums.[ch] moved GimpCheckSize and GimpCheckType enums to
2004-09-02  Sven Neumann  <sven@gimp.org>

	* app/base/base-enums.[ch]
	* libgimpbase/gimpbaseenums.[ch]: moved GimpCheckSize and
	GimpCheckType enums to libgimpbase. Correctly prefix the enum
	values.

	* app/base/temp-buf.c
	* app/config/gimpdisplayconfig.c
	* app/display/gimpdisplayshell-render.c
	* app/pdb/fileops_cmds.c
	* tools/pdbgen/pdb/fileops.pdb: changed accordingly.
2004-09-02 14:28:37 +00:00
Michael Natterer c5ec0d4f70 *** empty log message *** 2004-07-13 16:36:29 +00:00
Michael Natterer d88c150c4b use gdouble instead of gfloat for x and y scale factors so gfloat's
2004-02-04  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-render.c (struct RenderInfo)
	(render_image_accelerate_scaling): use gdouble instead of gfloat
	for x and y scale factors so gfloat's limited precision can't add
	up to off-by-one pixel errors. Fixes display artefacts (missing
	updates) at the bottom and right sides of updated areas at certain
	irrational zoom factors like 1:3.
2004-02-04 02:00:04 +00:00
Michael Natterer 32bc599dc3 forgot to declare gimp_color_display_stack_clone().
2003-11-21  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpcolordisplaystack.h: forgot to declare
	gimp_color_display_stack_clone().

	* app/display/gimpdisplayshell.[ch]: replaced the GList of
	GimpColorDisplays by a single GimpColorDisplayStack.

	* app/display/gimpdisplayshell-render.c
	(gimp_display_shell_render): changed accordingly.

	* app/display/gimpdisplayshell-filter.[ch]: reduced API to a
	single function, gimp_display_shell_filter_set(), which exchanges
	the whole filter stack. Idle update the display on
	GimpColorDisplayStack::update().

	* app/display/gimpdisplayshell-filter-dialog.[ch]: changed
	accordingly.  Return the created dialog instead of assigning
	shell->filters_dialog.

	* app/gui/view-commands.c (view_display_filters_cmd_callback): set
	shell->filters_dialog here and raise it it if already
	exists. Don't use the dialog factory to create it because it's a
	transient dialog for the display which does not need to be session
	managed.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.c: removed display filter dialog stuff.
2003-11-21 22:52:36 +00:00
Sven Neumann db4ec04144 no need to set colors on the GCs that use GDK_INVERT.
2003-11-15  Sven Neumann  <sven@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_gc_new): no need to set
	colors on the GCs that use GDK_INVERT.

	* app/display/gimpdisplayshell-render.c (gimp_display_shell_render):
	micro cleanup.
2003-11-15 14:30:26 +00:00
Sven Neumann 058764f4ba app/display/gimpcanvas.[ch] moved GC from the the draw tool to GimpCanvas.
2003-11-10  Sven Neumann  <sven@gimp.org>

	* app/display/gimpcanvas.[ch]
	* app/tools/gimpdrawtool.[ch]: moved GC from the the draw tool to
	GimpCanvas. Added wrappers around GDK drawing functions and do all
	canvas drawing by means of these new functions.

	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpfuzzyselecttool.c: draw using the new GimpCanvas
	functions.
2003-11-10 19:35:56 +00:00
Sven Neumann 621c5832db app/display/Makefile.am app/display/display-types.h added GimpCanvas,
2003-11-10  Sven Neumann  <sven@gimp.org>

	* app/display/Makefile.am
	* app/display/display-types.h
	* app/display/gimpcanvas.[ch]: added GimpCanvas, derived from
	GtkDrawingArea.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell.[ch]
2003-11-09 23:24:40 +00:00
Sven Neumann 2c1b4f78bc applied a patch from Pedro Gimeno that fixes the display render problems
2003-04-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c: applied a patch from
	Pedro Gimeno that fixes the display render problems at high zoom
	levels (bug #109933).
2003-04-04 11:42:46 +00:00
Michael Natterer fdb7265a7c #define GIMP_VIEWABLE_MAX_PREVIEW_SIZE here.
2003-04-01  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.h: #define GIMP_VIEWABLE_MAX_PREVIEW_SIZE
	here.

	* app/widgets/gimppreview.h
	* app/widgets/gimppreviewrenderer.h: removed the #defines here.

	* app/core/gimpviewable.c (gimp_preview_get[_popup]_size): check
	the return values to be within bounds.

	* app/text/gimpfont.c
	* app/display/gimpdisplayshell-render.c: use the new constant
	instead of the magic "1024".

	* app/core/gimpdrawable-preview.c: #include our own header file.

	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainermenu.c
	* app/widgets/gimpcontainermenuimpl.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpcontainerview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppreview.c
	* app/widgets/gimppreviewrenderer.c: changed accordingly.
2003-04-01 13:53:47 +00:00
Sven Neumann 6fb7877ebd don't emit the "scaled" signal from gimp_display_shell_scale_setup(). Emit
2003-03-21  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scale.c: don't emit the "scaled"
	signal from gimp_display_shell_scale_setup(). Emit it explicitely
	from gimp_display_shell_scale_resize() instead.

	* app/display/gimpdisplayshell-scroll.c: call
	gimp_display_shell_scale_setup() after scrolling in order to
	update scrollbars and rulers.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c: emit the "scaled" signal
	explicitely.

	* app/display/gimpdisplayshell-render.c: minor optimizations.

	* app/display/gimpdisplayshell.c: minor cleanup.
2003-03-21 16:28:06 +00:00
Michael Natterer 41c6861bf6 #include "core/gimpimage-colormap.h".
2003-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-render.c: #include
	"core/gimpimage-colormap.h".
2003-03-19 14:44:08 +00:00
Michael Natterer 305db405b2 added "gchar *stock_id" to the GimpViewable struct. It is used by the GUI
2003-02-26  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpviewable.[ch]: added "gchar *stock_id" to the
	GimpViewable struct. It is used by the GUI if the get_preview()
	functions return NULL. Default to GTK_STOCK_DIALOG_QUESTION.

	* app/core/gimptoolinfo.[ch]: set the tool's stock_id. Removed
	the cached GdkPixbuf. Don't implement any preview function
	so the GUI uses the stock_id.

	* app/tools/tool_manager.c: removed GdkPixbuf creation, removed
	the #warning about the buggy way we created the pixbuf.

	* app/gui/dialogs-constructors.c
	* app/gui/image-menu.c
	* app/tools/gimpcroptool.c
	* app/tools/gimphistogramtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimptoolbox.c: use viewable->stock_id instead
	of tool_info->stock_id.

	* app/core/gimpbrush.c
	* app/core/gimpgradient.c
	* app/core/gimpimagefile.c
	* app/core/gimpundo.c: simplified get_preview() implementations:

	- never scale previews up, only down.
	- don't render white or checks backgrounds but simply return
	  TempBufs with alpha and let the preview system do its job.
	- don't add padding but simply return previews smaller than
	  requested.

	* app/display/gimpdisplayshell-render.[ch]: added
	"render_blend_white", a 2d lookup table for blending on white,
	just as the check lookup tables. Added "render_white_buf".

	* app/widgets/gimppreview.[ch]: changed a lot:

	- don't render the preview's border into the buffer.
	- added "GdkGC *border_gc" and draw the preview's border in expose()
	  using gdk_draw_rectangle().
	- added "GdkPixbuf *no_preview_pixbuf" and create it in
	  gimp_preview_real_render() if gimp_viewable_get_preview()
	  returned NULL.
	- factored the actual preview rendering out to
	  gimp_preview_render_to_buffer(). Added configurable background
	  rendering for the preview itself and it's padding area
	  (the area the preview is larger than the buffer returned
	  by gimp_viewable_get_preview()).
	- changed gimp_preview_render_and_flush() to
	  gimp_preview_render_preview() and added "inside_bg" and
	  "outside_bg" parameters.
	- use the new render buffers for blending on white.

	* app/widgets/gimpbrushpreview.c
	* app/widgets/gimpbufferpreview.c
	* app/widgets/gimpdrawablepreview.c
	* app/widgets/gimpgradientpreview.c
	* app/widgets/gimpimagepreview.c
	* app/widgets/gimppalettepreview.c
	* app/widgets/gimppatternpreview.c: don't create large white
	TempBufs to center the previews in but simply set the TempBuf's
	offsets to get them centered. Simplified & cleaned up many preview
	render functions. Pass the correct GimpPreviewBG modes to
	gimp_preview_render_preview().

	* app/widgets/gimpcellrendererviewable.[ch]: new GtkCellRenderer
	class derived from GtkCellRendererPixbuf which knows how
	to use gimp_viewable_get_preview_size() and renders the
	viewable's stock item if no preview can be created.

	* app/widgets/gimpcontainertreeview.c: added a GtkTreeCellDataFunc
	which creates the preview pixbuf if needed so we don't create it
	unconditionally upon item insertion. Fixed preview size assertion
	to use GIMP_PREVIEW_MAX_SIZE, not "64". Block "selection_changed"
	while reordering the selected item.

	* app/widgets/gimpcontainerview.c: cosmetic.

	* app/widgets/gimpimagefilepreview.[ch]
	* app/widgets/gimptoolinfopreview.[ch]
	* app/widgets/gimpundopreview.[ch]: removed because the default
	implementation is good enough.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppreview-utils.c: changed accordingly.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: register grid and tree view variants
	of the document history.

	Unrelated:

	* app/gui/gui.c (gui_exit_finish_callback): disconnect from
	signals earlier.

	* app/gui/user-install-dialog.c: create the "tool-options" subdir
	of the user's ~/.gimp-1.3 directory.
2003-02-26 16:17:10 +00:00
Michael Natterer 0bd9abbf23 removed gimp_displays_invalidate() again.
2003-02-24  Michael Natterer  <mitch@convergence.de>

	* app/display/gimpdisplay-foreach.[ch]: removed
	gimp_displays_invalidate() again.

	* app/display/gimpdisplayshell-render.c: don't call it.

	* app/display/gimpdisplayshell-handlers.c
	(gimp_display_shell_check_notify_handler): put the call to
	gimp_display_shell_expose_full() back I "optimized" away a few
	days ago.
2003-02-24 12:30:33 +00:00
Sven Neumann 9c957fa1d5 added new function gimp_displays_invalidate() which queues a redraw on all
2003-02-21  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay-foreach.[ch]: added new function
	gimp_displays_invalidate() which queues a redraw on all displays
	by calling gimp_display_shell_expose_full().

	* app/display/gimpdisplayshell-render.c (render_setup_notify):
	invalidate all displays when the transparency type or size changes.

	* app/tools/gimptexttool.c (text_tool_button_press): readded some
	code I accidentally removed in my last commit.

	* app/text/gimptextlayout.c (gimp_text_layout_new): always set the
	font size but make sure it is at least 1.
2003-02-21 21:39:42 +00:00
Sven Neumann 1b0339ad34 replaced a for-loop with a call to memcpy().
2003-02-21  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (render_image_rgb):
	replaced a for-loop with a call to memcpy().

	* app/display/gimpdisplay.c: use g_memdup() instead of g_new()
	followed by memcpy().
2003-02-21 12:48:13 +00:00
Manish Singh 1a44f2126c cleanup, removed unecessary G_OBJECT() casts. Should do the same for
2003-01-05  Manish Singh  <yosh@gimp.org>

        * many files in app, modules and libgimp*: cleanup, removed unecessary
        G_OBJECT() casts. Should do the same for plug-ins, when more of them
        get undeprecated.
2003-01-05 22:07:10 +00:00
Sven Neumann 8a678c0948 removed useless assignments.
2002-12-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (render_image_tile_fault):
	removed useless assignments.

	* plug-ins/common/aa.c: removed wrong assertions that caused the
	plug-in to crash on images with odd width or height (#100344).
	Added support for RGB images as well as alpha channel while I was
	on it.
2002-12-04 19:02:45 +00:00
Michael Natterer 024061d9d7 added tile_cache_init() and tile_cache_exit() as public functions.
2002-11-21  Michael Natterer  <mitch@gimp.org>

	* app/base/tile-cache.[ch]: added tile_cache_init() and
	tile_cache_exit() as public functions.

	* app/base/base.c: call them. Connect to GimpBaseConfig's
	notify::tile-cache-size.

	* app/core/gimpimage.c: connect to notify::transparency-type and
	notify::transparency-size and call
	gimp_image_invalidate_layer_previews() in the callback.

	* app/display/gimpdisplay-foreach.[ch]: removed
	gdisplays_expose_full().

	* app/display/gimpdisplayshell-handlers.c: connect to
	notify::transparency-type and notify::transparency-size and expose
	the shell in the callback.

	* app/display/gimpdisplayshell-render.[ch]: added render_init()
	and render_exit() functions and connect to
	notify::transparency-type and notify::transparency-size for
	setting up the render buffers.

	* app/gui/gui.c: call the new functions instead of render_setup().
	Connect to notify::show-tool-tips.

	* app/gui/preferences-dialog.c: copy values between the global
	config object and its local clone only when they have changed.
	Wrap setting of lots of values in g_object_[freeze|thaw]_notify().
	Added lots of mnemonics.

	* app/gui/resolution-calibrate-dialog.c: added mnemonics.

	* app/widgets/gimppropwidgets.c: g_object_set() the values edited
	by the gimp_prop_coordinates() much less often by remembering the
	old values and setting them only when they have changed.
2002-11-21 15:46:19 +00:00
Sven Neumann 073e533a8a Finally landed the new GimpConfig based gimprc parser. It's not finished
2002-11-18  Sven Neumann  <sven@gimp.org>

	Finally landed the new GimpConfig based gimprc parser. It's not
	finished yet but we need to start somewhere. This release removes
	the old gimprc.[ch] files. The gimprc format changes slightly, but
	the changes are minimal. The Preferences dialog is temporarily
	disabled since it still needs to be ported. If you are are afraid,
	stay away from CVS for a few days ;-)

	* app/Makefile.am
	* app/gimprc.[ch]: removed the old gimprc system.

	* app/base/Makefile.am
	* app/base/base-config.[ch]: removed these files in favor of
	config/gimpbaseconfig.[ch].

	* app/core/Makefile.am
	* app/core/gimpcoreconfig.[ch]: removed these files in favor of
	config/gimpcoreconfig.[ch].

	* app/config/Makefile.am
	* app/config/config-types.h: moved typedefs into this new file.

	* app/config/gimpbaseconfig.[ch]
	* app/config/gimpcoreconfig.[ch]
	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc.[ch]
	* app/config/test-config.c: brought into shape for real use.

	* app/base/base-types.h: include config/config-types.h here. Added
	a global GimpBaseConfig *base_config variable to ease migration.

	* app/gui/Makefile.am: temporarily disabled the preferences dialog.

	* app/app_procs.c
	* app/undo.c
	* app/undo_history.c
	* app/base/base.[ch]
	* app/base/gimphistogram.c
	* app/base/pixel-processor.c
	* app/base/temp-buf.c
	* app/base/tile-cache.c
	* app/core/core-types.h
	* app/core/gimp-documents.c
	* app/core/gimp.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpcontext.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimpmodules.c
	* app/core/gimppattern.c
	* app/display/Makefile.am
	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpnavigationview.c
	* app/file/file-save.c
	* app/gui/device-status-dialog.c
	* app/gui/dialogs-constructors.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/gui/paths-dialog.c
	* app/gui/resize-dialog.c
	* app/gui/session.c
	* app/gui/test-commands.c
	* app/gui/tips-dialog.c
	* app/gui/tips-dialog.h
	* app/gui/user-install-dialog.c
	* app/gui/view-commands.c
	* app/paint/gimppaintcore.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c
	* app/tools/gimpbezierselecttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimppathtool.c
	* app/tools/gimptexttool.[ch]
	* app/tools/selection_options.c
	* app/tools/tools.c
	* app/tools/transform_options.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpitemfactory.c
	* app/widgets/gimpselectioneditor.c
	* app/xcf/xcf-load.c
	* tools/pdbgen/pdb/fileops.pdb
	* tools/pdbgen/pdb/gimprc.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: use the new config system
	instead of the old gimprc stuff.

	* etc/gimprc.in
	* etc/gimprc_user.in: adapted to the new gimprc format. Will update
	the man-page later...

	* app/pdb/fileops_cmds.c
	* app/pdb/gimprc_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/transform_tools_cmds.c
	* libgimp/gimpgimprc_pdb.c: regenerated.
2002-11-18 20:50:31 +00:00