Commit graph

1976 commits

Author SHA1 Message Date
Michael Natterer
47ef3be145 Initialize GValues with G_VALUE_INIT instead of { 0, } 2016-03-26 15:59:26 +01:00
Michael Natterer
dc33afd95b Bug 762279 - "Tip of the day" links opens two links
Fix this the brute force way, don't look it's ugly...
2016-03-20 20:29:43 +01:00
Michael Natterer
49ffbbbbc0 app: add menu items and a dialog for GimpItem::fill()
which are essentially a copy of the stroking GUI. We now can fill the
exact shape outlined by stroking selections and paths. Suggestions for
the menu item labels are welcome.
2016-03-15 21:07:59 +01:00
Michael Natterer
f2d581a536 Bug 761170 - Warnings building with clang
Fix a bunch of clang warnings.
2016-02-12 22:49:47 +01:00
Michael Natterer
406e1819d0 app: move symmetry painting out of the playground
Also fixes bug #761617 because we don't unconditionally dereference
image_editor->context in gimp_symmetry_editor_set_image() any longer.
2016-02-06 23:33:04 +01:00
Michael Natterer
e630d6faa8 app: simplify GimpSymmetryEditor even more 2016-02-06 00:32:57 +01:00
Jehan
66ead15f69 app: reparenting GimpSymmetryEditor to GimpImageEditor. 2016-02-04 17:05:27 +01:00
Jehan
76f573c981 Bug 648776 - mirror symmetries.
You can now set any paint tool to mirror painting relatively
horizontal/vertical axis or a central point (any combination of these 3
symmetries).
This has been implemented as a new multi-stroke core, where every stroke
is actually handled as a multi-stroke (default of size 1).
This is also the first usage of custom guides for symmetry guiding.
Current version has to be activated in the playground.
2016-02-02 21:15:13 +01:00
Michael Natterer
5455b8bfd0 app: move some stuff out of app/file/
file-procedure.[ch] is gone and its functions moved to
GimpPlugInManager where they belong (the manager keeps around the
lists of load, save and export procedures).

Utility functions from file-utils.[ch] that have nothing to do with
image files moved to core/gimp-utils.[ch].
2016-01-03 23:38:08 +01:00
Michael Natterer
a998175289 app: use gimp_procedure_get_label() in file-save-dialog.c 2016-01-01 22:55:37 +01:00
Jehan
ad8716316e app: show example icon of icon themes in preferences. 2015-12-30 15:54:45 +01:00
Michael Natterer
9e6f995488 app: gdk_pixbuf_new_from_inline() -> from_resource() 2015-12-28 23:20:21 +01:00
Michael Natterer
51520278cd app, pdb: s/GRAY/grayscale/ in user-visible strings 2015-12-26 01:14:43 +01:00
Michael Natterer
d01ba07ed6 configure.ac, app: make libmypaint a hard dependency
and move the MyPaint brush tool out of the playground.
2015-12-21 21:39:48 +01:00
Michael Natterer
a5eff27149 app: add new GimpData subclass GimpMybrush and infrastructure around it
- GimpContext API and property
- a GimpDataFactory
- List and grid views with GimpDataFactoryView
- actions and a context menu

