2007-11-20 Michael Natterer <mitch@gimp.org>
* app/widgets/widgets-types.h
* app/widgets/Makefile.am
* app/widgets/gimphandlebar.[ch]: new widget implementing the slider
bar known from histogram and levels.
* app/widgets/gimphistogrambox.[ch]: use the new widget. General
cleanup and UI streamlining.
svn path=/trunk/; revision=24198
2007-11-19 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcurveview.[ch]: draw a base-line with the
grid.
Not sure if this should stay enabled for the Curves tool...
svn path=/trunk/; revision=24196
2007-11-16 Michael Natterer <mitch@gimp.org>
* app/gimp-log.[ch]: add HELP log domain.
* app/widgets/gimphelp.c: port debug output to GIMP_LOG() and
improve it.
svn path=/trunk/; revision=24177
2007-11-15 Michael Natterer <mitch@gimp.org>
* app/core/gimpviewable.[ch]: add read-only property "frozen" and
new API gimp_viewable_preview_is_fozen(). Emit property notifications.
* app/widgets/gimphistogramview.[ch]: add API to show a second
histogram in the background. Remove member "light_histogram" from
the GimpHistogramViewClass struct.
* app/widgets/gimpcurveview.c: don't set "light_histogram".
* app/tools/gimpcurvestool.c: set the background histogram instead.
* app/widgets/gimphistogrameditor.[ch]: connect to "notify::frozen"
of the drawable and show its histogram at the freezing point in
the background. This way the original histogram is visible while
we are doing color corrections.
svn path=/trunk/; revision=24158
2007-11-14 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcolorframe.[ch]: replaced the number label with
a big Cairo-drawn number below the color value labels.
svn path=/trunk/; revision=24157
2007-11-14 Michael Natterer <mitch@gimp.org>
* app/display/gimpcanvas.c
* app/widgets/gimpcurveview.c: free the cached PangoLayouts in
GtkWidget::style_set().
* app/widgets/gimppaletteview.c: draw the focus rectangle in
hardcoded black/white since we also hardcode the grid color to
black.
* app/display/gimpstatusbar.c
* app/widgets/gimpdockable.c: small cleanups while reviewing
layout code.
svn path=/trunk/; revision=24156
2007-11-14 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcolorframe.[ch]: replaced the number label with
a big Cairo-drawn number below the color value labels.
svn path=/trunk/; revision=24155
2007-11-13 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpviewrenderer.c (gimp_view_renderer_draw): use
cairo_save()/cairo_restore() around calling the virtual function
instead of restoring the clipping area manually.
svn path=/trunk/; revision=24148
2007-11-13 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpviewrenderervectors.c
(gimp_view_renderer_vectors_draw): naive port to Cairo. Somebody
should check if this isn't better done with proper curve_to()
drawing using the original vectors data instead of interpolation.
* app/widgets/gimpviewrenderer.c (gimp_view_renderer_draw): reset
clipping before drawing the border because a subclass' draw()
might have done additional clipping.
svn path=/trunk/; revision=24147
2007-11-13 Sven Neumann <sven@gimp.org>
Fix for bug #494049 (painting doesn't update the histogram):
* app/paint/gimppaintcore.c: freeze the drawable preview while we
are painting. Update the drawable instead of the image.
* app/widgets/gimphistogrameditor.c: use a short timeout instead
of an idle handler to update the histogram.
svn path=/trunk/; revision=24143
2007-11-09 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcurveview.c (gimp_curve_view_expose): align
the
overlay with the pixel grid.
svn path=/trunk/; revision=24104
2007-11-09 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcurveview.c: draw the selected point filled
and
outlines for the unselected points.
svn path=/trunk/; revision=24103
2007-11-09 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcurveview.c (gimp_curve_view_expose): draw the
center grid lines slightly stronger than the other grid lines.
svn path=/trunk/; revision=24102
2007-11-09 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcurveview.c (gimp_curve_view_expose): draw the
cursor position using a translucent overlay.
svn path=/trunk/; revision=24101
2007-11-09 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcurveview.[ch]: added construct-only
properties
to control the number of grid rows and columns. Increased the
default values to 8.
svn path=/trunk/; revision=24099
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-05 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpcurveview.c (gimp_curve_view_expose): translate
by 0.5,0.5 instead of adding 0.5 to all coordinates (we always
want to draw on pixel centers here). Some cleanup.
svn path=/trunk/; revision=24072
2007-11-05 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcairo-utils.h: introduced macros to set a
single
pixel in a Cairo surface without having to worry about
endianness.
* app/widgets/gimpcairo-utils.c
* app/widgets/gimpviewrenderer.c
* app/widgets/gimpviewrenderergradient.c
* app/widgets/gimpviewrendererpalette.c: use the new macros.
svn path=/trunk/; revision=24065
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 Sven Neumann <sven@gimp.org>
* app/widgets/gimpviewrendererbrush.c: implement
GimpViewRenderer::draw and draw the overlays with Cairo.
* app/widgets/gimpviewrenderer.[ch]
* app/widgets/gimpviewrenderervectors.c: minor cleanups.
svn path=/trunk/; revision=24058
2007-11-04 Sven Neumann <sven@gimp.org>
* app/widgets/gimpviewrenderer.[ch]: replaced the RGB buffer
with
a Cairo surface.
* app/widgets/gimpviewrendererbuffer.c
* app/widgets/gimpviewrendererbrush.c
* app/widgets/gimpviewrendererdrawable.c
* app/widgets/gimpviewrenderergradient.c
* app/widgets/gimpviewrendererimage.c
* app/widgets/gimpviewrendererpalette.c
* app/widgets/gimpviewrenderervectors.c: changed accordingly.
There
are some loose ends here that will be fixed over the next days.
* app/widgets/gimprender.c: removed gimp_render_temp_buf; it is
not any longer needed.
* app/core/gimpgradient.c (gimp_gradient_get_preview_size):
return
an odd preview height to make the border align with the pixel
grid.
svn path=/trunk/; revision=24056
2007-11-04 Sven Neumann <sven@gimp.org>
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpnavigationview.c: use
gdk_event_request_motions() to handle motion hint events.
svn path=/trunk/; revision=24052
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 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcairo-utils.[ch]: added utility function to create
a Cairo surface from a GdkPixbuf.
* app/widgets/gimpviewrenderer.c (gimp_view_renderer_create_pattern):
use it from here.
svn path=/trunk/; revision=24043
2007-11-02 Sven Neumann <sven@gimp.org>
* app/widgets/gimpcairo-utils.c (gimp_cairo_set_source_color):
also use the color's alpha channel. Added gtk-doc documentation.
svn path=/trunk/; revision=24040
2007-11-02 Sven Neumann <sven@gimp.org>
* app/widgets/Makefile.am
* app/widgets/gimpcairo-utils.[ch]: new files holding Cairo
utility functions.
* app/widgets/gimpviewrenderer.[ch]: ported partly to Cairo
drawing.
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpcontainercombobox.c
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimplayertreeview.c
* app/widgets/gimpview.c: removed calls to
gimp_view_renderer_unrealize() which are not needed anymore
because we don't allocate a GC in the renderer any longer.
* app/widgets/gimpcellrendererdashes.c: removed a redundant
cast.
svn path=/trunk/; revision=24039
2007-11-01 Sven Neumann <sven@gimp.org>
* app/widgets/gimpviewrenderer.c (gimp_view_renderer_draw):
removed code that draws a diagonal line across a renderer
without
context. Emit a warning instead; this shouldn't happen any
longer.
svn path=/trunk/; revision=24038
2007-10-27 Sven Neumann <sven@gimp.org>
* app/widgets/gimpwidgets-utils.c (gimp_text_buffer_load): close
the file handle.
svn path=/trunk/; revision=23978
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 Sven Neumann <sven@gimp.org>
* libgimp/gimppatternselectbutton.c
* libgimp/gimpbrushselectbutton.c
* libgimpwidgets/gimpcolorarea.c
* app/widgets/gimpdnd.c
* app/widgets/gimpdockbook.c: set GDK_WINDOW_TYPE_HINT_DND on
popup windows used to implement a DND cursor.
svn path=/trunk/; revision=23841
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