1. 21 Feb, 2002 1 commit
    • Michael Natterer's avatar
      return the corrent value in g_retuen_val_if_fail(). · 5153abaf
      Michael Natterer authored
      2002-02-21  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimpdrawtool.c: return the corrent value in
      	* app/tools/gimppainttool.c: removed some more painting logic...
      	* app/paint/gimppaintcore.[ch]: ...and added it here so the PDB
      	wrappers can use it too. Added "gboolean use_pressure" which needs
      	to be set by GimpPaintTool so we don't need access to GdkDevices.
  2. 18 Feb, 2002 1 commit
    • Michael Natterer's avatar
      app/tools/tools-types.h chain up unconditionally in control(), · bec4c725
      Michael Natterer authored
      2002-02-18  Michael Natterer  <mitch@gimp.org>
      	* app/tools/tools-types.h
      	* app/tools/*.[ch]: chain up unconditionally in control(),
      	s/ToolAction/GimpToolAction/g, s/ToolState/GimpToolState/g.
      	* app/tools/gimpbezierselecttool.c
      	* app/tools/gimpinktool.c
      	* app/tools/gimppainttool.c: don't touch tool->paused_count
      	(setting it to 0 was a hack which should no longer be needed).
      	* app/tools/gimpdrawtool.c: check if the draw tool has actually
      	been started (draw_tool->gdisp != NULL) before calling it's
      	draw() function.
      	* app/tools/tool_manager.c: simplified tool_manager_control_active():
      	simply call gimp_tool_control() if gdisp == tool->gdisp.
      	* app/tools/gimptool.[ch]: gimp_tool_control(): do all the PAUSE,
      	RESUME and HALT voodoo here.
      	* app/tools/gimppainttool.c: implemented #9902 (Drawing straight
      	lines does not work between different views). It's an evil hack,
      	but clearly marked in the source.
  3. 17 Feb, 2002 1 commit
    • Michael Natterer's avatar
      Fixed #34633 (wheel mouse zooming leaves straigth-line helpline on image) · 2ccbf2a4
      Michael Natterer authored
      2002-02-17  Michael Natterer  <mitch@gimp.org>
      	Fixed #34633 (wheel mouse zooming leaves straigth-line helpline on
      	image) and maybe some other stuff caused by the misbehaviour
      	described below:
      	* app/tools/tools-types.h
      	* app/tools/tool_manager.c (tool_manager_control_active):
      	Removed the "PAUSED" ToolState.
      	The possible state transitions were INACTIVE <-> ACTIVE <-> PAUSED,
      	where the ACTIVE <-> PAUSED transition was done only in the
      	tool_manager, causing the tools's control() never to be called
      	when the tool was INACTIVE.
      	The GimpPaintTool however wants to draw on the display when it's
      	INACTIVE, and of course wants to be suspended/resumed correctly
      	while fiddling with display repainting/scaling/...
      	The PAUSED state was also redundant information, since
      	(tool->paused_count > 0) is the same information (only more
      	correct and independent of tool activity).
      	* app/display/gimpdisplayshell-scale.[ch]: suspend/resume the
      	active tool around _all_ changes to the display's "scale" and
      	"offset" fields.  Added new function
      	gimp_display_shell_scale_by_values() which does that and is called
      	from all places which need to change these values.
      	* app/tools/gimpmagnifytool.c: changed accordingly.
      	Unrelated stuff:
      	* app/paint/gimpairbrush.c: added a #warning FIXME.
      	* app/tools/gimpdrawtool.c: made a warning more verbose.
      	* app/tools/gimppainttool.c: put one more drawable offset
      	calculation in { .. }, will make a utility function out of it...
  4. 07 Feb, 2002 1 commit
    • Michael Natterer's avatar
      made the gimp_object_get_memsize() debugging output configurable by a · 758de05b
      Michael Natterer authored
      2002-02-06  Michael Natterer  <mitch@gimp.org>
      	* app/core/gimpobject.c: made the gimp_object_get_memsize()
      	debugging output configurable by a global "gimp_debug_memsize"
      	* app/display/gimpdisplay.c: removed duplicated prototype.
      	* app/display/gimpdisplayshell.[ch]: renamed the various cursor
      	functions to be more consistent and shorter. Compress window title
      	updates by adding a "gboolean title_dirty" and updating the title
      	in gimp_display_shell_flush().  Added "%m" (memory size) to the
      	possible title string substitutions.
      	* app/display/gimpdisplay-foreach.c
      	* app/display/gimpdisplayshell-handlers.c
      	* app/tools/gimpfuzzyselecttool.c
      	* app/tools/gimptool.c: changed accordingly.
      	* app/display/gimpdisplayshell-callbacks.c: forgot to grab the
      	pointer when dragging guides from the rulers. Coincidentially,
      	this also fixes the buggy offset between guide and mouse
      	Cleaned up the main tool event callback a but more.
      	* app/widgets/gimppreview.c
      	* app/gui/commands.c: set the new global "gimp_debug_memsize"
      	toggle to TRUE while calling gimp_object_get_memsize().
      	* app/gui/preferences-dialog.c: added a image title example
      	containing the new "%m" feature.
      	* docs/gimprc-1.3.5.in: document "%m" in the manpage.
      	* app/tools/gimpbezierselecttool.c: reordered some statements.
      	* app/tools/gimpdrawtool.[ch]: store the GimpDisplay passed to
      	gimp_draw_tool_start() in draw_tool->gdisp and use it for
      	coordinate transfomration. This way we can paint on a display
      	which is not tool->gdisp.
      	* app/tools/gimppainttool.c: changed the gimp_draw_tool_foo()
      	calls needed to make the straight_line preview work in a way
      	that does not interfere with paint_tool subclasses which want
      	to do their own drawing (like the clone tool).
      	Also changed the paint_tools PRETRACE_PAINT and POSTTRACE_PAINT
      	flags usage in a way that subclasses can use them without major
      	hackery: don't simply wrap gimp_display_flush_now() with
      	PRETRACE/POSTTRACE calls, but wrap the actual painting calls, so
      	subclasses are able to do useful things with paint_tool->*_coords.
      	* app/tools/gimpclonetool.c: removed poking around in draw_tool
      	internals and simply suspend()/resume() it in
      	PRETRACE_PAINT/POSTTRACE_PAINT to get the clone_src indicator
      	drawn correctly.
  5. 03 Feb, 2002 1 commit
    • Michael Natterer's avatar
      app/display/Makefile.am app/display/display-types.h new widget derived · 0440bbbf
      Michael Natterer authored
      2002-02-03  Michael Natterer  <mitch@gimp.org>
      	* app/display/Makefile.am
      	* app/display/display-types.h
      	* app/display/gimpstatusbar.[ch]: new widget derived from
      	GtkStatusbar.  Contains the coordinates display, a progress bar
      	which is also used for status message display and a cancel button.
      	Added a simplified API for pushing/popping messages which takes a
      	string as context_id and does the conversion to guint internally
      	on each call.
      	* app/display/gimpdisplayshell.[ch]: removed the status bar code.
      	* app/display/gimpdisplayshell-callbacks.c
      	* app/display/gimpdisplayshell-handlers.c
      	* app/display/gimpdisplayshell-scale.c
      	* app/gui/view-commands.c
      	* app/gimpprogress.c: changed accordingly.
      	Removed knowledge about GimpDisplayShell from tools:
      	* app/tools/gimptool.[ch]: added gimp_tool_push_status() and
      	gimp_tool_pop_status() so tools don't need to fiddle with
      	display details.
      	* app/tools/gimpdrawtool.[ch]: pass a GimpDisplay instead of
      	a GdkWindow to gimp_draw_tool_start() (the window passed was
      	always gdisp->shell->canvas->window).
      	* app/tools/gimpbezierselecttool.c
      	* app/tools/gimpblendtool.[ch]
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpcroptool.[ch]
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpfreeselecttool.c
      	* app/tools/gimpfuzzyselecttool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimpmagnifytool.c
      	* app/tools/gimpmeasuretool.[ch]
      	* app/tools/gimpmovetool.c
      	* app/tools/gimppainttool.[ch]
      	* app/tools/gimppathtool.c
      	* app/tools/gimprectselecttool.[ch]
      	* app/tools/gimptransformtool.c: changed accordingly:
      	- pass GimpDisplay to gimp_draw_tool_start().
      	- use GimpTool's new status push/pop functions.
      	- removed the statusbar context_id from all tool structs.
      	* app/gui/dialogs-constructors.[ch]: a bit cleanup in preparation
      	of dockable editor dialogs.
  6. 22 Nov, 2001 2 commits
    • Michael Natterer's avatar
      added stock *items* (not only icons) for all tools so they can be used as · 80492e66
      Michael Natterer authored
      2001-11-22  Michael Natterer  <mitch@gimp.org>
      	* libgimpwidgets/gimpstock.c: added stock *items* (not only icons)
      	for all tools so they can be used as action buttons.
      	* app/tools/gimptransformtool.[ch]: added
      	transform_tool->use_center so subclasses can switch on/off center
      	detection/cursor_update . Added an oper_update() implementation
      	and figure the current handle out there. Reordered button_press()
      	so we don't need to call it recursively.
      	* app/tools/gimpperspectivetool.c
      	* app/tools/gimprotatetool.c
      	* app/tools/gimpscaletool.c
      	* app/tools/gimpsheartool.c: use the new stock items instead of
      	_("Rotate") etc.
      	* app/tools/gimpperspectivetool.c
      	* app/tools/gimpscaletool.c: allow the whole thing being dragged
      	around by handling the center separately.
      	* app/tools/gimpdrawtool.c: gimp_draw_tool_on_handle(): need to
      	use the radius, not the diameter to check if being over a
      	GIMP_HANDLE_CIRCLE handle.
    • Michael Natterer's avatar
      use "gimp-item-data" instead of "user_data" as data key when attaching · a08f3ac0
      Michael Natterer authored
      2001-11-22  Michael Natterer  <mitch@gimp.org>
      	* libgimpwidgets/gimpwidgets.[ch]: use "gimp-item-data" instead of
      	"user_data" as data key when attaching values to radio buttons or
      	menu items. (For backward compat, attach "user_data" additionally,
      	but don't use it to _get_data()).
      	Added gimp_radio_group_set_active() which works like
      	gimp_options_menu_set_history() and sets the active item by
      	attached "gimp-item-data" value.
      	* app/gui/brush-select.c
      	* app/gui/file-new-dialog.c
      	* app/gui/info-window.c
      	* app/gui/preferences-dialog.c
      	* app/gui/resolution-calibrate-dialog.c
      	* app/tools/gimpbucketfilltool.c
      	* app/tools/gimpselectiontool.c
      	* app/tools/paint_options.c
      	* app/tools/selection_options.c
      	* app/widgets/gimplayerlistview.c: removed all kinds of
      	"user_data" stuff and evil hacks to find a radio button by the
      	value it represents (simply call gimp_radio_group_set_active()).
      	* app/tools/gimpdrawtool.c: added a g_return_if_fail().
      	* app/tools/gimpfliptool.c: don't set draw_tool_class->draw to NULL,
      	* app/tools/gimptransformtool.[ch]: fixed some stuff i broke when
      	removing the old "interactive" boolean (there is no
      	non-interactive transform tool any more).  Put the info_dialog
      	pointer and the old_trans_info array into the GimpTransformTool
      	instance. Added gimp_transform_tool_info_dialog_connect(). Don't
      	include any subclasses any more.
      	* app/tools/gimpperspectivetool.c
      	* app/tools/gimprotatetool.c
      	* app/tools/gimpscaletool.c
      	* app/tools/gimpsheartool.c: use
      	gimp_transform_tool_info_dialog_connect() to create and connect
      	the info dialogs' action_area.
  7. 20 Nov, 2001 1 commit
    • Michael Natterer's avatar
      app/tools/gimpdrawtool.[ch] app/tools/gimppainttool.[ch] · 9ceb205c
      Michael Natterer authored
      2001-11-20  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimpdrawtool.[ch]
      	* app/tools/gimppainttool.[ch]
      	* app/tools/gimprectselecttool.[ch]
      	* app/tools/gimptool.[ch]
      	* app/tools/gimptransformtool.[ch]: use simple virtual functions
      	instead of signals for all tools because they are much faster and
      	don't need to be signals at all.
  8. 15 Nov, 2001 1 commit
    • Michael Natterer's avatar
      restructured the new draw utility functions and added · f901b46d
      Michael Natterer authored
      2001-11-15  Michael Natterer  <mitch@gimp.org>
      	* app/tools/gimpdrawtool.[ch]: restructured the new draw utility
      	functions and added gimp_draw_tool_draw_handle() and
      	* app/tools/gimpbezierselecttool.c
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpcroptool.[ch]
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimppathtool.c
      	* app/tools/gimptransformtool.c: use the new functions all over
      	the place so handle drawing and mouse_over detection work the same
      	for all tools.
  9. 12 Nov, 2001 1 commit
    • Michael Natterer's avatar
      use gimp_display_shell_[install|remove]_override_cursor() to set the · 242b9041
      Michael Natterer authored
      2001-11-12  Michael Natterer  <mitch@gimp.org>
      	* app/display/gimpdisplayshell-callbacks.c: use
      	gimp_display_shell_[install|remove]_override_cursor() to set the
      	middle mouse button move cursor so we get the original cursor back
      	after scrolling.
      	* app/tools/gimpdrawtool.[ch]: added lots of drawing functions
      	(gimp_draw_tool_draw_rectangle() etc.) which work in image (or
      	active drawable) coordinates.
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpellipseselecttool.c
      	* app/tools/gimpfreeselecttool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimpmagnifytool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimppathtool.c
      	* app/tools/gimprectselecttool.c
      	* app/tools/gimptransformtool.[ch]
      	* app/tools/path_tool.[ch]: use the new functions. Removed tons of
      	gdk_draw_foo() and gdisplay_transform_foo() calls. Most drawing
      	functions look *much* nicer now. Ported some tools to detect
      	handle clicks in display coordinates while I was on it, misc
      	* app/tools/gimpmovetool.[ch]: derive from GimpDrawTool instead
      	of drawing manually.
  10. 08 Nov, 2001 1 commit
    • Michael Natterer's avatar
      build display/ before tools/. · 02fde14c
      Michael Natterer authored
      2001-11-08  Michael Natterer  <mitch@gimp.org>
      	* app/Makefile.am: build display/ before tools/.
      	* app/devices.c: devices_check_change(): added all events
      	which have a GdkDevice pointer.
      	* app/gimpprogress.c: include "display-types.h" instead of
      	* app/core/Makefile.am
      	* app/core/gimpdrawable-bucket-fill.[ch]: new files: the bucket_fill
      	stuff taken from tools/gimpbucketfilltool.[ch].
      	* app/core/core-types.h: added "BucketFillMode".
      	* app/core/gimpimage-mask-select.[ch]: cleanup.
      	* app/core/gimpmarshal.list: added more marshallers for GimpTool's
      	new signal signatures.
      	* app/core/gimpmarshal.[ch]: regenerated.
      	* app/display/Makefile.am
      	* app/display/gimpdisplayshell-dnd.[ch]
      	* app/display/gimpdisplayshell-layer-select.[ch]: new files: the
      	canvas drop callbacks from gimpdisplayshell-callbacks.[ch] and
      	the stuff formerly knows as gui/layer-select.[ch].
      	* app/display/gimpdisplay.h: don't include "gui/gui-types.h".
      	* app/display/gximage.c: include "display-types.h".
      	* app/display/gimpdisplay-foreach.c
      	* app/display/gimpdisplayshell.[ch]: call gdsplay_delete(), don't
      	destroy the shell widget.
      	* app/gui/Makefile.am
      	* app/gui/layer-select.[ch]: removed.
      	* app/gui/gradients-commands.c: fixed "Save as POV" fprintf()s.
      	* app/gui/preferences-dialog.c: removed the layer_select stuff
      	because it is useless with the new preview system.
      	* app/gui/tool-options-dialog.c: send the correct data to the
      	* app/gui/tools-commands.c: changed to follow the new
      	gimp_tool_initialize() semantics (see below).
      	Tool & canvas event handling chainsawing:
      	* app/tools/tools-types.h: new struct GimpCoords which contains
      	x, y, pressure, tilt etc.
      	* app/display/gimpdisplayshell-callbacks.[ch]: added utility
      	functions which transparently retreive the current event's
      	GimpCoords or take it from the device directly if the event has
      	none. Pass GimpCoords _in_image_coordinates_ to all tool
      	Most important: don't pass GdkEvents and display coordinates to
      	tools any more.
      	* app/tools/gimptool.[ch]: changed virtual functions to take
      	GimpCoords, time and state separately instead of GdkEvents.
      	* app/tools/gimpbezierselecttool.c
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbucketfilltool.[ch]
      	* app/tools/gimpbycolorselecttool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpconvolvetool.c
      	* app/tools/gimpcroptool.[ch]
      	* app/tools/gimpcurvestool.c
      	* app/tools/gimpdodgeburntool.c
      	* app/tools/gimpdrawtool.c
      	* app/tools/gimpeditselectiontool.[ch]
      	* app/tools/gimperasertool.c
      	* app/tools/gimpfliptool.c
      	* app/tools/gimpfreeselecttool.[ch]
      	* app/tools/gimpfuzzyselecttool.c
      	* app/tools/gimpinktool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimpmagnifytool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimppathtool.[ch]
      	* app/tools/gimprectselecttool.c
      	* app/tools/gimprotatetool.c
      	* app/tools/gimpselectiontool.[ch]
      	* app/tools/gimpsmudgetool.c
      	* app/tools/gimptexttool.c
      	* app/tools/gimptransformtool.[ch]
      	* app/tools/path_tool.[ch]
      	* app/tools/selection_options.c: tons and tons of changes:
      	- changed to use the new virtual function parameters.
      	- removed zillions of gdisplay_untransform_coords().
      	- get the active drawable's offsets manually in many cases.
      	  (questionable, but IMHO ok because it's obvious and not simply a
      	  "TRUE" passed to some function)
      	- reordered some functions to be consistent across tools.
      	- some tools had to be changed to work on image coords, not
      	  display ones (esp. crop).
      	- fixed strange rotate tool behaviour which should be backported
      	  to stable.
      	- some stuff i came across.
      	- indentation and other paranoia.
      	- rounding of coordinated may be broken in some tools.
      	- new bugs guaranteed.
      	* app/tools/tool_manager.[ch]: new semantic of
      	tool_manager_initialize_active() (looked at the places where it
      	was used from and put common code together). Should be a bit
      	better now :)
      	* app/tools/gimpblendtool.c
      	* app/tools/transform_options.c: use the new GTK+ feature that a
      	widget (toggle button) can be a frame's title for this tools' tool
      	* app/widgets/widgets-types.h: stuff.
      	* themes/Default/gtkrc: s/GtkDialog/GimpDialog/.
      	* tools/pdbgen/Makefile.am: don't scan tools/gimpbucketfilltool.h
      	any more.
      	* tools/pdbgen/enums.pl: regenerated.
      	* tools/pdbgen/pdb/tools.pdb: changed bucket_fill wrapper.
      	* app/pdb/tools_cmds.c: regenerated.
  11. 31 Oct, 2001 1 commit
  12. 29 Oct, 2001 1 commit
    • Michael Natterer's avatar
      Cleanup weekend... · 05e15eb1
      Michael Natterer authored
      2001-10-29  Michael Natterer  <mitch@gimp.org>
      	Cleanup weekend...
      	* app/app_procs.c: pass "no_interface" to gimp_new().
      	* app/core/gimp.[ch]: added "gboolean no_interface" and the
      	load_procs and save_procs GSLists.
      	* app/core/gimptoolinfo.[ch]: added a "Gimp" pointer to the
      	GimpToolInfo object so more functions find their context without
      	accessing the global "the_gimp" variable.
      	* app/display/display-types.h: removed the GDisplay -> GimpDisplay
      	* app/display/gimpdisplay.c: look at gimp->no_interface, don't
      	include "appenv.h".
      	* app/file/file-open.[ch]
      	* app/file/file-save.[ch]: don't use "the_gimp" any more. Instead,
      	pass around lots of "Gimp" pointers. Removed the global load_procs
      	and save_procs variables here. Use access() to find out whether a
      	file is readable/writable, removed the manual voodoo and it's
      	Win32 wrappers. Added an optional (can be NULL) "PlunInProcDef"
      	parameter to file_save(), removed file_save_with_proc().
      	* app/gui/menus.c: Use the unused "gpointer data" parameter of the
      	GtkItemFactory callbacks to pass a "Gimp" pointer to all of them.
      	This reduces the usage of the global "the_gimp" hack to zero
      	in app/gui/... yeah.
      	* app/gui/channels-commands.c
      	* app/gui/edit-commands.c
      	* app/gui/file-commands.c
      	* app/gui/image-commands.c
      	* app/gui/layers-commands.c
      	* app/gui/palettes-commands.c
      	* app/gui/select-commands.c
      	* app/gui/test-commands.c
      	* app/gui/tools-commands.c
      	* app/gui/view-commands.c: use the passed "Gimp" pointer.
      	* app/gui/color-area.[ch]
      	* app/gui/convert-dialog.c
      	* app/gui/dialogs-constructors.c
      	* app/gui/file-new-dialog.[ch]
      	* app/gui/file-open-dialog.[ch]
      	* app/gui/file-save-dialog.[ch]
      	* app/gui/gui.c
      	* app/gui/info-window.[ch]
      	* app/gui/module-browser.[ch]
      	* app/gui/palette-editor.c
      	* app/gui/palette-import-dialog.[ch]
      	* app/gui/paths-dialog.c
      	* app/gui/preferences-dialog.[ch]
      	* app/gui/resize-dialog.[ch]
      	* app/gui/tool-options-dialog.[ch]
      	* app/gui/toolbox.c: pass around lots more "Gimp" and
      	"GimpContext" pointers and don't use "the_gimp" any more.
      	* app/tools/gimptool.h: added a pointer to the corresponding
      	GimpToolInfo object (which in turn has a pointer to a Gimp).
      	* app/tools/tool_manager.[ch]: set the pointer after creating the
      	tool object. Removed tool_manager_get_info_by_tool() as there is a
      	tool->tool_info pointer now.
      	* app/tools/gimpbezierselecttool.c
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbrightnesscontrasttool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcolorbalancetool.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpconvolvetool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpcurvestool.c
      	* app/tools/gimpdodgeburntool.c
      	* app/tools/gimpdrawtool.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpellipseselecttool.c
      	* app/tools/gimperasertool.c
      	* app/tools/gimpfliptool.c
      	* app/tools/gimphistogramtool.c
      	* app/tools/gimphuesaturationtool.c
      	* app/tools/gimpinktool.c
      	* app/tools/gimplevelstool.c
      	* app/tools/gimpmagnifytool.c
      	* app/tools/gimpmeasuretool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimppathtool.c
      	* app/tools/gimpperspectivetool.c
      	* app/tools/gimpposterizetool.c
      	* app/tools/gimprectselecttool.c
      	* app/tools/gimprotatetool.c
      	* app/tools/gimpscaletool.c
      	* app/tools/gimpsheartool.c
      	* app/tools/gimptexttool.c
      	* app/tools/gimpthresholdtool.c
      	* app/tools/path_tool.c
      	* app/tools/xinput_airbrush.c: s/GDisplay/GimpDisplay/g.
      	Use tool->tool_info and tool_info->gimp in some places to get
      	rid of using "the_gimp".
      	Removing the remaining ones involves changing the tool options
      	system and is scheduled next...
      	* app/widgets/gimpdnd.c
      	* app/widgets/gimpdocumentview.c: pass a "Gimp" pointer to all
      	file_open_*() functions.
      	* app/gdisplay_color.[ch]
      	* app/gdisplay_color_ui.[ch]
      	* app/image_map.[ch]
      	* app/nav_window.[ch]
      	* app/path.c
      	* app/path_bezier.c
      	* app/path_transform.h
      	* app/qmask.[ch]: s/GDisplay/GimpDisplay/g
      	* tools/pdbgen/pdb/fileops.pdb: load_procs and save_procs are
      	members of the "Gimp" object now.
      	* tools/pdbgen/pdb/plug_in.pdb: use gimp->no_interface, don't
      	include "appenv.h".
      	* app/pdb/fileops_cmds.c
      	* app/pdb/plug_in_cmds.c: regenerated.
  13. 25 Sep, 2001 1 commit
    • Michael Natterer's avatar
      app/Makefile.am app/disp_callbacks.[ch] app/gdisplay.[ch] · f235eabb
      Michael Natterer authored
      2001-09-26  Michael Natterer  <mitch@gimp.org>
      	* app/Makefile.am
      	* app/disp_callbacks.[ch]
      	* app/gdisplay.[ch]
      	* app/gdisplay_ops.[ch]
      	* app/gximage.[ch]
      	* app/image_render.[ch]
      	* app/interface.[ch]
      	* app/marching_ants.h
      	* app/scale.[ch]
      	* app/scroll.[ch]
      	* app/selection.[ch]: removed.
      	* app/display/Makefile.am
      	* app/display/display-types.h
      	* app/display/gimpdisplay-callbacks.[ch]
      	* app/display/gimpdisplay-marching-ants.h
      	* app/display/gimpdisplay-ops.[ch]
      	* app/display/gimpdisplay-render.[ch]
      	* app/display/gimpdisplay-scale.[ch]
      	* app/display/gimpdisplay-scroll.[ch]
      	* app/display/gimpdisplay-selection.[ch]
      	* app/display/gimpdisplay.[ch]
      	* app/display/gimpdisplayshell.[ch]
      	* app/display/gximage.[ch]: added here.
      	* app/[many files]
      	* app/gui/[many files]
      	* app/tools/*
      	* app/widgets/[many files]: changed accordingly. Still very
      	incomplete separation of the display stuff but it at least
      	* tools/pdbgen/pdb.pl:
      	* tools/pdbgen/pdb/display.pdb: s/GDisplay/GimpDisplay/,
      	* app/pdb/display_cmds.c: regenerated.
  14. 30 Aug, 2001 1 commit
    • Michael Natterer's avatar
      app/plug_in.c libgimpbase/gimpwire.c removed GIOChannel · 51f99c32
      Michael Natterer authored
      2001-08-30  Michael Natterer  <mitch@gimp.org>
      	* app/plug_in.c
      	* libgimpbase/gimpwire.c
      	* libgimp/gimp.c: removed GIOChannel "channel->funcs->io_foo()"
      	hacks and use plain g_io_channel_[read|write]_chars(). An
      	additional g_io_channel_set_buffered (channel, FALSE); is needed
      	to make the channels work in binary mode. Fixed misc other stuff
      	in the GIOChannel code.
      	* app/tools/gimpdrawtool.c
      	* app/tools/gimpmovetool.c
      	* app/tools/gimptransformtool.c
      	* app/widgets/gimpdialogfactory.c
      	* libgimpwidgets/gimpcolorarea.c
      	* libgimp/gimpui.c: replaced some deprecated GDK functions.
      	* app/gui/palette-editor.c: block the color_name entry's "changed"
      	signal while setting it. Fixes invalid UTF-8 warnings.
  15. 14 Aug, 2001 1 commit
    • Michael Natterer's avatar
      an evil temp_hack which lets GimpContext managing the active display · e2daae31
      Michael Natterer authored
      2001-08-14  Michael Natterer  <mitch@gimp.org>
      	* app/gdisplay.h: an evil temp_hack which lets GimpContext managing
      	the active display withoug including "gdisplay.h". Will go away as
      	soon ad context properties are registered dynamically.
      	* app/module_db.c: cleaned up the object code in preparation of
      	moving it to core/.
      	* app/path.c: connect to GimpImage's
      	* app/core/gimpobject.[ch]: derive it from GObject, not from
      	GtkObject any more (yeah :-)
      	* app/core/*.c: #include <glib-object.h> instead of <gtk/gtk.h>,
      	removed some remaining GtkObject-isms.
      	(left in a few #include <gtk/gtk.h> where bigger changes are needed
      	to get rid of the UI dependency).
      	* app/core/core-types.h: #include <gdk-pixbuf/gdk-pixbuf.h> here
      	* app/core/gimp.c (gimp_create_display): unref the image after
      	creating it's first display.
      	* app/core/gimpbrush.[ch]: disabled the parts of the code which
      	depend on GimpPaintTool.
      	* app/core/gimpbrushgenerated.c
      	* app/core/gimpbrushpipe.c: changed accordingly.
      	* app/core/gimpcontext.[ch]: evil hack (see above) to manage the
      	active display without including "gdisplay.h"
      	* app/core/gimpimage-mask.[ch]: pass a context to
      	gimage_mask_stroke() and get the current tool's PDB string from
      	* app/core/gimpedit.c: changed accordingly.
      	* app/core/gimpimage.c: use gimp_image_update() instead of
      	* app/gui/color-area.c
      	* app/gui/colormap-dialog.c
      	* app/gui/dialogs-constructors.c
      	* app/gui/edit-commands.c
      	* app/gui/image-commands.c
      	* app/gui/toolbox.c: changed accordingly (don't use Gtk methods on
      	* app/gui/menus.c: fix some const warnings by explicit casting.
      	* app/tools/*.[ch]: ported all tools to GObject, some minor
      	cleanup while i was on it.
      	* app/widgets/gimpdialogfactory.[ch]: ported to GObject.
      	* app/widgets/gimplayerlistview.h: added FOO_GET_CLASS() macro.
      	* tools/pdbgen/app.pl: added a "widgets_eek" hack like "tools_eek"
      	which inserts #include "widgets/widgets-types.h" before ordinary
      	* tools/pdbgen/pdb/brush_select.pdb
      	* tools/pdbgen/pdb/edit.pdb
      	* app/pdb/brush_select_cmds.c
      	* app/pdb/edit_cmds.c: changed according to the stuff above.
  16. 25 Jul, 2001 1 commit
    • Sven Neumann's avatar
      app/nav_window.c app/user_install.c app/pdb/color_cmds.c · f5cfbd50
      Sven Neumann authored
      2001-07-25  Sven Neumann  <sven@gimp.org>
      	* app/nav_window.c
      	* app/user_install.c
      	* app/pdb/color_cmds.c
      	* app/pdb/selection_cmds.c
      	* app/tools/gimpbezierselecttool.c
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbucketfilltool.c
      	* app/tools/gimpbycolorselecttool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpcolorpickertool.c
      	* app/tools/gimpdrawtool.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpellipseselecttool.c
      	* app/tools/gimpfreeselecttool.c
      	* app/tools/gimpfuzzyselecttool.c
      	* app/tools/gimphuesaturationtool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimppainttool.c
      	* app/tools/gimprectselecttool.c
      	* app/tools/gimptexttool.c
      	* app/tools/gimptool.c
      	* app/tools/paint_options.c
      	* app/tools/selection_options.c
      	* app/tools/tool_manager.c
      	* app/tools/transform_options.c
      	* app/widgets/gimpdnd.c
      	* tools/pdbgen/pdb/color.pdb
      	* tools/pdbgen/pdb/selection.pdb: use GObject functions.
  17. 24 Jul, 2001 1 commit
    • Michael Natterer's avatar
      Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning) · 06b16890
      Michael Natterer authored
      2001-07-24  Michael Natterer  <mitch@gimp.org>
      	Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)
      	* configure.in: require glib/gtk+ >= 1.3.7, commented out the
      	gtkxmhtml stuff.
      	From now on, you will need glib, pango, atk and gtk+ HEAD from CVS
      	to hack or use GIMP HEAD.
      	Beware, it crashes randomly :)
      	* app/core/Makefile.am
      	* app/core/gimpmarshal.list: new file plus rules to generate
      	gimpmarshal.[ch] from it.
      	* app/core/*
      	* app/tools/*
      	* app/widgets/*
      	* libgimpwidgets/*: started to use the glib object system. All
      	core/ objects are still gtk objects however. All signals are
      	created using g_signal_new(). There are many gtk+ artefacts left.
      	Finally, we will _not_ use the gtk_signal_foo() wrappers and
      	friends any more.
      	* app/colormaps.c
      	* app/devices.[ch]
      	* app/disp_callbacks.c
      	* app/errorconsole.c
      	* app/file-save.[ch]
      	* app/interface.c
      	* app/module_db.c
      	* app/nav_window.c
      	* app/ops_buttons.c
      	* app/scroll.c
      	* app/user_install.c
      	* app/gui/about-dialog.c
      	* app/gui/brush-editor.c
      	* app/gui/brushes-commands.c
      	* app/gui/color-notebook.c
      	* app/gui/colormap-dialog.c
      	* app/gui/dialogs-commands.c
      	* app/gui/dialogs-constructors.c
      	* app/gui/file-commands.c
      	* app/gui/file-dialog-utils.c
      	* app/gui/file-new-dialog.c
      	* app/gui/file-open-dialog.[ch]
      	* app/gui/file-save-dialog.c
      	* app/gui/gradient-editor.c
      	* app/gui/gradients-commands.c
      	* app/gui/image-commands.c
      	* app/gui/info-dialog.[ch]
      	* app/gui/layer-select.c
      	* app/gui/layers-commands.c
      	* app/gui/menus.c
      	* app/gui/offset-dialog.c
      	* app/gui/palette-editor.c
      	* app/gui/palettes-commands.c
      	* app/gui/patterns-commands.c
      	* app/gui/preferences-dialog.c
      	* app/gui/resize-dialog.[ch]
      	* app/gui/splash.c
      	* app/gui/tips-dialog.c
      	* app/gui/tool-options-dialog.c
      	* app/gui/toolbox.c
      	* app/gui/tools-commands.c
      	* libgimp/gimpbrushmenu.c
      	* libgimp/gimpmenu.c
      	* libgimp/gimppatternmenu.c
      	* libgimp/gimpui.c
      	* libgimpbase/gimpenv.c: tons and tons of changes like "const
      	gchar*", switch from GdkDeviceInfo to GdkDevice (very incomplete
      	and currently disables), lots of s/gtk_signal/g_signal/,
      	removal/replacement of deprecated stuff,
      	s/GtkSignalFunc/GCallback/ and lots of small changes and fixes
      	while I was on it, zillions of warnings left...
      	* modules/Makefile.am: disabled the water color selector
      	temporarily (XInput issues).
      	* plug-ins/Makefile.am
      	* plug-ins/common/.cvsignore
      	* plug-ins/common/Makefile.am
      	* plug-ins/common/plugin-defs.pl: simply excluded all plug-ins
      	which did not build (including Script-Fu). They are trivial to
  18. 09 May, 2001 1 commit
    • Michael Natterer's avatar
      app/Makefile.am removed. · d1022c34
      Michael Natterer authored
      2001-05-10  Michael Natterer  <mitch@gimp.org>
      	* app/Makefile.am
      	* app/asupsample.[ch]: removed.
      	* app/core/Makefile.am
      	* app/core/core-types.h
      	* app/tools/Makefile.am
      	* app/tools/tools-types.h: new files.
      	* app/tools/gimptoolinfo.[ch]: removed.
      	* app/core/gimptoolinfo.[ch]: added here.
      	* libgimp/Makefile.am
      	* libgimp/gimp.h
      	* libgimp/gimpadaptivesupersample.[ch]
      	* libgimp/gimpbilinear.[ch]: removed here...
      	* libgimpcolor/Makefile.am
      	* libgimpcolor/gimpcolortypes.h
      	* libgimpcolor/gimpadaptivesupersample.[ch]
      	* libgimpcolor/gimpbilinear.[ch]: ..and added here.
      	* tools/pdbgen/app.pl
      	* tools/pdbgen/pdb/paths.pdb
      	* app/*.c: changed tons of #include's
  19. 11 Apr, 2001 1 commit
  20. 07 Apr, 2001 1 commit
    • Simon Budig's avatar
      app/Makefile.am app/apptypes.h app/path_bezier.[ch] app/path_curves.[ch] · e2f373cb
      Simon Budig authored
      2001-04-07  Simon Budig  <simon@gimp.org>
              * app/Makefile.am
              * app/apptypes.h
              * app/path_bezier.[ch]
              * app/path_curves.[ch]
              * app/pixmaps2.h
              * app/tools/Makefile.am
              * app/tools/gimpdrawtool.[ch]
              * app/tools/path_tool.[ch]
              * app/tools/path_toolP.h
              * app/tools/tools.c
              new files:
              * app/tools/gimppathtool.c
              * app/tools/gimppathtool.h
              Reactivated (at least partially) the old new path tool. It
              will undergo major restructuring. Especially the path data
              will become proper objects. This definitely is work in progress
              and totally unuseable now.
  21. 08 Mar, 2001 1 commit
    • Michael Natterer's avatar
      app/tools/Makefile.am lots of files renamed to gimp*tool.[ch] · 1d987a3b
      Michael Natterer authored
      2001-03-08  Michael Natterer  <mitch@gimp.org>
      	* app/tools/Makefile.am
      	* app/tools/[almost *]: lots of files renamed to gimp*tool.[ch]
      	* app/commands.c
      	* app/context_manager.c
      	* app/disp_callbacks.c
      	* app/gdisplay.c
      	* app/gimage.c
      	* app/gimage_mask.c
      	* app/gimpdnd.c
      	* app/gimprc.c
      	* app/global_edit.c
      	* app/info_window.c
      	* app/scale.c
      	* app/scroll.c
      	* app/undo.c
      	* app/pdb/text_tool_cmds.c
      	* app/pdb/tools_cmds.c
      	* po/POTFILES.in
      	* tools/pdbgen/Makefile.am
      	* tools/pdbgen/enums.pl
      	* tools/pdbgen/pdb/text_tool.pdb
      	* tools/pdbgen/pdb/tools.pdb: changed accordingly.
  22. 27 Feb, 2001 3 commits
    • Michael Natterer's avatar
      build the measure tool again. · 84b634f2
      Michael Natterer authored
      2001-02-27  Michael Natterer  <mitch@gimp.org>
      	* app/tools/Makefile.am: build the measure tool again.
      	* app/tools/gimpcolorpickertool.c: correct prototypes for some
      	functions so we don't get warnings about incompatible assignments
      	in "class_init", chain up in "control".
      	* app/tools/gimpdrawtool.c: added an implementation of "control"
      	which can be called from subclasses so we don't need to call
      	GimpDrawTool's methods directly from there.
      	* app/tools/gimppaintbrushtool.[ch]: create it's tool options so it
      	doesn't crash. Commented out the non_gui stuff. We need a different
      	interface for this.
      	* app/tools/gimppainttool.[ch]: some cleanups: call the draw tool's
      	"control" function, fixed "cursor_update", fixed indentation.
      	* app/tools/measure.[ch]: made it work again (properly subclass
      	* app/tools/tool.c: re-added the non_gui paintbrush STUB()'s
      	* app/tools/tools.c: don't allocate the non_gui stuff.
      	GimpPaintTool is an abstract superclass, so we cannot create
      	an instance of it. Moreover, the current non_gui stuff assumes
      	that there is something like a "paint_core" and changes it's
      	virtual function pointers, breaking the object system totally.
    • Michael Natterer's avatar
      app/apptypes.h app/Makefile.am new widget. The upcoming replacement for · 8e3259d0
      Michael Natterer authored
      2001-02-27  Michael Natterer  <mitch@gimp.org>
      	* app/apptypes.h
      	* app/Makefile.am
      	* app/gimpdrawablelistview.[ch]: new widget. The upcoming replacement
      	for the layers and channels dialogs.
      	* app/test_commands.[ch]: put the test dialogs here...
      	* app/commands.[ch]: ... and made this one clean again.
      	* app/gimpcontainergridview.c
      	* app/gimpcontainerlistview.c
      	* app/gimpcontainerview.[ch]: some signal handling fine tuning.
      	* app/gimpimage.[ch]: emits "active_layer_changed" and
      	"active_channel_changed" signals now. The semantics of
      	gimage->active_layer and gimage->active_channel have changed a bit.
      	We now have either an active layer _or_ and active channel (there
      	is no active layer any more if a channel is active).
      	* app/channel_ops.c
      	* app/floating_sel.c
      	* app/gdisplay.c
      	* app/layers_dialog.c
      	* app/menus.c: changed accordingly.
      	* app/tools/gimpcolorpickertool.c: actually assign the draw_class
      	vraiable in the class_init function.
      	* app/tools/gimpdrawtool.[ch]
      	* app/tools/tool.c: removed the _new() functions because these
      	objects are abstract superclasses. Did some cleanup.
      	Nathan, please configure you editor to _not_ produce any tabs
      	in the source code.
      	* app/tools/gimppaintbrushtool.[ch]: "blurb" and "help" are tagged
      	with _(), not N_(). Put the register function to the header.
      	* po/POTFILES.in: made it compile again.
    • Nate Summers's avatar
      Introduced GimpPaintTool and GimpDrawTool · 80a8d5a7
      Nate Summers authored