Martin Nordholts
80beaa6b5a
Bug 612931 - Moving individual layer in layer group not possible with Move Tool in 'pick a layer' mode
...
When using GimpPickable::get_opacity_at(), don't consider group layers
as having content.
2011-08-20 17:57:12 +02:00
Eric Grivel
da37e9ff3e
Bug 596410 - gimp-image-get-filename returns NULL for imported files
...
Make gimp_image_get_uri() and gimp_image_get_filename() behave as in
the GIMP 2.6 days. Add new functions gimp_image_get_xcf_uri(),
gimp_image_get_exported_uri() and gimp_image_get_imported_uri().
2011-08-12 21:15:16 +02:00
Alexia Death
c6f0a66de8
app: fix wheel input weirdness hack - corrected in driver
2011-08-11 17:21:44 +03:00
Massimo Valentini
d697c0bdb9
app/core: do not offset cairo_path_data_t's headers
...
Stroking a rectangular selection doesn't work, for example.
2011-07-19 13:00:07 +02:00
Martin Nordholts
07556242b0
app: Make positioning of new dockables depend on window mode
...
Add GimpWindowingStrategy with create_dockable_dialog() and use it in
dialogs_create_dockable_cmd_callback(). There are two implementations:
GimpSingleWindowStrategy and GimpMultiWindowStrategy. Depending on the
window mode, we want new dockables to appear in different places when
created. In single-window mode, they should appear inside the single
image window. In multi-window mode, a new dock window is created.
2011-07-03 21:20:36 +02:00
Michael Natterer
e0e2befd17
Bug 651462 - On first attempt to save tool preset, stops with an error
...
Create the "tool-presets" directory in gimp-user-install.
2011-06-23 19:21:08 +02:00
Michael Natterer
dd0042f76b
app: implement error handling in gimp_imagefile_icon_callback()
...
Particularly, don't crash if the async operation got cancelled in
dispose().
2011-06-19 23:31:29 +02:00
Michael Natterer
ab607a0adc
app: add gimp_imagegile_get_gicon() which uses async API and can't block
...
and use it in gimp_view_renderer_imagefile_get_icon().
2011-06-19 23:06:33 +02:00
Michael Natterer
3c28ed4303
app: speed up GimpTagCache saving
...
Use g_list_prepend() and g_list_reverse() instead of g_list_append().
2011-06-16 20:22:36 +02:00
Michael Natterer
ea27c7bc83
app: add the MIN4() and MAX4() macros to gimp-utils.h
...
instead of having them in 5 .c files.
2011-06-04 17:16:21 +02:00
Michael Natterer
cebd34293c
app: don't populate the tool preset factory with data in no-interface mode
...
but keep the factory around anyway so the code stays simple.
2011-05-17 14:54:40 +02:00
Martin Nordholts
c4097d4ff4
app: void * -> gpointer in GimpIdTable
2011-05-04 23:14:21 +02:00
Martin Nordholts
0d529f7956
app: Use GimpIdTable
2011-05-04 22:54:35 +02:00
Martin Nordholts
9fefa22efe
app: Add GimpIdTable utility class
...
Not written in Vala... ;)
2011-05-04 22:54:35 +02:00
Michael Natterer
c35ff719a7
app/libgimp*: remove stuff found by -Wunused-but-set-variable
2011-05-01 23:23:19 +02:00
Michael Natterer
cc47b2a600
libgimpwidgets/color: move the cairo color utility functions to libgimpcolor
...
Add CAIRO_CFLAGS to a lot of Makefiles to make this possible, and
because they pull in cairo via the libgimp headers.
2011-04-28 15:50:39 +02:00
Michael Natterer
2af539020b
app: don't include individual files from libgimp*
2011-04-28 14:23:33 +02:00
Michael Natterer
92ce59e1c1
app: gimp_layer_new_from_pixbuf(): refuse to create layers of wrong type
2011-04-28 01:27:04 +02:00
Martin Nordholts
e75cfd044a
app: Sort core/.gitignore
2011-04-25 16:08:15 +02:00
Michael Natterer
3fbbb9b333
app: GimpMotionBuffer API cleanup and refactoring
...
- start_stroke()/finih_stroke() -> begin_stroke()/end_stroke()
- process_event_queue() -> process_stroke()
- GimpMotionBuffer::motion() -> GimpMotionBuffer::stroke()
- add GimpMotionBuffer::hover() and process_hover()
- remove push_event_history() and pop_event_queue() from API
The thing works like this:
- Motion events are continuously fed into the buffer using motion_event()
- begin_stroke()/end_stroke() correspond to BUTTON_PRESS/BUTTON_RELEASE,
the period between them is a "stroke"
- If motion_event() returns TRUE, we request "stroke" signals by calling
process_stroke() and "hover" signals by calling process_hover()
2011-04-18 11:08:24 +02:00
Michael Natterer
99f5dc9f18
app: move GimpCagePoint from core-types.h to gegl/
...
and remove the orphaned GimpCagePreview typedef from gimp-gegl-types.h.
2011-04-18 00:09:06 +02:00
Michael Natterer
6a1b93be1c
app: don't include "libgimpmath/gimpvectors.h" in any header
...
It's types are generally known because it's already included
in core-types.h.
2011-04-17 23:44:45 +02:00
Michael Natterer
334e4c5d71
app: move process_event_queue() and flush_event_queue() to GimpMotionBuffer
...
and emit the buffer's "motion" signal when a motion is supposed
to happen. In GimpDisplayShell, connect to GimpMotionBuffer::motion()
and call the tool.
2011-04-17 21:46:29 +02:00
Michael Natterer
ede0d26b91
app: gimp_data_create_filename(): avoid evil characters in the filename
...
such as forbidden ones on various platforms. List collected on #gimp
with a fair portion of paranoia involved.
2011-04-13 21:25:10 +02:00
Michael Natterer
846cc27207
app: implement begin_use()/end_use() in GimpBrushPipe
...
and call it on all the pipe's sub-brushes
2011-04-12 13:59:39 +02:00
Michael Natterer
5a4a741936
app: virtualize GimpBrush::begin_use() and ::end_use()
2011-04-12 13:59:04 +02:00
Michael Natterer
391c74899c
app: rename gimp_brush_start_use() to gimp_brush_begin_use()
2011-04-12 09:06:22 +02:00
Michael Natterer
f7646fd171
app: gimpdrawable-stroke.c: don't try to fill a dot or a line
2011-04-10 22:43:03 +02:00
Michael Natterer
0f91a11b75
app: use GimpBezierDesc in gimp_channel_select_vectors() too
2011-04-10 22:42:39 +02:00
Michael Natterer
f316269f71
app: stroke vectors by gimp_vectors_get_bezier(); gimp_scan_convert_add_bezier()
2011-04-10 19:40:40 +02:00
Michael Natterer
bb9efebbaf
app: use the new GimpBezierDesc APIs for stroking a selection
...
instead of iterating the BoundSegs menually.
2011-04-10 19:19:43 +02:00
Michael Natterer
8c3698eccc
app: add gimp_bezier_desc_translate() which translates all points
...
Also add back an internal "gboolean closed" parameter which I removed
when copying the function, it might be useful later and doesn't hurt.
2011-04-10 19:16:31 +02:00
Michael Natterer
1a4ffb3d21
app: add gimp_scan_convert_add_bezier() which adds a GimpBezierDesc
...
Also remove unused member num_nodes.
2011-04-10 19:07:04 +02:00
Michael Natterer
3ab59f1bff
app: don't try to add a NULL boundary to GimpBrush's boundary cache
2011-04-08 21:22:55 +02:00
Michael Natterer
6e65d1a392
app: coding styls cleanup in core/gimpbrush-transform.[ch]
2011-04-08 21:18:39 +02:00
Mikael Magnusson
71541db52d
app: Make scale timer output depend on GIMP_UNSTABLE
2011-04-08 14:04:36 +02:00
Michael Natterer
a83876040d
app: make GimpBrushCache debug spew depend on GIMP_LOG=brush-cache
2011-04-06 09:15:50 +02:00
Michael Natterer
21b8007b29
app: add GimpBrushCache which stores brush stuff based on transform parameters
...
such as masks and outlines. The cache is currently very stupid and
only cacheds the last transformed object. Add caches to GimpBrush for
its mask, its pixmap and its boundary, and remove the same caches and
a ton of members from GimpBrushCore. This involves adding lots of
const qualifiers because GimpBrush returns const pointers now for
trasnformed stuff.
2011-04-05 22:15:30 +02:00
Michael Natterer
e2226e9933
app: add gimp_brush_start_use() and gimp_brush_end_use()
...
and use them in GimpBrushCore when setting/unsetting a brush. They
will be used for managing some caches inside GimpBrush.
2011-04-05 19:18:26 +02:00
Michael Natterer
c8c1b4ece6
app: remove gimp_brush_spacing_changed(), it should never have been public
2011-04-05 19:09:56 +02:00
Michael Natterer
054957a1ee
app: s/nbrushes/n_brushes/ in GimpBrushPipe
2011-04-05 15:16:06 +02:00
Michael Natterer
7db7cc111c
app: clean up gimpbrush-boundary.c a bit and prepare for outline approximation
2011-04-05 14:52:44 +02:00
Michael Natterer
eda5cdf666
app: add gimp_bezier_desc_new_from_bound_segs() to GimpBezierDesc
...
and remove that code from gimpbrush-boundary.c
2011-04-04 22:06:32 +02:00
Michael Natterer
cf52b10e9b
app: implement gimp_brush_transform_boundary()
...
There is infinite room for optimization, but the API and pixel-perfect
functionality is there, which is step one.
2011-04-04 21:11:39 +02:00
Michael Natterer
9e1db5dc92
app: add empty stub gimp_brush_transform_boundary()
...
as a separate commit because it reindents the entire header.
2011-04-04 19:21:25 +02:00
Michael Natterer
ac9b487795
app: fix GimpBrush transform parameter names and coding style
2011-04-04 18:57:48 +02:00
Michael Natterer
8b4870dad7
app: move GimpBezierDesc from app/vectors/ to app/core/
2011-04-04 18:40:12 +02:00
Michael Natterer
6d73eead54
app: emit "notify::tool-options" when GimpToolPreset's options change
...
Fixes the "dirty" state and thus saving of modified presets.
2011-04-03 19:34:31 +02:00
Alexia Death
8bbc475eab
Revert "app: initialize GimpToolPreset's tool options from the user context"
...
This reverts commit b458b1b5c0
.
This hides preset errors form users and creates confusion in case
of presets with bugs distributed among users. It also tries to set
resources from user context when that context doesnt exist yet.
2011-04-03 12:34:52 +03:00
Michael Natterer
b458b1b5c0
app: initialize GimpToolPreset's tool options from the user context
...
so that if deserializing wants to set an unknown brush, pattern etc.,
the previously set default value will be used instead.
2011-04-03 00:47:41 +02:00