2006-04-26 Michael Natterer <mitch@gimp.org>
* app/pdb/Makefile.am
* app/pdb/pdb-types.h
* app/pdb/gimppdb.[ch]: new object GimpPDB which keeps all
procedures and functions to register and run them. Renamed all
functions and did some cleanups.
* app/pdb/gimp-pdb.[ch]
* app/core/gimp.[ch]: removed the same stuff here.
* app/pdb/gimp-pdb-query.[ch]: removed these files...
* app/pdb/gimppdb-query.[ch]: ...added here as members of GimpPDB.
* app/pdb/gimp-pdb-compat.h: fix include guard.
* app/batch.c
* app/actions/vectors-commands.c
* app/dialogs/about-dialog.c
* app/file/file-open.c
* app/file/file-save.c
* app/plug-in/plug-in-message.c
* app/plug-in/plug-ins.c
* app/widgets/gimpfiledialog.c
* app/widgets/gimphelp.c
* app/xcf/xcf.c
* tools/pdbgen/pdb/brush_select.pdb
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/font_select.pdb
* tools/pdbgen/pdb/gradient_select.pdb
* tools/pdbgen/pdb/palette_select.pdb
* tools/pdbgen/pdb/pattern_select.pdb
* tools/pdbgen/pdb/procedural_db.pdb: changed includes and function
calls accordingly.
* tools/pdbgen/app.pl: pass around GimpPDB instead of Gimp
pointers to register the internal procedures with. Changed some
newlines in the generated code.
* app/pdb/*_cmds.c
* app/pdb/internal_procs.[ch]: regenerated.
* app/core/gimppdbprogress.[ch]
* app/widgets/gimppdbdialog.[ch]: added "pdb" CONSTRUCT_ONLY
properties.
* app/plug-in/plug-in-progress.c
* app/gui/gui-vtable.c: pass gimp->pdb when creating them.
* app/widgets/gimpbrushselect.c
* app/widgets/gimpfontselect.c
* app/widgets/gimpgradientselect.c
* app/widgets/gimppaletteselect.c
* app/widgets/gimppatternselect.c: use the new local pdb pointers
instead of some foo->bar->gimp->pdb overkill.
2006-04-23 Sven Neumann <sven@gimp.org>
* app/dialogs/module-dialog.c
* app/dialogs/palette-import-dialog.c: use GimpDialog instead of a
GimpViewableDialog with a NULL viewable.
* app/widgets/gimpviewabledialog.c: deprecate use of
GimpViewableDialog with a NULL viewable.
* app/dialogs/resolution-calibrate-dialog.c: whitespace.
2006-04-21 Sven Neumann <sven@gimp.org>
* app/config/gimprc-blurbs.h: minor string changes.
* app/config/gimprc.c: declared an array as const.
* app/dialogs/user-install-dialog.c: further streamlining of the
user installation.
2006-04-21 Sven Neumann <sven@gimp.org>
* app/dialogs/user-install-dialog.c: in an effort to basically
get rid of the user installation dialog, removed the license and
tuning pages as well as the code that was responsible for the
nifty orange style. More to come ...
2006-04-19 Sven Neumann <sven@gimp.org>
* app/dialogs/user-install-dialog.c: removed an unneeded call to
gtk_widget_realize() (bug #324254). Sprinkled const qualifiers to
avoid relocations.
2006-04-07 Sven Neumann <sven@gimp.org>
* app/core/gimpimage-merge.[ch] (gimp_image_merge_visible_layers):
allow to discard invisible layers as suggested in bug #337557.
* app/actions/image-commands.c
* app/dialogs/image-merge-layers-dialog.[ch]: added a check button
to the Merge Visible Layers dialog to control the new feature.
* app/file/file-open.c
* tools/pdbgen/pdb/image.pdb: pass FALSE for the new parameter.
* app/pdb/image_cmds.c: regenerated.
2006-04-05 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in-types.h
* app/plug-in/plug-in-proc-def.[ch]: renamed to GimpPlugInProcedure
and made a GObject derived from GimpProcedure (instead of having
a pointer to a GimpProcedure). Added image_types and file_magic
utility functions taken from plug-ins.[ch]. Still lives in the
same crappy files because I am undecided where to put it...
* app/pdb/gimpprocedure.c (gimp_procedure_real_execute): removed
switch() statement and always call the internal marshaller because
GimpProcedure::execute() is properly overridden by
GimpPlugInProcedure now.
* app/plug-in/plug-ins.[ch]: removed the mime_type and file_magic
utilities added to GimpPlugInProcedure.
* app/actions/file-commands.c
* app/actions/plug-in-actions.[ch]
* app/actions/plug-in-commands.[ch]
* app/core/gimp-gui.[ch]
* app/core/gimp.[ch]
* app/core/gimpimage.[ch]
* app/dialogs/file-open-dialog.c
* app/dialogs/file-save-dialog.c
* app/dialogs/print-size-dialog.c
* app/file/file-open.[ch]
* app/file/file-save.[ch]
* app/file/file-utils.[ch]
* app/gui/gui-vtable.c
* app/menus/plug-in-menus.[ch]
* app/plug-in/plug-in-def.[ch]
* app/plug-in/plug-in-message.c
* app/plug-in/plug-in-rc.c
* app/plug-in/plug-in-run.c
* app/plug-in/plug-in.c
* app/plug-in/plug-ins-query.c
* app/widgets/gimpactiongroup.[ch]
* app/widgets/gimpdnd-xds.c
* app/widgets/gimpfiledialog.[ch]
* app/widgets/gimpfileprocview.[ch]
* app/widgets/gimppluginaction.[ch]
* app/xcf/xcf.c
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/plug_in.pdb: changed addordingly.
* app/pdb/fileops_cmds.c
* app/pdb/plug_in_cmds.c: regenerated.
2006-04-03 Michael Natterer <mitch@gimp.org>
* app/core/gimpparamspecs.[ch]: added a shitload of new GTypes and
corresponding GParamSpecs to use them as PDB arguments.
Each GimpPDBArgType has one or more corresponding GTypes in the
core now.
* app/pdb/gimpargument.[ch] (struct GimpArgument)
(struct GimpArgumentSpec): removed "value" member because the
GValue's/GParamSpec's GType carries just as much information now.
(gimp_argument_type_to_pdb_arg_type): new function which maps
GTypes to GimpPDBArgType.
(gimp_pdb_arg_type_to_string): formerly known as
procedural_db_type_name().
* app/pdb/gimpprocedure.[ch]
* app/pdb/procedural_db.[ch]: completely switch to GValue. Use the
new GParamSpecs for procedure arguments. GimpPDBArgType is only
used for adding compat args/values of plug-in procedures.
(procedural_db_run_proc): the va_list expects a sequence of
(GType, value, GType, value, ..., G_TYPE_NONE) now.
* app/plug-in/plug-in-params.[ch]: changed accordingly.
(plug_in_param_defs_check): removed this function.
* app/plug-in/plug-in-message.c (plug_in_handle_proc_install): use
plug_in_proc_args_check() instead and initialize the GimpProcedure
before doing so.
* tools/pdbgen/app.pl
* tools/pdbgen/pdb.pl: use the new param spec types and their
utility functions. Changed argument/value registration
accordingly.
* app/pdb/procedural-db-query.c
* app/actions/plug-in-commands.c
* app/actions/vectors-commands.c
* app/core/gimppdbprogress.c
* app/dialogs/about-dialog.c
* app/file/file-open.c
* app/file/file-save.c
* app/plug-in/plug-in-progress.c
* app/plug-in/plug-in-rc.c
* app/plug-in/plug-ins.c
* app/widgets/gimpbrushselect.c
* app/widgets/gimpfontselect.c
* app/widgets/gimpgradientselect.c
* app/widgets/gimphelp.c
* app/widgets/gimppaletteselect.c
* app/widgets/gimppatternselect.c
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/procedural_db.pdb: changed accordingly.
* app/pdb/*_cmds.c: regenerated.
2006-03-31 Sven Neumann <sven@gimp.org>
* app/dialogs/Makefile.am
* app/dialogs/dialogs-types.h
* app/dialogs/dialogs.c
* app/dialogs/info-dialog.[ch]: good bye InfoDialog.
* app/tools/gimpperspectivetool.[ch]
* app/tools/gimprotatetool.[ch]
* app/tools/gimpsheartool.[ch]
* app/tools/gimptransformtool.[ch]: use GimpToolDialog instead of
InfoDialog and add the widgets manually.
* app/tools/gimpscaletool.c: commented out use of InfoDialog. This
tools still needs to be ported to GimpToolDialog.
2006-03-30 Michael Natterer <mitch@gimp.org>
* app/pdb/procedural_db.[ch] (struct Argument): replace the value
union by a GValue.
(procedural_db_argument_init)
(procedural_db_compat_arg_init): new functions to initialize
an Argument. They call g_value_init() on the Argument's value.
(procedural_db_arguments)
(procedural_db_return_values): initialize the returned Argument
arrays so their GValues are ready to use. Allow to get the
(unsuccessful) return values of a NULL ProcRecord.
(procedural_db_destroy_args): g_value_unset() the values. Added a
"gboolean full_destroy" parameter. Its only effect is to destroy
PDB arrays, everything else is nicely memory managed by GValue.
(procedural_db_execute)
(procedural_db_run_proc): do GValue stuff. Added n_args and
n_return_vals parameters to execute().
(procedural_db_execute_proc): private function to execute a
procedure. Validates the passed in arguments using the registered
GParamSpecs before passing them to the resp. exec method.
* app/plug-in/plug-in-params.[ch] (plug_in_params_to_args): needs
an array of ProcArgs now in order to initialize the Arguments'
GValues correctly. Passing NULL ProcArgs uses
procedural_db_compat_arg_init(), so procedures (plug-ins)
returning more values than expected work.
(plug_in_args_to_params): do GValue stuff here too.
(plug_in_args_destroy): removed this function,
procedural_db_destroy_args() does the same now.
* app/plug-in/plug-in-message.c (plug_in_handle_proc_run):
simplified quite a bit because everything returns n_return_values
now. Call plug_in_params_to_args() only of the procedure was found.
(plug_in_handle_proc_return_priv): pass ProcRecs to
plug_in_params_to_args().
* app/batch.c
* app/actions/plug-in-commands.c
* app/actions/vectors-commands.c
* app/core/gimppdbprogress.c
* app/dialogs/about-dialog.c
* app/file/file-open.c
* app/file/file-save.c
* app/plug-in/plug-ins.c
* app/plug-in/plug-in-progress.c
* app/plug-in/plug-in-run.[ch]
* app/widgets/gimphelp.c
* app/widgets/gimppdbdialog.c
* app/xcf/xcf.c
* tools/pdbgen/pdb/fileops.pdb: changed accordingly: don't
g_new/g_free Argument arrays, always use procedural_db_foo()
functions. Use GValue functions to get/set Arguments.
* tools/pdbgen/pdb.pl: added get_value_func and set_value_func to
all PDB types. Removed id_func, id_ret_func and check_func. Added
flags which indicated that a type is an ID. Removed unused utility
functions.
* tools/pdbgen/lib.pl: use the flag instead of looking at
functions and value types.
* tools/pdbgen/app.pl: use the get_value_func and set_value_func
to marshal inargs and outargs. Removed all checks performed on
inargs because that's done by GParamSpec validation now. Added the
missing bits to register excluded values with GimpParamSpecEnum.
* app/pdb/*_cmds.c: regenerated.
2006-03-10 Sven Neumann <ven@gimp.org>
* app/widgets/gimpaction.c: factored out some code to a utility
function.
* app/config/gimpguiconfig.[ch]
* app/config/gimprc-blurbs.h
* app/dialogs/preferences-dialog.c
* app/gui/gui.c
* app/plug-in/plug-in-run.c
* libgimp/gimp.c
* libgimpbase/gimpprotocol.[ch]: renamed tool_tips to tooltips in
variables and in the gimprc.
* app/config/gimpbaseconfig.[ch]: removed stingy_memory_use from
the GimpBaseConfig struct.
2006-03-04 Sven Neumann <sven@gimp.org>
* app/dialogs/file-save-dialog.c (file_save_dialog_use_extension):
use descriptive verbs in action buttons instead of Yes and No.
2006-02-17 Sven Neumann <sven@gimp.org>
* app/dialogs/desaturate-dialog.c: applied patch from Alexandre
Prokoudine that adds a missing mnemonic (bug #331473).
2006-01-12 Sven Neumann <sven@gimp.org>
* app/actions/actions.c
* app/actions/cursor-info-actions.c
* app/actions/dialogs-actions.c
* app/config/gimprc-blurbs.h
* app/dialogs/dialogs.c
* app/dialogs/preferences-dialog.c
* app/widgets/gimphelp-ids.h: use the term Pointer instead of
Cursor when refering to the mouse pointer (bug #326700).
2005-12-30 Sven Neumann <sven@gimp.org>
* app/actions/image-actions.c
* app/actions/view-actions.c
* app/dialogs/image-properties-dialog.c: use new stock icons from
GTK+ 2.8.
2005-12-28 Sven Neumann <sven@gimp.org>
* app/Makefile.am
* app/about.h: new file collecting some strings about the app.
* app/main.c
* app/dialogs/about-dialog.c
* app/dialogs/user-install-dialog.c: use the defines from about.h.
2005-12-28 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpfiledialog.[ch]: set the new
"do-overwrite-confirmation" property on GtkFileChooser. Removed
gimp_file_overwrite_dialog().
* app/dialogs/file-save-dialog.c (file_save_dialog_check_uri):
removed broken code which tried to figure if a file exists.
Fixes bug #309729.
* app/widgets/gimpdnd-xds.c: added gimp_file_overwrite_dialog()
here as private utility function.
2005-12-28 Michael Natterer <mitch@gimp.org>
* app/dialogs/about-dialog.c: set the new "wrap-license" property
on GtkAboutDialog and remove the explicit newlines from the string
holding the GPL.
2005-11-02 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpsizebox.[ch]: added a GtkSizeGroup member and put
all labels into the group.
* app/dialogs/scale-dialog.c: put the "Interpolation:" label into
the same size box.
2005-10-31 Michael Natterer <mitch@gimp.org>
Applied modified patch from Luis de Bethencourt Guimera which adds
a "Save document history" prefs option. Fixes bug #140001.
* app/config/gimprc-blurbs.h
* app/config/gimpcoreconfig.[ch]: added boolean property
"save-document-hitory".
* app/core/gimp.c
* app/file/file-open.c
* app/file/file-save.c: don't save the document history and don't
add files to the desktop-wide list of recently used files if the
option is FALSE.
* app/dialogs/preferences-dialog.c: added its toggle to the
"Environment" page.
2005-10-30 Michael Natterer <mitch@gimp.org>
Fixed bug #316395:
* app/actions/dialogs-actions.c (dialogs_dockable_actions)
* app/actions/quick-mask-actions.c (quick_mask_toggle_actions):
added tooltips to action entries.
* app/display/gimpdisplayshell.c (gimp_display_shell_new): use
gimp_widget_set_accel_help() to set the tooltip so it contains
the accelerator.
* app/dialogs/dialogs-constructors.c (dialogs_dockable_constructor):
attach the dialog's identifier to the dockable widget (hack).
* app/widgets/gimpdockbook.c (gimp_dockbook_get_tab_widget): use
the attached identifier to find the action for this dockable in
the dock's UI manager (HACK HACK). Use the found action to set
a tooltip with accelerator.
* app/widgets/gimpwidgets-utils.c (gimp_widget_set_accel_help):
fixed bug in fallback code what should never be used.
2005-10-29 Michael Natterer <mitch@gimp.org>
* app/dialogs/user-install-dialog.c: added global "oldgimp_major"
an "oldgimp_minor" variables.
(user_install_dialog_run): set them to the version of the gimp
directory that should be migrated.
(user_install_migrate_files): skip "menurc" only when migrating
from 2.0. Fixes bug #317170.
2005-10-29 Michael Natterer <mitch@gimp.org>
Fix bug #145492:
* app/actions/file-commands.c (file_save_cmd_callback)
* app/dialogs/file-save-dialog.c (file_save_dialog_save_image):
set the "file-quit" action insensitive while the image is being
saved to prevent data loss.
* app/widgets/gimptoolbox.c (gimp_toolbox_delete_event): activate
the "file-quit" action instead of calling gimp_exit() directly so
trying to close the toolbox while saving is impossible too.
2005-10-25 Michael Natterer <mitch@gimp.org>
Let the data editors optionally follow the active brush, palette
and gradient. Still needs to be saved in sessionrc and probably
be enabled by default. Addresses bug #313547.
* app/widgets/gimpdataeditor.[ch]: added new functions
gimp_data_editor_set,get_edit_active().
Make it configurable from the palette and gradient editor menus:
* app/actions/gradient-editor-actions.c
* app/actions/palette-editor-actions.c: added actions...
* app/actions/data-editor-commands.[ch]: ...and callbacks...
(new file).
* app/widgets/gimphelp-ids.h: ...help IDs...
* menus/gradient-editor-menu.xml
* menus/palette-editor-menu.xml: ...and menu items.
Add menu to the brush editor and make it configurable there too:
* app/actions/Makefile.am
* app/actions/actions.c
* app/actions/brush-editor-actions.[ch]
* app/menus/menus.c
* menus/Makefile.am
* menus/brush-editor-menu.xml: added all the bits needed for
the new menu.
* app/widgets/gimpbrusheditor.[ch]: use the menu. Added menu_factory
paramater to the contstructor.
* app/dialogs/dialogs-constructors.c: changed accordingly.