Commit Graph

206 Commits

Author SHA1 Message Date
Ell e962e8b3de icons: fix symbolic gimp-tool-offset icons 2019-06-06 04:32:43 -04:00
Ell 3a4a00c71e Issue #40 - Layer offset tool
Add a new Offset filter tool, as a front-end to gimp:offset.  The
tool replaces, and provides the same interface as, the drawable-
offset dialog, while also providing live preview and on-canvas
interaction.

Note that we don't simply use a custom propgui constructor for
gimp:offset, since we need a little more control.
2019-06-05 19:06:56 -04:00
Ell 33e47c85a2 app: add smooth/corner curve-point types
Allow setting the type of GimpCurve control-points to either SMOOTH
or CORNER.  Smooth points produce a smooth curve, while corner
points produce a sharp curve (previously, all points were smooth).

In GimpCureView, display corner points using a diamond shape,
instead of a circle.

In the Curves tool, allow changing the curve's point types.
2019-04-19 10:34:32 -04:00
Jehan ef8042e812 icons: fix icons!
Ok looks like I missed some changes when I updated these icon Makefiles.
Anyway I still have a lot to straighten up within icons. :-/
2018-09-17 19:17:32 +02:00
Ell 36477bb287 app, icons, menus: add performance-log recording to the dashboard
Add an option to record a performance log through the dashboard.
The log contains a series of samples of the dashboard variables, as
well as the full program backtrace, when available.  As such, it
essentially acts as a built-in profiler, which allows us to
correlate program execution with the information available through
the dashboard.  It is meant to be used for creating logs to
accompany perofrmance-related bug reports, as well as for profiling
GIMP during development.

The sample frequency defaults to 10 samples per second, but can be
overridden using the GIMP_PERFORMANCE_LOG_SAMPLE_FREQUENCY
environment variable.  Backtraces are included by default when
available, but can be suppressed using the
GIMP_PERFORMANCE_LOG_NO_BACKTRACE environment variable.

Logs are created through the new "record" button at the bottom of
the dashboard dialog.  When pressed, a file dialog is opened to
select the log file, and, once confirmed, data is being recorded to
the selected file.  Recording is stopped by pressing the "record"
button again (we use a highlight to indicate that recording is
active.)

While recording, the "reset" button is replaced with an "add marker"
button, which can be used to add event markers to the log.  These
can be used to mark events of interest, such as "started painting"
and "stopped painting", which then appear in the log as part of the
sample stream.  Markers are numbered sequentually, and the number
of the next (to-be-added) marker appears on the button.  Shift-
clicking the button adds an empty (description-less) marker, which
is only identified by its number; this can be used when markers
need to be added quickly.

The log is an XML file, containing some extra information (such as
the output of "$ gimp -v", and symbol information) in addition to
the samples.  The data in the file is delta-encoded to reduce the
file size, meaning that samples (as well as some other elements)
only specify the changes since the previous sample.  This adds a
necessary decoding step before data can be processed; the next
commit adds a tool that does that.

There are currently no tools to actually analyze the data -- that's
still TBD -- but at least we can start gathering it.
2018-09-02 03:11:02 -04:00
Jehan 0b73a1bc93 icons: fix build with vector icons (default).
That's the problem of having alternative build options! My previous
commits were made when testing the build with PNG icons.
Anyway I am planning to soon merge the 2 options.
2018-08-18 18:21:58 +02:00
Jehan babf74a3db icons: generate PNG symbolic icons with `gtk-encode-symbolic-svg`.
We don't need to commit PNG symbolic icons as `gtk-encode-symbolic-svg`
is perfectly able to generate them from the SVG.
Moreover its man says that it makes "specially prepared png files",
whatever that means. So I don't think we should just rename our
self-exported PNG files as '*-symbolic.symbolic.png'. It is better to
generate them with this tool.

Note that I am now splitting icon-list.mk into 2 files. This is only a
temporary stepback, as I am actually going to merge the 2 icon themes
into one very soon, and hopefully we should be able to generate the list
to ensure we don't miss an icon.
Anyway the icon lists had already diverged earlier, even though it was
only all still in a single file.
2018-08-18 12:51:59 +02:00
Jehan e326faa77c icons: update icons for new top-to-bottom text feature.
They are not perfect (not a designer here!) but a bit less packed than
the previous one. So hopefully more understandable.
2018-07-30 19:14:49 +02:00
ONO Yoshio 587d9bbb03 MR !19: Add support for vertical text writing.
Squashed commit of the following:

