2001-05-13 Michael Natterer <mitch@gimp.org>
* app/appenums.h
* app/core/core-types.h
* app/tools/tools-types.h: moved some more types to core-types.h
and tools-types.h. Removed AUXILLARY_CHANNEL from the ChannelType
enum.
* app/gdisplay.[ch]: removed the "depth" and "color_type" fields
from the struct. Cleaned up the header.
* app/selection.c
* app/gui/info-window.c: use g_visual->depth instead of
gdisp->depth.
* app/gimphelp.c: #include "core/core-types.h"
* tools/pdbgen/Makefile.am: added app/core/core-types.h to the
list of files to be scanned for enums.
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl
* app/pdb/drawable_cmds.c
* app/pdb/image_cmds.c
* app/pdb/layer_cmds.c: regenerated.
2001-05-13 Michael Natterer <mitch@gimp.org>
* TODO.xml: some percentage updates.
* autogen.sh: correctly parse latest autoconf's broken "--version"
string.
* app/widgets/Makefile.am
* app/widgets/gimpcontainerview-utils.[ch]: new files which
provide a set of built-in get_name_func()s for GimpContainerView
and GimpContainerMenu.
* app/widgets/gimpcontainermenu.c
* app/widgets/gimpcontainerview.c: use them.
* app/widgets/gimpimagedock.c
* app/gui/dialogs-constructors.c: removed the get_name_func()s here.
2001-05-13 Michael Natterer <mitch@gimp.org>
* app/apptypes.h: removed some forgotten tools types.
* app/tools/tools-types.h: and added them here.
* app/interface.c
* app/disp_callbacks.[ch]: ported dropping of drawables to the
new DND system.
* app/app_procs.c
* app/core/gimpdatafactory.c
* app/core/gimpimage-duplicate.c
* app/core/gimptoolinfo.h
* app/gui/gui.c
* app/tools/tool_options.c
* app/widgets/gimpchannellistview.c
* app/widgets/gimplayerlistview.c: removed/fixed includes.
* app/gui/brush-select.[ch]
* app/gui/pattern-select.[ch]: removed the display of the current
name (done by the grid view now).
* app/gui/palette-select.c: fixed palette preview size.
* app/gui/dialogs-constructors.c: added get_name() functions for
brushes, patterns, images and palettes.
* app/widgets/gimpcontainergridview.[ch]: added a label for the
name of the active item.
* app/widgets/gimpdnd.[ch]: removed the old drawable DND preview
icon code.
* tools/pdbgen/app.pl: braino: the $tool_eek hack has to be
initialized to 0 at the beginning of each file, otherwise we end
up including "tools/tools-types.h" everywhere.
* tools/pdbgen/pdb/color.pdb
* tools/pdbgen/pdb/text_tool.pdb
* tools/pdbgen/pdb/tools.pdb: add "tools/tools-types.h" where needed.
* app/pdb/color_cmds.c
* app/pdb/pattern_select_cmds.c
* app/pdb/patterns_cmds.c
* app/pdb/plug_in_cmds.c
* app/pdb/procedural_db_cmds.c
* app/pdb/selection_cmds.c
* app/pdb/undo_cmds.c
* app/pdb/unit_cmds.c: regenerated.
2001-05-11 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/lc_dialog.[ch]: taken behind the curtain and shot.
(famous words of Seth Burgess on #gimp)
* app/app_procs.c
* app/gdisplay.c
* app/gimage.c
* app/gui/commands.c
* app/gui/gui.c
* app/gui/menus.c
* app/gui/preferences-dialog.c: don't #include it or call it's
functions any more.
* app/gui/dialogs-commands.[ch]: added a constructor for a dock
which looks like the old L&C dialog (taken from test-commands.*)
* app/gui/test-commands.[ch]: removed here.
* app/gui/dialogs-constructors.[ch]: wrapped the old
paths-dialog.* stuff in a dockable which can be created only
once. Will go away as soon as the new path stuff is there.
* app/gui/dialogs.c: added the paths dockable, removed lc_dialog.
* app/gui/paths-dialog.c: some changes to make it work without the
lc_dialog around it. Will probably crash randomly and refuse to
update it's contents properly (scheduled for removal).
2001-05-08 Michael Natterer <mitch@gimp.org>
* app/appenums.h: added ChannelType.
* app/gimpimage.h: removed ChannelType.
* tools/pdbgen/enums.pl: regenerated.
* app/apptypes.h: don't include libgimpwidgets/gimpwidgetstypes.h
and widgets/widgets-types.h any more.
* app/devices.c
* app/gimpdnd.c
* app/gimprc.c
* app/lc_dialog.c
* app/gui/[many].c: include widgets/widgets-types.h
* app/tools/histogram_tool.h: include widgets/widgets-types.h here
because of an ugly dependency from pdb/color_cmds.c
* app/tools/tool_options_dialog.c
* app/widgets/widgets-types.h: include
libgimpwidgets/gimpwidgetstypes.h and apptypes.h so files in
widgets/ only have to include this file.
* app/widgets/*.c: include widgets-types.h instead of apptypes.h
* app/gimpdrawable-preview.c
* app/gui/gradient-editor.c: removed useless #includes.
2001-05-06 Sven Neumann <sven@gimp.org>
* libgimpwidgets/Makefile.am
* libgimpwidgets/gimpwidgets.h
* libgimpwidgets/gimpwidgetstypes.h
* libgimpwidgets/gimpoffsetarea.c
* libgimpwidgets/gimpoffsetarea.h: new widget GimpOffsetArea cut
of the resize dialog, allows to interactively specify offsets when
resizing images or drawables.
* libgimpwidgets/gimppixmap.c: removed empty destroy method.
* app/resize.c: use new GimpOffsetArea.
2001-05-06 Michael Natterer <mitch@gimp.org>
* app/appenums.h: added GimpDropMode...
* app/gimpdnd.h: ...removed from here.
* app/gimpimage.[ch]:
- New signal "mode_changed".
- removed "const GimpImage*" from gimp_image_colormap_changed()
because a signal emission is never "const" for the object
which emits the signal.
- Fixed gimp_image_[set|get]_component_[active|visible]():
ALPHA_CHANNEL maps to ALPHA_PIX only in RGB mode, use
ALPHA_G_PIX/ALPHA_I_PIX in GRAY/INDEXED mode.
* app/gimpimage-convert.c
* app/undo.c: call gimp_image_mode_changed().
* app/gimpviewable.c: added an implementation of
"invalidate_preview" which frees the preview temp_buf which may be
attached to the viewable. Subclasses need to chain up now.
* app/gimpdrawable.c
* app/gimpimage.c: chain up in invalidate_preview().
* app/widgets/gimpchannellistview.c: connect to the image's
"mode_changed" signal and rebuild the channel list in the
callback.
* app/widgets/gimpcontainerview.h: indentation.
* app/widgets/gimpdockbook.c: set the dockable's context to NULL
in gimp_dockbook_remove()
* app/widgets/gimpimagedock.c: forgot to actually set the dock's
image in gimp_image_dock_new().
* app/gui/dialogs-constructors.c: added a get_name_func() for tool
views which returns the tool's "blurb". It's safe to assume now
that a dockable's context will exist as long as the dockable
exists unless it's explicitely set to NULL, so remove ugly hacks
handling context destruction.
* app/tools/gimptool.c: removed COMPAT_CRUFT and useless #include's.
2001-05-01 Michael Natterer <mitch@gimp.org>
* app/app_procs.c: removed more GUI initialisation code.
* app/color_transfer.c: removed useless includes.
* app/gui/brush-editor.[ch]
* app/gui/dialogs-constructors.c:
s/BrushEditGeneratedWindow/BrushEditor/, s/begw/brush_editor/, made
the brush preview of the editor autoresizing.
* app/gui/dialogs.h: removed "extern" declaration of non-existant
variable.
* app/gui/gui.[ch]: new function gui_post_init() which shows the
tips dialog.
* app/gui/tips-dialog.c: made signal handling nicer (clean up in a
"destroy" handler).
* app/gui/toolbox.[ch]: removed toolbox_raise(), removed the help
system (de)initialisation code which is now in gui.c, cleanup.
2001-04-29 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcontainerview.[ch]: added virtual method
context_item() which works like select_item() and activate_item()
and a function to trigger the signal from subclasses (marked as
"protected").
* app/widgets/gimpcontainerlistview.c: invoke context_item() on
right click.
* app/widgets/gimpdrawablelistview.[ch]: implement context_item()
and show a context menu. The functions to show the menu as well as
functions to create a new drawable and to edit it's attriutes must
be passed to the constructor now.
* app/gui/channels-commands.[ch]
* app/gui/layers-commands.[ch]: added functions which show the
layers and channels context menus. No accelerators supported yet.
Auto-destroy all dialogs when their drawable is removed from the
image.
* app/gui/dialogs-constructors.c: changed the calls to
gimp_drawable_list_view_new() accordingly.
* app/gui/menus.c
* app/gui/test-commands.[ch]: removed some test dialogs.
2001-04-26 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcontainermenuimpl.c: only work around option
menu reference problems if the removed item was the active one.
* app/widgets/gimpimagedock.c: don't try to avoid a recursive
signal emission in gimp_image_dock_image_changed() but work around
it. This makes the image menu work finally.
* app/gui/dialogs-constructors.c: removed debugging output.
2001-04-24 Michael Natterer <mitch@gimp.org>
* app/authors.h: regenerated.
* app/gui/dialogs-constructors.c: call the drawable views's
set_context() function once explicitly after creation.
* app/gui/dialogs.c
* app/widgets/gimpdialogfactory.[ch]: session management correctly
remembers the dialogs' sizes again.
* app/widgets/gimpcontainermenuimpl.c: set the options menu's
history to "0" after removing a menu item (temp hack because
GtkOptionMenu doesn't handle the removal of the currently active
item correctly).
* app/widgets/gimpimagedock.c: another try to get dock->context's
signals handled correctly. Debugging output will disappear soon.
2001-04-23 Michael Natterer <mitch@gimp.org>
* app/gimpcontext.[ch]: some minor fixes / cleanup.
* app/gimpdata.c: forgot to gtk_object_class_add_signals() in
class_init().
* app/gui/dialogs-constructors.[ch]: added a tool_tab_func() so
the notebook tab shows a tool preview, pass a GimpContext to all
dialog constructors and added set_context() functions for all
dockable based dialogs so they can be configured to use the
context of the destination dock when dragging them around.
* app/widgets/gimpcontainermenuimpl.c: removed debugging output.
* app/widgets/gimpdialogfactory.[ch]: add a method to create
dockables (which gets passed the dock the dockable will be added
to) so the dockables can be created in the right context.
* app/widgets/gimpdock.[ch]: added a GimpContext attribute, remove
the dockbooks explicitely in destroy().
* app/widgets/gimpdockable.[ch]: dockables now know about their
set_context_func() and can thus be dragged between different
contexts.
* app/widgets/gimpdockbook.c: gimp_dockbook_add(): refuse to add
dockables to dockbooks which are not part of a dock, set the
dockable's context after adding it.
* app/widgets/gimpimagedock.[ch]: image docks now keep a pointer
to the global image list which is passed to them on construction
so they don't need to know about the global "image_context"
variable, added an "Auto" button like in L&C.
* app/gui/dialogs-commands.c: changed accordingly.
2001-04-22 Michael Natterer <mitch@gimp.org>
* app/Makefile.am: cleanup.
* app/interface.c: #include "gimpui.h"
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c
* app/gui/menus.c
* app/gui/test-commands.[ch]: changes for the image menu below.
* app/apptypes.h
* app/widgets/Makefile.am
* app/widgets/gimpcontainermenu.[ch]
* app/widgets/gimpcontainermenuimpl.[ch]: new widgets. The actual
implemtation lives in a separate file because
gimpcontainermenu.c's code is identical to gimpcontainerview.c's
except for the base class. This will become an interface with Gtk 2.0.
* app/widgets/gimpimagedock.[ch]: a dock with an image menu. The
pages still don't follow the context correctly.
* app/widgets/gimpmenuitem.[ch]: a menu item with a preview.
* app/widgets/gimpdialogfactory.[ch]: pass a dock constructor to
the constructor and provide a method to create a new dock within
this factory's context.
* app/widgets/gimpdock.[ch]: removed the constructor because we
create only image docks now. Put the vbox into a main_vbox (which
also contains the image menu).
* app/widgets/gimpdockbook.[ch]: create new docks with the dialog
factory.
* app/gimpcontainer.[ch]
* app/gimpdata.[ch]
* app/gimpdatafactory.[ch]
* app/gimpdatalist.[ch]
* app/gimplist.[ch]
* app/gimpviewable.[ch]
* app/widgets/gimpbrushpreview.[ch]
* app/widgets/gimpcontainergridview.[ch]
* app/widgets/gimpcontainerlistview.[ch]
* app/widgets/gimpcontainerview.[ch]
* app/widgets/gimpdatafactoryview.[ch]
* app/widgets/gimpdockable.[ch]
* app/widgets/gimpdrawablelistitem.[ch]
* app/widgets/gimpdrawablelistview.[ch]
* app/widgets/gimpdrawablepreview.[ch]
* app/widgets/gimplayerlistitem.[ch]
* app/widgets/gimplayerlistview.[ch]
* app/widgets/gimplistitem.[ch]
* app/widgets/gimppalettepreview.[ch]
* app/widgets/gimppatternpreview.[ch]
* app/widgets/gimppreview.[ch]: ass-sign some copyrights.
2001-04-20 Michael Natterer <mitch@gimp.org>
* app/main.c: set the message handler for all app log domains, not
only for "Gimp".
* app/gui/brush-select.c
* app/gui/gradient-select.c
* app/gui/palette-select.c: removed the "edit" callbacks.
* app/gui/dialogs-constructors.[ch]: Added the callbacks
here. Added layer and channel lists.
* app/gui/dialogs.c: register the new lists.
* app/gui/menus.c: their menu entries.
* app/widgets/gimpdock.c: set a minimal width of 280 pixels.
2001-04-18 Michael Natterer <mitch@gimp.org>
* app/devices.[ch]
* app/gui/about-dialog.[ch]
* app/gui/preferences-dialog.[ch]
* app/gui/tips-dialog.[ch]: return a GtkWidget from the constructor.
* app/gui/dialogs.c
* app/gui/dialogs-constructors.[ch]: register them with the dialog
factory.
* app/gui/commands.[ch]
* app/gui/menus.c: removed their old callbacks.
* app/gui/brush-select.c
* app/gui/gradient-select.c
* app/gui/palette-editor.[ch]: no need to show or raise the shell
(that's done by the dialog factory now).
* app/widgets/gimpdialogfactory.c: actually do what the
"singleton" and "session_managed" flags say.
2001-04-17 Michael Natterer <mitch@gimp.org>
* app/session.[ch]
* app/gimprc.c: removed the old dialog session management code...
* app/widgets/gimpdialogfactory.[ch]: ...and manage all dialogs here.
* app/gui/dialogs-constructors.[ch]: dialog factory compliant
constructors for all session managed toplevel dialogs.
* app/brush_select.[ch]
* app/devices.[ch]
* app/docindex.[ch]
* app/errorconsole.[ch]
* app/gradient_select.[ch]
* app/info_dialog.c
* app/lc_dialog.[ch]
* app/palette.[ch]
* app/pattern_select.[ch]
* app/toolbox.[ch]
* app/tools/tool_options_dialog.[ch]: all dialog constructors have
to return the dialog now (even the legacy ones that will go away).
Removed the session management code as this is now done for the
dialogs, not by them.
* app/app_procs.c
* app/color_select.c
* app/commands.[ch]
* app/indicator_area.c
* app/menus.c
* app/palette_select.c
* app/preferences_dialog.c
* app/gui/dialogs.c
* app/gui/dialogs-commands.[ch]
* app/gui/gui.c
* app/tools/gimptool.c
* app/widgets/gimpdock.c: changed accordingly.
2001-04-16 Michael Natterer <mitch@gimp.org>
First attempt to get the docks session managed:
* app/gimprc.c: new gimprc type "new-session-info" which will soon
replace the original one.
* app/menus.c
* app/gui/dialogs.c: s/_/-/g in all dialog identifier strings.
* app/session.[ch]: call the dialog factory's session functions.
* app/test_commands.c: use the dialog factory to create the tabs.
* app/gui/dialogs-commands.c
* app/gui/dialogs-constructors.[ch]: the constructors return widgets,
not dockables now.
* app/widgets/gimpdialogfactory.[ch]: maintain a list of dialog
factories in the class struct. Added ugly code to do the GimpDock
session management.
* app/gui/gui.c
* app/widgets/gimpdock.c: changed accordingly.
2001-04-15 Michael Natterer <mitch@gimp.org>
* app/Makefile.am: grouped the files together which will go to gui/.
* app/widgets/gimpdialogfactory.[ch]: maintain a list of open
GimpDocks for session management.
* app/widgets/gimpdock.c: register open docks with the dialog
factory.
* app/widgets/gimpdockable.[ch]
* app/widgets/gimpdockbook.c: pass a pointer to the GimpDockbook
to the GimpDockable's "get_tab" function because the function is
called before the dockable is added to the dockbook.
* app/test_commands.c
* app/gui/dialogs-constructors.[ch]
* app/gui/dialogs.c: changed accordingly.
2001-04-14 Michael Natterer <mitch@gimp.org>
* app/menus.c: added some more dialog types.
* app/gui/Makefile.am
* app/gui/gimpdialogfactory.[ch]: removed again...
* app/widgets/Makefile.am
* app/widgets/gimpdialogfactory.[ch]: ...and added where it belongs.
* app/gui/dialogs.c
* app/widgets/gimpdock.c: changed #include's
* app/gui/dialogs-commands.c: dialogs can be removed via the menu
now.
* app/widgets/gimpdockbook.c: ref the dockbook while the item
factory is active because an item factory callback may destroy it
(we need to add the hijacked GtkNotebook menu back to the
notebook).
2001-04-14 Michael Natterer <mitch@gimp.org>
* configure.in
* app/Makefile.am
* app/gui/Makefile.am: new directory which will contain all gui code
except widgets (I was tired off adding new files to app/).
* app/apptypes.h
* app/gui/gimpdialogfactory.[ch]: factory which produces dialogs
from string descriptions. Should maybe go to widgets/.
* app/gui/dialogs-commands.[ch]: callbacks for the new menu
factory below.
* app/gui/dialogs-constructors.[ch]: dialog constructors which are
registered with the dialog factory.
* app/gui/dialogs.[ch]: register the dialogs with the factory.
* app/app_procs.c: call dialogs_register().
* app/menus.[ch]: a new item factory for creating dialogs.
* app/test_commands.c
* app/widgets/gimpdock.[ch]: added a dialog factory pointer to the
GimpDock struct.
* app/widgets/gimpdockbook.[ch]: badly (badly!) fiddle around with
GtkNotebook's menu to get it integrated in the GtkItemFactory
which produces new dialogs.
2001-04-13 Michael Natterer <mitch@gimp.org>
* app/pdb/procedural_db.[ch]: removed the ID system from the pdb/
subdir...
* app/gimpimage.[ch]: ...and temporarily added it back to GimpImage.
The ID stuff is not only used by the PDB but is a more general
type of service which is needed for the PDB, DND and some parts of
the GUI. Finally, a GimpFactory class with subclasses for data
objects, images etc. will maintain the ID spaces.
* app/colormap_dialog.c
* app/file-open.c
* app/file-save.c
* app/gdisplay.c
* app/gimpdnd.c
* app/gimpdrawable.c
* app/info_window.c
* app/lc_dialog.c
* app/nav_window.c
* app/palette_import.c
* app/paths_dialog.c
* app/plug_in.c
* app/xcf.c
* app/tools/gimptexttool.c
* tools/pdbgen/pdb.pl
* tools/pdbgen/pdb/image.pdb: use GimpImage's ID functions.
* app/pdb/channel_cmds.c
* app/pdb/channel_ops_cmds.c
* app/pdb/convert_cmds.c
* app/pdb/display_cmds.c
* app/pdb/drawable_cmds.c
* app/pdb/fileops_cmds.c
* app/pdb/guides_cmds.c
* app/pdb/image_cmds.c
* app/pdb/layer_cmds.c
* app/pdb/parasite_cmds.c
* app/pdb/paths_cmds.c
* app/pdb/selection_cmds.c
* app/pdb/text_tool_cmds.c
* app/pdb/tools_cmds.c
* app/pdb/undo_cmds.c: regenerated.
2001-03-04 Sven Neumann <sven@gimp.org>
* app/preferences_dialog.c (prefs_save_callback): applied a patch
from David Odin <David.Odin@bigfoot.com> that fixes a typo in the code.
2001-02-24 Michael Natterer <mitch@gimp.org>
* app/commands.[ch]: added cmd_callbacks for the toolbox and
the preferences dialog.
* app/context_manager.c: cleanup.
* app/gimppreview.[ch]: made gimp_preview_render() public.
* app/gimptoolinfopreview.c
* app/tools/gimptoolinfo.c: the tool previews look nice now but
are still ugly implemented (it renders tons of temp_bufs on each
state change).
* app/indicator_area.[ch]: pass a context to the constructor.
* app/menus.c: don't call the toolbox and the prefs dialog
directly but dispatch via commands.[ch]
* app/preferences_dialog.[ch]
* app/toolbox.[ch]: renamed the constructor / raise function, cleanup.
* app/tools/color_picker.c: tried to get the shortcut working again.
* app/tools/paint_options.c: the brush dialog's paint options
are shown/hidden from the context manager now.
2001-02-23 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/pixmaps.h
* app/wilber.h: removed some data files from app/
* pixmaps/Makefile.am
* pixmaps/default.xpm
* pixmaps/swap.xpm
* pixmaps/wilber3.xpm: added them here.
* app/pixmaps2.h: added the "dialog_bits" stuff here.
* app/tips_dialog.c
* app/toolbox.c: use the new XPMs and remove hacks which created
the GdkPixmaps and GtkPreviews manually.
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.
2001-02-19 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/gimppalette-import.[ch]: new files. The import functions
stripped from all UI crap.
* app/palette_import.c: removed from here.
2001-02-19 Michael Natterer <mitch@gimp.org>
* app/context_manager.c
* app/gimpdatafactory.c
* app/gimpdatalist.[ch]
* app/gimplist.[ch]
* app/module_db.c: return a GimpContainer from all container
subclass constructors.
* app/gimppalettepreview.c
* app/palette.c: changed the preview a bit. Still ugly.
2001-02-18 Michael Natterer <mitch@gimp.org>
* app/gimpdnd.[ch]: added DND source functions which work by
GtkType.
* app/commands.c
* app/brush_select.c
* app/gradient_select.[ch]
* app/pattern_select.c: removed the DND code here because it's all
done by the GimpContainerView now.
* app/gimpbrushpreview.c
* app/gimpgradientpreview.c
* app/gimppalettepreview.c
* app/gimppatternpreview.c: use the DND by-type connect functions.
* app/gimpbrushgenerated.c: implemented "duplicate", cleanup.
* app/gimpcontainergridview.c
* app/gimpcontainerlistview.c
* app/gimpcontainerview.[ch]: added a "activate_item" signal
method which is emitted by the subclasses to indicate double click.
* app/gimpdatafactoryview.c: connect to "activate_item" and show
the editor.
* app/convert.c
* app/gimppalette.[ch]
* app/palette.c
* app/paletteP.h
* app/palette_import.c
* app/palette_select.[ch]: major cleanup: Behaves like the other
datatypes now: DND, context stuff, GimpContainerListViews in
the dialogs etc. Mostly just removal of code.
* app/gradient_editor.c: fixed signal blocking/unblocking.
* plug-ins/script-fu/scripts/Makefile.am: install the "Test Sphere"
script again.
2001-02-14 Michael Natterer <mitch@gimp.org>
* HACKING: added a note about apptype.h and about not including
headers in headers.
* app/apptypes.h: added GimpTool and BitmapCursor.
* app/cursorutil.h
* app/devices.h
* app/draw_core.h
* app/tools/color_picker.h
* app/tools/tool.h
* app/tools/tool_options.h
* app/gimpcontext.h: removed includes of "tools/tool.h"
* app/gimprc.[ch]: indentadion cleanup, added
"module_db_load_inhibit".
* app/module_db.c: removed the above variable here.
* app/gimpdata.[ch]: added a vitrual "duplicate" method.
* app/gimpbrush.[ch]
* app/gimpbrushgenerated.[ch]
* app/gimpbrushpipe.[ch]
* app/gimpgradient.[ch]
* app/gimppalette.[ch]
* app/gimppattern.[ch]: all "load", "new" and "get_standard"
functions return a GimpData pointer now.
* app/gimpdatafactory.[ch]: made some stuff const.
* app/gimpdatafactoryview.c: activate the "duplicate" button and
set the initial button sensitivity correctly.
* app/brush_select.c
* app/gradient_select.c
* app/pattern_select.c: use the new GimpDataFactoryView.
* libgimp/Makefile.am: grouped the file to sort out what _may_
go to subdirs or separate libs.
* libgimp/gimpenv.[ch]: added many "const".
* app/app_procs.c
* app/brush_edit.c
* app/gimpcontext.c
* app/gimpdnd.c
* app/gradient_editor.c
* app/palette.c
* app/palette_import.c
* app/user_install.c: many related changes.
* libgimpmath/gimpmathtypes.h
* libgimpmath/gimpvector.[ch]: minor cleanups.
* plug-ins/script-fu/script-fu.c: gimp_data_directory() is const now.
* plug-ins/plugin-helper/*: prototype for an extension that allows
gmodules as plugins. Known bug: crashes on gmodules with a static "query" function
* app/tools/tool.c
* app/tools/tool.h: created new GimpTool object. Did away with ToolInfo.
Most tools still need to be ported over to the new api.
* plug-ins/script-fu/script-fu-scripts.c: fixed typo in comment. Pathetic, huh?
2001-02-13 Michael Natterer <mitch@gimp.org>
* gimprc.in
* user_install
* user_install.bat
* app/gimprc.[ch]
* app/preferences_dialog.c: removed the "brush_vbr_path" variable,
because all data types will be editable and saveable soon.
* app/Makefile.am
* app/apptypes.h
* app/gimpdatafactory.[ch]: new object which holds a data list and
knows how to create, edit, duplicate etc. the items in it. Will
completely replace the brushes.[ch], patterns.[ch], ... files soon.
* po/POTFILES.in
* app/gimpdatacontainerview.[ch]: removed.
* app/gimpdatafactoryview.[ch]: added.
A view on the GimpDataFactory with a GUI for creating, editing,
deleting etc. items (mostly unimplemented).
* app/context_manager.[ch]: replaced the global data lists by global
data factories.
* app/brush_select.c
* app/brushes.[ch]
* app/commands.c
* app/convert.c
* app/devices.c
* app/gimpbrush.[ch]
* app/gimpbrushgenerated.c
* app/gimpcontext.c
* app/gimpdata.[ch]
* app/gimpdatalist.[ch]
* app/gimpdnd.c
* app/gimpgradient.[ch]
* app/gimppalette.[ch]
* app/gimppattern.[ch]
* app/gradient_editor.c
* app/gradient_select.c
* app/gradients.[ch]
* app/indicator_area.c
* app/palette.c
* app/palette_import.c
* app/palette_select.c
* app/palettes.[ch]
* app/pattern_select.c
* app/patterns.[ch]
* app/pdb/brush_select_cmds.c
* app/pdb/brushes_cmds.c
* app/pdb/convert_cmds.c
* app/pdb/gradient_select_cmds.c
* app/pdb/gradients_cmds.c
* app/pdb/pattern_select_cmds.c
* app/pdb/patterns_cmds.c
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/pattern_select.pdb
* tools/pdbgen/pdb/patterns.pdb: changed accordingly.
2001-02-12 Michael Natterer <mitch@gimp.org>
* app/Makefile.am: took gimpcontextpreview.[ch] out of the build
but still left the sources there as reference.
* app/app_procs.c: initialize the render stuff before creating the
toolbox (needed for the previews).
* app/devices.c
* app/indicator_area.c: use GimpPreviews instead of
GimpContextPreviews.
* app/context_manager.[ch]: create the global data lists here
because they now must exist before any context is created.
* app/brushes.[ch]
* app/gradients.[ch]
* app/palettes.[ch]
* app/patterns.[ch]: removed them here.
* app/gimpcontainer.[ch]: added a "freeze_count" and emit the
"freeze" and "thaw" signals accordingly.
* app/gimpcontext.[ch]: greatly simplified the way how the
contexts connect to the data lists (simply keep them connected all
the time). Also removed all those ugly explicit update functions
because "thaw" callbacks do this job now.
* app/gimpdata.c: a GimpData object now becomes dirty on
"name_changed"; "dirty" now triggers "invalidate_preview" because
the context does not dispatch these signals any more soon.
* app/brush_select.c
* app/convert.c
* app/gimpdnd.c
* app/gradient_editor.c
* app/gradient_select.c
* app/pattern_select.c
* app/gradient_editor.c
* app/gradient_select.c
* app/gradients.[ch]
* app/pdb/brush_select_cmds.c
* app/pdb/brushes_cmds.c
* app/pdb/convert_cmds.c
* app/pdb/gradient_select_cmds.c
* app/pdb/gradients_cmds.c
* app/pdb/pattern_select_cmds.c
* app/pdb/patterns_cmds.c
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/brushes.pdb
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb
* tools/pdbgen/pdb/pattern_select.pdb
* tools/pdbgen/pdb/patterns.pdb: changed accordingly.
2001-02-11 Michael Natterer <mitch@gimp.org>
Made a GimpContainer out of the palette list:
* app/Makefile.am
* app/palettes.[ch]: new files for the global palette list.
* app/gimpgradientpreview.[ch]
* app/gimppalettepreview.[ch]: new widgets.
* app/gimppalette.[ch]: derive it from GimpData to get all the
preview etc. stuff.
* app/datafiles.[ch]: new function datafiles_check_extension(),
added a "loader_data" parameter to datafiles_read_directories()
and pass it to the loader function.
* app/gimpcontext.[ch]: added the palette (not really used yet
except by the test dialogs).
* app/gimpdatalist.[ch]: new function gimp_data_list_save_and_clear()
which does everything needed for patterns_free(), brushes_free() ...
* app/gimpdnd.c: added palette DND.
* app/app_procs.c
* app/brushes.c
* app/color_notebook.h
* app/commands.c
* app/convert.c
* app/gimpbrush.h
* app/gimpbrushpipe.h
* app/gimpgradient.c
* app/gimppattern.h
* app/gimppreview.c
* app/gradients.c
* app/module_db.c
* app/palette.[ch]
* app/paletteP.h
* app/palette_import.c
* app/palette_select.[ch]
* app/patterns.c
* app/plug_in.c
* app/pdb/convert_cmds.c
* app/pdb/palette_cmds.c
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/palette.pdb: lotsa stuff: changed due to the above
API changes, #define the file extensions in the GimpData subclasses'
header files instead of hardcoding them in several places, ...
* data/palettes/*: The same file format change as for the gradient
files:
- Save the palette name in a parsable form (as part of the file
format, not in a comment.
- Removed unserscores from the palette names.
- Added an extension (Gimp PaLettes are ".gpl" files now ;-)
2001-02-10 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/gradientP.h
* app/gradient_header.h: removed.
* app/gimpgradient.[ch]: new object -- bye bye "gradient_t"
* app/gradients.[ch]: new files for managing the gradient list.
* app/gradient.[ch]: containes only the gradient editor now (which
still badly poked aroung in the GimpGradient structure).
* app/app_procs.c
* app/apptypes.h
* app/devices.c
* app/gimpcontainerlistview.c
* app/gimpcontext.[ch]
* app/gimpcontextpreview.[ch]
* app/gimpdnd.[ch]
* app/gradient_select.[ch]
* app/indicator_area.c
* app/palette_import.c
* app/pdb/gradient_select_cmds.c
* app/pdb/gradients_cmds.c
* app/tools/airbrush.c
* app/tools/blend.c
* app/tools/paint_core.c
* app/tools/paintbrush.c
* app/tools/pencil.c
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/gradients.pdb: changed accordingly, some
changes to the preview and view stuff.
* app/gimppreview.[ch]: removed the "context" attribute again
because it was overkill (a simple gtk_signal-connect_object does
the same as doing the autoconnection magic inside the GimpPreview
object).
* app/commands.[ch]
* app/menus.c: example views on the gradient container.
2001-02-07 Michael Natterer <mitch@gimp.org>
* app/gimpcontext.[ch]: added "set_by_type", "get_by_type" and
"changed_by_type" methods which take a GtkType and decide from
that if to manipulate the Brush, Pattern etc.
* app/gimpcontainerview.[ch]
* app/gimpcontainergridview.[ch]
* app/gimpcontainerlistview.[ch]: added a GimpContext to the views
which is used to manage the active item.
* app/commands.c: pass the user_context to the test views.
* app/gimpbrushpreview.c
* app/gimppatternpreview.c
* app/gimppreview.[ch]: added a virtual "needs_popup" method which
returns a boolen indicating if the viewable is already fully
visible.
* app/gimage.[ch]: removed gimage_foreach() and some other
functions which can easily be done be gimp_container_foreach().
Removed gimage_delete().
* app/fileops.c
* app/gdisplay.c
* app/lc_dialog.c
* app/nav_window.c
* app/palette_import.c
* app/preferences_dialog.c
* app/xcf.c
* app/pdb/image_cmds.c
* tools/pdbgen/pdb/image.pdb: changed accordingly. Switched from
"disp_count" refcounting to real GtkObject refcounting for
GimpImages.