Michael Natterer
e1bc19faf6
app: make state checks on tool much more strict
...
so wrong calls will run into precondition checks and warnings. This is
optional, but currently enabled, to reduce the risk of introducing
permanent new warnings for 2.8. See STRICT_TOOL_CHECKS in gimptool.h.
2011-04-01 22:56:32 +02:00
Michael Muré
24c117082f
gimp:cage-transform : prepare optimisation for when the Gegl bug #645810 is solved
2011-03-31 23:00:23 +02:00
Michael Natterer
e4daf561ac
app: return TRUE after handling double and triple click tool events
...
so we don't redundantly update the cursor again.
2011-03-31 10:21:55 +02:00
Michael Natterer
6a046d09e4
app: GimpBrushTool: don't split brush setting in two callbacks
...
The need to both connect() and connect_after() to "set-brush" is gone
because XOR drawing is gone.
2011-03-30 23:38:14 +02:00
Michael Natterer
0db785c36a
app: don't call control_activate()/control_halt() in GimpRectangleTool
...
Instead, call it in all implementors.
2011-03-30 22:13:31 +02:00
Michael Natterer
884e4868a4
app: fix calls to control_activate() and control_halt() in GimpIScissorsTool
2011-03-30 21:48:37 +02:00
Michael Natterer
55f80cd758
app: fix GimpForegroundSelectTool pen cursor drawing
...
It seems some of the junk removed in the last commit did have a
purpose :) Also use a tool progress because it's the result of a
canvas interaction.
2011-03-30 21:24:04 +02:00
Michael Natterer
cc63337be5
app: simplify gimp_foreground_select_tool_oper_update() a lot
...
by removing tons of cruft. Fixes both status messages and tool drawing
with multiple displays.
2011-03-30 20:39:00 +02:00
Michael Natterer
92d7c7d8d9
app: change about dialog role from "about-dialog" to "gimp-about"
2011-03-30 20:20:47 +02:00
Enrico Schröder
074e2c088a
app: GimpRectangleTool: Rounding error when moving/resizing with keyboard
...
Fix for bug #653186 : When a rectangle selection is created or moved by
mouse at certain zoom-levels (200%, 400%, 800%), its coordinates can
become exactly .500. By then using the keyboard to move/resize in
steps of one pixel, a rounding error occurs in
gimp_rectangle_tool_update_int_rect(). This leads to the coordinate
either not beeing changed at all or changed by 2 pixels at a time. The
patch changes the function from using RINT() to ROUND() for the
calculations, which prevents the rounding error from happening.
2011-03-30 19:45:46 +02:00
Enrico Schröder
aae8787ee3
app: SIOX: algorithm ignores color sensitivity changes
...
Fix for bug #627062 : When changing the color sensitivity settings of
the Foreground Selection Tool, the SIOX algorithm gets called with
refinement=SIOX_REFINEMENT_CHANGE_SENSITIVITY, which then triggers
refinement=SIOX_REFINEMENT_RECALCULATE. However, there is no
implementation for RECALCULATE so the change is ignored. The patch
sets refinement to SIOX_REFINEMENT_ADD_FOREGROUND and _ADD_BACKGROUND
which triggers a complete recalculation.
2011-03-30 19:35:38 +02:00
Michael Natterer
2e406872c4
app: GimpBrushTool: don't set a BAD cursor permanently
...
by chaining up after setting it. Instead, don't set it and call
gimp_tool_set_cursor() directly when there is no brush or no dynamics.
2011-03-30 19:18:29 +02:00
Michael Natterer
96c8c35575
app: GimpFreeSelectTool: remove if (tool->display != display) checks
...
This can't happen in motion() and release() because they won't be
called if we didn't activate the tool.
2011-03-30 19:01:11 +02:00
Michael Natterer
9755d7d06c
app: GimpForegroundSelectTool: call control_activate() unconditionally
2011-03-30 15:05:33 +02:00
Michael Natterer
3d2fb51a63
app: GimpEditSelectionTool: call control_halt() in button_release()
...
Just for consistency, the tool is destroyed at the end of
button_release() anyway.
2011-03-30 12:08:38 +02:00
Michael Natterer
6899b0bf60
app: GimpCageTool: go to deform mode only if the user clicked the first handle
...
and not if it was only moved.
2011-03-30 11:51:51 +02:00
Michael Natterer
f585788e46
app: tool control cleanup in GimpCageTool
...
Don't call tool_control functions twice in init(). Call activate() and
halt() only on button_press() and button_release() to indicate that
the tool wants motion events.
2011-03-30 11:48:05 +02:00
Michael Natterer
28c48b1857
app: GimpBrightnessContrastTool: don't call gimp_tool_control_pause()/resume()
...
It must not be called directly, and is entirely useless here anyway.
2011-03-30 11:44:12 +02:00
Michael Natterer
d92b22c567
app: #include "widgets-types.h" so the GDK_KEY_foo defines are there
2011-03-29 22:39:34 +02:00
Michael Natterer
1cdaa2846f
app: some forgotten s/GDK_foo/GDK_KEY_foo/
2011-03-29 18:53:02 +02:00
Michael Natterer
7c60bb5181
app: use more of the new GDK_KEY_foo key names
...
and move the compat defines from display-enums.h to widgets-enums.h
2011-03-29 17:24:08 +02:00
Michael Natterer
2468f9fd55
app: cancel the align tool on Escape, and some more cleanup
2011-03-29 15:16:17 +02:00
Michael Natterer
bb5dea615b
app: some more cleanup and namespacing in GimpAlignTool
2011-03-29 14:32:00 +02:00
Michael Natterer
0c8ff468f6
app: remove empty GimpTool::initialize() impl from GimpAlignTool
2011-03-29 14:00:10 +02:00
Michael Natterer
f7bb4afbd8
app: add gimp_image_pick_layer_by_bounds() and use it in GimpAlignTool
...
Also do some refactoring in the align tool, like adding
gimp_align_tool_halt() and using it to shut down the tool.
2011-03-29 13:58:23 +02:00
Michael Natterer
08e409d6e3
app: move the GimpAlignTool options GUI to GimpAlignOptions
...
which fixes a major uglyness, it should have always been there.
Also fixes warnins on quit if the align tool is active.
2011-03-29 13:26:18 +02:00
Michael Natterer
c38eb0df4a
app: core-enums.h: fix type macros of the align type enums
2011-03-29 12:45:54 +02:00
Michael Natterer
f32e285ea3
app: more cleanup in GimpMeasureTool
...
- highlight the active point while dragging
- make sure the tool is only active while dragging
- misc formatting cleanup
2011-03-29 09:16:22 +02:00
Michael Natterer
f59eeb95e7
app: remove GimpMeasureTool:active_handle and use the existing :point
...
Also don't re-find the active point in button_press().
2011-03-29 08:52:09 +02:00
Mikael Magnusson
afb68c1cea
app: fix return value from NULL to FALSE
2011-03-29 00:23:27 +02:00
Michael Natterer
2b9b737686
app: add gimp_measure_tool_oper_update() which should have always been there
...
and add the stuff that should not be done in cursor_update(). Also add
highlighting of the currently hovered handle.
2011-03-28 20:44:30 +02:00
Michael Natterer
44a6e4f07a
app: use gimp_canvas_item_hit() in GimpMeasureTool
2011-03-28 20:13:18 +02:00
Michael Natterer
365902b582
app: use gimp_canvas_item_hit() in gimp_transform_tool_oper_update()
...
so all the extents calculation and parameter passing is not
duplicated for the first time \o/
2011-03-28 18:55:08 +02:00
Michael Natterer
e03a25caeb
app: add virtual function gboolean GimpCanvasItem::hit()
...
and implement it for GimpCanvasHandle and GimpCanvasGroup.
2011-03-28 18:54:02 +02:00
Michael Natterer
b529d556fa
app: add and use more GimpCanvasItem setters
2011-03-28 15:15:43 +02:00
Michael Natterer
d96091d514
app: port GimpMagnifyTool away from draw_tool_pause()/resume()
2011-03-28 12:22:29 +02:00
Michael Natterer
accc12a3ca
app: change GimpCanvasItem setters to take GimpCanvasItem*
...
not GimpCanvasLine* etc. We keep them around as items, and their
constructors return items, and it's getting more code anyway when
porting away from pause/resume, so let's keep the casting minimal at
least.
2011-03-28 12:20:36 +02:00
Michael Natterer
aa5d2f8082
app: port GimpBlendTool to pause()/resume()-less drawing
...
Instead, keep around the created GimpCanvasItems, and update them when
the blend coordiates change. Add setters to GipmCanvasLine and
GimpCanvasHandle which take care of calling begin_change() and
end_change() on the items around the change, so thes invalidate
properly.
2011-03-28 11:08:40 +02:00
Michael Natterer
1c0fe73da4
app: gimp_transform_tool_draw(): initialize the array of handles to NULL
...
And update/improve some comments in the entire file.
2011-03-28 10:16:00 +02:00
Michael Natterer
20bed2c609
app: add gimp_draw_tool_add_transform_preview() and use it
2011-03-28 02:18:00 +02:00
Michael Natterer
fd80b90cf0
app: more minor GimpTransformTool cleanup
2011-03-28 02:10:33 +02:00
Michael Natterer
9f6b60c29d
app: draw the perspective clone handles only when they can be used
2011-03-28 01:27:02 +02:00
Michael Natterer
4097825f3c
app: some more code removal and cleanup in the transform classes
2011-03-28 01:20:47 +02:00
Michael Natterer
dde7d6c0ee
app: remove lots of junk from GimpPerspectiveCloneTool
...
This is an evil transform tool copy, so do the same changes here.
2011-03-28 01:20:47 +02:00
Michael Natterer
babc2186c5
app: move the enum of indexes into the trans_info array to the .c files
...
and turn #defines from 0 to N into enums.
2011-03-28 00:50:46 +02:00
Michael Natterer
06e0183f96
app: right-align the perspective matrix labels with the right API
...
Use gtk_misc_set_alignment() instead of gtk_label_set_justify().
2011-03-28 00:39:39 +02:00
Michael Natterer
d36887644d
app: highlight the active transform tool handle
2011-03-28 00:13:14 +02:00
Michael Natterer
32f240fa4a
app: prepare GimpTransformTool for highlighting the handles
2011-03-27 23:57:12 +02:00
Michael Natterer
18929f0865
app: lay out the GimpTransformOptions GUI more uniformly
2011-03-27 23:18:28 +02:00
Michael Natterer
8512675088
app: rename GimpTransformTool::recalc() to ::recalc_matrix()
2011-03-27 23:12:11 +02:00
Michael Natterer
fb2ba3f289
app: remove display parameters from all virtual GimpTransformTool functions
2011-03-27 22:39:31 +02:00
Michael Natterer
eb4f01039a
app: add utility function gimp_transform_polygon_is_convex()
...
and use it in GimpTransformTool and GimpCanvasTransformPreview.
2011-03-27 22:04:33 +02:00
Michael Natterer
caa8cdd4c1
app: add gimp_transform_options_show_preview()
...
which returns whether or not to show a transform preview. Also clean
up gimp_transform_tool_draw() a bit and add a stroke group for the
center handle.
2011-03-27 21:49:34 +02:00
Michael Natterer
8a09fd1f34
app: refactor GimpCanvasTransformPreview to not know GimpTransformTool any more
...
Instead, add drawable, transform, x1, y1 etc. properties. This is
cleaner and has the nice side effect of not leaving artifacts, because
the changed state of the transform tool doesn't affect the extents
calculation any longer.
2011-03-27 21:19:38 +02:00
Michael Natterer
6fe9430cab
app: remove members "type" and "direction" from GimpTransformTool
...
and use the stuff from GimpTransformOptions directly. The copied
values were only there because of XOR drawing. Also did some more
cleanup and junk removal.
2011-03-27 17:38:49 +02:00
Michael Natterer
1d9f95ac98
app: code cleanup and streamlining in GimpCanvasTransformPreview
2011-03-27 16:54:21 +02:00
Michael Natterer
92aeeadecf
app: remove unused macros from gimpdrawable-transform.c
2011-03-27 16:53:48 +02:00
Michael Natterer
f09be52c1b
app: turn the transform preview into a GimpCanvasItem
...
And remove all the complicated handling code entirely. This makes
GimpTransformTool a lot less complex. As a nice side effect, the
preview is now always 100% in sync with the grid and handles.
2011-03-27 16:40:41 +02:00
Michael Natterer
cf28e07b64
app: move enum TransformAction from tools-enums.h to gimptransformtool.h
...
Moving it to tools-enums.h was a mistake, it's actually supposed to be
a private enum, accessible only by subclasses. And it's ugly.
2011-03-26 22:32:35 +01:00
Michael Natterer
f632c4a8aa
app: transform the transform grid lines on the fly
...
which is much less code than keeping the transformed lines around.
2011-03-26 22:14:07 +01:00
Michael Natterer
74f276fe4f
app: make sure GimpTransformTool draws correctly after options changes
2011-03-26 21:53:06 +01:00
Michael Natterer
deafe3d341
app: remove some entirely useless members from GimpTransformTool
2011-03-26 20:40:35 +01:00
Michael Natterer
6c524ea1db
app: GimpSessionInfo: use brute force to position dialogs
...
Window managers are such a crap. So on top of all friendly hinting and
geometry setting, simply use gtk_window_move() whenever a session
managed GtkDialog is shown. It should be very hard to ignore that, but
of course the WM has the last word no matter how hard we try.
Note: this code should be more complex and the signal connection
should happen in GimpDialogFactory. Left it in GimpSessionInfo for now
until it got a bit of testing.
2011-03-26 19:47:44 +01:00
Michael Natterer
c629cbeb89
app: some formatting cleanup in GimpDialogFactory
2011-03-26 19:32:59 +01:00
Michael Natterer
6606d10be1
app: gimp_transform_tool_transform(): don't unref NULL orig_tiles
2011-03-26 18:57:31 +01:00
Michael Natterer
ae72971866
app: pass the orig_tiles and their offset to GimpTransformTool::transform()
...
instead of keeping them around as members. This is another artifact
from ancient times. Also get rid of some more legacy junk
code. Disable more code in GimpTransformToolUndo but keep it around
even though it does nothing at the moment.
2011-03-26 18:45:58 +01:00
Michael Natterer
88ee23aa29
app: move some of the new tile offset variables to local scopes
2011-03-26 18:37:34 +01:00
Michael Natterer
047d31fa68
app: gimp_drawable_transform: place new the tiles at offset_x, offset_y
...
and not at offset_y, offset_y (typo).
2011-03-26 16:50:38 +01:00
Michael Natterer
bc8d5f84d6
app: remove the "offset" API from TileManager
...
It made the transform code hard to read and never belonged into the
tile manager anyway. It's a simple pixel buffer that should not know
about any position in an image. Instead, pass around the offsets of
tile managers explicitly, so everything is less obscure for the price
of having more parameters. This will also help replacing TileManagers
with GeglBuffers.
2011-03-26 08:30:15 +01:00
Mukund Sivaraman
41ab7d8e10
Remove broken include
2011-03-26 10:55:21 +05:30
Michael Natterer
6ec5190da2
app: remove unused files base/tile-manager-crop.[ch]
2011-03-26 00:10:19 +01:00
Michael Natterer
9424d42d36
pdb: apply recent fixes to the deprecated transform procedures
...
Don't transform the tiles of group layers, use the item transform API
instead. Go the same code path if there is no selection.
2011-03-25 22:35:46 +01:00
Michael Natterer
1a359a138d
pdb: don't recommend deprecated replacement procedures for deprecated procedures
2011-03-25 22:03:14 +01:00
Michael Natterer
4d7dbe233d
pdb: do the same optimization as in the transform tool in the commit below
2011-03-25 21:57:56 +01:00
Michael Natterer
3ed87015a6
app: if there is no selection, don't cut/transform/paste in the transform tool
...
instead, take the easy path that simply calls gimp_item_transform()
and does exactly the same, just less weird.
2011-03-25 21:50:58 +01:00
Michael Natterer
bef6d5716a
app: use a tool progress for GimpTransformTool
2011-03-25 21:35:19 +01:00
Michael Natterer
f078a7416c
app: remove some junk from GimpTransformTool
...
which was there for the purpose of transfomring the same buffer
multiple times (which would be nice but is broken and disabled for
ages). Also remove some junk that was there for unknown reasons, this
tool has a long history.
2011-03-25 21:32:08 +01:00
Michael Natterer
a5549ece52
app: don't pause/resume the shell (and the active tool) around expose()
...
This was only there to make sure XOR drawing works, and is now
complete overhead since cairo drawing is done *in* expose, and not in
some hack around it.
2011-03-25 21:28:21 +01:00
Michael Natterer
6fdcc5f465
app: add a progress indicator for cage transform
...
- add a double "progress" property to GimpOperationCageTransform
and update it every 20 rows
- connect to the notify::progress in the tool and display a tool
progress
2011-03-25 15:41:53 +01:00
Michael Natterer
41b905baa8
app: make GimpTool implement the GimpProgress interface properly
...
and remove the previously added quick hack. Change the cage progress
code to standard progress code, and use the tool progress also in
blend.
2011-03-25 10:55:07 +01:00
Michael Natterer
8daee72518
app: various GimpCageTool fixes
...
- completely halt the tool before starting it
- bail out on options changes when the tool is not active
- initialy set the mode to CAGE_CHANGE
- indentation, formatting, various small cleanups
2011-03-25 10:18:56 +01:00
Michael Natterer
e9dd30127a
app: add an on-canvas progress facility to GimpTool
...
and use it in GimpCageTool.
2011-03-25 09:48:26 +01:00
Michael Natterer
927ce61ce1
app: use a data delete dialog in the tool options' preset delete menu
2011-03-24 21:54:40 +01:00
Michael Natterer
920d1a42e9
app: move the GimpData delete confirm dialog to its own files
2011-03-24 21:46:40 +01:00
Michael Natterer
afa8a416c9
app: don't crash if GimpBrushTool has no dynamics to paint a brush outline
...
Also, set the BAD cursor when there isn't both brush and dynamics
available.
2011-03-24 20:21:57 +01:00
Michael Muré
8b87e633b3
gimp:cage-transform : iterate over y then x, to follow memory organisation
2011-03-24 19:57:47 +01:00
Michael Muré
b6ef32f580
gimp:cage-transform : when pre-filling the buffer, do a check if the pixel is
...
inside of the bounding box before computing if it's inside the cage
2011-03-24 19:38:14 +01:00
Michael Muré
635d1ba37d
gimp:cage-transform : fusion of two loop that didn't need to be seperate
2011-03-24 19:13:39 +01:00
Michael Muré
b87e5c10b3
gimp:cagetransform : move a call to babl_format_n outside of loops
2011-03-24 19:00:45 +01:00
Mikael Magnusson
5a5f47d903
cagetool: move malloc out of inner loop
2011-03-24 17:02:57 +01:00
Michael Natterer
b590804212
app: move GimpFilteredContainer's match logic to a utility function
2011-03-24 13:10:43 +01:00
Michael Natterer
aec66d0c26
app: make GimpTaggedContainer properly memory manage the filter list
...
instead of leaking it. Also make the fact that tags in the list can
validly be NULL obvious by adding utility functions
gimp_tag_or_null_ref/unref().
2011-03-24 12:28:45 +01:00
Michael Natterer
7eda388fec
app: fix possible GimpTagEntry crash by keeping the query idle ID around
...
Remove it in gimp_tag_query_dispose().
2011-03-24 09:55:32 +01:00
Michael Natterer
ac7aab2376
app: forgot to remove member GimpTaggedContainer:src_container
2011-03-24 09:43:21 +01:00
Michael Natterer
d64eae8c4e
app: use gimp_tagged_has_tag() instead of imlementing the same
...
and some general cleanup.
2011-03-24 09:17:44 +01:00
Michael Natterer
39d2067058
app: add gimp_tagged_has_tag(), and some cleanup in GimpTagged
2011-03-24 09:17:39 +01:00
Michael Natterer
1659f62e2c
app: small style cleanup in the merged cage code
2011-03-23 22:29:00 +01:00
Michael Natterer
f2d5831ee2
app: virtualize the add/remove/freeze/thaw logic of GimpFilteredContainer
...
and derive GimpTaggedContainer from it, removing a lot od code
dupliucation.
2011-03-23 22:12:49 +01:00
Michael Natterer
014a333d27
app: fix GimpTaggedContainer's base class
...
And make it use the sort_func from the src_container which must
now be a GimpList (which is likely temporary).
2011-03-23 21:51:56 +01:00
Michael Natterer
b49fdd4fd0
app: fix GimpTaggedContainer to work with multiple views
...
Refactor the container so it dynamically inserts/removes items when
their tags change, rather than implicitly relying on the filter logic
that was only triggered when the view called set_filter(). Before,
another view on the same original container would not update
automatically.
2011-03-23 20:57:04 +01:00
Michael Muré
2aeac1cf4e
Merge branch 'soc-2010-cage-2'
2011-03-23 20:07:17 +01:00
Michael Natterer
91195e8593
app: remove the old tool presets system
...
Instead, keep around a GimpFilteredContainer in GimpToolInfo that
maintains a per-tool list of presets from the global preset factory.
Turn the tool options dialog's preset Save/Restore/Edit/Delete menus
and buttons into shortcuts for managing the active tool's presets.
2011-03-23 09:27:29 +01:00
Michael Natterer
f3a99ed8f7
app: turn GimpFilteredContainer into a general purpose filter
2011-03-22 23:41:42 +01:00
Michael Natterer
051ef0ebcb
app: add GimpTaggedContainer
...
which is a copy of GimpFilteredContainer with s/Filtered/Tagged/ and
no other change. #if 0 GimpFilteredContainer for now and use
GimpTaggedContainer instead all over the place.
2011-03-22 23:11:46 +01:00
Michael Natterer
49710c1cd4
app: cosmetic cleanups in GimpFilteredContainer
2011-03-22 22:26:30 +01:00
Michael Natterer
7cf14bd390
app: allow to change GimpToolPreset's icon
...
Also add an image and label that show what tool the preset is for.
This clearly needs more work...
2011-03-22 22:09:03 +01:00
Michael Natterer
fa9453eea1
app: add gimp_prop_icon_picker_new()
...
and use it in GimpTemplateEditor instead of handling the icon picker
manually.
2011-03-22 15:20:03 +01:00
Michael Natterer
ab9cb53be8
app: gimp_tool_preset_new(): ignore the passed name
...
and use GimpToolInfo's blurb, so new presets are by default called
"Blend", "Paintbrush" etc. and not simply "Untitled".
2011-03-22 15:08:11 +01:00
Michael Natterer
33dd20750f
Bug 645456 - Inconsistent window (role) naming scheme
...
"preferences" -> "gimp-preferences"
2011-03-21 21:49:08 +01:00
Omari Stephens
cc04620b96
Adjust Bug 559716 bugfix to not test exact double equality
2011-03-21 16:53:35 +01:00
Michael Natterer
ec1108d62a
Bug 559716 - Changing crop size in Crop Tool Options can make UI unresponsive
...
In gimp_rectangle_tool_update_options(), freeze()/thaw() notifications
around setting setting x, y, width, height, so all values are
up-to-date when "notify" is emitted. Also, only set the values that
have actually changed so we don't process notifications when no change
was done.
2011-03-21 14:38:26 +01:00
Michael Natterer
a90961ef4a
app: make GimpTextStyleEditor look a bit nicer
...
Add some spacing and move the color button to the bottom.
2011-03-21 01:00:37 +01:00
Michael Natterer
38287ba9f4
app: GimpTextTool: use the highlight color for the selected text
2011-03-20 23:59:19 +01:00
Michael Natterer
6378e9fc4d
app: rename member GimpImageMapTool->shell to ->dialog
...
"shell" has confused me once too often today...
2011-03-20 18:27:11 +01:00
Michael Natterer
4149452279
Bug 643155 - Tool dialogs don't stay on top of the image window
...
Change the "GtkWidget *parent" parameter of GimpToolDialog to
"GimpDisplayShell". Also add API gimp_tool_dialog_set_shell() so an
existing dialog can be used on different images. Make sure the dialog
closes when the shell is unmapped (like when switching tabs in SWM),
and make the dialog transient for the toplevel GimpImageWindow.
Change all tool dialog users accordingly.
2011-03-20 18:15:42 +01:00
Michael Natterer
13bedf69e2
app: minor cleanups in GimpColorPickerTool
2011-03-20 16:57:23 +01:00
Michael Natterer
1f5e180334
app: move GimpToolDialog from app/widgets/ to app/display/
...
Zero logic changes yet, just a rename.
2011-03-20 13:34:03 +01:00
Michael Natterer
c469dbb206
libgimpwidgets: turn GimpDialog's "parent" into a property
...
and remove the parent peoperty from GimpViewableDialog.
2011-03-20 12:44:03 +01:00
Michael Natterer
6d97fd3887
app: use a size entry instead of a spinbutton in GimpTextStyleEditor
...
so it's finally clear what unit the text size has.
2011-03-20 12:37:01 +01:00
Alexia Death
5f546938b6
app: Fix whitespace in last commit
2011-03-19 23:27:08 +02:00
Alexia Death
6d6ab78d2a
app: Fix stroking brush size to brush default
2011-03-19 23:26:34 +02:00
Alexia Death
ce606d9561
app: Fix a dynamics leak from new pdb fix
2011-03-19 22:48:17 +02:00
Alexia Death
5d5430e110
app: Fix pdb size and dynamics brush stuff
...
[ Mikael: deduplicated brush size setting and fixed some whitespace ]
2011-03-19 18:39:02 +01:00
Michael Natterer
b3a597c7de
Revert "app: Fix pdb size and dynamics issues"
...
This reverts commit 9bae2a15cb
.
2011-03-19 16:43:09 +01:00
Michael Natterer
bb80dfdc8e
Revert "app: Fix pdb properly this time"
...
This reverts commit 1a8edd7d1d
.
2011-03-19 16:42:53 +01:00
Alexia Death
1a8edd7d1d
app: Fix pdb properly this time
2011-03-19 17:12:14 +02:00
Alexia Death
9bae2a15cb
app: Fix pdb size and dynamics issues
2011-03-19 15:14:23 +02:00
Michael Natterer
4f62bdf436
app: paint the text cursor in the highlight color
...
so it can be distinguished from the text box rectangle more easily.
2011-03-19 10:11:47 +01:00
Michael Natterer
0789ee2669
app: add a 1px FG border around overlay frames
...
so they work on any background. Also remove disabled bling code.
2011-03-18 22:57:13 +01:00
Michael Natterer
140c9aae91
Bug 625273 - Insert Font and font-size into the Texteditor's Menubar
...
If the cursor position (or the current selection), doesn't contain any
font, font-size or color tags, display the default values from the
GimpText object instead of "nothing". Still display nothing if the
selection contains different fonts, sizes or colors.
2011-03-18 22:13:34 +01:00
Michael Natterer
f09360ba80
app: GimpTextLayout: use the unit conversion functions from gimpunit.[ch]
...
instead of duplicating them. Multiply by PANGO_SCALE in the callers
and ceil() fixed text box pixel extents so we don't cut off stuff by
fractions of a pixel.
2011-03-18 21:39:28 +01:00
Michael Natterer
ecbfb4a9e8
app: add a GimpText property and construct param to GimpTextStyleEditor
...
which will be used to get default values from.
2011-03-18 21:16:53 +01:00
Michael Natterer
61aa1854fd
app: make GimpSpinScale's slow part change the value 10x slower than the fast part
2011-03-18 15:42:50 +01:00
Michael Natterer
f1d1bb610d
app: experimentally add fine-tuning to GimpSpinScale
...
by making the lower part change things in small steps.
2011-03-18 15:07:44 +01:00
Michael Natterer
df731912a5
app: add a GimpTextStyleEditor to the text tool's editor dialog
...
so it's an alternative to on-screen editing for esoteric use cases
that can do everything on-screen editing is capable of.
2011-03-18 12:58:32 +01:00
Michael Natterer
f13abfa3f0
app: change image parameter in gimp_text_layout_new() to xres,yres
...
Because GimpTextLayout doesn't depend on any image, it only needs a
resolution.
2011-03-18 02:31:20 +01:00
Michael Natterer
1c8149a553
Bug 632568 - 'gimp-drawable-transform-rotate-simple' makes GIMP crash in some cases
...
Applied modified patch from Massimo that makes sure we don't use
negative width/height if source and dest regions don't overlap.
2011-03-18 00:53:21 +01:00
Michael Natterer
e24795f167
Bug 600554 - Implement layer group transforms
...
Same fix for the PDB: if the item to transform is a group layer, call
gimp_item_transform()/rotate()/... directly instead of going through
the wrong cut/transform/paste code path.
2011-03-17 22:00:38 +01:00
Michael Natterer
503acbae54
Bug 600554 - Implement layer group transforms
...
When transforming layer groups, don't cut out a buffer to transform.
Instead, simply call GimpTransformTool::transform() with
tr_tool->original being NULL, just as when we are transforming a
path. In the transform() implementations, simplify the code to not
look at the type of item to be transformed; instead, simply look at
tr_tool->original and transform it if it exists, otherwise call
gimp_item_transform() which does the right thing for all sorts of
items automatically.
2011-03-17 21:52:43 +01:00
Michael Natterer
d3153960df
app: rename gimp_transform_tool_doit() to gimp_transform_tool_transform()
2011-03-17 21:39:11 +01:00
Michael Natterer
d7c66c66d0
Bug 142697 - Dock separators move between sessions
...
Removing my old and evil "fix" for the issue from 2004-06-01 seems
to make things work as they should.
2011-03-17 21:03:20 +01:00
Martin Nordholts
0d0ffd1265
Bug 644891 - Ctrl+e crashes gimp
...
Don't freak out if setting an URI on GimpImage that was getted with
the corresponding getter. Fix by Massimo.
2011-03-17 20:25:43 +01:00
Mukund Sivaraman
56d8850d38
Use a proper int to pointer cast
2011-03-18 00:06:14 +05:30
Michael Natterer
075c7d4a4d
app: avoid the deprecated gdk_drawable_get_size() on GTK+ >= 2.24
...
Use gdk_window_get_width/height() instead.
2011-03-17 15:10:17 +01:00
Michael Natterer
fdde231869
app: use gtk_widget_get_allocation() instead of gdk_drawable_get_size()
2011-03-17 15:09:19 +01:00
Michael Natterer
42b2498a06
app: add a cast when comparing GdkCursorType with GimpCursorType
2011-03-17 14:42:44 +01:00
Alexia Death
41b1bd36da
app: Fix smooth intreaction with airbrush
2011-03-16 22:08:19 +02:00
Michael Natterer
c07811f0a3
app: remove unused variables in gimp_drawable_duplicate()
2011-03-16 02:06:21 +01:00
Michael Natterer
9f30550f9a
app: move drawable->type to private
2011-03-16 02:02:47 +01:00
Michael Natterer
a62071e9eb
app: remove mamber GimpDrawable::bytes
...
because it's always the same as GIMP_IMAGE_TYPE_BYTES(drawable->type)
2011-03-16 00:16:31 +01:00