commit ee1ff7d502658cfa1248a13a3f0348495db07eda
Author: ONO Yoshio <ohtsuka.yoshio@gmail.com>
Date:   Sun Jul 29 00:31:47 2018 +0900

    Fixed that gimp-text-dir-ttb-* icons are lacked in Symbolic.

commit d87d012d697628da28fe90199cc04b95b72ba8ef
Author: ONO Yoshio <ohtsuka.yoshio@gmail.com>
Date:   Sat Jul 28 16:23:10 2018 +0900

    Fix a typo.

commit cf0238bf7df56c384cdf3b7ec69557d14740f853
Author: ONO Yoshio <ohtsuka.yoshio@gmail.com>
Date:   Sat Jul 28 15:50:57 2018 +0900

    Fixed seg fault error.

commit b07f60d06f
Author: ONO Yoshio <ohtsuka.yoshio@gmail.com>
Date:   Fri Jul 27 17:15:34 2018 +0900

    Add support for vertical text writing.

    https://gitlab.gnome.org/GNOME/gimp/issues/641
2018-07-30 19:14:49 +02:00
Jehan 1e5cf10585 icons, app, libgimpwidgets: use Freedesktop standard icons.
Some icons were still using old gimp-namespaced names.
2018-07-28 12:27:10 +02:00
Michael Schumacher 9a03a7f6cd icons: add missing Symbolic/24/gimp-color-space-non-linear.png 2018-07-22 01:09:40 +02:00
Michael Schumacher 97f6179281 icons: add missing Symbolic/16/gimp-color-space-non-linear.png 2018-07-22 00:50:50 +02:00
Michael Natterer 5c94ebaed3 libgimpwidgets, icons: add gimp-color-space-non-linear icon
For now just a copy of the "perceptual" icon.
2018-07-20 17:21:53 +02:00
Jehan a4c1d73b75 icons: toilet paper should always be white!
I know that the idea of black toilet paper is traumatizing nomis! ;-)
So here it is, using the CSS "!important" trick to override GTK+ CSS
recoloring code.
In order for the icon to be always visible, even on light background, I
am adding a path around the toilet paper shape (which this time will
be properly recolored by GTK+ with the foreground color, hence making
the icon clearly visible).
2018-07-07 17:08:02 +02:00
Jehan 56717f80cc icons: fix symbolic icon gtk-select-color.
There was again a visible square.
2018-07-07 16:23:43 +02:00
Jehan 4c68d5dfc9 icons: update various icons to account for librsvg bugs.
It should now be possible to fully export our symbolic icons from a
single central file.
My long-standing bug of librsvg#250 is still opened and unfixed, but it
turns out most issues I encountered are anyway also problems when
recoloring symbolic icons in GTK+ (like using strokes instead of
fills!). So let's just bypass all problems at once by accounting for
these issues in the design.
2018-06-23 17:53:11 +02:00
Jehan 8811b0d916 icons: fix many icons for proper recoloring.
I tried to fix all the icons I could see which had issues regarding all
recoloring matters (using fill not stroke, change circle/ellipses to
paths, etc.) when looking at a blank canvas.
I'm sure I still miss a lot but that will do for now.
2018-06-23 12:50:33 +02:00
Jehan 5d5bbeb88b icons: force colors on some icons.
Sometimes even within symbolic icons, parts of the design must keep
fixed colors, when they are semantic. For instance this is the case for
the color-picker-(black|gray|white) icons or the gimp-default-colors.