None of this is connected to the actual tool yet, or depends on
libmypaint in any way.
2015-12-20 23:51:44 +01:00
Michael Natterer
edff1d0647 app: move "Snap Distance" to the prefs dialog's "Snapping" page
also some indentation and a fix for wrong capitalization.
2015-12-16 12:41:37 +01:00
Michael Natterer
5098338470 Bug 756389 - Color-managing grayscale images
Allow to set profiles on grayscale images. Change profile validation
to check for image type and profile type. Actually the patch simply
makes some pieces of code less restrictive. Change user-visible
strings in the profile dialogs accordingly. Change PDB docs
accordingly.
2015-12-14 23:25:02 +01:00
Michael Natterer
40280c0862 app: add the preferred gray profile to the prefs dialog 2015-12-14 02:13:51 +01:00
Michael Natterer
bb482badf0 app: s/gimp_stock_init/gimp_icons_init/ in the user install dialog 2015-12-13 20:03:52 +01:00
Michael Natterer
f7d33ac18f app: don't hardcode the prefs icon sizes n_categories times
Remove the parameters from gimp_prefs_box_add_page() and instead
hardcode them once in GimpPrefsBox. This way they can also easily be
made configurable in the future.
2015-12-13 13:33:55 +01:00
Michael Natterer
8619852a6c app, icons: rename the prefs' "environment" icons to "system-resources"
also rename the help ID.
2015-12-13 13:23:31 +01:00
Michael Natterer
7200ece117 app, icons: make the icon theme path configurable in prefs 2015-12-13 13:04:46 +01:00
Michael Natterer
2e43824062 app: reorder the prefs categories tree, and rename some pages 2015-12-12 22:54:00 +01:00
Benoit Touchette
55270366d7 Bug 759345 - Fix for prefs dialog to add icon theme support
Change GimpPrefsBox to use icon names instead of pixbufs, and change
preferences-dialog.c accordingly.
2015-12-11 22:15:22 +01:00
Benoit Touchette
6762bf5b9b Bug 759105 - Patch to add icon theme selection
Add support for custom icon themes much like custom theme
support. There is still work to be done but this is the
basic functionality.
2015-12-09 12:50:15 +01:00
Jehan
01bdb712f9 app: do not request xcf compat mode when compat_toggle not sensitive.
In some cases, on could end up with photographs with metadata as XCF
version 6, which is useless since this is not compatible with GIMP 2.8
either.
2015-12-08 20:10:45 +01:00
Michael Natterer
548e8bc4eb app: fix progress message for precision conversion 2015-11-23 18:41:16 +01:00
Michael Natterer
ba14054a8e app: simplify the Image -> Precision menu
Keep only one menu item per precision, and have two separate radio
menu items for gamma/linear. Also add gamma/linear radio buttons to
the precision conversion dialog.
2015-11-22 23:19:49 +01:00
Michael Natterer
03e12184f5 app: reduce casts in file-save-dialog.c and file-open-dialog.c
also, name variables like their type, e.g. a GimpOpenDialog is always
called open_dialog now.
2015-09-09 21:04:18 +02:00
Jehan
55f319de04 Bug 754652 - About dialog does not credit contributors for 2.10. 2015-09-07 17:04:23 +02:00
Jehan
cbef12d645 app: Action Search dialog now uses the new GimpSearchPopup widget...
... instead of making its own window. Inheriting from GimpPopup, it is
also friendlier to sloppy mouse, etc.
2015-09-06 20:48:05 +02:00
Michael Natterer
b45d31072b app, libgimpcolor: refactor GimpColorManaged::get_color_profile()
to not return a reference that has to be dropped. Also allow NULL to
be returned if the managed cannot have a profile. If it can have one,
get_color_profile() still always returns a profile (either the
assigned one, or a generated built-in one).
2015-09-03 01:36:02 +02:00
Jehan
829f5ec3d6 app: GimpFileDialog state saving now implemented as a class method.
By default, it only saves the current file filter, but it allows a child
to implement its own state. It has been implemented by GimpSaveDialog to
save the preferred compatibility mode as well.
2015-09-02 20:05:11 +02:00
Jehan
b17e1b1cfc app: split GimpFileDialog into Gimp(Open|Save|Export)Dialog subclasses.
The code refactoring allows better readability which will allow in turn
to add more complex specific features making good use of the save/export
split concept.
2015-09-02 20:05:01 +02:00
Jehan
bdece29d8c app: keep track of compatibility mode on an image.
If one explicitly enables the compatibility mode, one expects this to
be applied on following saves of the same image as well.
2015-09-01 15:20:28 +02:00
Michael Natterer
a66d867da9 app: add a dest profile details view to the profile assign/convert dialog 2015-08-26 12:36:43 +02:00
Michael Natterer
b51ee77ec0 app: implement the "Convert to RGB Working Space" import dialog in the core
Add gimp_image_import_color_profile(), a GUI vtable entry
query_profile_policy() and a new dialog which returns the profile
policy and the profile to convert to. Get rid of the wrapper that
calls the lcms plug-in for that dialog, the plug-in is now completely
unused.

