Go to file
Jehan 1ff9c12b1e libgimp, pdb: replacing gimp_brush_get_pixels() by gimp_brush_get_buffer()…
… and gimp_brush_get_mask().

gimp_brush_get_pixels() was a bit crappy, returning raw data with only
dimensions and bpp to go with (no color model/space, no bit depth…). So the
assumption is that we work with 8-bit per channel data, possibly with alpha
depending of number of channels as deduced from bpp, and very likely in sRGB
color space. It might be globally ok with many of the brush formats (and
historical brushes) but won't fare well as we improve brush capabilities.

- gimp_brush_get_pixels() is in fact made private.
- The 2 new functions are using this old PDB call _gimp_brush_get_pixels() to
  construct buffers. This has some limitations, in particular that it returns
  only 8-bit per channel sRGB data, but at least the signature won't change when
  we will improve things in the future (so if some day, we pass fancy brushes in
  high-bit depth, the method will stay the same).
- This new implementation also allows scaling down the brush (keeping aspect
  ratio) which is useful when you need to fit a brush preview into a drawing
  widget.
- Current implementation stores the buffers at native size in the libgimp's
  GimpBrush object, hence save re-querying the core every time you need an
  update. This can be improved as current implementation also means that you
  don't get updates if the brush changed. This should handle most common use
  cases for now, though.
- Also with this change, I move GimpBrush class implementation into its own
  dedicated file.
