No description
Find a file
Jehan ddcaa99264 app, libgimp*, pdb, plug-ins: review and enhance MR !1549.
- Fix annotations for gimp_export_options_get_image() to make it
  actually introspectable with the GimpImage being both input and
  output. Even though the logic doesn't change much (the input image may
  be overriden or not), it doesn't matter for introspection because
  images are handled centrally by libgimp and therefore must not be
  freed. Actually deleting the image from the central list of images
  though remains a manual action depending on code logic, not some
  automatic action to be handled by binding engines.
- Add G_GNUC_WARN_UNUSED_RESULT to gimp_export_options_get_image()
  because ignoring the returned value is rarely a good idea (as you
  usually want to delete the image).
- Remove gimp_export_options_new(): we don't need this constructor
  because at this point, the best is to tell plug-in developers to just
  pass NULL everywhere. This leaves us free to create a more useful
  default constructor if needed, in the future. Main description for
  GimpExportOptions has also been updated to say this.
- Add a data_destroy callback for the user data passed in
  gimp_export_procedure_set_capabilities().
- Fixing annotations of 'export_options' object from pdb/pdb.pl: input
  args would actually be (nullable) and would not transfer ownership
  (calling code must still free the object). Return value's ownership on
  the other hand is fully transfered.
- Add C and Python unit testing for GimpExportOptions and
  gimp_export_options_get_image() in particular.
- Fix or improve various details.

Note that I have also considered for a long time changing the signature
of gimp_export_options_get_image() to return a boolean indicating
whether `image` had been replaced (hence needed deletion) or not. This
also meant getting rid of the GimpExportReturn enum. Right now it would
work because there are no third case, but I was considering the future
possibility that for instance we got some impossible conversion for some
future capability. I'm not sure it would ever happen; and for sure, this
is not desirable because it implies an export failure a bit late in the
workflow. But just in case, let's keep the enum return value. It does
not even make the using code that much more complicated (well just a
value comparison instead of a simple boolean test).
2024-08-18 22:46:47 +02:00
.gitlab gitlab: Comment 'Contribution guidelines' in MR template 2024-06-21 15:06:29 +00:00
.vscode Add .vscode/settings.json compliant with Coding Style 2024-01-19 16:06:06 -03:00
app app, libgimp*, pdb, plug-ins: review and enhance MR !1549. 2024-08-18 22:46:47 +02:00
app-tools Issue #4053: Add "*default_bin" support on Windows and enable it 2024-06-05 11:51:14 -03:00
build build/windows: Complete c95fe605cd 2024-08-17 14:49:57 -03:00
data build/windows: Debloat 'lib/python3.11' bundling 2024-06-23 14:09:22 +00:00
desktop desktop: sync AppStream metadata after GIMP 2.10.38 release. 2024-06-06 21:12:32 +02:00
devel-docs devel-docs: Complete 063324cff0 2024-08-10 21:52:57 -03:00
docs Issue #4053: Add "*default_bin" support on Windows and enable it 2024-06-05 11:51:14 -03:00
etc Refreshing the templaterc 2024-04-15 23:46:32 +00:00
extensions meson: fix MacOS build 2024-08-12 10:48:50 +00:00
gimp-data@679f8f0539 gimp-data: update to go forward with #5507. 2024-08-06 19:35:07 +02:00
libgimp app, libgimp*, pdb, plug-ins: review and enhance MR !1549. 2024-08-18 22:46:47 +02:00
libgimpbase app, libgimp*, pdb, plug-ins: review and enhance MR !1549. 2024-08-18 22:46:47 +02:00
libgimpcolor libgimpcolor: Remove unnecessary GimpRGB Cairo functions 2024-08-17 14:37:10 +00:00
libgimpconfig core, pdb, plug-ins: Create GimpExportOptions class 2024-08-18 22:03:14 +02:00
libgimpmath libgimpmath: Add missing (out) annotations 2024-05-11 15:01:23 +02:00
libgimpmodule libgimp, libgimpmodule, libgimpwidgets: Port more widgets to derivable type 2024-08-03 02:48:07 +00:00
libgimpthumb libgimpthumb, app: Make gimpthumbnail attributes private 2024-08-03 04:25:33 +00:00
libgimpwidgets tools, libgimpwidgets: Connect SelectionOptions to icon size 2024-08-15 19:07:14 +00:00
menus GUI: Rename menu Filters>Development>Goat exercises => Plug-in Examples 2024-08-10 14:58:58 +00:00
modules modules: Remove last usage of GimpCMYK 2024-06-21 12:44:08 +00:00
pdb app, libgimp*, pdb, plug-ins: review and enhance MR !1549. 2024-08-18 22:46:47 +02:00
plug-ins app, libgimp*, pdb, plug-ins: review and enhance MR !1549. 2024-08-18 22:46:47 +02:00
po Update Slovenian translation 2024-08-18 17:56:21 +00:00
po-libgimp Update Norwegian Nynorsk translation 2024-08-18 18:07:40 +00:00
po-plug-ins Update Norwegian Nynorsk translation 2024-08-18 18:21:41 +00:00
po-python Update Norwegian Nynorsk translation 2024-08-18 18:38:15 +00:00
po-script-fu Update Norwegian Nynorsk translation 2024-08-18 18:59:03 +00:00
po-tags Add Hindi translation 2024-04-12 16:36:24 +00:00
po-tips Update Norwegian Nynorsk translation 2024-08-18 19:04:57 +00:00
po-windows-installer Update Norwegian Nynorsk translation 2024-08-18 19:14:47 +00:00
themes themes: Define background color for GtkToolBar 2024-08-03 12:20:06 +00:00
tools app, tools: fix build without iso-codes package. 2024-08-17 21:16:00 +02:00
.clang-format .clang-format: Remove duplicate option 2024-02-21 15:44:48 +00:00
.dir-locals.el
.gitignore .gitignore: Delete unused exceptions 2024-01-19 15:43:46 -03:00
.gitlab-ci.yml gitlab-ci: Explain why we don't use 'matrix' 2024-08-15 21:56:32 -03:00
.gitmodules gitmodules, gimp-data: set the default remote branch. 2024-03-28 04:30:59 +01:00
.kateconfig
AUTHORS AUTHORS: update. 2022-02-25 21:06:17 +01:00
authors.dtd
authors.xml authors: update. 2022-08-21 12:24:20 +02:00
authors.xsl
authors4gimp-web.xsl
ChangeLog.pre-1-0
ChangeLog.pre-1-2
ChangeLog.pre-2-0
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-git
COPYING Change a bazillion URLs to https:// 2018-07-14 14:19:27 +02:00
gimp.doap DOAP: Replace defunct mailing list 2023-12-13 10:16:27 +03:00
INSTALL.in meson, INSTALL: update optional packages list. 2024-08-17 21:16:00 +02:00
LICENSE LICENSE: add a note about data/ licensing for future added data. 2023-03-16 23:20:44 +01:00
MAINTAINERS MAINTAINERS: update. 2021-04-04 16:01:48 +02:00
meson.build meson, INSTALL: update optional packages list. 2024-08-17 21:16:00 +02:00
meson_dist_script.sh meson: remove a reference to autotools files in the meson dist script. 2023-06-06 23:49:39 +02:00
meson_install_win_debug.sh meson, build/windows: generate .pdb (CodeView) debug symbols 2024-04-21 18:13:47 -03:00
meson_options.txt Issue #11317: make Python plug-ins mandatory. 2024-08-09 01:01:58 +02:00
NEWS NEWS: fix typos 2024-08-14 14:30:13 +02:00
NEWS.pre-2-0 Misc. typos 2018-10-19 15:30:27 +00:00
NEWS.pre-2-2 Misc. typos 2018-10-19 15:30:27 +00:00
NEWS.pre-2-4 Misc. typos 2018-10-19 15:30:27 +00:00
NEWS.pre-2-6 Misc. typos 2018-10-19 15:30:27 +00:00
NEWS.pre-2-8
NEWS.pre-2-10 Misc. typos 2018-10-19 15:30:27 +00:00
README README: some updates. 2023-11-05 22:25:09 +01:00
README.i18n Change a bazillion URLs to https:// 2018-07-14 14:19:27 +02:00

                   ------------------------------
                   GNU Image Manipulation Program
                      2.99 Development Branch
                   ------------------------------

