2007-11-04 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c: Consistently use the name
`rect_tool' instead of `rectangle' or `rectangle_tool' for
pointers to GimpRectangleTool.
svn path=/trunk/; revision=24054
2007-11-04 Martin Nordholts <martinn@svn.gnome.org>
Put GimpRectangleTool handles on the outside of the rectangle when
it has a small width or height. Some polishing left to do but the
base functionality works nicely.
* app/tools/gimpdrawtool.[ch] (gimp_draw_tool_draw_corner): Add a
put_outside boolean parameter that if true draws the handles on
the outside of the rectangle.
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_update_handle_sizes)
(gimp_rectangle_tool_coord_on_handle)
(gimp_rectangle_tool_draw): Take into account if the rectangle is
in narrow-mode or not.
svn path=/trunk/; revision=24053
2007-11-04 Michael Natterer <mitch@gimp.org>
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimpcurveview.[ch]: new GimpHistogramView subclass
which does all the curve stuff.
* app/widgets/gimphistorgramview.[ch]: removed all curve code again.
* app/tools/gimpcurvestool.c: changed accordingly.
svn path=/trunk/; revision=24051
2007-11-02 Michael Natterer <mitch@gimp.org>
* app/widgets/gimphistogramview.[ch]: added API to set the
selected point.
* app/tools/gimpcurvestool.c: use it.
svn path=/trunk/; revision=24046
2007-11-02 Michael Natterer <mitch@gimp.org>
* app/core/gimpcurve.[ch]: added API to modify free-form curves
and properties to listen to curve changes.
* app/widgets/gimphistogramview.[ch]: added everything that's
needed for rendering a curve with all its color and cursor
indicators on top of a histogram. This code will move to a
subclass soon.
* app/tools/gimpcurvestool.[ch]: removed all curve rendering here.
Also removed all explicit updating by connecting to curve signals
and updating in the callback.
svn path=/trunk/; revision=24045
2007-11-02 Michael Natterer <mitch@gimp.org>
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpcurve-save.[ch]
* app/core/gimpcurve-load.[ch]
* app/core/gimpcurve.[ch]: new GimpData subclass which keeps a
curve as known from the curves tool. Pretty much unfinished, but
can do everything that used to be done by base/curves.c and more.
* app/base/curves.[ch]: stripped down to plain arrays of
uchar (the actual curve) and the LUT setup function. All the rest
is done by GimpCurve now.
* app/tools/gimpcurvestool.[ch]: use an array of GimpCurves
instead of the old Curves cruft. Use Curves only for the last step
of creating the LUT. Pretty much unfinished migration here too.
* tools/pdbgen/pdb/color.pdb: use a GimpCurve here too.
* app/pdb/color_cmds.c: regenerated.
svn path=/trunk/; revision=24041
2007-10-31 Michael Natterer <mitch@gimp.org>
* configure.in: depend on glib 2.14.1
* app/tools/gimpdrawtool.c
* app/vectors/gimpvectors-import.c: use g_slice_dup() instead of
g_slice_new() and memcpy().
svn path=/trunk/; revision=24014
2007-10-31 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangletool.c: some general indentation, spacing
and coding style convention paranoia cleanups.
(gimp_rectangle_tool_get_constraints): set all return values also
when bailing out early to avoid valgrind warnings about
uninitialized memory.
svn path=/trunk/; revision=24009
2007-10-30 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleselecttool.c
(gimp_rect_select_tool_round_corners_notify): Update the selection
when Rounded corners is toggled or the radius is changed as
discussed in bug #418284.
svn path=/trunk/; revision=23991
2007-10-30 Sven Neumann <sven@gimp.org>
Fix drawing of straight lines using the Shift key and a tablet
(bug #164240):
* app/tools/gimppainttool.c (gimp_paint_tool_button_press): set
use_pressure to FALSE when drawing a straight line.
* app/paint/gimppaintbrush.c (_gimp_paintbrush_motion): respect
the use_pressure flag.
svn path=/trunk/; revision=23988
2007-10-29 Sven Neumann <sven@gimp.org>
Fix bug #491272 (no cursor drawn for small brush sizes):
* app/tools/gimpbrushtool.[ch]
(gimp_brush_tool_draw_brush): don't draw the brush outline if it
becomes too small. Instead draw a small cross, but only if
"draw_fallback" was passed as TRUE.
(gimp_brush_tool_draw_brush): pass TRUE for "draw_fallback" if
cursor drawing is disabled for the paint tools.
* app/tools/gimpsourcetool.c (gimp_source_tool_draw): pass FALSE
for "draw_fallback".
* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_cross_by_anchor):
draw a symmetric cross for odd handle sizes.
svn path=/trunk/; revision=23984
2007-10-26 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c (struct GimpRectangleToolPrivate):
Renamed handle_[wh] to corner_handle_[wh] since that are the
appropriate names.
svn path=/trunk/; revision=23960
2007-10-26 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c (gimp_rectangle_tool_oper_update):
Use new helper functions to decide if the cursor is on a
handle (or outside of the rectangle + handle bounds) to ease the
introduction of having handles on the outside of the pending
rectangle.
(gimp_rectangle_tool_coord_outside)
(gimp_rectangle_tool_coord_on_handle): New helper functions.
svn path=/trunk/; revision=23959
2007-10-26 Sven Neumann <sven@gimp.org>
Reenabled update of the histogram while doing color corrections
(bug 490182):
* app/core/gimpviewable.[ch]: added new methods preview_freeze()
and preview_thaw().
* app/core/gimpimagemap.c
(gimp_image_map_new): freeze the drawable preview.
(gimp_image_map_dispose): thaw the drawable preview.
(gimp_image_map_do): update the drawable, not the image.
* app/tools/gimpimagemaptool.c (gimp_image_map_tool_response): no
need to invalidate the drawable preview any longer.
svn path=/trunk/; revision=23956
2007-10-22 Sven Neumann <sven@gimp.org>
* app/tools/gimppaintoptions-gui.c: changed aspect ratio of the
wrap-box used for the "Pressure sensitivity" controls to make
them
fit better into the tool-options.
svn path=/trunk/; revision=23910
2007-10-22 Sven Neumann <sven@gimp.org>
* app/tools/gimpsourcetool.[ch]: don't draw the source brush
outline while selecting a new source location (bug #488839).
svn path=/trunk/; revision=23902
2007-10-17 Sven Neumann <sven@gimp.org>
* app/tools/gimpselectionoptions.c: removed a frame.
* app/tools/gimptransformoptions.c: tweaked layout to reduce
horizontal extent.
* app/widgets/gimpviewablebox.c (gradient_box_new): use an icon
for the "Reverse" check button.
svn path=/trunk/; revision=23857
2007-10-16 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimppropwidgets.c (gimp_prop_size_entry_new):
honor the "show-pixels" and "show-percent" properties of the unit
param spec.
* app/tools/gimprectangletool.c (gimp_rectangle_tool_start): set
the image's width/height on the size entries so the percent unit
works correctly.
svn path=/trunk/; revision=23852
2007-10-16 Sven Neumann <sven@gimp.org>
* app/tools/gimpselectionoptions.c (gimp_selection_options_gui):
changed "Show interactive boundary" to "Interactive boundary".
* app/tools/gimptextoptions.c: align the color panel with the
button box below it.
svn path=/trunk/; revision=23851
2007-10-16 Sven Neumann <sven@gimp.org>
* app/tools/gimptextoptions.c (gimp_text_options_gui): changed
"Create Path from Text" to "Path from Text".
svn path=/trunk/; revision=23846
2007-10-16 Sven Neumann <sven@gimp.org>
* app/tools/gimpvectoroptions.c (gimp_vector_options_gui):
Changed "Create Selection from Path" to "Selection from Path".
svn path=/trunk/; revision=23845
2007-10-16 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangleoptions.c: redid the x, y, width and
height entries according to a mockup from peter.
svn path=/trunk/; revision=23843
2007-10-15 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimpaligntool.c (gimp_align_tool_draw): Use
gimp_vectors_bounds() instead of gimp_item_offsets|width|height()
when calculating bounding rectangle for a path. Part of a fix for
bug #486517.
svn path=/trunk/; revision=23832
2007-10-15 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangleoptions.[ch]: split the "unit" property
into "position-unit" and "size-unit" and added a unit menu to the
position widget group. UI pending further changes...
svn path=/trunk/; revision=23831
2007-10-15 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
moved the "Highlight" toggle down to the "Guides" combo.
svn path=/trunk/; revision=23830
2007-10-15 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangleoptions.[ch]: added the x and y size
entries to the GimpRectangleOptionPrivate struct.
* app/tools/gimprectangletool.c (gimp_rectangle_tool_start): set
the image's resolution on the x, y, width and height size entries.
svn path=/trunk/; revision=23829
2007-10-14 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
Reduced the Width: and Height: labels to W: and H:. Please check
and comment, we need some solution for this group of widgets
including the unit menu.
svn path=/trunk/; revision=23825
2007-10-14 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
enable the unit menu on the "Height" entry. Looks like crap and
needs to be changed, but the unit functionality is almost complete
now.
svn path=/trunk/; revision=23824
2007-10-14 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangleoptions.[ch]: renamed properties x0 and
y0 to x and y. Also reordered all property code to be in the same
order and added some empty lines to group the properties.
* app/tools/gimprectangletool.c: changed accordingly.
svn path=/trunk/; revision=23822
2007-10-14 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimppropwidgets.[ch] (gimp_prop_size_entry_new):
added parameter "gboolean property_is_pixel" which indicates that
the stored property value is always in pixels and not in the
selected unit.
* app/tools/gimptextoptions.c
* app/widgets/gimpstrokeeditor.c: pass FALSE to keep the old
behavior.
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
added property "fixed-unit" which is used for all fixed values
now. Perhaps we need separate units for width/height/size. Enable
the unit menu on the "Width" and "Height" size entries of the
"Fixed" section and configure them to store the value in
pixels. This was the easy part, some other widgets still need unit
support.
* app/tools/gimprectangletool.c (gimp_rectangle_tool_start): set
the image's resolution on the size entries changed above.
svn path=/trunk/; revision=23821
2007-10-14 Raphael Quinet <raphael@gimp.org>
* app/tools/gimpaligntool.[ch]: Re-wrote the cursor handling
logic, added cursor modifiers, added hints in the status bar in
order to make it easier to discover how to use the tool. Adds new
translatable strings, fixes bug #486110.
svn path=/trunk/; revision=23819
2007-10-14 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_options_notify): When Fixed: Size/Aspect
ratio numbers are swapped and the Fixed:-rule is active, swap
width and height on any pending rectangle. Fixed bug #479999.
svn path=/trunk/; revision=23818
2007-10-13 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_apply_aspect): Use ROUND() not round().
svn path=/trunk/; revision=23816
2007-10-13 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_apply_aspect): Use round() when solving the
aspect ratio equations as this produces more accurate results.
svn path=/trunk/; revision=23811
2007-10-12 Michael Natterer <mitch@gimp.org>
* app/tools/gimprectangleoptions.[ch]: massively simplified the
fixed rule widget showing/hiding, fixed their spacing, make sure
they don't cause UI resizing on rule change.
svn path=/trunk/; revision=23809
2007-10-11 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-callbacks.c
(gimp_display_shell_canvas_tool_events): if we need to
delete/create tools on button press because the active tool
doesn't support changing drawables, make sure the newly created
tool gets its focus_display and modifier states set correctly.
Fixes bug #485119. Improved disabled debug output.
* app/tools/gimptool.c: stylistic cleanup in debug output.
svn path=/trunk/; revision=23803
2007-10-10 Sven Neumann <sven@gimp.org>
* app/tools/gimprectangleoptions.c
(gimp_rectangle_options_string_current_updates): an object can
access its own private struct directly.
svn path=/trunk/; revision=23791
2007-10-09 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleoptions.[ch]: Connect a new function
gimp_rectangle_options_string_current_updates() that updates the
Fixed: Aspect entry with a 'Current' string when aspect of the
current pending rectangle is used, and sets sensitivity FALSE on
aspect ratio changing buttons when that string is shown. Prevents
the confusion mentioned in bug #479999.
A new Rectangle Options property 'use-string-current' has been
added that should be refactored away from the options object along
with references to option widgets.
* app/tools/gimprectangleselecttool.c
(gimp_rect_select_tool_update_option_defaults): Set default Fixed:
Aspect ratio to that of the pending rectangle, and always have
default Fixed: Size as 100x100.
* app/tools/gimpcroptool.c
(gimp_crop_tool_update_option_defaults): Always have default
Fixed: Size 100x100.
* libgimpwidgets/gimpnumberpairentry.[ch]
(gimp_number_pair_entry_class_init): Add a new property
'default-text' that contains text to be shown instead of numbers
when default numbers are to be shown.
(gimp_number_pair_entry_get_default_text)
(gimp_number_pair_entry_set_default_text): Getter and setter for
it.
* libgimpwidgets/gimpwidgets.def: Updated.
svn path=/trunk/; revision=23788
2007-10-08 Sven Neumann <sven@gimp.org>
* app/tools/gimpperspectiveclonetool.c: implement button_release
and stop the draw tool when in adjust mode. Fixes bug #483912.
(gimp_perspective_clone_tool_mode_notify): start the draw tool.
svn path=/trunk/; revision=23770
2007-10-06 Sven Neumann <sven@gimp.org>
* app/tools/gimpeditselectiontool.c
(gimp_edit_selection_tool_draw):
check that there are segments to draw before calling
gimp_draw_tool_draw_boundary().
svn path=/trunk/; revision=23750
2007-09-23 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleselecttool.c
(gimp_rect_select_tool_should_draw): New name for
gimp_rect_select_selection_visible() which has been changed to
always return TRUE when the tool is active, i.e. when a rectangle
is being create or resized. Better fix for bug #479426.
svn path=/trunk/; revision=23623
2007-09-23 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleselecttool.c
(gimp_rect_select_tool_draw): Only draw the rectangle when `Show
selection' is `true', with the help of a new function
gimp_rect_select_tool_selection_visible(). Fixes bug #474509.
svn path=/trunk/; revision=23621
2007-09-22 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimpcropoptions.[ch]: Add an allow-growing option.
* app/tools/gimpcroptool.c: Take the new allow-growing option into
account when setting crop rectangle constraints, and restructure
the code a bit.
(gimp_crop_tool_execute): Allow rectangles larger than the
image/layer being sent to gimp_image_crop() since that function
handles that fine. These changes fixes bug #368325.
svn path=/trunk/; revision=23616
2007-09-22 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_set_constraint): Enforce constraints of any
pending rectangle when setting a constraint.
svn path=/trunk/; revision=23615
2007-09-13 Michael Natterer <mitch@gimp.org>
* configure.in: remove FOO_DISABLE_DEPRECATED for only glib >= 2.15
and gtk+ >= 2.13, GIMP builds fine against the 2.14 and 2.12 APIs
apart from:
* app/tools/gimpselectionoptions.c
* libgimpwidgets/gimphelpui.c: undef GTK_DISABLE_DEPRECATED because
GtkTooltips is deprecated in gtk+ 2.12.
* libgimp/gimpui.c
* plug-ins/common/pat.c: the address of an array is always
non-NULL, no need to check for that. Fixes new gcc warnings.
svn path=/trunk/; revision=23522
2007-09-02 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleselecttool.c
(gimp_rect_select_tool_update_option_defaults): New function to
update default values for Fixed: Size. This function is called to
update defaults values for Fixed: Size to that of the pending
rectangle width x height if there is one, or 100x100 otherwise.
* app/tools/gimpcroptool.c
(gimp_crop_tool_update_option_defaults): Set Fixed: Size to the
size of the pending crop rectangle, or 100x100 if there is none.
svn path=/trunk/; revision=23440
2007-09-01 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimpcroptool.c
(gimp_crop_tool_update_default_fixed_ratio_options):
Generalize the default Fixed: Aspect ratio option setting code
so that it can later be used for Fixed: Size as well, and move
it to
* app/tools/gimprectangletool.[ch]
(gimp_rectangle_tool_pending_size_set)
(gimp_rectangle_tool_constraint_size_set): and use these two new
functions instead.
svn path=/trunk/; revision=23435
2007-08-21 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_update_with_coord): Don't adjust the
rectangle shape if it is is merely being moved.
svn path=/trunk/; revision=23343
2007-08-18 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c: Don't make
GIMP_RECTANGLE_CONSTRAIN_NONE into GIMP_RECTANGLE_CONSTRAIN_IMAGE,
and restructure the code a bit in the rectagle adjusting functions
so that they can handle the _NONE constraint. The effect of this
change is that rectangle tools no longer are constrained when
using fixed-rules.
svn path=/trunk/; revision=23319
2007-08-18 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_button_press): Clear highlight in previously
active shell when changing active shell.
svn path=/trunk/; revision=23318
2007-08-18 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimpcroptool.c (gimp_crop_tool_button_release): Call
gimp_crop_tool_update_default_fixed_ratio_options after
gimp_rectangle_tool_button_release, so that the state of the
rectangle tool is reflected when updating the default aspect.
svn path=/trunk/; revision=23317
2007-08-18 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimpcroptool.c
(gimp_crop_tool_update_default_fixed_ratio_options): Added a
'ignore_pending' boolean parameter so that the pending rectangle
can be ignored in gimp_crop_tool_execute, as it should be.
svn path=/trunk/; revision=23316
2007-08-17 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimpcroptool.c
(gimp_crop_tool_constructor): Connect to the "image-changed"
signal of GimpContext and update default aspect when image
changes (fixes bug #417166), by using
(gimp_crop_tool_update_default_fixed_ratio_options): which is a
new function that does this. This function is called whenever it
is time to update defualts.
* app/tools/gimprectangletool.[ch]: Made
gimp_rectangle_tool_get_constraint part of the rectangle tool API.
svn path=/trunk/; revision=23312
2007-08-17 Michael Natterer <mitch@gimp.org>
* app/tools/gimpperspectiveclonetool.c (motion)
* app/tools/gimpsourcetool.c (motion): don't allow to ctrl-switch
between clone and set-source mode while painting. It's totally
unclear to me why we used to allow this since it doesn't make much
sense and isn't very intuitive either. Fixes bug #467605.
svn path=/trunk/; revision=23302
2007-08-13 Sven Neumann <sven@gimp.org>
* libgimpwidgets/gimpnumberpairentry.c: use italic font if not in
user-override mode.
* app/tools/gimprectangleoptions.c: removed auto-mode icon.
* themes/Default/images/Makefile.am
* themes/Default/images/stock-auto-mode-16.png
* libgimpwidgets/gimpnumberpairentry.[ch]: removed
GIMP_STOCK_AUTO_MODE.
svn path=/trunk/; revision=23231
2007-08-13 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
Put the auto-mode GtkImage to the right of the Aspect ratio/Size
entry instead of to the left.
svn path=/trunk/; revision=23228
2007-08-12 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
Set a 16x16 size request on the auto-mode images.
svn path=/trunk/; revision=23227
2007-08-12 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleoptions.[ch]: Setup a
GIMP_STOCK_AUTO_MODE GtkImage to be shown in the options when
Fixed: Aspect ratio/Size entries are in auto-mode.
* themes/Default/images/Makefile.am: Added
stock-auto-mode-16.png (which is a copy of
preferences/folders-interp-16.png for now).
* libgimpwidgets/gimpstock.[ch]: Added GIMP_STOCK_AUTO_MODE.
svn path=/trunk/; revision=23224
2007-08-11 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimpcroptool.c (gimp_crop_tool_execute): Initialize
'tool' before using it.
svn path=/trunk/; revision=23210
2007-08-11 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_update_handle_sizes): Update handle sizes
based on the shell-visible part of the rectangle.
(gimp_rectangle_tool_start, gimp_rectangle_tool_halt):
Connect/disconnect to the "scrolled" signal of the shell and
update handle sizes.
svn path=/trunk/; revision=23204
2007-08-11 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_button_release): Halt the tool on cancel if a
rectangle has not previously been created.
svn path=/trunk/; revision=23202
2007-08-11 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_update_highlight): Renamed from
gimp_rectangle_tool_set_highlight
(gimp_rectangle_tool_button_release): Add call to
gimp_rectangle_tool_update_highlight to keep highlight in sync
when a crop rectangle is cancelled.
svn path=/trunk/; revision=23201
2007-08-10 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimpcroptool.c (gimp_crop_tool_button_release): Set
default 'Fixed: Aspect ratio' values to the size of the pending
crop rectangle. Fixes bug #355545.
* app/tools/gimprectangletool.[ch]
(gimp_rectangle_tool_get_rectangle_size): New helper function.
svn path=/trunk/; revision=23194
2007-08-10 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleoptions.c: Added
"default-aspect-numerator", "default-aspect-denominator",
"default-fixed-size-width" and "default-fixed-size-height" as
non-serialized tool options, and "overridden-fixed-aspect" and
"overridden-fixed-size" as serialized ones.
* app/widgets/gimppropwidgets.c (gimp_prop_number_pair_entry_*):
Added support for the new GimpRectangleOptions.
svn path=/trunk/; revision=23187
2007-08-10 Martin Nordholts <martinn@svn.gnome.org>
* app/widgets/gimppropwidgets.[ch]: Merged gimp_prop_size_2d_* and
gimp_prop_aspect_ratio_* to gimp_prop_number_pair_*.
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
Use the merged gimp_prop_number_pair_entry_new.
svn path=/trunk/; revision=23184
2007-08-08 Martin Nordholts <martinn@svn.gnome.org>
Renamed GimpRatioEntry to GimpNumberPairEntry, and generalized the
code a lot, so that it can be used both for 'Fixed: Aspect ratio'
and 'Fixed: Size'. Support is also added for having default values
and a 'user overrided' value mode.
* libgimpwidgets/gimpnumberpairentry.[ch]: Now contains the
rewrite and generalization of GimpRatioEntry.
(gimp_number_pair_entry_get_type)
(gimp_number_pair_entry_new)
(gimp_number_pair_entry_set_default_values)
(gimp_number_pair_entry_set_values)
(gimp_number_pair_entry_get_values): New libgimpwidget API.
* app/widgets/gimppropwidgets.[ch] (gimp_prop_size_2d_new): Added
new helper widget for setting up a GimpNumberPairEntry for the
Fixed: Size entry in the Rectangle Options.
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
Use the new gimp_prop_size_2d_entry for the Fixed: Size entry.
* libgimpwidgets/gimpwidgets.def: Removed gimp_ratio_entry_* and
added gimp_number_pair_entry_*.
* libgimpwidgets/gimpwidgets.h * libgimpwidgets/gimpwidgetstypes.h
* libgimpwidgets/Makefile.am (libgimpwidgets_2_0_la_sources)
(libgimpwidgetsinclude_HEADERS): Updated accordingly.
svn path=/trunk/; revision=23154
2007-08-08 Martin Nordholts <martinn@svn.gnome.org>
* libgimpwidgets/gimpratioentry.[ch]: Migrate entry completion
code and put responsability on clients to set that up when needed.
* app/tools/gimprectangleoptions.[ch]: Setup entry completion code
manually for the GimpRatioEntry widgets by using
(gimp_rectangle_options_setup_ratio_completion)
(gimp_ratio_entry_history_select, gimp_ratio_entry_history_add):
these new functions.
svn path=/trunk/; revision=23149
2007-08-08 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangleoptions.[ch]: Use separate
desired-fixed-size-width/height properties for Fixed: Size instead
of sharing properties with Fixed: Width/Height.
* app/tools/gimprectangletool.c: Use the two new properties for
Fixed: Size.
svn path=/trunk/; revision=23140
2007-08-05 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): When
a new rectangle is created and Fixed: Size is used, set rectangle
function to RECT_MOVING.
svn path=/trunk/; revision=23117
2007-08-04 Martin Nordholts <martinn@svn.gnome.org>
Update rectangle tool options to bring it closer to the spec. The
major change is the use of a 'Fixed:' check box and a 'Aspect
ratio/Width/Height/Size' combo box. The check box is togglable
with Shift while rubber-banding.
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_active_modifier_key): Set other side also
when Shift is released.
(gimp_rectangle_tool_update_options): Don't supress updates of
tool options on fixed width/height/size
(gimp_rectangle_tool_apply_fixed_height)
(gimp_rectangle_tool_update_with_coord)
(gimp_rectangle_tool_handle_general_clamping): Use new tool option
interface and members.
* app/tools/gimprectangleoptions.[ch]
(gimp_rectangle_options_iface_base_init)
(gimp_rectangle_options_install_properties)
(gimp_rectangle_options_(get|set)_property): Remove and add
relevant properties.
(gimp_rectangle_options_private_finalize): Unref the new widgets
used in tool options.
(gimp_rectangle_options_fixed_rule_changed): New, update tool
options depending on current option state.
(gimp_rectangle_options_gui): Modified according to change log
entry summary.
(gimp_rectangle_options_unparent_fixed_rule_widgets): New helper.
(gimp_rectangle_options_fixed_rule_active): New, clients should
use this to find out if a certain fixed-mode is active.
* app/tools/tools-enums.[ch]: Added GimpRectangleToolFixedRule.
svn path=/trunk/; revision=23114
2007-08-04 Martin Nordholts <martinn@svn.gnome.org>
Don't apply fixed aspect on pending rectangles that are not being
rubber-banded, when this is changed in the rectangle tool options.
* app/tools/gimprectangletool.c (gimp_rectangle_tool_options_notify):
Don't synthesize motion for fixed aspect ratio options changes
* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui): Removed
callback to
(gimp_rectangle_options_notify_aspect): which is not needed any more,
and hence is removed.
svn path=/trunk/; revision=23113
2007-08-02 Michael Natterer <mitch@gimp.org>
* app/tools/gimpcroptool.c (gimp_crop_tool_cursor_update): no need
to set the tool cursor here, we already do that in init() and
never change it.
* app/widgets/gimpcursor.c (gimp_cursor_new): don't show the move
cursor and the move modifier at the same time. Some small
cleanups.
svn path=/trunk/; revision=23104
2007-07-25 Michael Natterer <mitch@gimp.org>
* app/tools/gimptool.c (gimp_tool_set_active_modifier_state):
don't have the tool release ALT when the user releases CONTROL.
Fixes another stuck modifier instance and other modifier
weirdness.
svn path=/trunk/; revision=22992