Michael Natterer
aaee95d545
app: experimentally color the background curves
2011-02-09 01:07:48 +01:00
Michael Natterer
6c252921af
app: handle the inputs generically in GimpDynamicsOutputEditor
...
instead of having explicit code for each input in all functions.
2011-02-09 00:27:25 +01:00
Michael Natterer
5a28791cfb
app: connect to the background curves' "dirty" signal in GimpCurveView
...
and make sure curves are not added twice to the background list.
Also warn when trying to remove a non-existent background curve.
2011-02-09 00:24:43 +01:00
Michael Natterer
2ed861fb8d
Bug 638795 - Brush Dynamics Curve editor stutters
...
Update the toggles in the treeview only if a boolean property of the
output changes, and not on *each* output change which includes each
tiny curve editing.
Also fix formatting in the whole file.
2011-02-08 22:09:52 +01:00
Alexia Death
9e3aa5c1d2
app: Clean up event eval
2011-02-08 22:10:34 +02:00
Alexia Death
f0f47e8d47
app: Remove a bit of code from event eval
2011-02-08 21:21:16 +02:00
Michael Natterer
e3b5c55ca2
Bug 597117 - impossible to drop a group as a sibling inside a group
...
Properly distinguish between dropping after a group and into it, by
having three drop areas on a collapsed row. Still handle expanded rows
as before, but indicate dropping into visually just as on a collapsed
row.
2011-02-08 09:35:38 +01:00
Michael Natterer
3873aa5cac
app: gimp_data_duplicate() reset name, filename, writable and deletable
...
to default values on the copy, so the duplicated data behaves as
documented, even if a subclass copied too much. Makes duplicated
dynamics work.
2011-02-07 19:38:23 +01:00
Michael Natterer
708555a378
app: keep a reference to channels and vectors around removing them
...
because we temporarily need them after removal from their item trees,
and bad things can happen if they are not kept alive by the undo stack
(like when undo is disabled while loading an image).
2011-02-07 11:35:58 +01:00
Barak Itkin
18b9ba1c87
app: Add some comment documentation to code
2011-02-07 03:29:23 +02:00
Michael Natterer
a12af14a59
app: don't forget to free the layer's new name
2011-02-07 00:52:34 +01:00
Michael Natterer
0d2de3e7c1
app: don't gimp_object_set_name() on the image's layer after opening
...
Instead, use gimp_item_rename(). Also change the name before creating
a display for the image, to avoid confusing the undo dialog.
2011-02-07 00:50:54 +01:00
Michael Natterer
ef28d7fee6
app: don't gimp_object_set_name() on an item that's attached to an image
...
because it bypasses the unique name logic used by gimp_item_rename().
2011-02-06 23:56:24 +01:00
peter sikking, m+mi works
6db80c765d
remove garbage I injected
2011-02-06 20:21:20 +01:00
peter sikking, m+mi works
7cb5c67bc8
removing references to ps-menurc
2011-02-06 19:57:59 +01:00
Michael Natterer
92f130fbc3
app: also run device history coords through the axis mapping curve function
2011-02-06 13:26:25 +01:00
Michael Natterer
8d8c6bb9ea
configure: build with DISABLE_DEPRECATED also for GTK+ 2.24
...
Bump the "too new" test to GTK+ 2.26 which will never be released, but
this way we can keep the configure check around for later reuse after
the switch to GTK+ 3.x. Also bump the "too new" GLib and Pango
versions to really future versions so we early-catch deprecations
in the current development cycle.
2011-02-06 12:50:14 +01:00
Michael Natterer
f4af9b549e
Globally switch to saying "window_id" instead of just "window"
...
when dealing with native window handles. Also get rid of using
GdkNativeWindow and simply consistently use guint32 all over the
place. This is more obvious and consistent and keeps the diff to the
gtk3-port branch smaller.
2011-02-06 12:07:55 +01:00
Michael Natterer
16b020fc42
app: clean up paint core cleanup
2011-02-06 11:22:23 +01:00
Michael Natterer
012eb1dd93
app: zero the reallocated keys and axes arrays in GimpDeviceInfo
2011-02-06 11:20:07 +01:00
Michael Natterer
e309d3cdf8
app: check that the model is not NULL before using it in GimpContainerComboBox
...
to be safe against GimpContainerView API being called during widget
destruction.
2011-02-06 11:20:07 +01:00
Michael Natterer
11ac0296b9
app: ref/unref the context in gimp_image_editor_set_context()
2011-02-06 11:20:07 +01:00
Michael Natterer
1931cca5ab
libgimp: deprecate the entire old gimp_foo_select() API
...
It's now completely replaced by the new gimp_image_select_foo() functions.
2011-02-06 11:20:07 +01:00
Michael Natterer
bc5e0a79ab
libgimp: remove "select-transparent" parameters from the new selection API
...
and use the sample-transparent setting from GimpPDBContext instead.
2011-02-06 11:20:07 +01:00
Michael Natterer
d3a291d2df
pdb: add "sample-transparent" as GimpPDBContext property
...
and add PDB API to get/set it.
2011-02-06 11:20:07 +01:00
Michael Natterer
c15488d10a
libgimp: remove "threshold" parameters from the new selection API
...
and use the sample-threshold setting from GimpPDBContext instead.
2011-02-06 11:20:07 +01:00
Michael Natterer
2e16d932ec
pdb: add "sample-threshold" as GimpPDBContext property
...
and add PDB API to get/set it.
2011-02-06 11:20:07 +01:00
Michael Natterer
f76bcab221
app: move "default-threshold" from GimpGuiConfig to GimpCoreConfig
2011-02-06 11:20:06 +01:00
Alexia Death
1cf5295d2e
app: Fix couple of bugs in smooth code
2011-02-06 00:17:51 +02:00
Michael Natterer
a116681982
app: move all GimpGroupLayer members to a private struct
2011-02-03 22:30:22 +01:00
Michael Natterer
f8e8952147
app: clean up dynamics duplicate implementation
2011-02-03 19:47:52 +01:00
Martin Nordholts
93f63335dc
app: End core/gimpdynamics.c with newline
...
Fix compiler warning.
2011-02-03 08:04:26 +01:00
Martin Nordholts
3e0d0b862a
app/tests: Add test-save-and-export
...
Add some regression tests for how the URIs associated with an image is
handled during, save, import etc.
2011-02-02 22:32:30 +01:00
Martin Nordholts
6c6cf7a881
app: Move import and export URI updates to file_save()
...
We should handle import-URI and export-URI at a lower level so
e.g. the import URI is reset when gimp_dnd_xds_save_image() is
used.
This change also simplifies unit testing.
2011-02-02 22:31:27 +01:00
Martin Nordholts
1702822720
app: Fix copy-paste error in file-save-dialog.c
...
Fix what must have been a copy-paste error, we can not want to set
GIMP_FILE_SAVE_LAST_URI_KEY after we have exported.
2011-02-02 22:31:27 +01:00
Petr Ovtchenkov
b370a0ebe6
app: Support building with GTK 2.24 for gimpscalecombobox.h
2011-02-02 22:29:37 +01:00
Martin Nordholts
3728f6f7d7
app/tests: Add gimp_test_utils_create_image_from_dalog()
2011-02-02 22:29:24 +01:00
Martin Nordholts
6ea36f3383
app: Use gimp_image_set_uri()
...
I forgot to do this...
2011-02-02 22:28:47 +01:00
Martin Nordholts
366cddc856
app: gimp_image_get/set_imported/exported/save_a_copy_uri()
...
Add more proper core API for GimpImage URI management.
2011-02-02 22:28:46 +01:00
Martin Nordholts
8d61a61c0e
app: Remove GIMP_FILE_EXPORT_TO_URI_KEY
...
Remove GIMP_FILE_EXPORT_TO_URI_KEY which is always identical to
GIMP_FILE_EXPORT_URI_KEY.
2011-02-02 22:28:46 +01:00
Martin Nordholts
d449317501
app: Add and use gimp_image_get_string_untitled()
2011-02-02 22:28:46 +01:00
Alexia Death
60a77f6db2
app: Fix and enable duplicate for dynamics
2011-02-02 21:48:10 +02:00
Michael Natterer
6a08376d49
app: add new virtual function GimpItem::unset_removed()
...
and implement it in GimpLayer to unset the removed flag on the layer
mask. Remove layer mask special casing from gimp_image_add_layer().
Make sure that all an item's children get their removed flag unset in
gimp_item_unset_removed().
2011-02-02 19:42:29 +01:00
Martin Nordholts
a69cd7467d
app/tests: Update gimpdir/tags.xml
...
The order is changed after tests are run, make the change already in
the version controlled version.
2011-02-02 08:34:39 +01:00
Alexia Death
75593c3fea
app: Fix missing outline with aspect 0.0
2011-02-02 01:04:24 +02:00
Alexia Death
418632916a
app: Fix outline offset
2011-02-02 00:58:09 +02:00
Alexia Death
6a89db0f53
app: Minor aspect ratio fixes
2011-02-02 00:33:08 +02:00
Michael Natterer
40e11d7ad1
app: pass the image to g_object_new() in gimp_text_layer_from_layer()
2011-02-01 14:15:46 +01:00
Michael Natterer
eacd80446d
app: finally get rid of gimp_item_configure() and drawable_configure()
...
and turn them into gimp_item_new() and gimp_drawable_new()
2011-02-01 12:47:24 +01:00
Michael Natterer
ccd3beb8ff
app: don't use gimp_drawable_configure() in gimp_drawable_duplicate()
...
Instead, copy over the needed drawable members manually.
2011-02-01 10:46:53 +01:00
Michael Natterer
5c8ec234cc
app: add "image" as construct property to GimpItem
...
- The image *must* now be passed to g_object_new() when creating items
- Remove the "image" parameter from all item configure() functions
- Set the item's ID in gimp_item_set_image() if it has none yet
2011-02-01 10:28:10 +01:00
Michael Natterer
12e531f512
app: gimp_item_replace_item(): if the item has an ID, remove it from the item hash
2011-01-31 23:53:59 +01:00
Michael Natterer
e893e3130c
app: don't leak the item's old parasite list in gimp_item_replace_item()
2011-01-31 23:52:41 +01:00
Michael Natterer
ad88eb55a2
app: add accessors for GimpItem::parasites and move it to private
2011-01-31 23:51:18 +01:00
Michael Natterer
af160141db
app: add gimp_item_unset_removed() and move item->removed to private
2011-01-30 21:57:45 +01:00
Michael Natterer
fd655490e8
app: move most of GimpItem's members to a private struct
2011-01-30 21:49:51 +01:00
Michael Natterer
f63a8fcfe6
app: remove some leftover dead code
...
probably from before some text layer saving refactoring.
2011-01-30 20:43:01 +01:00
Michael Natterer
90419e0672
app: add "gboolean push_undo" to gimp_item_parasite_attach/detach()
...
and use this API instead of manually fiddling with the item's
GimpParasiteList.
2011-01-30 20:40:43 +01:00
Michael Natterer
96efc7ea1c
app: reset an item's "removed" state as it is added to its parent container
...
and not "manually" from the resp. undo functions.
2011-01-30 19:36:27 +01:00
Michael Natterer
0428be2944
app: add gimp_item_replace_item() which is a bad hack and documented as such
...
in order to get rid of fiddling with GimpItem internals inside
gimptextlayer-xcf.c
2011-01-30 19:26:32 +01:00
Michael Natterer
cfecdc8b70
app: use accessors instead of using GimpItem members directly
2011-01-30 18:58:05 +01:00
Michael Natterer
70f88c4320
app: don't update the highlight when the rectangle tool is resumed
...
It causes an infinite invalidation loop.
2011-01-27 21:36:58 +01:00
Michael Natterer
1205a6aedd
pdb: add "sample-criterion" as property to the PDB context
...
See commit below
2011-01-27 21:26:16 +01:00
Michael Natterer
bb6083a1eb
pdb: add "sample-merged" as property to the PDB context
...
- add API to get/set the new state
- remove sample-merged parameters from the new gimp_image_select_foo() API
- update procedure documentation
2011-01-27 21:26:16 +01:00
Martin Nordholts
ab5bd03a9c
Show maintainers after creators in About-dialog
...
It makes sense to show maintainers after creators in the About-dialog,
do that.
2011-01-27 18:52:00 +01:00
Martin Nordholts
285a42eef3
app: Calculate number of creators in about dialog
2011-01-27 18:52:00 +01:00
Martin Nordholts
480d6e0cf2
app: Add and use gimp_image_get_uri()
2011-01-26 08:19:39 +01:00
Martin Nordholts
ac773489e4
app: gimp_image_get_uri() -> gimp_image_get_uri_or_untitled()
2011-01-26 07:55:14 +01:00
Alexia Death
452819143a
app: half-sane aspect ratio implementation
2011-01-25 23:28:02 +02:00
Omari Stephens
5cae0bf65c
Bug 630748 - display filters do not work
...
Create and use Cairo-compatible API for display filters. Also
includes logic changes to the display filters to deal with cairo's
ARGB32 pre-multiplied buffer format.
2011-01-25 20:24:42 +01:00
Michael Natterer
47eaecdc9d
libgimp: deprecate a bunch of old selection API
...
namely ellipse_select(), free_select(), rect_select() and
round_rect_select() because they are fully replaced by the new
gimp_image_select_foo() functions. Will deprecate the rest as soon as
I have figured how to put the parameter overkill of the remaining
functions into context properties.
2011-01-25 19:28:30 +01:00
Michael Natterer
9703bed2ef
libgimp: reorder the parameters of the new and unused gimp-image-select API
...
Make the common "image" and "operation" parameters come first.
2011-01-24 14:53:42 +01:00
Martin Nordholts
3c95ed31e0
Fix compiler warning about missing newline
2011-01-24 08:10:01 +01:00
Alexia Death
5f9bd0c044
app: add reset buttons to all brush settings sliders
2011-01-23 18:17:25 +02:00
Alexia Death
e41b5699dd
app: remove some dead code in imagehoses
2011-01-23 12:24:33 +02:00
Michael Natterer
33479c1086
app: use gegl_node_has_pad() instead of gegl_node_get_pad()
2011-01-22 23:54:25 +01:00
Michael Natterer
3e38686693
app: also bump the babl and gegl versions in sanity.c
2011-01-22 23:53:38 +01:00
Michael Natterer
27179d6219
app: don't duplicate code when setting GimpSpinScale's cursor
2011-01-22 23:23:02 +01:00
Alexia Death
49ed64c69e
app: remove dupilcate angle and velocity calculation from imagehoses
2011-01-23 00:09:56 +02:00
Michael Muré
7056d38681
cagetool: implement rubber band selection for edit mode, if the cage is closed
2011-01-22 15:38:35 +01:00
Michael Muré
aa98319f1b
cage tool: implement options_notify to allow switching back to edit mode
...
and update fill option
2011-01-22 14:17:28 +01:00
Michael Muré
d80c9474cb
cagetool: fix regression causing non affine-invariant transformation
...
+ update in print_cage debug function
2011-01-22 14:17:28 +01:00
Michael Muré
3f581c37b6
cagetool: fix a drawing bug when adding point to the cage while moving cursor
2011-01-22 14:17:28 +01:00
Michael Muré
f379f3c467
fix rubber band selection for layer with offset
2011-01-22 14:17:28 +01:00
Michael Muré
e7d219d387
Cage tool: add rubber band selection for deform mode
2011-01-22 14:17:28 +01:00
Michael Muré
dd28e1fe02
Implementation of the multi-selection in the cage tool and refactoring that come with.
...
This editing mode should work like the path tool.
The backup of the cages point for undo is replaced by a displacement that affect
all the selected point in CageConfig with commit/reset displacement.
2011-01-22 14:17:28 +01:00
Michael Muré
006c7ab9f4
refactor of the GimpCageConfig with a custom GimpCagePoint data structure
2011-01-22 14:17:28 +01:00
Michael Muré
23193cba2f
Rewrite of the cage tool as a state machine
2011-01-22 14:17:28 +01:00
Michael Natterer
d155be622d
libgimpwidgets: fix ruler motion event tracking on offscreen overlays
...
Add a list of "track widgets" to GimpRuler and connect to their
motion-notify-event. Correctly translate the motion event's x/y to the
ruler's coordinate system when updating the marker.
2011-01-20 20:26:35 +01:00
Michael Natterer
e27b5f6da2
app: remove unused variable in gimp_channel_tree_view_constructed()
2011-01-20 20:26:35 +01:00
Michael Natterer
4186d0114f
app: add comment to improve readability
2011-01-20 20:26:34 +01:00
Michael Natterer
550669962b
622863 - Input Devices list is not resizeable
...
Derive from GtkPaned instead of GtkBox, and change the handle size to
12px via gtkrc so spacing rules are followed.
2011-01-20 20:26:34 +01:00
Michael Natterer
eb04265ce3
app: gimp_brush_core_clamp_brush_scale() -> gimp_brush_clamp_scale()
2011-01-17 23:20:49 +01:00
Michael Natterer
202124c438
app: implement GObject::constructed() instead of ::constructor()
2011-01-14 09:38:46 +01:00
Øyvind Kolås
cad3778eea
gegl-tool: remove render ops from blacklist
...
This allows fractal-explorer, checkerboard and the newly added grid op to
render.
2011-01-13 23:02:50 +00:00
Michael Natterer
503a9cebce
app: implement GObject::constructed() instead of ::constructor()
2011-01-13 10:06:07 +01:00
Michael Natterer
c1b3575648
app: implement GObject::constructed() instead of ::constructor()
2011-01-12 23:06:03 +01:00
Michael Natterer
5e4eee4653
app: implement GObject::constructed() instead of ::constructor()
2011-01-12 22:53:58 +01:00
Michael Natterer
229007106e
app: don't pass the GtkStyle to gimp_curve_view_draw_grid()
...
Instead, set the cairo color in expose() before calling
draw_grid(). Also move a few lines of code around to make
the GTK3 port simpler.
2011-01-11 15:38:23 +01:00
Alexia Death
803df9b58a
app: Make smooth paint core internal
2011-01-09 22:59:01 +02:00
Michael Natterer
292ac61056
Bug 638042 - Undo/Redo name for toggling "Disable Layer Mask" is incorrect
...
Apply modified patch from Andrew Church which says "Enable" or
"Disable" and not always "Apply" in the undo description.
2011-01-09 21:44:37 +01:00
Michael Natterer
70574877d3
app: use GimpSpinScale for the new smoothing options
...
This drops the log scale, but the new widget will get a better
solution for this anyway. Also did some cleanup.
2011-01-09 00:21:10 +01:00
Michael Natterer
c29aefccc2
app: fix coding style in the new smoothing code
2011-01-08 22:18:56 +01:00
Alexia Death
339deed1da
app: Clean up smooth so it would be acceptable for master
2011-01-08 22:19:27 +02:00
Alexia Death
082aa272a4
app: G-Pen algorithm for GIMP trunk. Now smoothing function works for Ink and Brush tools.
...
Rebased/fixed to go on top of current master. Next commit will add cleanup.
Had to change author tag because gnome is not accepting random stuff
in email fields. Original author is tarai, from gimp painter project
in sourceforge.
2011-01-08 22:17:26 +02:00
Michael Natterer
4aa36044f7
app: no need to set GTK_UPDATE_DELAYED on the levels scale
...
because we idle preview anyway in GimpImageMap.
2011-01-07 19:33:45 +01:00
Michael Natterer
6d6ec38085
app: no need to set a GtkRange's update-policy to CONTINUOUS
...
because it's the default.
2011-01-07 17:18:48 +01:00
Michael Natterer
0f0da4c712
app: various gradient editor changes and fixes
...
- return TRUE from event handlers if we handled the event
- remove the "instant update" toggle and feature
- move the color area left of the labels now that the toggle is gone
2011-01-07 15:09:17 +01:00
Michael Natterer
5caee48645
app: run all input axes through gimp_device_info_map_axis()
...
and let that function alone worry about whether there actually is a
curve for that axis.
2010-12-20 20:00:47 +01:00
Michael Natterer
62b0e96609
app: add gimp_devices_add_widget()
...
which is supposed to set up a widget for tablet events and make sure
the context changes on device changes. "supposed" because everything
is currently horribly broken on GTK+ 2.x. Use the function for all
affected widgets except for the canvas.
2010-12-19 21:23:54 +01:00
Michael Natterer
e82e40033a
app: some cosmetic cleanup in the item's node handling code
2010-12-19 20:39:18 +01:00
Michael Natterer
1e013e774c
app: some cleanup in gimp_paned_box_position_drop_indicator()
2010-12-18 23:28:20 +01:00
Michael Natterer
cac40f2db9
app: make themes_apply_theme() private, it's only used in themes.c
2010-12-18 22:42:09 +01:00
Øyvind Kolås
44ceeb246e
app: serialize signals from gimpoperationtilesink
...
These signals fire from threads while the mainloop is blocked by GEGL, since
the callbacks of the signals expect exclusive access a mutex works for
serializing.
2010-12-17 14:35:37 +00:00
Michael Natterer
4609bab1dd
app: use gtk_entry_set_width_chars() to override GtkEntry's default width
2010-12-09 23:45:00 +01:00
Michael Natterer
bb91ba9d01
app: update the device name's style when devices get added/removed
...
This can't happen on GTK+ 2.x but why should I keep this generic code
on a branch.
2010-12-09 22:56:58 +01:00
Michael Natterer
9c98b0b804
app: sort present devices to the beginning of the device list
...
and make sure the core pointer is always first in the list.
2010-12-09 22:02:24 +01:00
Michael Natterer
6e2d56a9b8
app: don't reverse the device list after loading, it's sorted by name
2010-12-09 21:46:01 +01:00
Michael Natterer
8bc0e569ec
app: use gimp_object_name_collate() when sorting device names
2010-12-09 21:45:04 +01:00
Michael Natterer
d91a1d5b6c
app: don't call g_object_set_data() on a NULL object
2010-12-09 20:55:53 +01:00
Michael Natterer
43c593bb3c
app: remove obsolete linking workarounds, they break the build on OSX
2010-12-09 15:29:57 +01:00
Mikael Magnusson
60242667be
app: don't use -1 for geometry hints where not allowed
2010-12-08 10:18:09 +01:00
Michael Natterer
748fac5c00
app: g_printerr() a warning if grabbing fails
...
This should not happen, but happens anyway on GTK+ 3.x, so better warn
about it to make debugging easier.
2010-12-07 19:57:13 +01:00
Michael Natterer
0ba0b637f2
app: add gimp_devices_check_callback() with the signature of an event callback
...
and use it in the toolbox. Will soon be used in more places.
2010-12-06 10:23:15 +01:00
Michael Natterer
e50f6aaf0f
app: make gimp_devices_select_device() private
2010-12-06 10:18:32 +01:00
Michael Natterer
d6f28f2274
Bug 550662 - DND prefers text/plain over text/svg+xml, should be other way around
...
Move the call to gimp_dnd_uri_list_dest_add() to the end of the DND
setup code because it adds text/plain for legacy URI DND support,
which is way too generic to be handled first.
2010-11-29 22:04:56 +01:00
Michael Natterer
4b729086a9
app: cast GtkTargetEntry.target to gchar* when freeing it
...
because it was made const in GTK+.
2010-11-29 15:41:38 +01:00
Michael Natterer
36de5a2ab1
Bug 630376 - Crash with text layer / text tools stay on canvas when text info is discarded
...
Halt the tool when the text layer's text disappears.
2010-11-28 15:28:28 +01:00
Michael Natterer
0b38824448
app: add a "text" property to GimpTextLayer and emit notifications for it
2010-11-28 15:27:35 +01:00
Michael Natterer
54d33500d8
app: move updating the shells' appearance to a utility function
...
and call that after the UI is reconfigured, instead of having that
code spread across the entire file.
2010-11-28 13:35:09 +01:00
Michael Natterer
ffcbe2c165
Bug 622311 - Get rid of status bar grip window in single-window mode
...
The the presence of docks in the image window into account when
deciding whether to show the statusbar resize grip, and simply call
gimp_display_shell_appearance_update() on all shells when
reconfiguring the UI for single-window-mode (which feels like the
right thing to do anyway).
2010-11-28 13:19:06 +01:00
Michael Natterer
357e25bfd1
app: move the cage tool after all other transform tools, not before them
2010-11-28 13:16:35 +01:00
Michael Natterer
fcaf202b52
app: leftover code was setting the sensitivity of an unrelated label
2010-11-27 23:42:28 +01:00
Michael Natterer
c4ec18790c
Bug 598253 - Bug when copying path from a document to another document
...
Don't scale the SVG to image size when pasting or importing. SVGs have
a size just as pixel images, and there is no reason not to use that
size as-is.
2010-11-27 22:28:34 +01:00
Michael Natterer
b1106845d4
app: the tool-list and tool-grid views are gone, don't try to open them
2010-11-26 10:44:46 +01:00
Michael Natterer
bbe0e757b8
app: some GimpImageWindow cleanup
...
- implement GObject::constructed() instead of ::construct()
- remove the display pause/resume idle hack because any tool
drawing flickering is gone now by using cairo
- some formatting cleanup
- remove some unused local variables
2010-11-26 09:19:36 +01:00
Michael Natterer
bbc3943638
app: some cleanup in the new paint options code
2010-11-25 21:30:29 +01:00
Alexia Death
904048cdcb
app: Clearly present Fade and Color dynamics options as such
2010-11-25 19:06:16 +02:00
Michael Natterer
d46b53f63d
Bug 635040 - Edit -> Stroke Path performs no action on an incomplete path
...
Add error reporting to gimp_drawable_stroke_vectors() and produce the
same warning as the paint core when trying to stroke a path with zero
or one points only.
2010-11-25 11:31:40 +01:00
Michael Natterer
77a5999f13
Bug 634315 - gimptextlayout.c: typo in assignment
2010-11-25 00:04:41 +01:00
Michael Natterer
88f2af98aa
app: clean up the dynamics editor
...
Also fix its sensitivity when a read-only data is set. Fixes bug
curves).
2010-11-24 23:01:50 +01:00
Michael Natterer
65c6264259
app: change icon for brush size reset button and add tooltip
2010-11-24 22:31:56 +01:00
Michael Natterer
7b320c7bf6
Get rid of DOS line endings
2010-11-21 16:09:09 +01:00
Michael Natterer
223ae53fcc
app: set the cage tool's dirty mask so it is canceled upon image changes
2010-11-21 14:13:58 +01:00
Michael Natterer
ef87b83ff0
app: change toolbox geometry hints to something that's closer to the docs
...
Feels more correct now when resizing, but not really.
2010-11-20 20:44:16 +01:00
Michael Natterer
a598b2d1be
app: I don't know what I was thinking when changing these function names...
2010-11-20 20:37:15 +01:00
Michael Natterer
74a09704ba
app: some toolbox cleanup
...
Add precondition checks and assertions for needed members and remove
unused API.
2010-11-20 15:19:48 +01:00
Michael Natterer
e4a96c738e
app: factor out duplicated code to gimp_tool_palette_get_button_size()
...
and use that function in GimpToolPalette and GimpToolbox.
2010-11-20 10:20:52 +01:00
Michael Natterer
281969b45d
app: add GimpToolPalette which derives from GtkToolPalette
...
and move all of GimpToolbox' tool button code there.
2010-11-19 23:52:09 +01:00
Michael Natterer
b5ece8b364
app: the ink sensitivity spin scales need two decimal digits precision
2010-11-19 15:19:24 +01:00
Michael Natterer
6960dda6f2
app: draw GimpSpinScale's label with style->text, not style->fg
2010-11-19 14:08:37 +01:00
Michael Natterer
04c4eedb4c
app: indentation
2010-11-19 12:02:57 +01:00
Alexia Death
2b8605639d
app: Disable somewhat obsolete stroke smooth
2010-11-17 19:55:16 +02:00
Alexia Death
20afb328a7
app: Unify direction calculation for painting and stroking
2010-11-17 00:03:07 +02:00
Michael Natterer
7a3dc6ee38
app: remove unused #includes
2010-11-15 00:23:18 +01:00
Michael Natterer
41269d35be
app: fix antique copyright header
2010-11-14 22:13:36 +01:00
Michael Natterer
dc564954d5
app: namespace the ink blob
...
Blob -> GimpBlob, blob_foo() -> gimp_blob_foo() etc.
2010-11-14 16:43:21 +01:00
Michael Natterer
c4cd420ef8
app: rename GIMP_INK_BLOB_TYPE_ELLIPSE to GIMP_INK_BLOB_TYPE_CIRCLE
...
- TYPE_SQUARE is also named SQUARE and not RECTANGLE
- serialization doesn't suffer from the changed name because it's the
default value that never gets serialized
- a lot of messy code in the ink options can be replaced by a one-liner
because the enum names now match their resp. stock items
2010-11-14 16:29:42 +01:00
Michael Natterer
ae9f6d1b3f
app: remove the unused gimp_display_shell_expose_vectors()
2010-11-13 23:02:07 +01:00
Michael Natterer
5cea26b6e5
app: gimp_display_shell_expose_region(): return if the canvas is not realized
...
All GTK+ exposing functions do the same.
2010-11-13 22:58:43 +01:00
Michael Natterer
a9217d4233
app: set the grid canvas item invisible by default
2010-11-13 22:58:10 +01:00
Michael Natterer
e4532fe2a8
app: call gimp_canvas_item_begin,end_change() around passe partout changes
...
Also remove the "highlight" member from the GimpDisplayShell struct.
2010-11-12 20:18:03 +01:00
Michael Natterer
458230bf8d
app: use a GimpCanvasPassePartout for drawing the crop highlight
...
and remove all old drawing logic.
2010-11-12 19:47:51 +01:00
Michael Natterer
cca8273f5e
app: fix the canvas passe partout's extents
2010-11-12 19:45:01 +01:00
Michael Natterer
e7f8758f5c
app: remove gimp_image_map_is_busy() again
2010-11-10 19:37:58 +01:00
Michael Natterer
dc9018bd14
app: implement GimpTool::options_notify()
2010-11-10 19:08:39 +01:00
Alexia Death
5fa1e9ea40
app: Tell the user how to commit the cage transform
2010-11-10 19:11:49 +02:00
Michael Natterer
ef44bfedad
app: check for GIMP_BUTTON_RELEASE_CANCEL, not GDK_BUTTON3_MASK
2010-11-10 14:39:30 +01:00
Mikael Magnusson
372bc90f65
app: fix right-click cancelling a transform tool
...
to only revert back to before the current drag, not do a full reset
2010-11-10 14:39:06 +01:00
Mikael Magnusson
d6e76a10d6
app: fix redraw after cancelling a transform tool with right-click cancelling
2010-11-10 14:35:27 +01:00
Michael Natterer
32926c9b6a
app: implement GimpTool::options_notify()
...
instead of connecting to the tool options manually.
2010-11-10 14:20:33 +01:00
Michael Natterer
9e5eca8fd1
app: add virtual function GimpTool::options_notify()
...
which gets called on each "notify" from the tool options. This way
tool can simply implement this method instead of connecting to
"notify" themselves individually.
2010-11-10 14:18:33 +01:00
Michael Natterer
3b09aaa5f1
app: property ID enums don't need to be public
2010-11-10 11:40:48 +01:00
Michael Natterer
3ac37bbff0
app: formatting; move variables to local scopes
2010-11-10 09:30:07 +01:00
Michael Natterer
6bf13efbc8
app: use gimp_widget_flush_expose() for the statusbar's progress
2010-11-10 00:16:34 +01:00
Michael Natterer
41cad26f12
app: don't run the main loop manually after calling gimp_progress_set_value()
2010-11-10 00:14:22 +01:00
Michael Natterer
1741d39d8b
app: gimp_widget_flush_expose() return if the widget is not drawable
2010-11-10 00:13:07 +01:00
Michael Natterer
f6a284dc4c
app: use a canvas progress in the cage tool
...
This is a proof-of-concept hack that needs review and comments before
being used generally.
2010-11-09 19:35:54 +01:00
Michael Natterer
cff73863c5
app: add GimpCanvasProgress, an on-canvas progress item
2010-11-09 19:35:04 +01:00
Michael Natterer
cacf8b550f
app: add gimp_widget_flush_expose() utility function
...
which flushes all pending exposes for a widget without running the
main loop. Useful for updating progress bars without returning to the
main loop.
2010-11-09 19:33:15 +01:00
Michael Natterer
63fcfb15a2
app: use the new shifting API instead of reimplementing it
2010-11-09 11:32:40 +01:00
Michael Natterer
1541d8b666
app: make the shift-coordinates-by-anchor functions public API
2010-11-09 11:27:51 +01:00
Michael Natterer
3f6a70f7fe
app: define one more standard tool handle size
2010-11-08 22:48:50 +01:00
Michael Natterer
cf0402f069
app: consistent handle sizes for tool drawing
...
Replace a myriad of defines in different tools by three consistent
sizes defined in gimpdrawtool.h.
2010-11-08 22:37:00 +01:00
Michael Natterer
a73348c561
app: fix handle hovering detection, it was using the wrong radius
2010-11-06 00:06:13 +01:00
Michael Natterer
31aa09a11f
app: add proper cursors that show what will happen
2010-11-06 00:06:13 +01:00
Alexia Death
c791ed0dca
app: Fix coordinate adjustment bug in cage tool
2010-11-06 00:52:43 +02:00
Michael Natterer
9d604a545f
app: move all the cage modifying logic to button_release()
...
so any interaction can be canceled by holding BUTTON3 while
releasing. Add additional state "hovering_handle" so we can do proper
drawing that matches what will happen on mouse interaction.
2010-11-05 23:49:48 +01:00
Michael Natterer
f4c98fbad6
app: don't use a GimpVector2 for the cursor position
...
because less code is more readable.
2010-11-05 22:30:10 +01:00
Michael Natterer
9867cf62c3
app: -1000 is a valid cursor position, use G_MINDOUBLE as "no cursor"
2010-11-05 22:25:14 +01:00
Michael Natterer
baf964a734
app: rename member handle_moved to moving_handle
2010-11-05 22:21:56 +01:00
Michael Natterer
038a6dd671
app: no need to abort the image map when a handle changes
2010-11-05 21:05:54 +01:00
Michael Natterer
77bb31ba51
app: put the drawn lines into a stroke group
2010-11-05 20:00:20 +01:00
Michael Natterer
86a220bbdf
app: remove the preview node and other unneeded stuff
...
and simplify the code even further.
2010-11-05 19:47:57 +01:00
Michael Natterer
6f31f3d2f6
app: pass the drawable to gimp_cage_tool_create_image_map()
2010-11-05 19:42:42 +01:00
Michael Natterer
2028d547a2
app: use the GimpImageMap as it's meant to be used
...
Have an incremental live preview of the rendering and actually use the
rendering instead of throwing it away and doing it all over again on
commit. gimp_cage_tool_process() is therefore currently unused but I
left it there for Alexia to fix the tool for layers with masks.
2010-11-05 19:10:03 +01:00
Michael Natterer
71de3d7bdf
app: use "pixels/unit" as label for the resolution menu
...
instead of "pixels/abbreviated unit". This is soon going to be
supported generically by GimpUnitComboBox just as with the old unit
menu.
2010-11-05 16:24:37 +01:00
Michael Natterer
e0dad1bf35
app: canonicalize cage op names, and some indentation fixes
2010-11-05 12:45:07 +01:00
Michael Natterer
eb3db78b06
app: rename config->cage_vertice_number to config->n_cage_vertices
...
and some minor cleanup.
2010-11-05 10:04:45 +01:00
Michael Natterer
09aae9a919
app: more minor cage tool cleanup
2010-11-05 09:49:03 +01:00
Michael Natterer
c98688873d
app: more minor cage cleanup
2010-11-04 22:47:03 +01:00
Michael Natterer
a6d85e8d57
app: more formatting cleanup
2010-11-04 22:38:41 +01:00
Michael Natterer
f6a8ad61fa
app: remove useless box from cage options gui
2010-11-04 22:32:01 +01:00
Michael Natterer
428e8541c3
app: remove unused #includes
2010-11-04 22:30:30 +01:00
Michael Natterer
b7a674285f
app: derive GimpCageOptions directly from GimpToolOptions
2010-11-04 22:28:47 +01:00
Michael Natterer
33a8c15403
app: large scale formatting cleanup in the new cage code
...
- move enum to the new gimp-gegl-enums.[ch]
- clean up includes
- spacing
- indentation
- coding style
2010-11-04 22:16:27 +01:00
Martin Nordholts
5ce581f797
app: Use Shift+G for Cage Tool
...
We can't use Shift+R which is taken by the rotate tool, so use Shift+G
instead. G is for "Green coordinate".
2010-11-04 21:44:31 +01:00
Michael Natterer
26ca306cc9
app: Makefile formatting cleanup
2010-11-04 21:08:51 +01:00
Alexia Death
d2563a69fd
app: Cleanup in preparation of merge
2010-11-04 20:27:11 +02:00
Alexia Death
dfd5470a2e
Merge remote branch 'origin/master' into soc-2010-cage-2
2010-11-04 20:00:36 +02:00
Alexia Death
040c415905
app: Fix cage operaton cliping offset
2010-11-04 19:54:07 +02:00
Alexia Death
27c77e6a5e
Merge branch 'master' into soc-2010-cage-2
2010-11-04 00:41:45 +02:00
Alexia Death
9b96120c31
app: Make cage tool behave nice with offset layers
2010-11-04 00:26:43 +02:00
Alexia Death
e529428a68
app: Make cage tool apply to layer mask as well if one is present
2010-11-04 00:26:04 +02:00
Michael Natterer
9208834880
app: make the blob shape widgets more compact
2010-11-03 09:53:18 +01:00
Michael Natterer
aa846ec451
app: use spin scales for the ink options
2010-11-02 23:30:47 +01:00
Michael Natterer
d5ff5b6748
app: get rid of more tables in the tool options and fix up spacing a bit
2010-11-02 22:14:34 +01:00
Michael Natterer
6ee6fb9b81
app: use a spin scale for the aspect ratio
...
even though a non-log scale is totally broken here, but that at least
creates pressure for finding a solution...
2010-11-02 22:01:15 +01:00
Michael Natterer
bf14241f26
app: make the brush size reset button smaller
2010-11-02 21:57:37 +01:00
Alexia Death
1ae2ad8566
app: Generic cage cleanup
2010-11-02 21:28:30 +02:00
Alexia Death
f09f6dae06
app: Make cage tool work with gegl master
2010-11-02 20:56:53 +02:00
Mikael Magnusson
90e525ca09
app: use a spin scale for the brush size (have to limit size to 1000 temporarily)
2010-11-02 14:41:21 +01:00
Michael Natterer
8f991c5950
app: make the brush, pattern etc selecing boxes more compact
...
by integrating their label instead of requiring one externally. This
way we get rid of some more labels in the tool options. Also clean up
tool options further (add more spin scales, and some general
reordering and spacing cleanup).
2010-11-02 14:05:47 +01:00
Michael Natterer
9cb69b80be
app: minor fixes
2010-11-01 23:38:17 +01:00
Michael Natterer
7af8cc0e4d
app: use a spin scale for fade-length
2010-11-01 22:19:59 +01:00
Michael Natterer
7bfdf76a47
app: use the new opacity prop scale
2010-11-01 22:07:55 +01:00
Michael Natterer
37038ab77f
app: add an opacity prop scale
2010-11-01 22:07:39 +01:00
Michael Natterer
0a98d16814
app: use spin scales for all trivial cases in tool options
2010-11-01 21:48:59 +01:00
Michael Natterer
8bf497294e
app: enable adjustment based prop widgets for all numeric param types
2010-11-01 21:48:19 +01:00
Michael Natterer
fc0e19022e
app: use a spin scale for the jitter amount
2010-11-01 21:03:01 +01:00
Michael Natterer
e84a0eebf9
app: fix gimp_prop_spin_scale_new() by setting the pspec on the right object
2010-11-01 20:54:43 +01:00
Michael Natterer
864e6bdfc0
app: don't show a text cursor when not over the editable text
2010-11-01 20:51:13 +01:00
Michael Natterer
5e58df8aa8
app: use a GimpSpinScale for the brush angle, please test and comment!
2010-11-01 20:04:53 +01:00
Michael Natterer
01f4bad1f6
app: add gimp_prop_spin_scale_new()
2010-11-01 20:04:35 +01:00
Michael Natterer
ae3afca697
app: add new widget GimpSpinScale which is a combined spinbutton and scale
2010-11-01 20:03:39 +01:00
Martin Nordholts
df0772fcde
app: Add 'crop_set_width_without_pending_rect' regression test
...
Add regression test 'crop_set_width_without_pending_rect' for "Bug
322396 - Crop dimension entering causes crash".
2010-10-31 15:09:03 +01:00
Martin Nordholts
48690d60e1
app: Add gimp_tools_get/set_tool_options_gui()
...
Add gimp_tools_get_tool_options_gui() and
gimp_tools_set_tool_options_gui() widgets utility functions.
2010-10-31 13:05:15 +01:00
Martin Nordholts
cba98e1bc0
app/tests: Run tests on an Xvfb X server if available
...
Add a configure check for xvfb-run and run tests with that if
available. This makes it possible to easily run UI tests in headless
environments such as a server that does nightly builds; one just needs
to make sure xvfb-run is available.
2010-10-31 08:22:05 +01:00
Michael Natterer
29d63afbb7
pdb: remove gimp-item-to-selection again
2010-10-30 22:19:22 +02:00
Michael Natterer
457a46a04c
pdb: add new selection API which has less parameters than the old one
...
and uses the new context properties instead. This is work in progress
and subject to change. Don't use it in plug-ins/scripts yet!
2010-10-30 22:06:20 +02:00
Michael Natterer
108c6f4e41
pdb: preemtively update context docs for upcoming selection API changes
2010-10-30 21:58:00 +02:00
Alexia Death
8663b22c2a
app: Fixes to brush scale->size replacement
2010-10-30 21:38:54 +03:00
Michael Natterer
ae742f0920
app: some cleanup in the new brush size code
2010-10-30 19:56:24 +02:00
Alexia Death
5d42803d7f
app: Expose brush size in pixels, not as ratio
2010-10-30 19:51:07 +03:00
Michael Natterer
b9a7c121a4
app: don't inherit from GtkHBox or GtkVBox
...
Instead, inherit from GtkBox directly and set the orientation in
init(). Replace more gtk_container_add() by gtk_box_pack_start() in
the reparented classes.
2010-10-30 15:44:46 +02:00
Michael Natterer
060a08da5a
app: +1
2010-10-30 15:43:56 +02:00
Michael Natterer
56dee7245a
app: and one more
2010-10-30 15:43:17 +02:00
Michael Natterer
ebc92dc5b4
app: more gtk_container_add -> gtk_box_pack_start
2010-10-30 15:42:25 +02:00
Michael Natterer
b2a2e3200e
app: derive GimpDisplayShell from GtkBox instead of GtkVBox
...
and avoid gtk_container_add() on boxes in some more plavces.
2010-10-30 15:12:20 +02:00
Michael Natterer
79f0f5639b
Don't use gtk_container_add() for adding to GtkBoxes
...
because the packing options are different for GtkH/VBox and GtkBox
itself which is now instantiable. Instead, always use
gtk_box_pack_start() and specify expanding explicitely.
2010-10-30 14:57:56 +02:00