2007-11-11 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.[ch]: Removed
gimp_rectangle_tool_get_press_coords() as it doesn't make sense
for a rectangle tool interface to provide this functionality.
Clients should take care of that themselves. Also adjusted
internal code accordingly.
* app/tools/gimprectangleselecttool.c: Remember the pressed
coordinates on _button_press instead of asking GimpRectangleTool
about it.
svn path=/trunk/; revision=24119
2007-11-11 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c: Lessen code bloat by removing
code that manages center-[xy] properies of GimpRectangleOptions.
Instead use x1, y1 and x2, y2 when working with the rectangle
center.
* app/tools/gimprectangleoptions.[ch]: Removed "center-x" and
"center-y" properties.
svn path=/trunk/; revision=24115
2007-11-10 Michael Natterer <mitch@gimp.org>
* app/tools/gimpairbrushtool.c (gimp_airbrush_tool_init)
* app/tools/gimppenciltool.c (gimp_pencil_tool_init): don't enable
color picking, it already gets enabled by the parent class.
svn path=/trunk/; revision=24109
2007-11-09 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimphelpui.[ch]: use the new tooltip API instead
of the old deprecated one. Removed _gimp_help_init(). Remember
whether tooltips are enabled or not in a local variable that can
only be altered at startup time and not after. The API now expects
markup instead of plain text which might cause warnings and
perhaps needs to be changed.
* libgimpwidgets/gimpwidgets-private.c: don't call _gimp_help_init().
* app/config/gimpguiconfig.c: made show-tooltips a
GIMP_CONFIG_PARAM_RESTART property.
* app/widgets/gimptoolbox-color-area.c: don't add the tooltip here...
* app/widgets/gimptoolbox.c: ...but here (as for all other
indicators). Also escape '&' properly because we now use markup.
* app/tools/gimpselectionoptions.c
* app/widgets/gimpeditor.c
* app/widgets/gimpwidgets-utils.c: print modifiers and
shortcuts in bold instead of in ().
* app/widgets/gimpcontainertreeview.c: show tooltips on rows if
gimp_viewable_get_description() returns a tip.
* app/dialogs/preferences-dialog.c
* plug-ins/jpeg/jpeg-save.c
* plug-ins/MapObject/mapobject_ui.c
* plug-ins/Lighting/lighting_ui.c
* plug-ins/common/animationplay.c
* plug-ins/common/warp.c: no need to add event boxes just to have
tooltips, the new ones work on all widgets.
svn path=/trunk/; revision=24093
2007-11-06 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_update_handle_sizes): Don't use any dead
areas in narrow-mode, and adjust constants a bit.
* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_corner): Adjusted
to always draw side handles in narrow mode without dead areas.
svn path=/trunk/; revision=24077
2007-11-05 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): Bail
out early if the rectangle function is RECT_DEAD. This prevents
flickering.
svn path=/trunk/; revision=24071
2007-11-05 Martin Nordholts <martinn@svn.gnome.org>
* app/tools/gimprectangletool.c: also don't show the shell
highlight when a rectangle is being moved. Achieved through
slightly modifying code logic and renaming variables and functions
a bit.
svn path=/trunk/; revision=24070
2007-11-05 Michael Natterer <mitch@gimp.org>
* app/core/gimpcurve.[ch]: don't recalculate the curve if the data
object is frozen. Recalculate on thaw instead. Made
gimp_curve_calculate() private and emit some GimpData::dirty
signals where appropriate.
* app/tools/gimpcurvestool.c
* app/widgets/gimpcurveview.c
* tools/pdbgen/pdb/color.pdb: changed accodingly (connect to "dirty"
instead of "notify" and added some freeze/thaw where approproate).
* app/pdb/color_cmds.c: regenerated.
svn path=/trunk/; revision=24063
2007-11-05 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcurveview.[ch]: added event handling and
completely edit the curve here.
* app/tools/gimpcurvestool.[ch]: remove all event handling and
curve editing code and only listen to curve signals.
svn path=/trunk/; revision=24060
2007-11-04 Martin Nordholts <martinn@svn.gnome.org>
Do not do shell darkening while GimpRectangleTool rectangles are
being rubber-banded.
* app/tools/gimprectangletool.c
(gimp_rectangle_tool_button_press)
(gimp_rectangle_tool_button_release): Maintain a variable keeping
track of if the rectangle is being rubber banded or not.
(gimp_rectangle_tool_update_highlight): Do not set a shell
highligt if the rectangle is being rubber-banded.
(gimp_rectangle_tool_rubber_banding_func): New helper function.
svn path=/trunk/; revision=24059
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