This is an unstable development release, an intermediate state on the
way to the next stable release: GIMP 3.0. GIMP 2.99 may or may not do
what you expect. Save your work early and often. If you want a stable
version, please use GIMP 2.10 instead.

If you think you found a bug in this version, please make sure that it
hasn't been reported earlier and that it is not just new stuff that is
still being worked on and obviously not quite finished yet.

If you want to hack on GIMP, please read the file devel-docs/README.md.
For detailed installation instructions, see the file INSTALL.


1. Web Resources
================

GIMP's home page is at:

	https://www.gimp.org/

Please be sure to visit this site for information, documentation,
tutorials, news, etc.  All things GIMP-ish are available from there.

The latest version of GIMP can be found at:

	https://www.gimp.org/downloads/

We also have a website dedicated to documentation at:

        https://docs.gimp.org/


2. Contributing
===============

GIMP source code can be found at:

	https://gitlab.gnome.org/GNOME/gimp/

Resources for contributors:

        https://developer.gimp.org/

In particular, you may want to look in the "Core Development" section. Some
articles of particular interest for newcomers could be:

* Setting up your developer environment: https://developer.gimp.org/core/setup/
* GIMP Coding Style: https://developer.gimp.org/core/coding_style/
* Submit your first patch: https://developer.gimp.org/core/submit-patch/


3. Discussion Channels
======================

We have several discussion channels dedicated to GIMP user and
development discussion. There is more info at:

        https://www.gimp.org/discuss.html

For the real junkies, there are IRC channels (e.g. #gimp or #gimp-user)
devoted to GIMP on GIMPNet (a private free software oriented network).
Many of the developers hang out there. Some of the GIMPNet servers are:

	irc.gimp.org:6667
	irc.us.gimp.org:6667
	irc.eu.gimp.org:6667

More discussion channels, such as forums, will be listed on the above
"discuss" page when they are moderated by a team member.
Links to archives of former discussion methods (e.g. mailing lists) are
also included in that page.

4. Customizing
==============

The look of GIMP's interface can be customized like any other GTK+ app
by editing files in `${XDG_CONFIG_HOME}/gtk-3.0/` (settings.ini and
gtk.css in particular) or by using "themes" (ready-made customizations).
Additionally, GIMP reads `${XDG_CONFIG_HOME}/GIMP/2.99/gimp.css` so you
can have settings that only apply to GIMP.

You can also manually change the keybindings to any of your choice by
editing: `${XDG_CONFIG_HOME}/GIMP/2.99/shortcutsrc`.


Have fun,

  Spencer Kimball
  Peter Mattis
  Federico Mena
  Manish Singh
  Sven Neumann
  Michael Natterer
  Dave Neary
  Martin Nordholts
  Jehan