The trick used by GTK+ to recolor is by supplying an additional CSS
style to icons which overrides inline CSS thanks to "! important"
keyword. Our own trick to circumvent this trick is to set "!important"
in inline CSS when one wishes not to have it overrided by the general
colors.
Right now I am doing the edit by hand with vim because Inkscape doesn't
seem to validate this keyword if I add it manually in its XML editor. So
what I did is add the "color-important" label on such object, and I will
later modify my SVG export tool to add !important on such object "fill"
values at export time.
2018-06-23 11:47:19 +02:00
Jehan fd46018203 icons: fix various symbolic icons not properly recolored.
The current recolorization code only recolors paths and rectangles. In
particular it leaves circles and ellipses as-is.
I opened the merge request gtk!214 for this issue. But in the meantime,
it is quite easy to change circles and ellipses into path with "object
to path" in Inkscape.

A second problem is that it only recolors fills, not strokes, as
previously stated. So I need to remove strokes from icons, or transform
them to paths.
2018-06-23 01:41:26 +02:00
Jehan a5afb04501 icons: larger spacing between broken chains.
It seems not wide enough to differentiate easily the broken and
non-broken chains. So let's make this gap bigger.
2018-06-19 22:47:27 +02:00
Jehan 2bb8afd119 icons: fixing more icons.
This time, 2 icons still had problems because of visible rectangles.
Fixing "gimp-prefs-folders" and "gimp-prefs-folders-mypaint-brushes".
2018-06-19 15:25:46 +02:00
Jehan 4b6869dd67 icons: fix various icons broken when recoloring with CSS.
For anyone wishing to help me fix icons, here is the trick: apparently
GTK+ would fill the paths with CSS colors, not stroke them. So when we
have icon drawing based on path-stroking, they don't end up as expected.
In Inkscape, just run "Stroke to Path" to transform a stroke design in a
fill design.
I am fixing "gimp-tool-cage", "document-revert", "gimp-image-reload",
"gimp-reset" and "view-refresh". More to follow as we discover them, I
guess.
2018-06-19 15:14:36 +02:00
Jehan 45f46db815 icons: make gimp-tool-ellipse-select symmetric.
I may not be an icon designer, but this icon be so clearly asymmetric
always deeply annoyed me.
2018-06-19 14:38:37 +02:00
Jehan 3096fd295a icons: clean the symbolic vector file.
All icons are now in the file.
2018-06-14 03:21:42 +02:00
Michael Natterer 5674e31850 Generate icon resources where they are needed, and don't include .c files
Treat the gimp-core-pixbufs and gimp-icon-pixbufs resources like we
changed the cursor resources before, and clean out a lot of cruft from
icons/ (there is no need to generate stuff in all icon themes when we
include only one fallback icon from one theme).
2018-06-13 20:02:05 +02:00
Jehan 6a806c39d1 icons: some more rectangle cleanup! 2018-05-31 00:06:28 +02:00
Jehan ee6eb194c5 icons: fix EXTRA_DIST. 2018-05-30 21:53:08 +02:00
Jehan f018340dc7 icons: example item for the Symbolic theme is "gimp-wilber-symbolic". 2018-05-30 21:17:36 +02:00
Jehan 368e5b4935 icons: fixing more icons.
Invisible squares everywhere!
2018-05-30 13:43:05 +02:00
Jehan 0c3659c5f1 icons: fix symbolic icons.
With the symbolic-awareness of GTK+, vector icons are recolored (using
fg, success, warning and error colors). Unfortunately it was also
recoloring some rectangles with neither fill nor stroke, which were
using only to get appropriate icon size (these icons were therefore
displayed as just a square).

I made a quick pass in our icons to "fix" these. I expect I may have
missed some icons, or at the opposite, I may have broken other icons by
removing rectangles which should not have been removed. If you find any
such icon, please fix.
Also some icons do not look quite right just now. We will have to create
new guidelines on how to make symbolic icons and fix/redesign some, I
guess.
2018-05-30 11:57:31 +02:00
Jehan 64e3fd712a icons: make "Symbolic" icons seen as such by GTK+ and remove...
... Symbolic-Inverted.
Symbolic icons must simply end with "-symbolic".
2018-05-30 11:57:30 +02:00
Ell 1a277f2cc6 icons: s/gimp-tool-blend/gimp-tool-gradient/ in SVG icons
In particular, so that we use the correct element IDs, if we ever
extract the icons based on element ID.
2018-04-15 03:31:08 -04:00
Michael Natterer ebb9d83d63 Bug 795230 - Rename Blend tool and provide PDB compatibility
Step 1: rename the icon to GIMP_ICON_TOOL_GRADIENT (gimp-tool-gradient)
2018-04-13 23:07:08 +02:00
Aryeom Han a542bb1e8f icons: new symbolic icons gimp-attach and gimp-detach.
These are simple on purpose since the smaller size they are displayed at
is 12 px (in overlay dialogs) so it needs to be simple shapes.

