Commit Graph

4480 Commits

Author SHA1 Message Date
Michael Natterer 90c967a39f Bug 737008 - Curve color always black
Don't hardcode "black" for the "Value" curve in GimpCurvesTool.
Instead, pass a NULL color to GimpCurveView, which is then interpreted
as the theme's text color (the curve's background is the theme's text
background color). We still hardcode pure red, green and blue for the
other curves.
2014-09-21 12:32:23 +02:00
Michael Natterer 0cceaff828 Bug 721482 - Make language codes relocatable
Manually picked one line of ef0ef921b8
that makes parse_iso_codes() find the iso-codes package in the bundle
on OS X.
2014-09-17 12:47:21 +02:00
Michael Natterer 7b69b3b60e Bug 733390 - Picking a color should also change the active color...
...in the opened Color Modify window

Connect to the toolbox' context's foreground-changed and
background-changed signals and update the color dialog.
2014-09-16 23:56:50 +02:00
Jehan b9a9169656 app: update action search to use glib API.
I now normalize with g_str_tokenize_and_fold() which uses standard
Unicode normalization.
I don't use g_str_match_string() directly though, because I want to
run additional checks to order the results by relevance. For instance
I still want actions whose labels starts with the search string to be
at the top, and results with same order as search token before those
with a different order. Then results with match in the tooltip. Finally
I also returns results with partial match in the label, and the rest in
the tooltip, though at the bottom of the list.
Other than that, this returns the same results as g_str_match_string()
with a similar algorithm. In particular now we only match the start of
tokens (a substring in the middle of a token won't match anymore).
I kept the small 2-character trick matching the first letters of the
first 2 words of the label, but I got rid of the fuzzy search (that none
really found ever relevant anyway).
2014-09-16 04:03:43 +02:00
Michael Natterer 14978bfe5d Simplify calls to g_output_stream_write_all()
It returns TRUE only if all bytes were written, so there is no need to
get and check the bytes_written return value.
2014-09-07 20:30:14 +02:00
Jehan cd0b2f61c0 app: g_file_new_for_uri() return object not freed with g_object_unref().
Non-freed GFile object when saving or exporting the first time, i.e.
with default extensions.
2014-08-19 01:38:13 +02:00
Mikael Magnusson 16637900b6 app: initialize variable 2014-08-16 02:54:57 +02:00
Michael Natterer dae366bb6e configure.ac, *: require GLib 2.40.0
Remove gimp_output_stream_[v]printf() and use the new functions from
GLib instead. Use memmove() instead of the deprecated g_memmove().
2014-08-12 15:30:19 +02:00
Michael Natterer c077fb8dad app: add --verbose output when parsing and writing the action history 2014-07-29 18:13:57 +02:00
Michael Natterer 85668c8e69 app: filename -> GFile in parse_iso_codes() 2014-07-29 16:32:29 +02:00
Michael Natterer e84ef0d7cc app: use GIO to find the locally installed user manual 2014-07-29 13:04:16 +02:00
Michael Natterer 50ca9068da app: more cleanup in the action history code, mostly general consistency 2014-07-29 12:28:18 +02:00
Michael Natterer b200345a98 app: change GimpImageMapTool::get_settings_ui()'s "default_folder" to GFile 2014-07-29 11:56:49 +02:00
Michael Natterer b81f46185e app: port the action history to GimpConfigWriter, GimpScanner and to GIO
which means the file format has changed, but it will silently ignore
the parse error when encountering the old format.
2014-07-28 16:44:44 +02:00
Michael Natterer 57cecb54fb app: some serious cleanup in gimpaction-history.c, still a lot to do 2014-07-28 11:22:20 +02:00
Michael Natterer b03d69dd40 libgimpbase, app: add variants of gimp_$foo_directory() which return GFiles
gimp_directory_file(), gimp_data_directory_file() etc. The new
functions take a variable list of path elements to the file,
the list has to be NULL-terminated. Remove the newly added
gimp_personal_rc_gfile(). Start using the new functions in app/.
2014-07-28 02:04:01 +02:00
Michael Natterer 57e6b22b9d app, plug-ins: remove file-uri completely
and enable the new file-remote code in app unconditionally.
2014-07-23 21:37:13 +02:00
Michael Natterer cf159ac68a app: get rid of some GtkObject variables, makes the gtk3-port diff smaller 2014-07-21 02:34:39 +02:00
Michael Natterer 328e4eff18 app: add gimp_progress_set_text_literal()
and use it instead of set_text (progress, "%s", literal_message);
2014-07-20 23:32:19 +02:00
Michael Natterer a6601d563b app: some GimpProgress cleanup
- change start() and set_text() to use "format" and "..." instead of
  "message", allowing to format progress messages in place
- s/cancelable/cancellable/
- move "cancellable" to be the second argument of start()
2014-07-12 23:45:20 +02:00
Michael Natterer 944ba8131b app: honor GIMP_HANDLE_REMOTE_FILES when setting local-only in GimpFileDialog 2014-07-11 09:11:14 +02:00
Michael Natterer dc842d481b app: use gimp_widget_flush_expose() in GimpProgressBox
instead of flushing the widget manually.
2014-07-11 00:40:56 +02:00
Michael Natterer 39f7401703 app: change Gimp->default_folder from being a path to a GFile
Also fix GimpFileDialog to actually start with that folder, and not in
its parent folder.
2014-07-09 20:12:05 +02:00
Michael Natterer 43e9a79ef9 app: gimp_thumb_box_take_file() must accept a NULL file 2014-07-08 21:40:17 +02:00
Michael Natterer d4b35785b5 app: more URI -> GFile in GimpFileDialog 2014-07-08 01:41:45 +02:00
Michael Natterer 69686fe446 app: port GimpThumbBox from URI to GFile 2014-07-08 00:58:42 +02:00
Michael Natterer c656c41d88 app: more URI -> GFile in gimpdnd-xds.c 2014-07-08 00:31:22 +02:00
Michael Natterer d0a6d95dad app: remove a bunch of file-utils.h includes 2014-07-08 00:23:34 +02:00
Michael Natterer 7f966cad39 app: keep the image's "Untitled" string around as GFile too 2014-07-08 00:15:41 +02:00
Michael Natterer ff6ea69569 app: change the image's various URIs to GFiles
which gets rid of a lot of temporarily added GFile code again because
we don't need to convert between URI and GFile any longer.
2014-07-07 23:58:11 +02:00
Michael Natterer 0f8d84d5e9 app: port all file_open() and file_save() functions to GFile 2014-07-07 23:58:11 +02:00
Michael Natterer 0753b5a137 app: port gimp_text_buffer_load() and _save() to GIO 2014-07-03 12:57:18 +02:00
Michael Natterer 9f0e27307e app: change filename in gimp_text_buffer_load() and _save() to GFile 2014-07-02 15:10:53 +02:00
Michael Natterer c88800e840 app: add gimp-priorities.h and keep the most important priorities there
also add comments with all predefined priorities as documentation.
2014-07-02 04:47:24 +02:00
Michael Natterer 98e7ec090b app: use the new gimp_personal_rc_gfile() in lots of places
and pass the GFile to the newly added GFile-based GimpConfig,
GimpScanner etc. functions. This is starting to make sense now...
2014-07-01 20:02:45 +02:00
Michael Natterer 8c8135a881 app: port GimpImageMapTool's settings API from filename to GFile 2014-07-01 15:13:02 +02:00
Michael Natterer 6fd8a362df app: s/gimp_hsv_to_rgb4/gimp_hsv_to_rgb/ in GimpCircle 2014-06-30 17:30:05 +02:00
Michael Natterer a665c30823 app: gimp_spin_button_new() -> gtk_spin_button_new() 2014-06-21 22:39:37 +02:00
Michael Natterer 5e2d91dc0a app: don't leak the GtkTextBuffers of Gegl multiline text properties 2014-06-20 08:59:42 +02:00
Michael Natterer 40cbbf8faf app: argh, so much for less stupid 2014-06-19 19:00:23 +02:00
Michael Natterer 5a4e9d0e03 app: make the new rounding code in GimpSpinScale less totally stupid 2014-06-19 18:56:43 +02:00
Michael Natterer be80f49018 app: round mouse-entered GimpSpinScale values to the spinbutton's precision
So the adjustment's value is always what is shown (and can be entered
manually) in the widget. This way a GimpSpinScale will never change
its adjustment on focus-out, and not cause whatever unexpected updates
of its model and whatever is connected to it (like changing the
properties and thus unvalidating the caches of a Gegl graph).
2014-06-19 15:49:27 +02:00
Michael Natterer 77a515dd0f app, libgimpwidgets: don't set unchanged object properties again
gimp_prop_adjustment_callback(): compare the property's current value
before setting it.
2014-06-19 02:01:10 +02:00
Michael Natterer b6052dc568 app: fix some glitches in GimpPickablePopup
- connect double click on the list of channels
- actually allow channels to be picked
- repopulate the channel view when the image changes

