mirror of https://github.com/GNOME/gimp.git
157 Commits
Author | SHA1 | Message | Date |
---|---|---|---|
Michael Natterer | 5dc2b347d2 |
app/widgets/gimplayerlistview.c some more auto-sizing spinbuttons.
2002-09-08 Michael Natterer <mitch@gimp.org> * app/widgets/gimplayerlistview.c * app/gui/channels-commands.c: some more auto-sizing spinbuttons. * app/gui/offset-dialog.c: added mnemonics for "X" and "Y". Dialog auto-hide cleanup: * app/widgets/gimpviewabledialog.c: close the dialog when the GimpViewable goes away (special cased GimpItems which become invisible on "removed"). Close the dialog by syntesizing a "delete_event" instead of simply hiding or destroying it so the closing method of the dialog's user gets invoked. * app/gui/resize-dialog.[ch]: don't do the same here. Simplifies the API even more as we don't have to pass the object to watch any more. * app/gui/image-commands.c * app/gui/layers-commands.c: changed accordingly. * app/undo_history.c * app/gui/convert-dialog.c * app/gui/qmask-commands.c * app/gui/vectors-commands.c: removed all dialog auto-hiding which is now done by GimpViewableDialog. Also connect more close callbacks to gtk_widget_destroy() and handle shell destruction accordingly, so these pseudo widgets behave more like real ones. Tool-dialog auto-hide fix: * app/tools/tool_manager.c: never call a tool's initialize() method with a NULL gdisp (I can't follow why we did this before because it's conceptually broken and makes the semantics of initialize() more than unclear). To be sure, added g_return_if_fail(GIMP_IS_DISPLAY(gdisp)) to tool_manager_initialize_active(). * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcurvestool.c * app/tools/gimphistogramtool.c * app/tools/gimphuesaturationtool.c * app/tools/gimpimagemaptool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpthresholdtool.c: removed the recently added code for handling NULL displays in initialize(). |
|
Michael Natterer | a3f44d8b0f |
Separated tool_options creation from tool registration so we don't
2002-06-17 Michael Natterer <mitch@gimp.org> Separated tool_options creation from tool registration so we don't implicitly create widgets before gui_init(): * libgimptool/gimptooltypes.h: removed GimpToolOptionsNewFunc typedef here... * app/core/core-types.h: ...and added it here. * libgimpproxy/gimpproxytypes.h: regenerated. * app/core/gimptoolinfo.[ch]: added a GimpToolOptionsNewFunc pointer to remember the constructor. Fixed the finalize() method (bug was never noticed because we leaked all tool infos) * app/tools/tool_manager.[ch]: moved tool_options creation to the new function tool_manager_restore(). Unref the tool infos after adding them to their container. Added "brush" and "gradient" to the context properties which are defined for tool contexts. * app/app_procs.c: call tool_manager_restore() after gui_init(). * app/gui/gui.c: removed the hack introduced recently and call render_setup() in gui_init() again, not in gui_themes_init(). Use the correct contexts now that they are properly initialized at the time of tool_options creation: * app/tools/gimpblendtool.c: use tool_info->context, not gimp_get_user_context() to get/set the tool's gradient. * app/paint/gimppaintcore.[ch] (gimp_paint_core_start): added a GimpPaintOptions paramater and get the brush to use from paint_options->context (instead of gimp_get_current_context()). * app/paint/gimppaintcore-stroke.c * app/tools/gimppainttool.c: changed accordingly. * app/tools/paint_options.c: added a brush preview to the paint options. |
|
Hans Breuer | 8522a8470d |
add appconfig.lib. Statically link libgimptool/gimptool.lib.
2001-05-11 Hans Breuer <hans@breuer.org> * app/makefile.msc : add appconfig.lib. Statically link libgimptool/gimptool.lib. * app/main.c : use gimp_locale_directory() * app/config/gimpconfig-utils.c : <string.h> * app/config/makefile.msc : add gimpscanner * app/core/gimpimagefile.c : some G_OS_WIN32 mess to get mkdir() and chmod() * app/display/gimpdisplayshell.c app/plug-in/plug-in-progrss.c app/tool/gimpcolorpickertool.c app/tool/gimpcroptool.c app/tool/gimpmeasuretool.c app/tool/gimpperspectivetool.c app/tool/gimprotatetool.c app/tool/gimpscaletool.c app/tool/gimpsheartool.c app/tool/gimptransformtool.c app/widgets/gimpcolormapeditor.c app/widgets/gimpcolorpanel.c app/widgets/gimptoolbox-color-area.c add #ifdef __GNUC__ to avoid breaking on non standard pragma #warning * app/tools/makefile.msc : add gimptoolcontrol remove tools-enum * app/tools/tool_manager.c : need to include libgimptool/gimptoolcontrol.h after core includes otherwise we would compile without prototypes or break miserably * app/gui/plug-in-menus.c : replace LOCALEDIR with gimp_locale_directory () * app/gui/preferences-dialog.c (prefs_notebook_append_page) : only try to gdk_pixbuf_new_from_file() with a valid filename. It should simply return NULL otherwise, but fails if the filename is an empty string. * app/paint-funcs/makefile.msc : add -FImsvc_recommended_pragmas.h * app/widgets/gimpcolormapeditor.c : the 'row' allocated needs to be 'xn * cellsize * 2' (to avoid accessing unowned memory) not only width, which has become allocation.width by someone commenting out the correct size calculation * app/widgets/gimpdialogfactory.c : varargs to macros are GCCism or at least non standard. #define DEBUG to g_print or nothing - without arguments - does fix it somewhat dirty as the compiler needs to tolerate the '(blah, foo, bar);' statement than * app/widgets/makefile.msc : updated * app/xcf/makefile.msc : add -FImsvc_recommended_pragmas.h * etc/gimprc.win32 : use ';' to separate theme-path * libgimpbase/gimpenv.c : #include <stdio.h> for sprintf() * app/widgets/gimpdnd.c (gimp_dnd_set_file_data) : the passed in vals chunk is not always null-terminated (at least not on win32). Use the length parameter too to avoid reading junk filenames. * libgimp/gimp.def : export gimp_image_get_name() * libgimpbase/gimpbase.def : export gimp_locale_directory() * libgimpbase/gimpenv.[ch] : added gimp_locale_directory () * libgimpbase/makefile.msc : define DATADIR and SYSCONFDIR to empty string to let gimp find its files in the common place (win32: relative to the top level gimp dir) * plug-ins/common/pixelize.c : <string.h> * plug-ins/flame/cmap.c : #include <glib.h> for g_random_int() * plug-ins/makefile.msc : -FImsvc_recommended_pragams.h and a little hack to give imagemap the prototypes it desires without changing the lexed source * themes/Default/images/makefile.msc : now added (see below) * themes/Default/images/stock-button-reset.png : made it binary |
|
Sven Neumann | 84e1810adc |
app/tools/gimpairbrushtool.[ch] app/tools/gimpbezierselecttool.[ch]
2002-05-03 Sven Neumann <sven@gimp.org> * app/tools/gimpairbrushtool.[ch] * app/tools/gimpbezierselecttool.[ch] * app/tools/gimpblendtool.[ch] * app/tools/gimpbrightnesscontrasttool.[ch] * app/tools/gimpbucketfilltool[.ch] * app/tools/gimpbycolorselecttool[.ch] * app/tools/gimpclonetool[.ch] * app/tools/gimpcolorbalancetool[.ch] * app/tools/gimpcolorpickertool[.ch] * app/tools/gimpconvolvetool[.ch] * app/tools/gimpcroptool[.ch] * app/tools/gimpcurvestool[.ch] * app/tools/gimpdodgeburntool[.ch] * app/tools/gimpeditselectiontool.c * app/tools/gimpellipseselecttool[.ch] * app/tools/gimperasertool[.ch] * app/tools/gimpfliptool[.ch] * app/tools/gimpfreeselecttool[.ch] * app/tools/gimpfuzzyselecttool[.ch] * app/tools/gimphistogramtool[.ch] * app/tools/gimphuesaturationtool[.ch] * app/tools/gimpinktool[.ch] * app/tools/gimpiscissorstool[.ch] * app/tools/gimplevelstool[.ch] * app/tools/gimpmagnifytool[.ch] * app/tools/gimpmeasuretool[.ch] * app/tools/gimpmovetool[.ch] * app/tools/gimppaintbrushtool[.ch] * app/tools/gimppainttool.c * app/tools/gimppathtool[.ch] * app/tools/gimppenciltool[.ch] * app/tools/gimpperspectivetool[.ch] * app/tools/gimpposterizetool[.ch] * app/tools/gimprectselecttool[.ch] * app/tools/gimprotatetool[.ch] * app/tools/gimpscaletool[.ch] * app/tools/gimpselectiontool.c * app/tools/gimpsheartool[.ch] * app/tools/gimpsmudgetool[.ch] * app/tools/gimptexttool[.ch] * app/tools/gimpthresholdtool[.ch] * app/tools/gimptool.c * app/tools/gimptoolcontrol.h * app/tools/gimptoolmodule[.ch] * app/tools/gimptransformtool.c * app/tools/gimpvectortool[.ch] * app/tools/path_tool.c * app/tools/tool_manager[.ch] * app/tools/tools.c * libgimptool/gimptool.c * libgimptool/gimptoolcontrol.h * libgimptool/gimptoolmodule.h: removed tons of warnings. Do we need to add -Werror to the CFLAGS to avoid such a mess in the future ?! Also had to enforce the GIMP coding style in lots of places :-( * libgimp/gimppixelrgn.c: got sick and tired of debugging plug-ins, so I've added checks for most parameters passed to the GimpPixelRgn functions. This will slow down plug-in execution a little bit but should help to find bugs early. |
|
Nate Summers | 810b983110 |
app/tools/gimptoolcontrol.[ch] resurrected the motion hints and cursor
* app/tools/gimptoolcontrol.[ch] * libgimptool/gimptool.c: resurrected the motion hints and cursor changing code. app/tools/gimpairbrushtool.c app/tools/gimpbezierselecttool.c app/tools/gimpblendtool.c app/tools/gimpbucketfilltool.c app/tools/gimpbycolorselecttool.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/gimpeditselectiontool.c app/tools/gimpellipseselecttool.c app/tools/gimperasertool.c app/tools/gimpfliptool.c app/tools/gimpfuzzyselecttool.c app/tools/gimphistogramtool.c app/tools/gimphuesaturationtool.c app/tools/gimpimagemaptool.c app/tools/gimpinktool.c app/tools/gimpiscissorstool.c app/tools/gimplevelstool.c app/tools/gimpmagnifytool.c app/tools/gimpmeasuretool.c app/tools/gimpmovetool.c app/tools/gimppaintbrushtool.c app/tools/gimppainttool.c app/tools/gimppathtool.c app/tools/gimppenciltool.c app/tools/gimpperspectivetool.c app/tools/gimprectselecttool.c app/tools/gimprotatetool.c app/tools/gimpscaletool.c app/tools/gimpselectiontool.c app/tools/gimpsheartool.c app/tools/gimpsmudgetool.c app/tools/gimptexttool.c app/tools/gimptransformtool.c app/tools/gimpvectortool.c: set the motion mode; fix a few parameters * app/tools/gimpinktool.c (gimp_ink_tool_button_press): uncommented some code I had temporarily commented out and didn't uncomment before committing * libgimptool/gimptoolcontrol.h * app/tools/gimptoolcontrol-displayshell.[ch]: merged with gimptoolcontrol.[ch]. The distinction was fairly arbitrary. * plug-ins/tools/gimptoolcontrol.c: added some stubs * app/tools/Makefile.am * app/tools/tool_manager.c * app/display/gimpdisplayshell-callbacks.c: changed accordingly * libgimp/gimpimage_pdb.c: applied a patch from Pippen to correct documentation on the undo operations |
|
Nate Summers | 69ccb4d370 | massive tool plugin changes | |
Sven Neumann | a226586d9f |
app/plug-in/plug-in-rc.c app/plug-in/plug-ins.c app/tools/tool_manager.c
2002-03-22 Sven Neumann <sven@gimp.org> * app/plug-in/plug-in-rc.c * app/plug-in/plug-ins.c * app/tools/tool_manager.c * app/widgets/gimppreview.c * app/widgets/gimptoolinfopreview.c: plugged a couple of mem leaks found using valgrind. * libgimpwidgets/gimpcolorarea.c (gimp_color_area_expose): don't draw anything if an idle update is pending. |
|
Michael Natterer | 17d655c1c3 |
app/gimprc.[ch] app/gui/preferences-dialog.c
2002-03-12 Michael Natterer <mitch@gimp.org> * app/gimprc.[ch] * app/gui/preferences-dialog.c * app/paint/gimppaintoptions.[ch] * app/tools/paint_options.[ch] * app/tools/tool_manager.[ch]: removed the "global_paint_options" gimprc option because it doesn't quite fit the new dockable dialog architecture. * app/gui/brush-select.[ch] * app/gui/gradient-select.[ch] * app/gui/palette-select.[ch] * app/gui/pattern-select.[ch]: removed the "Global Brush/Pattern/... Selection" part of them. They are now only used for temp popup selections and the PDB. *Lots* of cleanup. * app/gui/convert-dialog.c * app/gui/dialogs-constructors.[ch] * app/gui/dialogs.c * app/gui/gui.c * app/gui/menus.c * app/gui/palette-import-dialog.c * app/plug-in/plug-in.c: changed accordingly. Cleaned up the palette and other data PDB stuff: * tools/pdbgen/Makefile.am * tools/pdbgen/groups.pl: added "palette_select" and "palettes". * tools/pdbgen/pdb/palette_select.pdb: new file. Makes the palette selection PDB controllable. * tools/pdbgen/pdb/palettes.pdb: new file cut out of palette.pdb because of API symmetry with brushes, patterns, ... * tools/pdbgen/pdb/palette.pdb: removed from here. * tools/pdbgen/pdb/brush_select.pdb * tools/pdbgen/pdb/brushes.pdb * tools/pdbgen/pdb/gradient_select.pdb * tools/pdbgen/pdb/gradients.pdb * tools/pdbgen/pdb/palette.pdb * tools/pdbgen/pdb/pattern_select.pdb * tools/pdbgen/pdb/patterns.pdb: lots of cleanup. Autogenerated stuff: * app/pdb/Makefile.am * app/pdb/palette_select_cmds.c * app/pdb/palettes_cmds.c: new files. * app/pdb/brush_select_cmds.c * app/pdb/brushes_cmds.c * app/pdb/gradient_select_cmds.c * app/pdb/gradients_cmds.c * app/pdb/internal_procs.c * app/pdb/palette_cmds.c * app/pdb/pattern_select_cmds.c * app/pdb/patterns_cmds.c: regenerated. * libgimp/Makefile.am * libgimp/gimp_pdb.h * libgimp/gimppalettes_pdb.[ch] * libgimp/gimppaletteselect_pdb.[ch]: new files. * libgimp/gimpgradientselect_pdb.[ch] * libgimp/gimppalette_pdb.[ch] * libgimp/gimppatterns_pdb.c: regenerated. * devel-docs/libgimp/tmpl/gimpgradients.sgml * devel-docs/libgimp/tmpl/gimppalette.sgml: regenerated. |
|
Michael Natterer | 6086f832c9 |
app/core/Makefile.am new object for registering GimpPaintCore subclasses,
2002-02-27 Michael Natterer <mitch@gimp.org> * app/core/Makefile.am * app/core/gimppaintinfo.[ch]: new object for registering GimpPaintCore subclasses, just like GimpToolInfo for tools. * app/core/gimp.h: added gimp->paint_info_list to hold them. * app/core/gimptoolinfo.[ch]: removed the "pdb_string" and "paint_core_name" pointers and added a GimpPaintInfo pointer instead. * app/core/gimpimage-mask.c * app/gui/vectors-commands.c * app/tools/gimpbezierselecttool.c * app/tools/tool_manager.c: changed accordingly. * app/paint/paint-types.h * app/paint/paint.c: added paint class registration stuff like the tool_manager does. * app/paint/gimpairbrush.[ch] * app/paint/gimpclone.[ch] * app/paint/gimpconvolve.[ch] * app/paint/gimpdodgeburn.[ch] * app/paint/gimperaser.[ch] * app/paint/gimppaintbrush.[ch] * app/paint/gimppencil.[ch] * app/paint/gimpsmudge.[ch]: added register functions which are called from paint_init(). The core object system lives not only in "core/", but in core, paint, vectors, file, plug-in and xcf, so I had to hack a bit to keep the deps working: * app/pdb/pdb-types.h: don't include "paint/paint-types.h"... * app/core/core-types.h: ...because it's included here. Moved the inclusions of the core's subsystems' "foo/foo-types.h" files to the end of the file. * app/paint/Makefile.am: Some slimy radioactive uglyness. * app/gui/drawable-commands.c * app/tools/gimpblendtool.c: removed calling core functions via the PDB because it makes no sense to do it manually in only a few places. This needs to be done generically using generated wrappers living in "app/commands/" or something... |
|
Michael Natterer | a2bd2ac28c |
Added some kind of paint core registry. It's ugly and will change...
2002-02-26 Michael Natterer <mitch@gimp.org> Added some kind of paint core registry. It's ugly and will change... * app/core/gimp.c: call paint_init() and paint_exit(). * app/core/gimptoolinfo.[ch]: added "gchar *paint_core_name" to the GimpToolInfo structure and the contstructor. * app/tools/tool_manager.c: pass the class names of the GimpPaintCore subclasses to gimp_tool_info_new(). * app/paint/Makefile.am * app/paint/paint.[ch]: new files. Simlply ref/unref all paint core classes so we can find them using g_type_from_name(). * app/paint/gimppaintcore-stroke.[ch]: changed to take an array of GimpCoords, not just gdouble. * tools/pdbgen/pdb/paint_tools.pdb: convert the stroke array here. * app/gui/vectors-commands.c: ad-hoc implementation of vectors stroking. Double click now sets the active vectors in the vectors tool. * app/pdb/paint_tools_cmds.c: regenerated. |
|
Michael Natterer | bec4c72534 |
app/tools/tools-types.h chain up unconditionally in control(),
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. |
|
Michael Natterer | 2ccbf2a43d |
Fixed #34633 (wheel mouse zooming leaves straigth-line helpline on image)
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... |
|
Michael Natterer | bcd208d9f4 |
app/Makefile.am removed, chopped...
2001-12-07 Michael Natterer <mitch@gimp.org> * app/Makefile.am * app/devices.[ch]: removed, chopped... * app/widgets/Makefile.am * app/widgets/widgets-types.h * app/gui/Makefile.am * app/widgets/gimpdeviceinfo.[ch] * app/widgets/gimpdevices.[ch] * app/gui/device-status-dialog.[ch] * app/gui/input-dialog.[ch]: ...and added here. Made GimpToolInfo a GimpContext subclass. Create a GimpDeviceManager struct in gimpdevices.c and attach it to the Gimp instance. * app/core/gimp.[ch]: removed gimp_create_context(). It was a bad idea in the first place beause it prevented GimpContext subclasses from being be properly registered with their Gimp instance. * app/core/gimpcontext.c: moved the stuff which used to be in gimp_create_context() back here. Added a "gimp" property which must be set on construction. Added a "dispose" implementation which removes the context from it's Gimp's context_list. * app/gimprc.c * app/core/gimptoolinfo.[ch] * app/display/gimpdisplayshell-callbacks.c * app/gui/brush-select.c * app/gui/dialogs-constructors.c * app/gui/gradient-editor.c * app/gui/gradient-select.c * app/gui/gui.c * app/gui/menus.c * app/gui/palette-editor.c * app/gui/palette-select.c * app/gui/pattern-select.c * app/gui/toolbox.c * app/tools/gimppainttool.c * app/tools/tool_manager.c * app/widgets/gimpimagedock.c: changed accordingly. * app/gui/tools-commands.[ch]: made all callback signatures the same. * app/gui/preferences-dialog.c: cleaned up the display_format_string GtkCombo code. |
|
Michael Natterer | a75c675d03 |
added GimpToolRegisterFunc, GimpToolRegisterCallback and
2001-11-20 Michael Natterer <mitch@gimp.org> * app/tools/tools-types.h: added GimpToolRegisterFunc, GimpToolRegisterCallback and GimpToolOptionsNewFunc typedefs which are used to register tools. * app/tools/tools.c: put the register funcs in an array of GimpToolRegisterFuncs. Pass a Gimp pointer *plus* a GimpToolRegisterCallback (which is tool_manager_register_tool()) to the tools' register functions. * app/tools/tool_manager.[ch]: added a GimpToolOptionsNewFunc to the parameters of tool_manager_register_tool(). Create the tool options here, not in each tool. * app/tools/paint_options.[ch] * app/tools/selection_options.[ch] * app/tools/tool_options.[ch] * app/tools/transform_options.[ch]: all _init() and _new() functions take a GimpToolInfo pointer now. The _reset() func needs to be set manually now. * app/tools/[all_tools].[ch]: changed accordingly: - pass GimpToolOptionsNewFuncs to the register callback. - don't create the tool options in the tools' _init() function. - removed all static tool options variables. - get the options from the tool system in the cases i missed in my last commit. - added minor hacks to get rid of the static options pointer in some pathological cases :) (i.e. the ink tool). |
|
Michael Natterer | 55aa4776f7 |
added tool_manager_button_press_active() and friends functions.
2001-11-14 Michael Natterer <mitch@gimp.org> * app/tools/tool_manager.[ch]: added tool_manager_button_press_active() and friends functions. * app/display/gimpdisplayshell-callbacks.c: gimp_display_shell_canvas_events(): use the functions instead of re-fetching the active_tool whenever it may have changed (which requires knowledge about the tools' implementation). Also moved lots of variables around. |
|
Michael Natterer | 02fde14c95 |
build display/ before tools/.
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 "core-types.h". * 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 close_callback. * 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 functions. 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 options. * 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. |
|
Michael Natterer | d162376d47 |
app/display/Makefile.am app/display/gimpdisplay-callbacks.[ch]
2001-11-01 Michael Natterer <mitch@gimp.org> * app/display/Makefile.am * app/display/gimpdisplay-callbacks.[ch] * app/display/gimpdisplay-render.[ch] * app/display/gimpdisplay-scale.[ch] * app/display/gimpdisplay-scroll.[ch]: removed and added as gimpdisplayshell-foo.[ch] because they are all methods of the shell. * app/display/gimpdisplay.[ch] * app/display/gimpdisplayshell.[ch]: moved the "offset" and "size" variables from GimpDisplay to GimpDisplayShell. GimpDisplay should know nothing about screen coordinates. The gdisplay_[un]transform_foo() methods are still part of GimpDisplay but will be moved to GimpDisplayShell as soon as the tools' vitrual functions speak in image coordinates instead of GdkEvents. * app/display/gimpdisplayshell-callbacks.[ch]: prefixed all functions with gimp_display_shell_*. Moved some stuff to a "realize" callback File still has to be renamed. * app/display/gimpdisplay-foreach.[ch]: removed gdisplays_shrink_wrap(). * app/gui/menus.c * app/gui/view-commands.[ch] * app/display/gimpdisplayshell-scale.[ch]: implemented "Zoom to Fit Window" function (#57670). * app/nav_window.c * app/display/gimpdisplay-handlers.c * app/display/gimpdisplayshell-render.[ch] * app/display/gimpdisplayshell-scale.[ch] * app/display/gimpdisplayshell-scroll.[ch] * app/gui/colormap-dialog.c * app/gui/gui.c * app/gui/preferences-dialog.c * app/tools/gimpmagnifytool.c * app/tools/gimpmovetool.c * app/widgets/gimppreview.c: changed according to variable and filename changes. * app/tools/tool_manager.c: tool_manager_select_tool(): send the active tool a "HALT" command before selecting the new one. Fixes stale tool dialogs which were there because some other hack was removed (This is IMHO the right place to shut down the active tool). * app/tools/gimpcroptool.c: don't shrink wrap after cropping but let gimprc.allow_resize_windows decide. * app/tools/gimpselectiontool.c: gimage_mask_value() takes image, not screen coordinates. A good example of how braindead it is to pass GdkEvents to tools :-) Fixes incorrect cursor and oper update of the selection tools. * app/tools/gimptransformtool.c * app/undo.c: removed (#if 0 for now) some strange code which did manual exposing of GimpDisplayShell areas. This was definitely a hack and should not be there given the image emits correct "update" signals. |
|
Michael Natterer | 05e15eb1cc |
Cleanup weekend...
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 typedef. * 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. |
|
Michael Natterer | 99e78c7074 |
General cleanup of the selection tools and their PDB wrappers:
2001-10-22 Michael Natterer <mitch@gimp.org> General cleanup of the selection tools and their PDB wrappers: * app/core/Makefile.am * app/core/gimpimage-contiguous-region.[ch] * app/core/gimpimage-mask-select.[ch]: new files providing a clean, uniform API for the selection functionalities. Changed order of parameters to be consistent, removed code duplication. The region returned by the "by_color" function is not really contiguous but the API is so similar to "by_seed" and it's used in the same context so it's fair enough to put them together. Also, I'm not sure if the two is_pixel_sufficiently_different() I've optimized away were meant to do *exactly* the same. Added a comment there to remember the former difference. * app/core/gimpchannel.[ch] (gimp_channel_feather): removed the "output" channel parameter and made it optionally push an undo (like the other channel operations do). * app/core/gimpimage-mask.c: call gimp_channel_feather() with "push_undo == TRUE", removed some useless comments. * app/tools/gimpbycolorselecttool.[ch] * app/tools/gimpellipseselecttool.[ch] * app/tools/gimpfreeselecttool.[ch] * app/tools/gimpfuzzyselecttool.[ch] * app/tools/gimprectselecttool.[ch]: removed all the actual selection functionality and call the new gimp_image_mask_select_*() and gimp_image_contiguous_region_*() functions instead. * app/tools/gimpbezierselecttool.c * app/tools/gimpiscissorstool.c: use new function gimp_image_mask_select_channel() instead of doing the same manually. * app/tools/gimpbucketfilltool.c: find_contiguous_region() -> gimp_image_contiguous_region_by_seed(). * tools/pdbgen/Makefile.am * tools/pdbgen/groups.pl * tools/pdbgen/pdb/selection_tools.pdb: added new group "Selection Tools" which depends only on "core/" stuff (not on "tools/" any more, brrrr). * tools/pdbgen/pdb/text_tool.pdb: don't include "appenv.h" * tools/pdbgen/pdb/tools.pdb: removed the selection tools. * app/pdb/Makefile.am * app/pdb/selection_tools_cmds.c: new file. * app/pdb/internal_procs.c * app/pdb/text_tool_cmds.c * app/pdb/tools_cmds.c: regenerated. * libgimp/Makefile.am * libgimp/gimp_pdb.h * libgimp/gimpselectiontools_pdb.[ch]: new files. * libgimp/gimptools_pdb.[ch]: regenerated Misc cleanups: * app/app_procs.c: call splash_create() with "no_splash_image" as parameter. * app/display/gimpdisplay-render.c * app/display/gximage.c: don't include "appenv.h". * app/gui/gui.c: call session_restore() only if "restore_session" is TRUE. * app/gui/session.c: don't "if(restore_session)" here and don't include "appenv.h" * app/gui/splash.[ch]: added "gboolean show_image" parameter to splash_create(), don't include "appenv.h" * app/tools/gimppainttool.[ch]: added a "GimpGradient" parameter to gimp_paint_tool_get_color_from_gradient(). * app/tools/gimppaintbrushtool.c: pass the gradient. * app/tools/gimpselectiontool.c * app/tools/gimptransformtool.c * app/tools/tool_manager.c: s/GDisplay/GimpDisplay/. * app/widgets/gimpcontainergridview.[ch]: removed the "white_style" class variable and don't fiddle around with colors and styles... * themes/Default/gtkrc: ...do the same here with a simple rc style. |
|
Michael Natterer | 18dd072836 |
app/gimpprogress.[ch] s/GDisplay/GimpDisplay/
2001-10-16 Michael Natterer <mitch@gimp.org> * app/gimpprogress.[ch] * app/undo.c: s/GDisplay/GimpDisplay/ * app/plug_in.[ch]: removed unused boolean "destroy" field of the PlugIn struct. * app/core/gimpedit.c: don't include "app_procs.h" * app/display/gimpdisplay-callbacks.c: moved the "grab_abd_scroll" stuff from gimpdisplay-scroll.* here (less complicated and easier to cleanup...) * app/display/gimpdisplay-scroll.[ch]: removed here. * app/display/gimpdisplay-render.[ch] * app/display/gimpdisplay-selection.[ch] * app/display/gimpdisplayshell.c: s/GDisplay/GimpDisplay/g * app/display/gimpdisplay.[ch]: ditto, removed gdisplay_active() which was just a wrapper around "gimp_context_get_display (gimp_get_user_context (the_gimp))" (which is more to type but makes the use of the global "the_gimp" variable more obvious). * app/gui/color-area.h * app/gui/edit-commands.c * app/gui/file-commands.c * app/gui/file-dialog-utils.c * app/gui/image-commands.c * app/gui/info-window.h * app/gui/paths-dialog.h * app/gui/select-commands.c * app/gui/tool-options-dialog.c * app/gui/tools-commands.c * app/gui/view-commands.c: s/GDisplay/GimpDisplay/, gdisplay_active() removal, include "app_procs.h" for "the_gimp". * app/tools/gimpbezierselecttool.h * app/tools/gimpbrightnesscontrasttool.[ch] * app/tools/gimpbycolorselecttool.c * app/tools/gimpcolorbalancetool.[ch] * app/tools/gimpcurvestool.[ch] * app/tools/gimpeditselectiontool.h * app/tools/gimphistogramtool.[ch] * app/tools/gimphuesaturationtool.[ch] * app/tools/gimplevelstool.[ch] * app/tools/gimpmovetool.h * app/tools/gimpperspectivetool.h * app/tools/gimpposterizetool.[ch] * app/tools/gimprotatetool.h * app/tools/gimpscaletool.h * app/tools/gimpsheartool.h * app/tools/gimptexttool.h * app/tools/gimpthresholdtool.[ch] * app/tools/gimptool.[ch] * app/tools/gimptransformtool.h * app/tools/tool_manager.[ch]: lots of s/GDisplay/GimpDisplay/, made all *_dialog_hide() functions private, cleanup. * app/widgets/*: removed GtkType and gtk_type_* stuff entirely and use GObject functions, removed lots of empty "destroy" methods and use more type checking class cast macros instead of casting directly. * app/widgets/gimpcontainermenu.c: fixed item insert order. * app/widgets/gimphistogramview.[ch]: cleaned up and renamed all functions. * app/widgets/gimpwidgets-utils.[ch]: removed gimp_dialog_hide() as Gtk+ does the right thing (TM) now. * tools/pdbgen/pdb/color.pdb: implemented "histogram" without digging into tools/ and widgets/ (needs to be done for all color PDB functions). * tools/pdbgen/pdb/gimprc.pdb: no need to use "the_gimp" in a PDB function as a "Gimp" pointer is passed to them all. * tools/pdbgen/pdb/image.pdb: don't include "app_procs.h" * app/pdb/color_cmds.c * app/pdb/gimprc_cmds.c * app/pdb/image_cmds.c: regenerated. * app/pdb/procedural_db.c: don't include "app_procs.h" |
|
Michael Natterer | f235eabbf1 |
app/Makefile.am app/disp_callbacks.[ch] app/gdisplay.[ch]
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 compiles. * tools/pdbgen/pdb.pl: * tools/pdbgen/pdb/display.pdb: s/GDisplay/GimpDisplay/, s/"gdisplay.h"/"display/gimpdisplay.h"/. * app/pdb/display_cmds.c: regenerated. |
|
Michael Natterer | 01b780d682 |
added app/display/ and app/plug-in/. Empty for now except for the types
2001-08-17 Michael Natterer <mitch@gimp.org> * configure.in: added app/display/ and app/plug-in/. Empty for now except for the types files. * app/Makefile.am * app/appenums.h * app/apptypes.h: removed. * app/display/Makefile.am * app/display/display-types.h * app/plug-in/Makefile.am * app/plug-in/plug-in-types.h * app/gui/Makefile.am * app/gui/gui-types.h * app/pdb/Makefile.am * app/pdb/pdb-types.h: new files for typedefs. * app/appenv.h: added MessageHandlerType and StackTraceMode here. * app/undo_types.h: moved undo struct typedefs here. * app/tools/tools-types.h * app/core/core-types.h: added some enums and Tattoo here (renamed to GimpTattoo). * app/gdisplay.h: temp_hack: #include "display/display-types.h" * app/gimphelp.c: s/gtk_idle_add/g_idle_add/ * app/gimprc.c: don't use "gimprc" in token handlers but the passed "val1p" and "val2p". * app/image_map.[ch]: cleanup in preparation of making a GObject out of it. * app/base/pixel-region.[ch]: no need to pass the PixelRegionIterator around as void pointer. * app/core/gimp.[ch] * app/core/gimpcontext.[ch] * app/core/gimptoolinfo.[ch] * app/tools/tool_manager.c * app/widgets/gimpdnd.c: added the standard_tool_info to the Gimp object. * app/batch.c * app/file-open.c * app/file-save.c * app/file-utils.c * app/interface.c * app/main.c * app/path.[ch] * app/pathP.h * app/plug_in.h * app/core/gimpdrawable.[ch] * app/core/gimpimage-mask.c * app/core/gimpimage.[ch] * app/core/gimplayer.c * app/gui/color-area.c * app/gui/color-notebook.c * app/gui/colormap-dialog.c * app/gui/dialogs-commands.c * app/gui/dialogs-constructors.c * app/gui/error-console-dialog.c * app/gui/gradient-editor.c * app/gui/gradient-select.c * app/gui/indicator-area.c * app/gui/info-dialog.c * app/gui/palette-editor.c * app/gui/palette-select.c * app/gui/pattern-select.c * app/gui/session.c * app/gui/splash.c * app/gui/view-commands.c * app/tools/gimpinktool-blob.c * app/widgets/gimpcolorpanel.c * app/widgets/gimpdockbook.c * app/widgets/gimppreview.c * app/xcf/xcf-load.c * app/xcf/xcf-save.c * app/xcf/xcf.c: changed accordingly: s/Tattoo/GimpTattoo/, include the new types files, include <glib-object.h> instead of >gtk/gtk.h>. Bad hacks to get rid of SELECTION_OFF and friends in core/ (will be replaced ba a signal soon). * tools/pdbgen/Makefile.am: changed list of headers scanned for enums accordingly. * app/pdb/procedural_db.c * tools/pdbgen/app.pl * tools/pdbgen/pdb/channel.pdb * tools/pdbgen/pdb/display.pdb * tools/pdbgen/pdb/gradient_select.pdb * tools/pdbgen/pdb/image.pdb * tools/pdbgen/pdb/layer.pdb * tools/pdbgen/pdb/pattern_select.pdb: same fixes as above, added hacks to ensure that all foo-types.h files are included before all other gimp internal includes, include "pdb-types.h" unconditionally. * tools/pdbgen/enums.pl * app/pdb/*_cmds.c: regenerated. |
|
Michael Natterer | 667d8626eb |
app/tools/gimptool.[ch] removed all *_get_PDB_string() functions and
2001-08-15 Michael Natterer <mitch@gimp.org> * app/tools/gimptool.[ch] * app/tools/tool_manager.[ch]: removed all *_get_PDB_string() functions and GimpToolClass' "pdb_string" field as this info is stored independent from a specific tool instance in GimpToolInfo * app/tools/gimpbezierselecttool.c: use GimpToolInfo's "pdb_string". |
|
Michael Natterer | e2daae315b |
an evil temp_hack which lets GimpContext managing the active display
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 temporarily. * 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 there. * app/core/gimpedit.c: changed accordingly. * app/core/gimpimage.c: use gimp_image_update() instead of gdisplays_update_full(). * 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 GObjects). * 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 includes. * 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. |
|
Michael Natterer | 5e74fa373a |
fsck^^^ -- lovely autofoo wants "changequote([,])dnl"
2001-08-11 Michael Natterer <mitch@gimp.org> * configure.in: fsck^^^ -- lovely autofoo wants "changequote([,])dnl" * app/core/gimpcontext.[ch]: lots of GObject porting. * app/core/gimpobject.[ch]: added a "disconnect" signal, which like gtk's "destroy" is emitted in dispose(). This is ugly but I don't see another "clean" way to implement weak containers. * app/core/gimpcontainer.c: connect to the "disconnect" signal of the children of weak containes. * app/core/gimpimage.[ch]: replaced the "destroy" implementation with "dispose" + "finalize". Removed gimage->undo_history. * app/devices.c * app/gui/dialogs-constructors.c * app/gui/tools-commands.c * app/tools/tool_manager.c * app/widgets/gimpimagedock.c: changed accordingly. |
|
Michael Natterer | 2353c5d3e7 |
fix compiler warning.
2001-08-10 Michael Natterer <mitch@convergence.de> * app/nav_window.c: fix compiler warning. * app/core/gimp.[ch]: added gimp->documents which will be an MRU list of GimpImagefile objects. * app/core/gimpcontainer.c: added some g_return_if_fail(). * app/gui/palette-editor.c: use GtkImage instead of GtkPixmap, s/gtk_signal_*/g_signal_*/. * app/widgets/gimppreview.c: render the checkerboard only for channel == -1. In particular, don't render it for channel previews. * app/module_db.c * app/core/*.c * app/gui/colormap-dialog.c * app/tools/gimpairbrushtool.c * app/tools/gimpdodgeburntool.c * app/tools/gimpeditselectiontool.c * app/tools/gimperasertool.c * app/tools/gimppaintbrushtool.c * app/tools/gimppenciltool.c * app/tools/gimpsmudgetool.c * app/tools/tool_manager.c * app/widgets/*.c * libgimpwidgets/*.c: s/gtk_type_new/g_object_new/ |
|
Michael Natterer | fdabe08cf0 | DIE broken pipe, DIE | |
Sven Neumann | f5cfbd50da |
app/nav_window.c app/user_install.c app/pdb/color_cmds.c
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. |
|
Michael Natterer | 06b16890ba |
Port to glib/gtk+ 2.0 episode I (every segfault has it's beginning)
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 fix. |
|
Michael Natterer | b844c98549 |
removed path_to_beziersel() so this file can be safely included from
2001-07-17 Michael Natterer <mitch@gimp.org> * app/path.[ch]: removed path_to_beziersel() so this file can be safely included from core/. * app/tools/gimpbezierselecttool.[ch]: added it here. * app/core/core-types.h: added a GimpToolOptions typedef. Removes deps into tools/ and will later be a core object anyway. * app/tools/tools-types.h: removed the ToolOptions typedef here. * app/core/gimpimage-duplicate.c * app/core/gimpimage-mask.c * app/core/gimpimage.c * app/core/gimptoolinfo.[ch]: removed deps into tools/, misc stuff. * app/tools/tool_manager.[ch]: some ugly temp hacks. Please ignore. * app/widgets/gimpdialogfactory.[ch]: added a "remember_if_open" field to the GimpDialogFactoryEntry so we can manage dialogs which should not be re-opened on startup. * app/gui/dialogs-constructors.c * app/gui/dialogs.c: register & create all editor dialog with the "global_dialog_factory". * app/gui/tool-options-dialog.c * app/tools/*: s/ToolOptions/GimpToolOptions/ |
|
Michael Natterer | 9d87e554de |
removed the gimp_busy boolean, check whether user_installation is needed
2001-07-10 Michael Natterer <mitch@gimp.org> * app/app_procs.[ch]: removed the gimp_busy boolean, check whether user_installation is needed here, not in user_install.c, parse gtkrc an friends only if(!no_interface), create the Gimp object before parsing gimp's rc files an pas it to the parse functions, many other cleanups. * app/appenums.h: added MessageHandlerType and StackTraceMode. * app/appenv.h: removed MessageHandlerType, declare all global variables from main.c (no more hidden global stuff please). * app/errors.[ch]: added the fatal message func here (from main.c), removed the StackTraceMode enum. * app/gimprc.[ch]: renamed functions to gimprc_*(), pass a Gimp pointer to some functions. * app/gimpunit.c * app/unitrc.h: ok, this is ugly: renamed all functions to _gimp_unit_*() and made them public. The unit list is part of the Gimp object now, so pass a Gimp* to all functions. * app/libgimp_glue.[ch]: added EEKy wrappers for all gimp_unit_*() functions which are used by widgets. * app/main.c: cleaned up the global variables, removed the fatal message handler, call app_init() directly, not via the user_install stuff, misc. cleanups. * app/user_install.[ch]: removed the check if user_installation is needed (done by app_procs.c now). * app/core/gimp.[ch]: added the user_unit list and the "busy" boolean. Moved gimp_[set|unset]_busy() here. Added gimp_initialize() which is called after unitrc and gimprc are parsed. * app/batch.c * app/colormaps.c * app/devices.c * app/disp_callbacks.c * app/gdisplay_ops.c * app/gimphelp.c * app/module_db.c * app/nav_window.c * app/plug_in.c * app/core/gimpcontext.c * app/core/gimpdatafiles.c * app/core/gimpimage-convert.c * app/core/gimpimage-duplicate.c * app/core/gimpimage.c * app/core/gimpparasite.c * app/core/gimpparasitelist.h * app/gui/file-open-dialog.c * app/gui/gui.[ch] * app/gui/info-dialog.c * app/gui/info-window.c * app/gui/preferences-dialog.c * app/gui/session.c * app/gui/tips-dialog.c * app/gui/toolbox.c * app/tools/gimpblendtool.c * app/tools/gimpbucketfilltool.c * app/tools/gimpcolorpickertool.c * app/tools/gimpfuzzyselecttool.c * app/tools/gimptransformtool.c * app/tools/tool_manager.c * app/widgets/gimpcolorpanel.c * app/widgets/gimpcursor.c * app/xcf/xcf-load.c * app/xcf/xcf-save.c * app/xcf/xcf.c * tools/pdbgen/Makefile.am * tools/pdbgen/app.pl * tools/pdbgen/enums.pl * tools/pdbgen/pdb/image.pdb * tools/pdbgen/pdb/message.pdb * tools/pdbgen/pdb/unit.pdb * app/pdb/image_cmds.c * app/pdb/message_cmds.c * app/pdb/unit_cmds.c: changed accordingly, minor cleanups. |
|
Michael Natterer | 37ce6b9ac8 |
app/Makefile.am removed.
2001-07-08 Michael Natterer <mitch@gimp.org> * app/Makefile.am * app/drawable.[ch]: removed. * app/core/gimpdrawable.[ch]: added the functions here. Made an end to the myth that FG/BG and the undo system (!!!) are not really part of the core. * app/disp_callbacks.c * app/floating_sel.c * app/image_map.c * app/qmask.c * app/undo.c * app/core/gimpchannel.c * app/core/gimpdrawable-desaturate.c * app/core/gimpdrawable-equalize.c * app/core/gimpdrawable-invert.c * app/core/gimpdrawable-offset.c * app/core/gimpedit.c * app/core/gimpimage-duplicate.c * app/core/gimpimage-mask.c * app/core/gimpimage-new.c * app/core/gimpimage.[ch] * app/core/gimplayer.c * app/core/gimplayermask.c * app/gui/channels-commands.c * app/gui/gui.c * app/gui/layers-commands.c * app/tools/gimpairbrushtool.c * app/tools/gimpbezierselecttool.c * app/tools/gimpblendtool.c * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpbucketfilltool.c * app/tools/gimpclonetool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpconvolvetool.c * app/tools/gimpcurvestool.c * app/tools/gimphistogramtool.c * app/tools/gimphuesaturationtool.c * app/tools/gimpinktool.c * app/tools/gimpiscissorstool.c * app/tools/gimplevelstool.c * app/tools/gimppainttool.c * app/tools/gimpposterizetool.c * app/tools/gimpscaletool.c * app/tools/gimpthresholdtool.c * app/tools/gimptransformtool.c * app/tools/tool_manager.c * app/widgets/gimpchannellistitem.c * app/widgets/gimpchannellistview.c * app/widgets/gimpdrawablelistitem.c * app/widgets/gimplayerlistitem.c * app/widgets/gimplayerlistview.c * app/pdb/channel_cmds.c * app/pdb/color_cmds.c * app/pdb/drawable_cmds.c * app/pdb/edit_cmds.c * app/pdb/floating_sel_cmds.c * app/pdb/image_cmds.c * app/pdb/layer_cmds.c * app/pdb/parasite_cmds.c * app/pdb/selection_cmds.c * app/pdb/text_tool_cmds.c * app/pdb/tools_cmds.c * tools/pdbgen/pdb.pl * tools/pdbgen/pdb/color.pdb * tools/pdbgen/pdb/drawable.pdb: changed accordingly. Misc small fixes and cleanups. |
|
Michael Natterer | 3196563c14 |
app/Makefile.am removed.
2001-07-07 Michael Natterer <mitch@gimp.org> * app/Makefile.am * app/gimage.[ch]: removed. * app/core/gimp.c: s/gimage_new/gimp_image_new/ * app/gui/gui.c * app/tools/tool_manager.c: added the handlers from gimage.c |
|
Michael Natterer | b70ee4b76d |
put all tool_manager variables into a struct which is attached to a
2001-07-07 Michael Natterer <mitch@gimp.org> * app/tools/tool_manager.[ch]: put all tool_manager variables into a struct which is attached to a "Gimp". Pass a Gimp* to all tool_manager functions. * app/disp_callbacks.c * app/gdisplay.c * app/gimage.c * app/scale.c * app/scroll.c * app/undo.c * app/gui/convert-dialog.c * app/gui/edit-commands.c * app/gui/tool-options-dialog.c * app/gui/tools-commands.c: changed accordingly. * app/tools/gimpbezierselecttool.c * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpbycolorselecttool.c * app/tools/gimpclonetool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcroptool.c * app/tools/gimpcurvestool.c * app/tools/gimpeditselectiontool.c * app/tools/gimphistogramtool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimptexttool.c * app/tools/gimpthresholdtool.c * app/tools/gimptool.c * app/tools/gimptransformtool.c: mostly bad hacks for tool dialogs which exist without a real context. Needs some more review. |
|
Michael Natterer | 1bcd3e1834 |
app/Makefile.am removed.
2001-07-07 Michael Natterer <mitch@gimp.org> * app/Makefile.am * app/context_manager.[ch]: removed. * app/app_procs.c: call tool_mananger instead of context_manager functions, pass "the_gimp" to some more functions. * app/drawable.[ch]: pass a GimpContext to drawable_fill(). * app/errors.c: behave according to "stack_trace_mode" when using the debugging signal handler. * app/gimprc.[ch]: removed the core/ config variables. * app/selection.c: set the selection's state to INVISIBLE in selection_pause(). * app/core/Makefile.am * app/core/gimpcoreconfig.[ch]: new files (the configuration variables used by core/). * app/core/gimpcontext.[ch]: removed the global contexts (user, default, ...) and their functions. It's no longer possible to pass NULL to the context functions to manipulate the current context (gimpcontext.c doesn't know the current context any more). * app/core/gimp.[ch]: added them here. The functions are now called gimp_[set|get]_*_context(). Added gimp_create_context() which is the only function to create contexts now. * app/gui/dialogs.[ch] * app/gui/gui.[ch]: pass "gimp" to all functions. * app/tools/tool_manager.[ch] * app/tools/tools.[ch]: pass "gimp" to lots of functions. Added the "global_tool_context" logic and the global/non-global paint options switching from the context_manager. Pass "gimp" to all tools' "register" functions. * app/tools/*: changed accordingly. * app/devices.c * app/disp_callbacks.c * app/file-open.[ch] * app/file-save.c * app/gdisplay.c * app/gimage.c * app/libgimp_glue.c * app/module_db.c * app/nav_window.c * app/plug_in.c * app/qmask.c * app/undo.c * app/base/base-config.c * app/core/gimpbrushpipe.c * app/core/gimpdrawable-offset.c * app/core/gimpgradient.c * app/core/gimpimage-duplicate.c * app/core/gimpimage-mask.c * app/core/gimpimage-new.c * app/core/gimpimage.c * app/core/gimppalette.c * app/core/gimptoolinfo.[ch] * app/core/gimpundo.c * app/gui/brush-select.c * app/gui/channels-commands.c * app/gui/color-area.c * app/gui/dialogs-constructors.c * app/gui/file-new-dialog.c * app/gui/file-open-dialog.c * app/gui/gradient-editor.c * app/gui/gradient-select.c * app/gui/info-window.c * app/gui/layers-commands.c * app/gui/menus.c * app/gui/palette-editor.c * app/gui/palette-import-dialog.c * app/gui/palette-select.c * app/gui/paths-dialog.c * app/gui/pattern-select.c * app/gui/preferences-dialog.c * app/gui/resize-dialog.c * app/gui/test-commands.c * app/gui/tool-options-dialog.c * app/gui/toolbox.c * app/gui/tools-commands.c * app/xcf/xcf-load.c * app/xcf/xcf-save.c * app/widgets/gimpchannellistview.c * app/widgets/gimpdnd.c * app/widgets/gimpdrawablelistview.[ch] * app/widgets/gimpimagedock.c * app/widgets/gimplayerlistview.c * app/pdb/brushes_cmds.c * app/pdb/drawable_cmds.c * app/pdb/gradient_select_cmds.c * app/pdb/gradients_cmds.c * app/pdb/palette_cmds.c * app/pdb/patterns_cmds.c * app/pdb/procedural_db.c * tools/pdbgen/pdb/brushes.pdb * tools/pdbgen/pdb/drawable.pdb * tools/pdbgen/pdb/gradient_select.pdb * tools/pdbgen/pdb/gradients.pdb * tools/pdbgen/pdb/palette.pdb * tools/pdbgen/pdb/patterns.pdb: changed accordingly: remove usage of gimp_context_[get|set]_*(NULL), create contexts with gimp_create_context(). Get the user/current context with gimp_get_[user|current]_context(). Added/removed access to the global "the_gimp" variable in some places. Get the core's config variables from "core_config". |
|
Michael Natterer | 0164596064 |
app/core/Makefile.am app/core/core-types.h added an "application object"
2001-07-04 Michael Natterer <mitch@gimp.org> * app/core/Makefile.am * app/core/core-types.h * app/core/gimp.[ch]: added an "application object" called Gimp. Currently, it contains the image list, the clipboard, the data factories, the procedural hashtable and the tool info list. It's the toplevel object of the core object system. Finally, creating a Gimp object will return a standalone gimp core engine instance with no other global states/variables involved. * app/app_procs.[ch]: allocate a "Gimp" instance called "the_gimp" :) Removed stuff which is now done by the "Gimp" object. Merged gimp_init() into app_init() because gimp_init() is taken now. * app/context_manager.[ch]: removed stuff done by "Gimp". * app/batch.[ch] * app/gimage.[ch] * app/xcf/xcf-load.[ch] * app/xcf/xcf.[ch] * app/core/gimpedit.[ch] * app/tools/tool_manager.[ch]: pass around an additional "Gimp" argument. * app/pdb/procedural_db.[ch]: pass a "Gimp" pointer as first parameter to all internal procedures and to all procedural_db_* functions. * app/core/gimpcontext.[ch] * app/core/gimpimage.[ch]: added a "Gimp" pointer to the structs. * app/devices.c * app/errors.c * app/file-open.c * app/file-save.c * app/gimphelp.c * app/gimpunit.c * app/image_new.c * app/main.c * app/nav_window.c * app/plug_in.c * app/base/base.c * app/core/gimpdatafactory.c * app/core/gimpimage-duplicate.c * app/core/gimpimage-mask.c * app/core/gimptoolinfo.[ch] * app/gui/brush-select.c * app/gui/convert-dialog.c * app/gui/dialogs-constructors.c * app/gui/edit-commands.c * app/gui/file-open-dialog.c * app/gui/file-save-dialog.c * app/gui/gradient-editor.c * app/gui/gradient-select.c * app/gui/gui.c * app/gui/image-commands.c * app/gui/info-window.c * app/gui/menus.c * app/gui/palette-editor.c * app/gui/palette-import-dialog.c * app/gui/palette-select.c * app/gui/paths-dialog.c * app/gui/pattern-select.c * app/gui/preferences-dialog.c * app/gui/test-commands.c * app/gui/toolbox.c * app/gui/tools-commands.c * app/tools/gimpbezierselecttool.c * app/tools/gimpbucketfilltool.c * app/tools/gimppainttool.h * app/tools/gimptexttool.c * app/tools/gimptransformtool.h * app/widgets/gimpbufferview.c * app/widgets/gimpcontainerview-utils.c * app/widgets/gimpcursor.c * app/widgets/gimpdnd.c * app/widgets/gimpimagedock.c: changed accordingly. Cleaned up lots of includes. Many files still access the global "the_gimp" variable exported by app_procs.h. * tools/pdbgen/app.pl * tools/pdbgen/pdb/brush_select.pdb * tools/pdbgen/pdb/brushes.pdb * tools/pdbgen/pdb/convert.pdb * tools/pdbgen/pdb/edit.pdb * tools/pdbgen/pdb/fileops.pdb * tools/pdbgen/pdb/gradient_select.pdb * tools/pdbgen/pdb/gradients.pdb * tools/pdbgen/pdb/image.pdb * tools/pdbgen/pdb/palette.pdb * tools/pdbgen/pdb/pattern_select.pdb * tools/pdbgen/pdb/patterns.pdb * tools/pdbgen/pdb/procedural_db.pdb: changed accordingly. Don't use "the_gimp" here because all procedures get passed a "Gimp" pointer now. * app/pdb/*: regenerated. |
|
Michael Natterer | 80dad0fcfa |
some s/0/FALSE/
2001-06-05 Michael Natterer <mitch@gimp.org> * app/global_edit.c: some s/0/FALSE/ * app/resize.[ch]: removed resize_scale_implement() and resize_check_layer_scaling(), cleanup. * app/core/gimpimage.[ch]: added gimp_image_check_scaling(). * app/gui/commands.c: added image_scale_implement() as static function. * app/gui/tool-options-dialog.[ch]: add the tool options widgets to the dialog when they are first needed. Removed tool_options_dialog_add(). * app/tools/tool_manager.c: don't call tool_options_dialog_add(). |
|
Michael Natterer | 746fc51973 |
app/Makefile.am removed.
2001-05-25 Michael Natterer <mitch@gimp.org> * app/Makefile.am * app/gimpui.[ch]: removed. * app/tools/paint_options.[ch]: removed paint_mode_menu_new(). * app/widgets/Makefile.am * app/widgets/gimpwidgets-constructors.[ch] * app/widgets/gimpwidgets-utils.[ch]: added here. * app/disp_callbacks.c * app/errors.c * app/gimphelp.c * app/interface.c * app/gui/brush-select.c * app/gui/channels-commands.c * app/gui/commands.c * app/gui/file-dialog-utils.c * app/gui/file-open-dialog.c * app/gui/file-save-dialog.c * app/gui/layers-commands.c * app/gui/tool-options-dialog.c * app/tools/gimpbrightnesscontrasttool.c * app/tools/gimpbycolorselecttool.c * app/tools/gimpclonetool.c * app/tools/gimpcolorbalancetool.c * app/tools/gimpcolorpickertool.c * app/tools/gimpcurvestool.c * app/tools/gimphistogramtool.c * app/tools/gimphuesaturationtool.c * app/tools/gimplevelstool.c * app/tools/gimpposterizetool.c * app/tools/gimpsmudgetool.c * app/tools/gimptexttool.c * app/tools/gimpthresholdtool.c * app/tools/gimptransformtool.c * app/tools/tool_manager.c * app/widgets/gimplayerlistview.c: changed accordingly. |
|
Michael Natterer | 3be8f5b5f2 |
app/tools/Makefile.am removed. new file
2001-05-25 Michael Natterer <mitch@gimp.org> * app/tools/Makefile.am * app/tools/tool_options_dialog.[ch]: removed. * app/tools/tools.h: new file * app/gui/Makefile.am * app/gui/tool-options-dialog.[ch]: added. * app/tools/tools.c: renamed register_tools() to tools_init(), new function tools_exit(). * app/app_procs.c * app/context_manager.c * app/tools/tool_manager.c * app/gui/dialogs-constructors.c * app/gui/gui.c: changed accordingly. |
|
Michael Natterer | d1022c34b6 |
app/Makefile.am removed.
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 |
|
Michael Natterer | 8985b107c3 |
configure.in added new directory app/core/ for the core object system.
2001-05-09 Michael Natterer <mitch@gimp.org> * configure.in * app/Makefile.am: added new directory app/core/ for the core object system. * app/gimage_mask.[ch] * app/gimpbrush-header.h * app/gimpbrush.[ch] * app/gimpbrushgenerated.[ch] * app/gimpbrushpipe.[ch] * app/gimpchannel.[ch] * app/gimpcontainer.[ch] * app/gimpcontext.[ch] * app/gimpdata.[ch] * app/gimpdatafactory.[ch] * app/gimpdatalist.h * app/gimpdrawable-desaturate.[ch] * app/gimpdrawable-equalize.[ch] * app/gimpdrawable-invert.[ch] * app/gimpdrawable-offset.[ch] * app/gimpdrawable-preview.[ch] * app/gimpdrawable.[ch] * app/gimpgradient.[ch] * app/gimpimage-convert.[ch] * app/gimpimage-duplicate.[ch] * app/gimpimage-undo.[ch] * app/gimpimage.[ch] * app/gimplayer.[ch] * app/gimplayermask.[ch] * app/gimplist.[ch] * app/gimpmarshal.[ch] * app/gimpobject.[ch] * app/gimppalette-import.[ch] * app/gimppalette.[ch] * app/gimppattern-header.h * app/gimppattern.[ch] * app/gimpundo.[ch] * app/gimpundostack.[ch] * app/gimpviewable.[ch]: removed these files... * app/core/*: ...and added them here. * app/*.c * app/gui/*.c * app/pdb/*.c * app/tools/*.c * app/widgets/*.c * plug-ins/common/gbr.c * plug-ins/common/gih.c * plug-ins/common/pat.c * po/POTFILES.in * tools/pdbgen/Makefile.am * tools/pdbgen/enums.pl * tools/pdbgen/pdb.pl * tools/pdbgen/pdb/*.pdb: changed accordingly. |
|
Michael Natterer | 9ecde4ea49 |
app/Makefile.am removed.
2001-05-08 Michael Natterer <mitch@gimp.org> * app/Makefile.am * app/gimpdnd.[ch]: removed. * app/widgets/Makefile.am * app/widgets/gimpdnd.[ch]: and moved here. * app/devices.c * app/docindex.c * app/interface.c * app/gui/about-dialog.c * app/gui/channels-dialog.c * app/gui/color-area.c * app/gui/color-select.c * app/gui/colormap-dialog.c * app/gui/gradient-editor.c * app/gui/indicator-area.c * app/gui/layers-dialog.c * app/gui/palette-editor.c * app/gui/palette-select.c * app/gui/toolbox.c * app/tools/gimpblendtool.c * app/tools/tool_manager.c * app/tools/tool_options_dialog.c: changed #includes accordingly. |
|
Michael Natterer | 2301e7e1d9 |
app/tools/Makefile.am app/tools/gimpclonetool.[ch]
2001-04-19 Michael Natterer <mitch@gimp.org> * app/tools/Makefile.am * app/tools/gimpclonetool.[ch] * app/tools/gimpconvolvetool.[ch] * app/tools/gimppainttool.c * app/tools/gimptool.h * app/tools/paint_options.c * app/tools/tool_manager.c * app/tools/tools.c: Applied a patch from Dave Neary <dneary@eircom.net> which brings clone and convolve back. That's all paint tools, Dudes! |
|
Michael Natterer | 4f69c5a09e |
app/tools/Makefile.am app/tools/gimpsmudgetool.[ch]
2001-04-11 Michael Natterer <mitch@gimp.org> * app/tools/Makefile.am * app/tools/gimpsmudgetool.[ch] * app/tools/gimptool.[ch] * app/tools/paint_options.c * app/tools/tool_manager.c * app/tools/tools.c * app/pdb/tools_cmds.c * tools/pdbgen/pdb/tools.pdb: applied a (slightly modified) patch from Dave Neary <dave.neary@palamon.ie> which reactivates the smudge tool. |
|
Michael Natterer | 647bf4433b |
app/tools/Makefile.am back again.
2001-04-01 Michael Natterer <mitch@gimp.org> * app/tools/Makefile.am * app/tools/gimpairbrushtool.[ch]: back again. * app/tools/gimptool.[ch] * app/tools/paint_options.c * app/tools/tool_manager.c * app/tools/tools.c: changed accordingly. |
|
Michael Natterer | bb134d6ed4 |
app/tools/bezier_select.[ch] app/tools/bezier_selectP.h
2001-03-31 Michael Natterer <mitch@gimp.org> * app/tools/bezier_select.[ch] * app/tools/bezier_selectP.h * app/tools/transform_core.[ch] * app/tools/transform_tool.[ch]: removed. * app/tools/Makefile.am * po/POTFILES.in: changed accordingly. * app/tools/gimpbezierselecttool.c: indentation fixes. * app/tools/gimpdodgeburntool.[ch]: made cursor toggling work again, cleanup. * app/tools/gimpscaletool.[ch] * app/tools/gimptool.c: minor cleanups like removing STUB()s. * app/tools/tool_manager.c: applied patch from Dave Neary which returns useful PDB strings for the paint tools again. |
|
Michael Natterer | 47f987f801 |
app/Makefile.am lowlevel stuff taken out of the transform tool.
2001-03-31 Michael Natterer <mitch@gimp.org> * app/Makefile.am * app/pixel_surround.[ch]: lowlevel stuff taken out of the transform tool. * app/tools/gimpscaletool.[ch]: minor cleanups, declare gimp_scale_tool_register() publically. * app/tools/gimptransformtool.[ch]: removed the PixelSurround stuff, hardcode tr_tool->interactive to TRUE, removed the no_draw() function, register the tool options, misc. other fixes and bad hacks that need to go away. (All this non-interactive stuff needs to be done outside the tool system. A "non-interactive tool" is just pure nonsense) * app/tools/gimptool.h: spacing. * app/tools/tool_manager.c: tool_manager_register_tool_options(): return after warning, don't simply continue and crash. * app/tools/tools.c: register the bezier select tool. |
|
Michael Natterer | 16fa029b28 |
pixmaps/Makefile.am new pixmap. "Someone" needs to go over the pixmaps one
2001-03-12 Michael Natterer <mitch@gimp.org> * pixmaps/Makefile.am * pixmaps/edit.xpm: new pixmap. "Someone" needs to go over the pixmaps one day ;) * app/gimpdatafactoryview.c * app/gimpdrawablelistview.c: use the new icon. * app/floating_sel.c: stupid: the new gimp_layer_get_opacity() accessor speaks in normalized [0.0..1.0] values, so the floating selection was invisible after blindly using it. * app/gimpimage.c: more stupid: a totally useless sanity clamping made the composite preview ugly. Fixed. * app/tools/tool_manager.c: why the heck did this never crash before: don't dereference a NULL GDisplay pointer. |
|
Michael Natterer | b51d761fcc |
app/Makefile.am app/apptypes.h new subclass of GimpDrawableListView (the
2001-03-11 Michael Natterer <mitch@gimp.org> * app/Makefile.am * app/apptypes.h * app/gimplayerlistview.[ch]: new subclass of GimpDrawableListView (the upcoming replacement of the layers dialog). Connects to the new GimpLayer signals using the layer container as signal proxy (see below). * app/gimpcontainerview.[ch]: made "set_container" a virtual function. This is needed by the GimpLayerListView to connect/disconnect signals. Subclasses implementing this method MUST obey the following order of instructions: 1. disconnect from signals related to GimpContainerView->container 2. chain up (!!!) 3. connect to signals related to GimpContainerView->container And yes, I will add DocBook files for all those new objects :) * app/gimppreview.[ch]: made "border_color" a GimpRGB instead of guchar[3]. Added gimp_preview_set_border_color(). * app/gimpcontainergridview.c * app/gimplayerlistitem.c: use gimp_preview_set_border_color(). * app/gimpcontainerlistview.c * app/gimpdrawablelistview.c: cleanup. * app/gimpdrawablelistitem.c: we can safely asume that our parent widget is a GimpDrawableListView and use it's "reorder_drawable" function pointer (after checking that it's there). * app/gimplistitem.c: connect the correct DND type when changing the container of a list item with "reorderable" enabled. * app/gimplayer.[ch]: added accessors and "*_changed" signals for layer->mode, layer->opacity and layer->preserve_trans. * app/disp_callbacks.c: fixed a FIXME: use the correct bucket fill tool context again. * app/tools/paint_options.[ch]: paint_mode_menu_new(): added a boolean which toggles the "Behind" item on/off to the same constructor can be used for all paint mode menus. * app/tools/gimptoolinfo.c: rect. select is the standard tool again. * app/brush_select.c * app/floating_sel.c * app/gimpimage.c * app/layers_dialog.c * app/pdb/layer_cmds.c * app/tools/gimpeditselectiontool.c * tools/pdbgen/pdb/layer.pdb: use the new layer accessors and the paint_mode_menu constructor. * app/commands.c * app/gdisplay.c * app/menus.c * app/undo.c * app/tools/gimppainttool.c * app/tools/gimptool.c * app/tools/paint_options.c * app/tools/tool_manager.c: put the #warning's back inside #ifdef __GNUC__ |
|
Garry R. Osgood | b8a72df54e |
Garry R. Osgood <grosgood@rcn.com>
* app/Makefile.am Inclusion of David's MMX code into Makefile now depends on prior definition of HAVE_ASM_MMX. * app/pdb/procedural_db.c Line 276 cast of va_args to type GimpRGB seems very problematical on SGI, as the va_args macro expands to Extreme Ugliness and (GimpRGB)(Extreme Ugliness) does not compile. RH Linux seems indifferent and accepts either. * app/commands.c * app/gdisplay.c * app/menus.c * app/plug_in_cmds.c * app/undo.c * app/tools/gimppainttool.c * app/tools/gimptool.c * app/tools/paint_options.c * app/tools/tool_manager.c s|#<remark about extreme buggedness>| /* #<remark about extreme buggedness> */| Not all compilers are at peace with non-standard pre-compiler directives. SGI MIPs compilers are among the latter species. |
|
Michael Natterer | 1d987a3ba7 |
app/tools/Makefile.am lots of files renamed to gimp*tool.[ch]
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. |
|
Michael Natterer | 904d8e2cab |
app/tools/Makefile.am back as real tool which gets temporarily pushed to
2001-02-28 Michael Natterer <mitch@gimp.org> * app/tools/Makefile.am * app/tools/edit_selection.[ch]: back as real tool which gets temporarily pushed to the tool_manager's new tool stack. * app/tools/move.c * app/tools/text_tool.c: call the edit_selection stuff again. * app/tools/tool.c: added a STUB(). * app/tools/tool_manager.[ch]: implemented tool_manager_push_tool() and tool_manager_pop_tool(). |
|
Michael Natterer | 3d78cbd56c |
made the global_paint_options public.
2001-02-28 Michael Natterer <mitch@gimp.org> * app/context_manager.[ch]: made the global_paint_options public. * app/tools/gimptoolinfo.[ch]: added a "tool_context" boolean to the constructor and create a private context for the tool initialized with global_paint_options's values. * app/tools/tool_manager.[ch]: changed tool_manager_register_tool() accordingly. * app/tools/gimpcolorpickertool.c * app/tools/measure.c * app/tools/move.c * app/tools/text_tool.c: changed accordingly. * app/tools/paint_options.[ch]: added the fade out and gradient options here so they can be used by all paint tools. * app/tools/gimppaintbrushtool.c: removed them here. Changed the non_gui stuff: removed the non_gui_paint_func and handle the non_gui stuff in the normal paint method. Allocate a non_gui_paintbrush instead of the old non_gui_paint_core. The non_gui stuff will change totally and will be handled by GimpPaintTool only. * app/tools/tool.c: removed the STUB()'s again. |
|
Michael Natterer | 3eb62f8756 |
removed crap from ancient times when tools used to be an enum.
2001-02-23 Michael Natterer <mitch@gimp.org> * app/app_procs.c: removed crap from ancient times when tools used to be an enum. * app/brush_select.[ch]: cleaned up the gui and made global paint mode toggling much simpler by expanding vertically instead of reparenting. * app/context_manager.c: removed hack by using a tool manager accessor function. * app/gimpcontext.c: use the new standard tool info object. Tools also _behave_ like all other data types now (can e.g. be refreshed). * app/tools/tool.[ch] * app/tools/gimptoolinfo.[ch]: added an "identifier" which is an untranslated string with a meaningful prefix and name, e.g. "gimp:color_picker_tool". Renamed "tool_name" and "tool_desc" to "blurb" and "help", changed the constructor accordingly. Added gimp_tool_info_get_standards() to make the context work with tool refresh. * app/tools/tool_manager.[ch] * app/tools/tools.c: removed the global list of tool class structures because the tool info list is in place. Added tool_manager_register_tool_options() which calls tool_options_dialog_add() and registers the options in the global_tool_info_list. * app/tools/Makefile.am * app/tools/paint_options.[ch] * app/tools/selection_options.[ch] * app/tools/tool_options.[ch] * app/tools/tool_options_dialog.[ch]: build them all again. This is mostly the old tool options system with minor modifications to work with the new stuff. The tool options auto-update with the user context now, so there are no update functions any more. * app/gimpdnd.c * app/toolbox.c * app/tools/color_picker.c * app/tools/measure.c * app/tools/move.c: changed accordingly. |
|
Michael Natterer | 9417fa1db7 |
forgot one s/gimptool/gimptool-1.4/
2001-02-21 Michael Natterer <mitch@gimp.org> * configure.in: forgot one s/gimptool/gimptool-1.4/ * app/appenums.h: removed "UPDATE_CURSOR" from the ToolAction enum. * app/context_manager.c: removed the toolbox toggle button updating code here... * app/toolbox.c: ...and handle it in the toolbox itself. * app/devices.c: removed some obsolete old tool suff. * app/tools/Makefile.am * app/tools/move.[ch]: reactivated. Disabled the edit_selection stuff for now. We need a way to temporary push tools to some stack of the tool manager. * app/tools/tool.[ch]: removed lot of stuff that is obsolete or handled by the GimpToolInfo object now. * app/tools/tool_manager.[ch]: stripped all tool options stuff because they will be able to follow tool changes themselves. Renamed some functions to be consistent. * app/tools/tools.c: register the move tool again. * app/cursorutil.c * app/disp_callbacks.c * app/gimage_mask.c * app/global_edit.c * app/tools/color_picker.c * app/tools/measure.[ch] * app/tools/tool_options.c: changed accordingly. |
|
Michael Natterer | 99c5201870 |
Made the tool system work again and integrated it back with the
2001-02-21 Michael Natterer <mitch@gimp.org> Made the tool system work again and integrated it back with the GimpContext. It's a hack between old, new and freshly hacked stuff. There are still lots of warnings but at least we can switch tools again. * app/tools/Makefile.am * app/tools/gimptoolinfo.[ch]: resurrected as real object. The GimpToolInfo objects are derived from GimpData, which gives us the tool icon stuff for free. Also, we need a list of _objects_ which is allocated all the time. All tools are required to have a "register" function which registers themselves with the list of GimpToolInfo objects which is maintained by the tool manager. * app/tools/tool.[ch]: made a real GtkObject with properly named functions out of it. The former "active_tool_control" is of course not the default implementation of the tool's "control" method but a hack _around_ it, so it went to the tool manager. * app/tools/color_picker.[ch] * app/tools/measure.[ch]: ditto. Added "register" functions and "destroy" implementations so the tools go away after use. * app/tools/tool_manager.[ch]: badly hacked at the moment to keep both the list of class structures _and_ the tool info list. * app/tools/tools.c: call the tools' register functions. * app/gimpcontext.[ch]: store a pointer to a GimpToolInfo object as "active_tool" in the context, so we're independent of tools being allocated or not. It's treated just like a brush or pattern now. * app/gimpdnd.[ch]: made tool DND work like all other DND types. * app/devices.[ch]: also here: the tool is just a normal data object now, resulting in removal of lots of code. * app/commands.c * app/context_manager.c: updated the tool select and context stuff to work again. * app/toolbox.c: removed the old pixmap buttons and put GimpPreviews inside the tool buttons. Still needs an own preview type to look nice. * app/disp_callbacks.c * app/about_dialog.c * app/app_procs.c * app/appenums.h * app/apptypes.h * app/gimage.c * app/gimppalette.c * app/gimppreview.c * app/gimprc.c * app/info_window.c * app/menus.c * app/palette_select.h * app/scale.c * app/scroll.c: lots of changes to make it work again. |
|
Nate Summers | d234db5419 | doh! |