Note by Jehan: gimpicons.h and Makefile.am not updated yet. Waiting for
the color icons first.
2018-02-24 00:56:59 +01:00
Alexandre Prokoudine 940a5866a9 Add symbolic icons for linear/perceptual color spaces 2018-01-06 01:49:17 +03:00
Alexandre Prokoudine 78821b4cb9 Add icons for Shadows-Highlights 2018-01-05 21:03:42 +03:00
Alexandre Prokoudine b7d2c5eab1 Add Exposure tool icon, remove erroneous stock entry for the colortemp icon 2017-12-28 04:11:55 +03:00
Alexandre Prokoudine 5269d792c5 Rename colortemp icons to *-tool-* 2017-12-27 07:49:52 +03:00
Alexandre Prokoudine 28c3fd92eb Remove erroneous group of shapes from colortemp icon 2017-12-27 06:08:11 +03:00
Alexandre Prokoudine 57b43e096c Add symbolic icons for color temperature tool, full color version to follow 2017-12-27 05:58:35 +03:00
Ell 981e8dcdfe app, menus, icons: add dashboard dockable
The dashboard dockable shows the current GEGL cache and swap sizes,
and their recent history.  It has options to control the update
rate and history duration of the data, and an option to warn (by
raising/blinking the dialog) when the swap size approaches its
limit.
2017-12-18 19:42:23 -05:00
Ell fa25b476be icons, modules, libgimpwidgets: add clip-warning display filter icon
... and use it instead of gimp-warning.
2017-11-23 13:34:49 -05:00
Jehan 677e5c233a icons: start completing the main Symbolic icons SVG file.
It's not finished yet, but I have already added all the individual
Freedesktop and GTK+ icons. The goal will be to have all the Symbolic
icons in this one file so that in the future we can just extract
individual SVG files from object IDs.
This was the original plan but librsvg was just too buggy and would not
extract the proper viewbox for some icons. Fortunately it seems that the
bug reports I made are finally starting to be taken into account so I am
hoping for a usable librsvg soon and starts the work which should have
been done from the start.
2017-09-11 14:26:43 +02:00
Alexandre Prokoudine 70b389a7b1 Cherry-pick template updates from icons-wip branch by Klaus Staedtler 2017-06-12 03:24:32 +03:00
Michael Natterer 9d3be6177c icons: add the new icons64_system_image group to EXTRA_DIST
and clean up some tabs in various Makefiles.
2017-06-07 21:04:33 +02:00
Michael Natterer ef7629151d icons: forgot to rename the scalable "justify" icons 2017-03-06 23:36:53 +01:00
Michael Natterer dda54c1df8 Deprecate stock items for good and change all icon defines to GIMP_ICON_*
Try to sort all GIMP_ICON_* defines into FDO categories like in
https://specifications.freedesktop.org/icon-naming-spec/latest/ar01s04.html

Add defines for all icons we override, rename some icons to their FDO
standard names, and mark the ones we duplicate with a comment so we
don't forget to rename those to standard names in 3.0.
2017-03-05 16:01:59 +01:00
Aryeom Han f3303eb72f icons: adding the missing gimp-prefs-import-export color icon.
The 24 and 48 versions are slightly different, with the arrow on the
smaller version being bigger.
Preferences icon are also stored in all kind of size, like 16 and 22.
It may become necessary to make an alternative version for these smaller
sizes.
2017-02-23 15:24:36 +01:00
Aryeom Han 15d4b8b653 icons: SVG and 48x48 version of the Import/Export preferences icon.
More sizes and a color version to come soon too.
2017-02-04 11:50:38 +01:00
Hartmut Kuhse 66bc98d299 Revert "New GimpMetadata as subclass of GExiv2Metadata"
This reverts commit 3ab08c8bfd.
2017-01-03 19:36:22 +01:00