This must have been a late night hack...
2014-06-15 18:30:47 +02:00
Michael Natterer c071959eb1 app: remove ", 0" left over from removing a MAX (foo, 0) 2014-06-09 03:33:48 +02:00
Michael Natterer 17bd4d2c28 app: make GimpOverlayDialog's title and icon-name settable after construction 2014-06-09 01:42:09 +02:00
Michael Natterer f348d1d321 app: add a title bar and close button to GimpOverlayDialog
as first step in a bigger tool dialog cleanup.
2014-06-09 00:19:23 +02:00
Michael Natterer f904088caf app: allow to select channels in GimpPickablePopup 2014-06-07 00:25:51 +02:00
Michael Natterer 2ef565b58f app: implement picking any image or layer in GimpPickableButton/Popup 2014-06-06 22:48:36 +02:00
Michael Natterer c9fc83a932 app: make gimp_container_view_remove_container() more robust
Don't special case on view_iface->model_is_tree and always run
gimp_container_view_remove_foreach(), also on the view's toplevel
container.  Run gimp_container_view_clear_items() anyway on the
toplevel as an optimization, but with a big comment. This makes all
views (on list *and* tree models) behave the same way, and makes
view_iface->model_is_tree practically obsolete, will remove it later.
2014-06-06 22:48:35 +02:00