2023-10-01 21:02:33 +02:00
.gitlab Set the bug template as default 2023-08-06 20:45:25 +00:00
app app: fix a complicated race condition when callback from GimpPdbDialog and… 2023-10-01 21:02:33 +02:00
app-tools Remove autotools 2023-05-27 00:03:52 +02:00
build build: add new Belarusian translation in the installer. 2023-09-27 21:01:09 +02:00
cursors Remove autotools 2023-05-27 00:03:52 +02:00
data data: new "Wilber Week 2023 edition" splash screen for GIMP 2.99.16. 2023-06-08 00:21:48 +02:00
desktop desktop: update release date (to today) in AppStream file. 2023-07-05 15:57:24 +02:00
devel-docs app, devel-socs, icons, plug-ins, tools: remove various autotools artifacts. 2023-09-27 15:39:39 +02:00
docs app, libgimp, libgimpwidgets, plug-ins, etc: rename behaviour to behavior 2023-07-21 15:35:23 -04:00
etc app, libgimp, libgimpwidgets, plug-ins, etc: rename behaviour to behavior 2023-07-21 15:35:23 -04:00
extensions plug-ins: port goat-exercise to gimp_image_procedure_new2() 2023-10-01 20:52:02 +02:00
icons Issue #6165: crash when the system icon theme does not contain image-missing icon. 2023-09-27 21:34:18 +02:00
libgimp libgimp, pdb: replacing gimp_brush_get_pixels() by gimp_brush_get_buffer()… 2023-10-01 21:02:33 +02:00
libgimpbase libgimp, libgimpbase: new gimp_load_procedure_new2() for run() function using… 2023-10-01 20:52:02 +02:00
libgimpcolor libgimp*: removing now useless Makefile.gi files. 2023-10-01 20:52:02 +02:00
libgimpconfig libgimp*: support having procedure arguments of generic type GimpResource. 2023-10-01 21:02:33 +02:00
libgimpmath libgimp*: removing now useless Makefile.gi files. 2023-10-01 20:52:02 +02:00
libgimpmodule libgimp*: removing now useless Makefile.gi files. 2023-10-01 20:52:02 +02:00
libgimpthumb libgimp*: removing now useless Makefile.gi files. 2023-10-01 20:52:02 +02:00
libgimpwidgets libgimp*, plug-ins: reorganize the resource property choosers. 2023-10-01 21:02:33 +02:00
menus menus: Rearrange Help menu 2023-08-25 21:13:03 +00:00
modules modules: Add translation note for Clip warning 2023-08-15 17:09:14 +00:00
pdb libgimp, pdb: replacing gimp_brush_get_pixels() by gimp_brush_get_buffer()… 2023-10-01 21:02:33 +02:00
plug-ins libgimp*, plug-ins: reorganize the resource property choosers. 2023-10-01 21:02:33 +02:00
po Update Turkish translation 2023-10-01 18:26:01 +00:00
po-libgimp libgimp, libgimpbase: new gimp_load_procedure_new2() for run() function using… 2023-10-01 20:52:02 +02:00
po-plug-ins Update Belarusian translation 2023-09-28 17:59:51 +00:00
po-python Update Swedish translation 2023-09-14 22:23:21 +00:00
po-script-fu Update Swedish translation 2023-09-29 21:02:45 +00:00
po-tags Remove autotools 2023-05-27 00:03:52 +02:00
po-tips Update Belarusian translation 2023-09-09 23:05:49 +00:00
po-windows-installer Add Belarusian translation 2023-09-26 14:54:40 +00:00
themes themes: Set default background-color for buttons 2023-09-30 01:38:37 +00:00
tools app, devel-socs, icons, plug-ins, tools: remove various autotools artifacts. 2023-09-27 15:39:39 +02:00
.clang-format clang-format: update. 2022-03-14 18:16:14 +01:00
.dir-locals.el .dir-locals.el: configure emacs to show trailing whitespace 2016-08-24 17:46:57 +02:00
.gitignore Remove autotools 2023-05-27 00:03:52 +02:00
.gitlab-ci.yml gitlab-ci: generating tarballs for babl and GEGL API reference documentation. 2023-08-12 17:33:54 +02:00
.kateconfig Add .kateconfig with modelines for Kate 2016-08-23 14:53:38 +02:00
AUTHORS AUTHORS: update. 2022-02-25 21:06:17 +01:00
COPYING Change a bazillion URLs to https:// 2018-07-14 14:19:27 +02:00
ChangeLog.pre-1-0
ChangeLog.pre-1-2 converted to utf-8 2004-05-10 17:45:17 +00:00
ChangeLog.pre-2-0 vte sucks 2004-05-20 02:36:11 +00:00
ChangeLog.pre-2-2 Copied current ChangeLog away and truncated it. 2004-12-19 02:55:34 +00:00
ChangeLog.pre-2-4 renamed the pre-2.4 ChangeLog 2007-10-23 23:36:17 +00:00
ChangeLog.pre-2-6 Applied changes based on official version of TinyScheme (CVS commit dated 2009-08-04 14:23:55 -04:00
ChangeLog.pre-git Applied changes based on official version of TinyScheme (CVS commit dated 2009-08-04 14:23:55 -04:00
INSTALL.in meson: requires Pango >= 1.50. 2023-09-12 14:23:40 +00: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
NEWS NEWS: update. 2023-10-01 18:01:26 +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-8: new file preserving the history that lead to 2.8 2015-11-22 17:30:15 +01:00
NEWS.pre-2-10 Misc. typos 2018-10-19 15:30:27 +00:00
README app, docs, etc.: transform menurc in shortcutsrc after an update. 2023-04-12 22:07:09 +02:00
README.i18n Change a bazillion URLs to https:// 2018-07-14 14:19:27 +02:00
authors.dtd authors.dtd: Update 2011-01-28 07:55:55 +01:00
authors.xml authors: update. 2022-08-21 12:24:20 +02:00
authors.xsl Also put maintainers separately in AUTHORS 2011-01-27 22:04:05 +01:00
authors4gimp-web.xsl Bug 734981 - Update maintainers and authors. 2017-10-23 23:55:22 +02:00
gimp.doap DOAP: Add support-forum (GNOME Discourse) 2023-04-28 04:41:52 +02:00
gimp.pc.in configure, gimp.pc: do no hardcode the major.minor version of GEGL. 2018-04-28 01:30:19 +02:00
gimpthumb.pc.in use GCheckSum instead of the MD5 routine from libgimpmath. 2008-03-28 16:47:38 +00:00
gimpui.pc.in Require gtk+-3.0 in gimpui-3.0.pc 2018-05-25 21:55:45 +02:00
meson.build meson: requires Pango >= 1.50. 2023-09-12 14:23:40 +00:00
meson.make meson.make: Don't use backend-specific calls 2021-09-30 16:13:35 +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_options.txt meson: Add explicit options for cfitsio and openmp 2023-09-03 22:41:04 +02:00

README

                   ------------------------------
                   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/


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

Links to several archives of the mailing lists are included in that page.

Gimp-user-list is a mailing list dedicated to user problems, hints and
tips, discussion of cool effects, etc.  Gimp-developer-list is oriented
to GIMP core and plug-in developers.  Gimp-gui-list is for discussing
about GIMP interface to improve user experience. Most people will only
want to be subscribed to gimp-user-list. If you want to help develop
GIMP, the gimp-developer mailing list is a good starting point; if you
want to help with GUI design, the gimp-gui list is where you want to
subscribe.

Other discussion channels can be listed on this page when they are
moderated by a team member, such as forums.

Finally, for the real junkies, there are IRC channels devoted to GIMP.
On GIMPNet (a private free software oriented network) there is #gimp.
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


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