This commit doesn't add any new features, it's just the former lcms
plug-in dialog implemented in app/ (except the little fix that it is
now aware of linear vs. gamma images).
2015-08-23 12:59:12 +02:00
Michael Natterer
dc51a89427 app: add helper function gimp_color_profile_label_new()
which is an expander showing a profile's label, and when expanded has
detailled information about the profile. Use it in the color profile
dialog.
2015-08-23 10:41:34 +02:00
Michael Natterer
4161ea9cd7 Bug 750920 - Show commit number in About dialog
Done.
2015-08-21 10:27:03 +02:00
Michael Natterer
77dac3ea60 Bug 555562 - GIMP should ask before applying working space profile
Get rid of the "configurable RGB working space profile".

Instead, turn GimpColorConfig's "rgb-profile" property into a
"Preferred RGB profile" thing that is only a hint and never used
without explicit user interaction. Present it next to the built-in
profile in the profile combo boxes and call it "Preferred" in the
prefs dialog and its tooltip.

Most importantly, don't use it as the image's profile when the image
is not tagged with a profile. Untagged images are now always in the
sRGB or linear RGB built-in color spaces.

This commit reduces the "Apply color profile" dialog on file import to
a simple "Convert to built-in RGB", but that dialog is about to be
moved to the core and improved anyway.
2015-08-20 16:02:22 +02:00
Michael Natterer
d05bcba33d app: push an undo group around assigning a color profile
We now potentially change two parasites not just one.
2015-08-16 21:22:12 +02:00
Michael Natterer
68514d0cbd app: unset the "icc-profile-name" parasite when a profile is assigned 2015-08-16 20:54:16 +02:00
Michael Natterer
1715e1e60b app: keep GimpImage's profile around as GimpColorProfile
not only as parasite. This way we avoid having to create the profile
in each call to gimp_image_get_color_profile(). Also keep the built-in
profiles around in gimp_image_get_builtin_color_profile(). Add/remove
refs and unrefs as needed in all users of these functions.
2015-08-16 19:38:11 +02:00
Michael Natterer
d71cd602a8 app: add color-profile-dialog.c as replacement for the lcms plug-in's GUI
Uncomment and implement the menu items and actions to invoke the
dialog. This new code also does the (alomst) right thing to linear
images, unlike the lcms plug-in.
2015-08-04 22:20:32 +02:00
Michael Natterer
5672e80ea1 libgimpwidgets: port GimpColorProfileStore and -ComboBox to GFile
and deprecate the old filename-based API. Port everything to use the
new GFile functions.
2015-08-01 16:20:14 +02:00
Nils Philippsen
0b900239d5 Ref/unref dialog->image around saving as well...
...to avoid warnings that happen if the image got closed before the
saving finishes.

(amends commit a0e48ad29e)
2015-07-17 17:10:20 +02:00
Michael Natterer
a0e48ad29e Bug 739003 - Crashes in file_save_dialog_response()
Ref/unref the dialog around saving the image insatead of connecting to
"destroy" and NULLifying the local dialog variable on destruction,
which has caused weird crashes on fedora.
2015-07-14 13:22:06 +02:00
Michael Natterer
6487d0a26a app: move the seamless clone tool to the playground
It's not release material unless somebody comes and fixes its bugs,
and its speed.
2015-06-14 13:02:31 +02:00
Michael Natterer
0261d8cf47 Bug 677746 - Change "Fit to window" to "Show entire image"
Change the prefs dialog text for "initial-zoom-to-fit" enabled.
2015-06-06 23:53:08 +02:00
Michael Natterer
167262408d Bug 749756 - Unable to pick an ICC profile from disk
Block the config's "notify" signal when setting a NULL filename from a
GimpColorProfileComboBox. The notify callback was only introduced
because GimpColorConfig is now validating the profiles. Validation of
a NULL profile never fails, but the NULL notify from the config
prevented the profile file chooser dialog from appearing.
2015-05-24 18:39:18 +02:00