mirror of https://github.com/GNOME/gimp.git
Merge branch 'master' into soc-2010-cage-2
This commit is contained in:
commit
d98bd748e7
|
@ -29,7 +29,8 @@ SUBDIRS = \
|
|||
$(GIMP_PLUGINS) \
|
||||
etc \
|
||||
devel-docs \
|
||||
docs
|
||||
docs \
|
||||
build
|
||||
|
||||
bin_SCRIPTS = @GIMPINSTALL@
|
||||
|
||||
|
|
|
@ -85,11 +85,7 @@ gimp_2_7_SOURCES = $(libapp_sources) main.c
|
|||
|
||||
|
||||
EXTRA_DIST = \
|
||||
fileicon.ico \
|
||||
gimp.manifest \
|
||||
gimp.rc.in \
|
||||
makefile.msc \
|
||||
wilber.ico
|
||||
makefile.msc
|
||||
|
||||
if OS_WIN32
|
||||
win32_ldflags = -mwindows $(WIN32_LARGE_ADDRESS_AWARE)
|
||||
|
@ -100,8 +96,9 @@ munix = -Wl,-rpath '-Wl,$$ORIGIN/../lib'
|
|||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
GIMPRC = gimp.rc.o
|
||||
GIMPCONSOLERC = gimp-console.rc.o
|
||||
include $(top_srcdir)/build/windows/gimprc.rule
|
||||
GIMPRC = gimp-$(GIMP_APP_VERSION).rc.o
|
||||
GIMPCONSOLERC = gimp-console-$(GIMP_APP_VERSION).rc.o
|
||||
endif
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
|
@ -272,16 +269,6 @@ dist-dump-gimprc: gimp-console-$(GIMP_APP_VERSION)$(EXEEXT)
|
|||
|
||||
dist-hook: dist-check-gimp-console dist-dump-gimprc
|
||||
|
||||
gimp.rc.o: gimp.rc
|
||||
$(WINDRES) --define ORIGINALFILENAME_STR="gimp-2.7$(EXEEXT)" \
|
||||
--define INTERNALNAME_STR="gimp-2.7" \
|
||||
gimp.rc gimp.rc.o
|
||||
|
||||
gimp-console.rc.o: gimp.rc
|
||||
$(WINDRES) --define ORIGINALFILENAME_STR="gimp-console-2.7$(EXEEXT)" \
|
||||
--define INTERNALNAME_STR="gimp-console-2.7" \
|
||||
gimp.rc gimp-console.rc.o
|
||||
|
||||
# If git is available, always check if git-version.h should be
|
||||
# updated. If git is not available, don't do anything if git-version.h
|
||||
# already exists because then we are probably working with a tarball
|
||||
|
|
|
@ -2531,7 +2531,7 @@ find_best_colors (QuantizeObj *quantobj,
|
|||
int inR, inG, inB; /* initial values for increments */
|
||||
|
||||
/* This array holds the distance to the nearest-so-far color for each cell */
|
||||
int bestdist[BOX_R_ELEMS * BOX_G_ELEMS * BOX_B_ELEMS];
|
||||
int bestdist[BOX_R_ELEMS * BOX_G_ELEMS * BOX_B_ELEMS] = { 0, };
|
||||
|
||||
/* Initialize best-distance for each cell of the update box */
|
||||
bptr = bestdist;
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "libgimpbase/gimpbase.h"
|
||||
#include "libgimpcolor/gimpcolor.h"
|
||||
#include "libgimpwidgets/gimpwidgets.h"
|
||||
|
||||
|
@ -27,7 +26,6 @@
|
|||
|
||||
#include "config/gimpdisplayconfig.h"
|
||||
|
||||
#include "widgets/gimpcairo-wilber.h"
|
||||
#include "widgets/gimpwidgets-utils.h"
|
||||
|
||||
#include "gimpcanvas.h"
|
||||
|
@ -56,7 +54,6 @@ static void gimp_canvas_get_property (GObject *object,
|
|||
GValue *value,
|
||||
GParamSpec *pspec);
|
||||
|
||||
static void gimp_canvas_realize (GtkWidget *widget);
|
||||
static void gimp_canvas_unrealize (GtkWidget *widget);
|
||||
static void gimp_canvas_style_set (GtkWidget *widget,
|
||||
GtkStyle *prev_style);
|
||||
|
@ -76,91 +73,6 @@ G_DEFINE_TYPE (GimpCanvas, gimp_canvas, GIMP_TYPE_OVERLAY_BOX)
|
|||
#define parent_class gimp_canvas_parent_class
|
||||
|
||||
|
||||
static const guchar stipples[GIMP_CANVAS_NUM_STIPPLES][8] =
|
||||
{
|
||||
{
|
||||
0xF0, /* ####---- */
|
||||
0xE1, /* ###----# */
|
||||
0xC3, /* ##----## */
|
||||
0x87, /* #----### */
|
||||
0x0F, /* ----#### */
|
||||
0x1E, /* ---####- */
|
||||
0x3C, /* --####-- */
|
||||
0x78, /* -####--- */
|
||||
},
|
||||
{
|
||||
0xE1, /* ###----# */
|
||||
0xC3, /* ##----## */
|
||||
0x87, /* #----### */
|
||||
0x0F, /* ----#### */
|
||||
0x1E, /* ---####- */
|
||||
0x3C, /* --####-- */
|
||||
0x78, /* -####--- */
|
||||
0xF0, /* ####---- */
|
||||
},
|
||||
{
|
||||
0xC3, /* ##----## */
|
||||
0x87, /* #----### */
|
||||
0x0F, /* ----#### */
|
||||
0x1E, /* ---####- */
|
||||
0x3C, /* --####-- */
|
||||
0x78, /* -####--- */
|
||||
0xF0, /* ####---- */
|
||||
0xE1, /* ###----# */
|
||||
},
|
||||
{
|
||||
0x87, /* #----### */
|
||||
0x0F, /* ----#### */
|
||||
0x1E, /* ---####- */
|
||||
0x3C, /* --####-- */
|
||||
0x78, /* -####--- */
|
||||
0xF0, /* ####---- */
|
||||
0xE1, /* ###----# */
|
||||
0xC3, /* ##----## */
|
||||
},
|
||||
{
|
||||
0x0F, /* ----#### */
|
||||
0x1E, /* ---####- */
|
||||
0x3C, /* --####-- */
|
||||
0x78, /* -####--- */
|
||||
0xF0, /* ####---- */
|
||||
0xE1, /* ###----# */
|
||||
0xC3, /* ##----## */
|
||||
0x87, /* #----### */
|
||||
},
|
||||
{
|
||||
0x1E, /* ---####- */
|
||||
0x3C, /* --####-- */
|
||||
0x78, /* -####--- */
|
||||
0xF0, /* ####---- */
|
||||
0xE1, /* ###----# */
|
||||
0xC3, /* ##----## */
|
||||
0x87, /* #----### */
|
||||
0x0F, /* ----#### */
|
||||
},
|
||||
{
|
||||
0x3C, /* --####-- */
|
||||
0x78, /* -####--- */
|
||||
0xF0, /* ####---- */
|
||||
0xE1, /* ###----# */
|
||||
0xC3, /* ##----## */
|
||||
0x87, /* #----### */
|
||||
0x0F, /* ----#### */
|
||||
0x1E, /* ---####- */
|
||||
},
|
||||
{
|
||||
0x78, /* -####--- */
|
||||
0xF0, /* ####---- */
|
||||
0xE1, /* ###----# */
|
||||
0xC3, /* ##----## */
|
||||
0x87, /* #----### */
|
||||
0x0F, /* ----#### */
|
||||
0x1E, /* ---####- */
|
||||
0x3C, /* --####-- */
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
static void
|
||||
gimp_canvas_class_init (GimpCanvasClass *klass)
|
||||
{
|
||||
|
@ -170,7 +82,6 @@ gimp_canvas_class_init (GimpCanvasClass *klass)
|
|||
object_class->set_property = gimp_canvas_set_property;
|
||||
object_class->get_property = gimp_canvas_get_property;
|
||||
|
||||
widget_class->realize = gimp_canvas_realize;
|
||||
widget_class->unrealize = gimp_canvas_unrealize;
|
||||
widget_class->style_set = gimp_canvas_style_set;
|
||||
widget_class->focus_in_event = gimp_canvas_focus_in_event;
|
||||
|
@ -197,9 +108,6 @@ gimp_canvas_init (GimpCanvas *canvas)
|
|||
|
||||
for (i = 0; i < GIMP_CANVAS_NUM_STYLES; i++)
|
||||
canvas->gc[i] = NULL;
|
||||
|
||||
for (i = 0; i < GIMP_CANVAS_NUM_STIPPLES; i++)
|
||||
canvas->stipple[i] = NULL;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -240,18 +148,6 @@ gimp_canvas_get_property (GObject *object,
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
gimp_canvas_realize (GtkWidget *widget)
|
||||
{
|
||||
GimpCanvas *canvas = GIMP_CANVAS (widget);
|
||||
|
||||
GTK_WIDGET_CLASS (parent_class)->realize (widget);
|
||||
|
||||
canvas->stipple[0] =
|
||||
gdk_bitmap_create_from_data (gtk_widget_get_window (widget),
|
||||
(const gchar *) stipples[0], 8, 8);
|
||||
}
|
||||
|
||||
static void
|
||||
gimp_canvas_unrealize (GtkWidget *widget)
|
||||
{
|
||||
|
@ -267,15 +163,6 @@ gimp_canvas_unrealize (GtkWidget *widget)
|
|||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < GIMP_CANVAS_NUM_STIPPLES; i++)
|
||||
{
|
||||
if (canvas->stipple[i])
|
||||
{
|
||||
g_object_unref (canvas->stipple[i]);
|
||||
canvas->stipple[i] = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
if (canvas->layout)
|
||||
{
|
||||
g_object_unref (canvas->layout);
|
||||
|
@ -369,15 +256,6 @@ gimp_canvas_gc_new (GimpCanvas *canvas,
|
|||
|
||||
switch (style)
|
||||
{
|
||||
case GIMP_CANVAS_STYLE_BLACK:
|
||||
case GIMP_CANVAS_STYLE_WHITE:
|
||||
break;
|
||||
|
||||
case GIMP_CANVAS_STYLE_RENDER:
|
||||
mask |= GDK_GC_EXPOSURES;
|
||||
values.graphics_exposures = TRUE;
|
||||
break;
|
||||
|
||||
case GIMP_CANVAS_STYLE_XOR_DOTTED:
|
||||
case GIMP_CANVAS_STYLE_XOR_DASHED:
|
||||
mask |= GDK_GC_LINE_STYLE;
|
||||
|
@ -396,14 +274,6 @@ gimp_canvas_gc_new (GimpCanvas *canvas,
|
|||
values.join_style = GDK_JOIN_MITER;
|
||||
break;
|
||||
|
||||
case GIMP_CANVAS_STYLE_SELECTION_IN:
|
||||
case GIMP_CANVAS_STYLE_SELECTION_OUT:
|
||||
mask |= GDK_GC_CAP_STYLE | GDK_GC_FILL | GDK_GC_STIPPLE;
|
||||
values.cap_style = GDK_CAP_NOT_LAST;
|
||||
values.fill = GDK_OPAQUE_STIPPLED;
|
||||
values.stipple = canvas->stipple[0];
|
||||
break;
|
||||
|
||||
default:
|
||||
return NULL;
|
||||
}
|
||||
|
@ -426,33 +296,6 @@ gimp_canvas_gc_new (GimpCanvas *canvas,
|
|||
case GIMP_CANVAS_STYLE_XOR_DASHED:
|
||||
case GIMP_CANVAS_STYLE_XOR:
|
||||
break;
|
||||
|
||||
case GIMP_CANVAS_STYLE_WHITE:
|
||||
fg.red = 0xffff;
|
||||
fg.green = 0xffff;
|
||||
fg.blue = 0xffff;
|
||||
break;
|
||||
|
||||
case GIMP_CANVAS_STYLE_BLACK:
|
||||
case GIMP_CANVAS_STYLE_SELECTION_IN:
|
||||
fg.red = 0x0;
|
||||
fg.green = 0x0;
|
||||
fg.blue = 0x0;
|
||||
|
||||
bg.red = 0xffff;
|
||||
bg.green = 0xffff;
|
||||
bg.blue = 0xffff;
|
||||
break;
|
||||
|
||||
case GIMP_CANVAS_STYLE_SELECTION_OUT:
|
||||
fg.red = 0xffff;
|
||||
fg.green = 0xffff;
|
||||
fg.blue = 0xffff;
|
||||
|
||||
bg.red = 0x7f7f;
|
||||
bg.green = 0x7f7f;
|
||||
bg.blue = 0x7f7f;
|
||||
break;
|
||||
}
|
||||
|
||||
gdk_gc_set_rgb_fg_color (gc, &fg);
|
||||
|
@ -499,54 +342,6 @@ gimp_canvas_new (GimpDisplayConfig *config)
|
|||
NULL);
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_canvas_draw_point:
|
||||
* @canvas: a #GimpCanvas widget
|
||||
* @style: one of the enumerated #GimpCanvasStyle's.
|
||||
* @x: x coordinate
|
||||
* @y: y coordinate
|
||||
*
|
||||
* Draw a single pixel at the specified location in the specified
|
||||
* style.
|
||||
**/
|
||||
void
|
||||
gimp_canvas_draw_point (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
gint x,
|
||||
gint y)
|
||||
{
|
||||
if (! gimp_canvas_ensure_style (canvas, style))
|
||||
return;
|
||||
|
||||
gdk_draw_point (gtk_widget_get_window (GTK_WIDGET (canvas)),
|
||||
canvas->gc[style],
|
||||
x, y);
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_canvas_draw_points:
|
||||
* @canvas: a #GimpCanvas widget
|
||||
* @style: one of the enumerated #GimpCanvasStyle's.
|
||||
* @points: an array of GdkPoint x-y pairs.
|
||||
* @num_points: the number of points in the array
|
||||
*
|
||||
* Draws a set of one-pixel points at the locations given in the
|
||||
* @points argument, in the specified style.
|
||||
**/
|
||||
void
|
||||
gimp_canvas_draw_points (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
GdkPoint *points,
|
||||
gint num_points)
|
||||
{
|
||||
if (! gimp_canvas_ensure_style (canvas, style))
|
||||
return;
|
||||
|
||||
gdk_draw_points (gtk_widget_get_window (GTK_WIDGET (canvas)),
|
||||
canvas->gc[style],
|
||||
points, num_points);
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_canvas_draw_line:
|
||||
* @canvas: a #GimpCanvas widget
|
||||
|
@ -754,89 +549,6 @@ gimp_canvas_get_layout (GimpCanvas *canvas,
|
|||
return canvas->layout;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_canvas_draw_rgb:
|
||||
* @canvas: a #GimpCanvas widget
|
||||
* @style: one of the enumerated #GimpCanvasStyle's.
|
||||
* @x: X coordinate of the upper left corner.
|
||||
* @y: Y coordinate of the upper left corner.
|
||||
* @width: width of the rectangle to be drawn.
|
||||
* @height: height of the rectangle to be drawn.
|
||||
* @rgb_buf: pixel data for the image to be drawn.
|
||||
* @rowstride: the rowstride in @rgb_buf.
|
||||
* @xdith: x offset for dither alignment.
|
||||
* @ydith: y offset for dither alignment.
|
||||
*
|
||||
* Draws an RGB image on the canvas in the specified style.
|
||||
**/
|
||||
void
|
||||
gimp_canvas_draw_rgb (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
gint x,
|
||||
gint y,
|
||||
gint width,
|
||||
gint height,
|
||||
guchar *rgb_buf,
|
||||
gint rowstride,
|
||||
gint xdith,
|
||||
gint ydith)
|
||||
{
|
||||
if (! gimp_canvas_ensure_style (canvas, style))
|
||||
return;
|
||||
|
||||
gdk_draw_rgb_image_dithalign (gtk_widget_get_window (GTK_WIDGET (canvas)),
|
||||
canvas->gc[style],
|
||||
x, y, width, height,
|
||||
GDK_RGB_DITHER_MAX,
|
||||
rgb_buf, rowstride, xdith, ydith);
|
||||
}
|
||||
|
||||
void
|
||||
gimp_canvas_draw_drop_zone (GimpCanvas *canvas,
|
||||
cairo_t *cr)
|
||||
{
|
||||
GtkWidget *widget = GTK_WIDGET (canvas);
|
||||
GtkStyle *style = gtk_widget_get_style (widget);
|
||||
GtkStateType state = gtk_widget_get_state (widget);
|
||||
GtkAllocation allocation;
|
||||
gdouble wilber_width;
|
||||
gdouble wilber_height;
|
||||
gdouble width;
|
||||
gdouble height;
|
||||
gdouble side;
|
||||
gdouble factor;
|
||||
|
||||
gtk_widget_get_allocation (widget, &allocation);
|
||||
|
||||
gimp_cairo_wilber_get_size (cr, &wilber_width, &wilber_height);
|
||||
|
||||
wilber_width /= 2;
|
||||
wilber_height /= 2;
|
||||
|
||||
side = MIN (MIN (allocation.width, allocation.height),
|
||||
MAX (allocation.width, allocation.height) / 2);
|
||||
|
||||
width = MAX (wilber_width, side);
|
||||
height = MAX (wilber_height, side);
|
||||
|
||||
factor = MIN (width / wilber_width, height / wilber_height);
|
||||
|
||||
cairo_scale (cr, factor, factor);
|
||||
|
||||
/* magic factors depend on the image used, everything else is generic
|
||||
*/
|
||||
gimp_cairo_wilber (cr,
|
||||
- wilber_width * 0.6,
|
||||
allocation.height / factor - wilber_height * 1.1);
|
||||
|
||||
cairo_set_source_rgba (cr,
|
||||
style->fg[state].red / 65535.0,
|
||||
style->fg[state].green / 65535.0,
|
||||
style->fg[state].blue / 65535.0,
|
||||
0.15);
|
||||
cairo_fill (cr);
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_canvas_set_clip_rect:
|
||||
* @canvas: a #GimpCanvas widget
|
||||
|
@ -885,40 +597,6 @@ gimp_canvas_set_clip_region (GimpCanvas *canvas,
|
|||
gdk_gc_set_clip_region (canvas->gc[style], region);
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_canvas_set_stipple_index:
|
||||
* @canvas: a #GimpCanvas widget
|
||||
* @style: the #GimpCanvasStyle to alter
|
||||
* @index: the new stipple index
|
||||
*
|
||||
* Some styles of the #GimpCanvas do a stipple fill. #GimpCanvas has a
|
||||
* set of %GIMP_CANVAS_NUM_STIPPLES stipple bitmaps. This function
|
||||
* allows you to change the bitmap being used. This can be used to
|
||||
* implement a marching ants effect. An older implementation used to
|
||||
* use this feature and so it is included since it might be useful in
|
||||
* the future. All stipple bitmaps but the default one are created on
|
||||
* the fly.
|
||||
*/
|
||||
void
|
||||
gimp_canvas_set_stipple_index (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
guint index)
|
||||
{
|
||||
if (! gimp_canvas_ensure_style (canvas, style))
|
||||
return;
|
||||
|
||||
index = index % GIMP_CANVAS_NUM_STIPPLES;
|
||||
|
||||
if (! canvas->stipple[index])
|
||||
{
|
||||
canvas->stipple[index] =
|
||||
gdk_bitmap_create_from_data (gtk_widget_get_window (GTK_WIDGET (canvas)),
|
||||
(const gchar *) stipples[index], 8, 8);
|
||||
}
|
||||
|
||||
gdk_gc_set_stipple (canvas->gc[style], canvas->stipple[index]);
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_canvas_set_bg_color:
|
||||
* @canvas: a #GimpCanvas widget
|
||||
|
|
|
@ -24,14 +24,9 @@
|
|||
|
||||
typedef enum
|
||||
{
|
||||
GIMP_CANVAS_STYLE_BLACK,
|
||||
GIMP_CANVAS_STYLE_WHITE,
|
||||
GIMP_CANVAS_STYLE_RENDER,
|
||||
GIMP_CANVAS_STYLE_XOR,
|
||||
GIMP_CANVAS_STYLE_XOR_DASHED,
|
||||
GIMP_CANVAS_STYLE_XOR_DOTTED,
|
||||
GIMP_CANVAS_STYLE_SELECTION_IN,
|
||||
GIMP_CANVAS_STYLE_SELECTION_OUT,
|
||||
GIMP_CANVAS_NUM_STYLES
|
||||
} GimpCanvasStyle;
|
||||
|
||||
|
@ -82,14 +77,6 @@ GType gimp_canvas_get_type (void) G_GNUC_CONST;
|
|||
|
||||
GtkWidget * gimp_canvas_new (GimpDisplayConfig *config);
|
||||
|
||||
void gimp_canvas_draw_point (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
gint x,
|
||||
gint y);
|
||||
void gimp_canvas_draw_points (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
GdkPoint *points,
|
||||
gint num_points);
|
||||
void gimp_canvas_draw_line (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
gint x1,
|
||||
|
@ -128,18 +115,6 @@ void gimp_canvas_draw_segments (GimpCanvas *canvas,
|
|||
PangoLayout *gimp_canvas_get_layout (GimpCanvas *canvas,
|
||||
const gchar *format,
|
||||
...) G_GNUC_PRINTF (2, 3);
|
||||
void gimp_canvas_draw_rgb (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
gint x,
|
||||
gint y,
|
||||
gint width,
|
||||
gint height,
|
||||
guchar *rgb_buf,
|
||||
gint rowstride,
|
||||
gint xdith,
|
||||
gint ydith);
|
||||
void gimp_canvas_draw_drop_zone (GimpCanvas *canvas,
|
||||
cairo_t *cr);
|
||||
|
||||
void gimp_canvas_set_clip_rect (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
|
@ -147,9 +122,6 @@ void gimp_canvas_set_clip_rect (GimpCanvas *canvas,
|
|||
void gimp_canvas_set_clip_region (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
const GdkRegion *region);
|
||||
void gimp_canvas_set_stipple_index (GimpCanvas *canvas,
|
||||
GimpCanvasStyle style,
|
||||
guint index);
|
||||
void gimp_canvas_set_bg_color (GimpCanvas *canvas,
|
||||
GimpRGB *color);
|
||||
|
||||
|
|
|
@ -48,6 +48,7 @@
|
|||
#include "tools/tool_manager.h"
|
||||
#include "tools/tools-enums.h"
|
||||
|
||||
#include "widgets/gimpcairo.h"
|
||||
#include "widgets/gimpcontrollers.h"
|
||||
#include "widgets/gimpcontrollerkeyboard.h"
|
||||
#include "widgets/gimpcontrollerwheel.h"
|
||||
|
@ -56,7 +57,6 @@
|
|||
#include "widgets/gimpdevices.h"
|
||||
#include "widgets/gimpdialogfactory.h"
|
||||
#include "widgets/gimpuimanager.h"
|
||||
#include "widgets/gimpwidgets-utils.h"
|
||||
|
||||
#include "gimpcanvas.h"
|
||||
#include "gimpdisplay.h"
|
||||
|
@ -103,9 +103,11 @@ static GdkModifierType
|
|||
static GdkEvent * gimp_display_shell_compress_motion (GimpDisplayShell *shell);
|
||||
|
||||
static void gimp_display_shell_canvas_expose_image (GimpDisplayShell *shell,
|
||||
GdkEventExpose *eevent);
|
||||
GdkEventExpose *eevent,
|
||||
cairo_t *cr);
|
||||
static void gimp_display_shell_canvas_expose_drop_zone (GimpDisplayShell *shell,
|
||||
GdkEventExpose *eevent);
|
||||
GdkEventExpose *eevent,
|
||||
cairo_t *cr);
|
||||
static void gimp_display_shell_process_tool_event_queue (GimpDisplayShell *shell,
|
||||
GdkModifierType state,
|
||||
guint32 time);
|
||||
|
@ -392,19 +394,33 @@ gimp_display_shell_canvas_expose (GtkWidget *widget,
|
|||
/* ignore events on overlays */
|
||||
if (eevent->window == gtk_widget_get_window (widget))
|
||||
{
|
||||
cairo_t *cr;
|
||||
|
||||
if (gimp_display_get_image (shell->display))
|
||||
{
|
||||
gimp_display_shell_pause (shell);
|
||||
|
||||
if (gimp_display_shell_is_double_buffered (shell))
|
||||
gdk_window_begin_paint_region (eevent->window, eevent->region);
|
||||
}
|
||||
|
||||
gimp_display_shell_canvas_expose_image (shell, eevent);
|
||||
/* create the cairo_t after enabling double buffering, or we
|
||||
* will get the wrong window destination surface
|
||||
*/
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (shell->canvas));
|
||||
gdk_cairo_region (cr, eevent->region);
|
||||
cairo_clip (cr);
|
||||
|
||||
if (gimp_display_get_image (shell->display))
|
||||
{
|
||||
gimp_display_shell_canvas_expose_image (shell, eevent, cr);
|
||||
}
|
||||
else
|
||||
{
|
||||
gimp_display_shell_canvas_expose_drop_zone (shell, eevent);
|
||||
gimp_display_shell_canvas_expose_drop_zone (shell, eevent, cr);
|
||||
}
|
||||
|
||||
cairo_destroy (cr);
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
|
@ -2078,7 +2094,7 @@ gimp_display_shell_hscrollbar_update (GtkAdjustment *adjustment,
|
|||
GimpDisplayShell *shell)
|
||||
{
|
||||
/* If we are panning with mouse, scrollbars are to be ignored
|
||||
* or they will cause jitter in motion
|
||||
* or they will cause jitter in motion
|
||||
*/
|
||||
if (! shell->scrolling)
|
||||
gimp_display_shell_scroll (shell,
|
||||
|
@ -2214,9 +2230,9 @@ gimp_display_shell_compress_motion (GimpDisplayShell *shell)
|
|||
|
||||
static void
|
||||
gimp_display_shell_canvas_expose_image (GimpDisplayShell *shell,
|
||||
GdkEventExpose *eevent)
|
||||
GdkEventExpose *eevent,
|
||||
cairo_t *cr)
|
||||
{
|
||||
cairo_t *cr;
|
||||
GdkRegion *clear_region;
|
||||
GdkRegion *image_region;
|
||||
GdkRectangle image_rect;
|
||||
|
@ -2224,11 +2240,6 @@ gimp_display_shell_canvas_expose_image (GimpDisplayShell *shell,
|
|||
gint n_rects;
|
||||
gint i;
|
||||
|
||||
cr = gdk_cairo_create (eevent->window);
|
||||
|
||||
gdk_cairo_region (cr, eevent->region);
|
||||
cairo_clip (cr);
|
||||
|
||||
/* first, clear the exposed part of the region that is outside the
|
||||
* image, which is the exposed region minus the image rectangle
|
||||
*/
|
||||
|
@ -2273,13 +2284,17 @@ gimp_display_shell_canvas_expose_image (GimpDisplayShell *shell,
|
|||
{
|
||||
gdk_region_get_rectangles (image_region, &rects, &n_rects);
|
||||
|
||||
cairo_save (cr);
|
||||
|
||||
for (i = 0; i < n_rects; i++)
|
||||
gimp_display_shell_draw_area (shell,
|
||||
gimp_display_shell_draw_area (shell, cr,
|
||||
rects[i].x,
|
||||
rects[i].y,
|
||||
rects[i].width,
|
||||
rects[i].height);
|
||||
|
||||
cairo_restore (cr);
|
||||
|
||||
g_free (rects);
|
||||
}
|
||||
|
||||
|
@ -2313,15 +2328,13 @@ gimp_display_shell_canvas_expose_image (GimpDisplayShell *shell,
|
|||
|
||||
/* restart (and recalculate) the selection boundaries */
|
||||
gimp_display_shell_selection_control (shell, GIMP_SELECTION_ON);
|
||||
|
||||
cairo_destroy (cr);
|
||||
}
|
||||
|
||||
static void
|
||||
gimp_display_shell_canvas_expose_drop_zone (GimpDisplayShell *shell,
|
||||
GdkEventExpose *eevent)
|
||||
GdkEventExpose *eevent,
|
||||
cairo_t *cr)
|
||||
{
|
||||
cairo_t *cr;
|
||||
GdkRectangle *rects;
|
||||
gint n_rects;
|
||||
gint i;
|
||||
|
@ -2339,11 +2352,5 @@ gimp_display_shell_canvas_expose_drop_zone (GimpDisplayShell *shell,
|
|||
|
||||
g_free (rects);
|
||||
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (shell->canvas));
|
||||
gdk_cairo_region (cr, eevent->region);
|
||||
cairo_clip (cr);
|
||||
|
||||
gimp_canvas_draw_drop_zone (GIMP_CANVAS (shell->canvas), cr);
|
||||
|
||||
cairo_destroy (cr);
|
||||
gimp_cairo_draw_drop_wilber (shell->canvas, cr);
|
||||
}
|
||||
|
|
|
@ -43,6 +43,7 @@
|
|||
#include "vectors/gimpstroke.h"
|
||||
#include "vectors/gimpvectors.h"
|
||||
|
||||
#include "widgets/gimpcairo.h"
|
||||
#include "widgets/gimpwidgets-utils.h"
|
||||
|
||||
#include "gimpcanvas.h"
|
||||
|
@ -540,8 +541,6 @@ gimp_display_shell_draw_layer_boundary (GimpDisplayShell *shell,
|
|||
GdkSegment *segs,
|
||||
gint n_segs)
|
||||
{
|
||||
gint i;
|
||||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (cr != NULL);
|
||||
g_return_if_fail (GIMP_IS_DRAWABLE (drawable));
|
||||
|
@ -549,20 +548,7 @@ gimp_display_shell_draw_layer_boundary (GimpDisplayShell *shell,
|
|||
|
||||
gimp_display_shell_set_layer_style (shell, cr, drawable);
|
||||
|
||||
for (i = 0; i < n_segs; i++)
|
||||
{
|
||||
if (segs[i].x1 == segs[i].x2)
|
||||
{
|
||||
cairo_move_to (cr, segs[i].x1 + 0.5, segs[i].y1);
|
||||
cairo_line_to (cr, segs[i].x2 + 0.5, segs[i].y2);
|
||||
}
|
||||
else
|
||||
{
|
||||
cairo_move_to (cr, segs[i].x1, segs[i].y1 + 0.5);
|
||||
cairo_line_to (cr, segs[i].x2, segs[i].y2 + 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
gimp_cairo_add_segments (cr, segs, n_segs);
|
||||
cairo_stroke (cr);
|
||||
}
|
||||
|
||||
|
@ -572,61 +558,29 @@ gimp_display_shell_draw_selection_out (GimpDisplayShell *shell,
|
|||
GdkSegment *segs,
|
||||
gint n_segs)
|
||||
{
|
||||
gint i;
|
||||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (cr != NULL);
|
||||
g_return_if_fail (segs != NULL && n_segs > 0);
|
||||
|
||||
gimp_display_shell_set_selection_out_style (shell, cr);
|
||||
|
||||
for (i = 0; i < n_segs; i++)
|
||||
{
|
||||
if (segs[i].x1 == segs[i].x2)
|
||||
{
|
||||
cairo_move_to (cr, segs[i].x1 + 0.5, segs[i].y1);
|
||||
cairo_line_to (cr, segs[i].x2 + 0.5, segs[i].y2);
|
||||
}
|
||||
else
|
||||
{
|
||||
cairo_move_to (cr, segs[i].x1, segs[i].y1 + 0.5);
|
||||
cairo_line_to (cr, segs[i].x2, segs[i].y2 + 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
gimp_cairo_add_segments (cr, segs, n_segs);
|
||||
cairo_stroke (cr);
|
||||
}
|
||||
|
||||
void
|
||||
gimp_display_shell_draw_selection_in (GimpDisplayShell *shell,
|
||||
cairo_t *cr,
|
||||
GdkSegment *segs,
|
||||
gint n_segs,
|
||||
gint index)
|
||||
gimp_display_shell_draw_selection_in (GimpDisplayShell *shell,
|
||||
cairo_t *cr,
|
||||
cairo_pattern_t *mask,
|
||||
gint index)
|
||||
{
|
||||
gint i;
|
||||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (cr != NULL);
|
||||
g_return_if_fail (segs != NULL && n_segs > 0);
|
||||
g_return_if_fail (mask != NULL);
|
||||
|
||||
gimp_display_shell_set_selection_in_style (shell, cr, index);
|
||||
|
||||
for (i = 0; i < n_segs; i++)
|
||||
{
|
||||
if (segs[i].x1 == segs[i].x2)
|
||||
{
|
||||
cairo_move_to (cr, segs[i].x1 + 0.5, segs[i].y1);
|
||||
cairo_line_to (cr, segs[i].x2 + 0.5, segs[i].y2);
|
||||
}
|
||||
else
|
||||
{
|
||||
cairo_move_to (cr, segs[i].x1, segs[i].y1 + 0.5);
|
||||
cairo_line_to (cr, segs[i].x2, segs[i].y2 + 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
cairo_stroke (cr);
|
||||
cairo_mask (cr, mask);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -738,6 +692,7 @@ gimp_display_shell_draw_cursor (GimpDisplayShell *shell,
|
|||
|
||||
void
|
||||
gimp_display_shell_draw_area (GimpDisplayShell *shell,
|
||||
cairo_t *cr,
|
||||
gint x,
|
||||
gint y,
|
||||
gint w,
|
||||
|
@ -749,6 +704,7 @@ gimp_display_shell_draw_area (GimpDisplayShell *shell,
|
|||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (gimp_display_get_image (shell->display));
|
||||
g_return_if_fail (cr != NULL);
|
||||
|
||||
x2 = x + w;
|
||||
y2 = y + h;
|
||||
|
@ -778,7 +734,7 @@ gimp_display_shell_draw_area (GimpDisplayShell *shell,
|
|||
&disp_xoffset,
|
||||
&disp_yoffset);
|
||||
|
||||
gimp_display_shell_render (shell,
|
||||
gimp_display_shell_render (shell, cr,
|
||||
j - disp_xoffset,
|
||||
i - disp_yoffset,
|
||||
dx, dy,
|
||||
|
|
|
@ -59,8 +59,7 @@ void gimp_display_shell_draw_selection_out (GimpDisplayShell *shell,
|
|||
gint n_segs);
|
||||
void gimp_display_shell_draw_selection_in (GimpDisplayShell *shell,
|
||||
cairo_t *cr,
|
||||
GdkSegment *segs,
|
||||
gint n_segs,
|
||||
cairo_pattern_t *mask,
|
||||
gint index);
|
||||
void gimp_display_shell_draw_vector (GimpDisplayShell *shell,
|
||||
GimpVectors *vectors);
|
||||
|
@ -68,6 +67,7 @@ void gimp_display_shell_draw_vectors (GimpDisplayShell *shell)
|
|||
void gimp_display_shell_draw_cursor (GimpDisplayShell *shell,
|
||||
cairo_t *cr);
|
||||
void gimp_display_shell_draw_area (GimpDisplayShell *shell,
|
||||
cairo_t *cr,
|
||||
gint x,
|
||||
gint y,
|
||||
gint w,
|
||||
|
|
|
@ -76,7 +76,6 @@ struct _RenderInfo
|
|||
gint src_y;
|
||||
gint dest_bpp;
|
||||
gint dest_bpl;
|
||||
gint dest_width;
|
||||
|
||||
gint zoom_quality;
|
||||
|
||||
|
@ -195,6 +194,7 @@ static const guchar * render_image_tile_fault (RenderInfo *info);
|
|||
|
||||
|
||||
static void gimp_display_shell_render_highlight (GimpDisplayShell *shell,
|
||||
RenderInfo *info,
|
||||
gint x,
|
||||
gint y,
|
||||
gint w,
|
||||
|
@ -213,6 +213,7 @@ static void gimp_display_shell_render_mask (GimpDisplayShell *shell,
|
|||
|
||||
void
|
||||
gimp_display_shell_render (GimpDisplayShell *shell,
|
||||
cairo_t *cr,
|
||||
gint x,
|
||||
gint y,
|
||||
gint w,
|
||||
|
@ -227,6 +228,7 @@ gimp_display_shell_render (GimpDisplayShell *shell,
|
|||
gint offset_y;
|
||||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (cr != NULL);
|
||||
g_return_if_fail (w > 0 && h > 0);
|
||||
|
||||
image = gimp_display_get_image (shell->display);
|
||||
|
@ -239,16 +241,15 @@ gimp_display_shell_render (GimpDisplayShell *shell,
|
|||
/* Initialize RenderInfo with values that don't change during the
|
||||
* call of this function.
|
||||
*/
|
||||
info.shell = shell;
|
||||
info.shell = shell;
|
||||
|
||||
info.x = x + offset_x;
|
||||
info.y = y + offset_y;
|
||||
info.w = w;
|
||||
info.h = h;
|
||||
info.x = x + offset_x;
|
||||
info.y = y + offset_y;
|
||||
info.w = w;
|
||||
info.h = h;
|
||||
|
||||
info.dest_bpp = 3;
|
||||
info.dest_bpl = info.dest_bpp * GIMP_DISPLAY_RENDER_BUF_WIDTH;
|
||||
info.dest_width = info.dest_bpp * info.w;
|
||||
info.dest_bpp = 4;
|
||||
info.dest_bpl = cairo_image_surface_get_stride (shell->render_surface);
|
||||
|
||||
switch (shell->display->config->zoom_quality)
|
||||
{
|
||||
|
@ -293,17 +294,19 @@ gimp_display_shell_render (GimpDisplayShell *shell,
|
|||
}
|
||||
|
||||
/* apply filters to the rendered projection */
|
||||
#if 0
|
||||
if (shell->filter_stack)
|
||||
gimp_color_display_stack_convert (shell->filter_stack,
|
||||
shell->render_buf,
|
||||
w, h,
|
||||
3,
|
||||
3 * GIMP_DISPLAY_RENDER_BUF_WIDTH);
|
||||
#endif
|
||||
|
||||
/* dim pixels outside the highlighted rectangle */
|
||||
if (highlight)
|
||||
{
|
||||
gimp_display_shell_render_highlight (shell, x, y, w, h, highlight);
|
||||
gimp_display_shell_render_highlight (shell, &info, x, y, w, h, highlight);
|
||||
}
|
||||
else if (shell->mask)
|
||||
{
|
||||
|
@ -315,6 +318,8 @@ gimp_display_shell_render (GimpDisplayShell *shell,
|
|||
gimp_display_shell_render_mask (shell, &info);
|
||||
}
|
||||
|
||||
cairo_surface_mark_dirty (shell->render_surface);
|
||||
|
||||
/* put it to the screen */
|
||||
{
|
||||
gint disp_xoffset, disp_yoffset;
|
||||
|
@ -322,35 +327,43 @@ gimp_display_shell_render (GimpDisplayShell *shell,
|
|||
gimp_display_shell_scroll_get_disp_offset (shell,
|
||||
&disp_xoffset, &disp_yoffset);
|
||||
|
||||
gimp_canvas_draw_rgb (GIMP_CANVAS (shell->canvas),
|
||||
GIMP_CANVAS_STYLE_RENDER,
|
||||
x + disp_xoffset, y + disp_yoffset,
|
||||
w, h,
|
||||
shell->render_buf,
|
||||
3 * GIMP_DISPLAY_RENDER_BUF_WIDTH,
|
||||
offset_x, offset_y);
|
||||
cairo_set_source_surface (cr, shell->render_surface,
|
||||
x + disp_xoffset, y + disp_yoffset);
|
||||
cairo_rectangle (cr, x + disp_xoffset, y + disp_yoffset, w, h);
|
||||
cairo_fill (cr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#if G_BYTE_ORDER == G_LITTLE_ENDIAN
|
||||
#define CAIRO_RGB24_RED_PIXEL 2
|
||||
#define CAIRO_RGB24_GREEN_PIXEL 1
|
||||
#define CAIRO_RGB24_BLUE_PIXEL 0
|
||||
#else
|
||||
#define CAIRO_RGB24_RED_PIXEL 1
|
||||
#define CAIRO_RGB24_GREEN_PIXEL 2
|
||||
#define CAIRO_RGB24_BLUE_PIXEL 3
|
||||
#endif
|
||||
|
||||
#define GIMP_DISPLAY_SHELL_DIM_PIXEL(buf,x) \
|
||||
{ \
|
||||
buf[3 * (x) + 0] >>= 1; \
|
||||
buf[3 * (x) + 1] >>= 1; \
|
||||
buf[3 * (x) + 2] >>= 1; \
|
||||
buf[4 * (x) + CAIRO_RGB24_RED_PIXEL] >>= 1; \
|
||||
buf[4 * (x) + CAIRO_RGB24_GREEN_PIXEL] >>= 1; \
|
||||
buf[4 * (x) + CAIRO_RGB24_BLUE_PIXEL] >>= 1; \
|
||||
}
|
||||
|
||||
/* This function highlights the given area by dimming all pixels outside. */
|
||||
|
||||
static void
|
||||
gimp_display_shell_render_highlight (GimpDisplayShell *shell,
|
||||
RenderInfo *info,
|
||||
gint x,
|
||||
gint y,
|
||||
gint w,
|
||||
gint h,
|
||||
const GdkRectangle *highlight)
|
||||
{
|
||||
guchar *buf = shell->render_buf;
|
||||
guchar *buf = cairo_image_surface_get_data (shell->render_surface);
|
||||
GdkRectangle rect;
|
||||
gint offset_x;
|
||||
gint offset_y;
|
||||
|
@ -373,7 +386,7 @@ gimp_display_shell_render_highlight (GimpDisplayShell *shell,
|
|||
for (x = 0; x < w; x++)
|
||||
GIMP_DISPLAY_SHELL_DIM_PIXEL (buf, x)
|
||||
|
||||
buf += 3 * GIMP_DISPLAY_RENDER_BUF_WIDTH;
|
||||
buf += info->dest_bpl;
|
||||
}
|
||||
|
||||
for ( ; y < rect.y + rect.height; y++)
|
||||
|
@ -384,7 +397,7 @@ gimp_display_shell_render_highlight (GimpDisplayShell *shell,
|
|||
for (x += rect.width; x < w; x++)
|
||||
GIMP_DISPLAY_SHELL_DIM_PIXEL (buf, x)
|
||||
|
||||
buf += 3 * GIMP_DISPLAY_RENDER_BUF_WIDTH;
|
||||
buf += info->dest_bpl;
|
||||
}
|
||||
|
||||
for ( ; y < h; y++)
|
||||
|
@ -392,7 +405,7 @@ gimp_display_shell_render_highlight (GimpDisplayShell *shell,
|
|||
for (x = 0; x < w; x++)
|
||||
GIMP_DISPLAY_SHELL_DIM_PIXEL (buf, x)
|
||||
|
||||
buf += 3 * GIMP_DISPLAY_RENDER_BUF_WIDTH;
|
||||
buf += info->dest_bpl;
|
||||
}
|
||||
}
|
||||
else
|
||||
|
@ -402,7 +415,7 @@ gimp_display_shell_render_highlight (GimpDisplayShell *shell,
|
|||
for (x = 0; x < w; x++)
|
||||
GIMP_DISPLAY_SHELL_DIM_PIXEL (buf, x)
|
||||
|
||||
buf += 3 * GIMP_DISPLAY_RENDER_BUF_WIDTH;
|
||||
buf += info->dest_bpl;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -429,35 +442,35 @@ gimp_display_shell_render_mask (GimpDisplayShell *shell,
|
|||
switch (shell->mask_color)
|
||||
{
|
||||
case GIMP_RED_CHANNEL:
|
||||
for (x = info->x; x < xe; x++, src++, dest += 3)
|
||||
for (x = info->x; x < xe; x++, src++, dest += info->dest_bpp)
|
||||
{
|
||||
if (*src & 0x80)
|
||||
continue;
|
||||
|
||||
dest[1] = dest[1] >> 2;
|
||||
dest[2] = dest[2] >> 2;
|
||||
dest[CAIRO_RGB24_GREEN_PIXEL] >>= 2;
|
||||
dest[CAIRO_RGB24_BLUE_PIXEL] >>= 2;
|
||||
}
|
||||
break;
|
||||
|
||||
case GIMP_GREEN_CHANNEL:
|
||||
for (x = info->x; x < xe; x++, src++, dest += 3)
|
||||
for (x = info->x; x < xe; x++, src++, dest += info->dest_bpp)
|
||||
{
|
||||
if (*src & 0x80)
|
||||
continue;
|
||||
|
||||
dest[0] = dest[0] >> 2;
|
||||
dest[2] = dest[2] >> 2;
|
||||
dest[CAIRO_RGB24_RED_PIXEL] >>= 2;
|
||||
dest[CAIRO_RGB24_BLUE_PIXEL] >>= 2;
|
||||
}
|
||||
break;
|
||||
|
||||
case GIMP_BLUE_CHANNEL:
|
||||
for (x = info->x; x < xe; x++, src++, dest += 3)
|
||||
for (x = info->x; x < xe; x++, src++, dest += info->dest_bpp)
|
||||
{
|
||||
if (*src & 0x80)
|
||||
continue;
|
||||
|
||||
dest[0] = dest[0] >> 2;
|
||||
dest[1] = dest[1] >> 2;
|
||||
dest[CAIRO_RGB24_RED_PIXEL] >>= 2;
|
||||
dest[CAIRO_RGB24_GREEN_PIXEL] >>= 2;
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -504,7 +517,7 @@ render_image_gray_a (RenderInfo *info)
|
|||
|
||||
dark_light = (y >> check_shift) + (info->x >> check_shift);
|
||||
|
||||
for (x = info->x; x < xe; x++, src += 2, dest += 3)
|
||||
for (x = info->x; x < xe; x++, src += 2, dest += info->dest_bpp)
|
||||
{
|
||||
guint v;
|
||||
|
||||
|
@ -513,7 +526,7 @@ render_image_gray_a (RenderInfo *info)
|
|||
else
|
||||
v = ((src[0] << 8) + check_light * (256 - src[1])) >> 8;
|
||||
|
||||
dest[0] = dest[1] = dest[2] = v;
|
||||
GIMP_CAIRO_RGB24_SET_PIXEL (dest, v, v, v);
|
||||
|
||||
if (((x + 1) & check_mod) == 0)
|
||||
dark_light += 1;
|
||||
|
@ -553,7 +566,7 @@ render_image_rgb_a (RenderInfo *info)
|
|||
|
||||
dark_light = (y >> check_shift) + (info->x >> check_shift);
|
||||
|
||||
for (x = info->x; x < xe; x++, src += 4, dest += 3)
|
||||
for (x = info->x; x < xe; x++, src += 4, dest += info->dest_bpp)
|
||||
{
|
||||
guint r, g, b;
|
||||
|
||||
|
@ -570,9 +583,7 @@ render_image_rgb_a (RenderInfo *info)
|
|||
b = ((src[2] << 8) + check_light * (256 - src[3])) >> 8;
|
||||
}
|
||||
|
||||
dest[0] = r;
|
||||
dest[1] = g;
|
||||
dest[2] = b;
|
||||
GIMP_CAIRO_RGB24_SET_PIXEL (dest, r, g, b);
|
||||
|
||||
if (((x + 1) & check_mod) == 0)
|
||||
dark_light += 1;
|
||||
|
@ -605,7 +616,7 @@ gimp_display_shell_render_info_scale (RenderInfo *info,
|
|||
/* We must reset info->dest because this member is modified in render
|
||||
* functions.
|
||||
*/
|
||||
info->dest = shell->render_buf;
|
||||
info->dest = cairo_image_surface_get_data (shell->render_surface);
|
||||
|
||||
info->scalex = shell->scale_x * (1 << level);
|
||||
info->scaley = shell->scale_y * (1 << level);
|
||||
|
|
|
@ -27,6 +27,7 @@ void gimp_display_shell_render_init (Gimp *gimp);
|
|||
void gimp_display_shell_render_exit (Gimp *gimp);
|
||||
|
||||
void gimp_display_shell_render (GimpDisplayShell *shell,
|
||||
cairo_t *cr,
|
||||
gint x,
|
||||
gint y,
|
||||
gint w,
|
||||
|
|
|
@ -31,7 +31,8 @@
|
|||
#include "core/gimplayermask.h"
|
||||
#include "core/gimpimage.h"
|
||||
|
||||
#include "gimpcanvas.h"
|
||||
#include "widgets/gimpcairo.h"
|
||||
|
||||
#include "gimpdisplay.h"
|
||||
#include "gimpdisplayshell.h"
|
||||
#include "gimpdisplayshell-appearance.h"
|
||||
|
@ -41,18 +42,10 @@
|
|||
#include "gimpdisplayshell-transform.h"
|
||||
|
||||
|
||||
#undef VERBOSE
|
||||
|
||||
#define MAX_POINTS_INC 2048
|
||||
#define USE_DRAWPOINTS TRUE
|
||||
|
||||
|
||||
struct _Selection
|
||||
{
|
||||
GimpDisplayShell *shell; /* shell that owns the selection */
|
||||
|
||||
gboolean use_cairo; /* temp hack */
|
||||
|
||||
GdkSegment *segs_in; /* gdk segments of area boundary */
|
||||
gint n_segs_in; /* number of segments in segs_in */
|
||||
|
||||
|
@ -68,8 +61,7 @@ struct _Selection
|
|||
gboolean hidden; /* is the selection hidden? */
|
||||
gboolean layer_hidden; /* is the layer boundary hidden? */
|
||||
guint timeout; /* timer for successive draws */
|
||||
GdkPoint *points_in[8]; /* points of segs_in for fast ants */
|
||||
gint num_points_in[8]; /* number of points in points_in */
|
||||
cairo_pattern_t *segs_in_mask; /* cache for rendered segments */
|
||||
};
|
||||
|
||||
|
||||
|
@ -86,12 +78,7 @@ static void selection_undraw (Selection *selection);
|
|||
static void selection_layer_undraw (Selection *selection);
|
||||
static void selection_layer_draw (Selection *selection);
|
||||
|
||||
static void selection_add_point (GdkPoint *points[8],
|
||||
gint max_npoints[8],
|
||||
gint npoints[8],
|
||||
gint x,
|
||||
gint y);
|
||||
static void selection_render_points (Selection *selection);
|
||||
static void selection_render_mask (Selection *selection);
|
||||
|
||||
static void selection_transform_segs (Selection *selection,
|
||||
const BoundSeg *src_segs,
|
||||
|
@ -124,7 +111,6 @@ gimp_display_shell_selection_init (GimpDisplayShell *shell)
|
|||
selection = g_slice_new0 (Selection);
|
||||
|
||||
selection->shell = shell;
|
||||
selection->use_cairo = g_getenv ("CAIRO_SELECTION") != NULL;
|
||||
selection->visible = TRUE;
|
||||
selection->hidden = ! gimp_display_shell_get_show_selection (shell);
|
||||
selection->layer_hidden = ! gimp_display_shell_get_show_layer (shell);
|
||||
|
@ -298,105 +284,21 @@ selection_resume (Selection *selection)
|
|||
selection_start (selection);
|
||||
}
|
||||
|
||||
/* #define BENCHMARK 1 */
|
||||
|
||||
static void
|
||||
selection_draw (Selection *selection)
|
||||
{
|
||||
GimpCanvas *canvas = GIMP_CANVAS (selection->shell->canvas);
|
||||
#ifdef BENCHMARK
|
||||
GTimer *timer = g_timer_new ();
|
||||
gint test;
|
||||
|
||||
for (test = 0; test < 20; test++)
|
||||
if (selection->segs_in)
|
||||
{
|
||||
#endif /* BENCHMARK */
|
||||
if (selection->use_cairo)
|
||||
{
|
||||
if (selection->segs_in)
|
||||
{
|
||||
cairo_t *cr;
|
||||
cairo_t *cr;
|
||||
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (selection->shell->canvas));
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (selection->shell->canvas));
|
||||
|
||||
gimp_display_shell_draw_selection_in (selection->shell, cr,
|
||||
selection->segs_in,
|
||||
selection->n_segs_in,
|
||||
selection->index % 8);
|
||||
gimp_display_shell_draw_selection_in (selection->shell, cr,
|
||||
selection->segs_in_mask,
|
||||
selection->index % 8);
|
||||
|
||||
cairo_destroy (cr);
|
||||
}
|
||||
cairo_destroy (cr);
|
||||
}
|
||||
else
|
||||
{
|
||||
#ifdef USE_DRAWPOINTS
|
||||
|
||||
#ifdef VERBOSE
|
||||
{
|
||||
gint j, sum;
|
||||
|
||||
sum = 0;
|
||||
for (j = 0; j < 8; j++)
|
||||
sum += selection->num_points_in[j];
|
||||
|
||||
g_print ("%d segments, %d points\n", selection->n_segs_in, sum);
|
||||
}
|
||||
#endif
|
||||
|
||||
if (selection->segs_in)
|
||||
{
|
||||
gint i;
|
||||
|
||||
if (selection->index == 0)
|
||||
{
|
||||
for (i = 0; i < 4; i++)
|
||||
if (selection->num_points_in[i])
|
||||
gimp_canvas_draw_points (canvas, GIMP_CANVAS_STYLE_WHITE,
|
||||
selection->points_in[i],
|
||||
selection->num_points_in[i]);
|
||||
|
||||
for (i = 4; i < 8; i++)
|
||||
if (selection->num_points_in[i])
|
||||
gimp_canvas_draw_points (canvas, GIMP_CANVAS_STYLE_BLACK,
|
||||
selection->points_in[i],
|
||||
selection->num_points_in[i]);
|
||||
}
|
||||
else
|
||||
{
|
||||
i = ((selection->index + 3) & 7);
|
||||
if (selection->num_points_in[i])
|
||||
gimp_canvas_draw_points (canvas, GIMP_CANVAS_STYLE_WHITE,
|
||||
selection->points_in[i],
|
||||
selection->num_points_in[i]);
|
||||
|
||||
i = ((selection->index + 7) & 7);
|
||||
if (selection->num_points_in[i])
|
||||
gimp_canvas_draw_points (canvas, GIMP_CANVAS_STYLE_BLACK,
|
||||
selection->points_in[i],
|
||||
selection->num_points_in[i]);
|
||||
}
|
||||
}
|
||||
|
||||
#else /* ! USE_DRAWPOINTS */
|
||||
|
||||
gimp_canvas_set_stipple_index (canvas,
|
||||
GIMP_CANVAS_STYLE_SELECTION_IN,
|
||||
selection->index);
|
||||
if (selection->segs_in)
|
||||
gimp_canvas_draw_segments (canvas, GIMP_CANVAS_STYLE_SELECTION_IN,
|
||||
selection->segs_in,
|
||||
selection->n_segs_in);
|
||||
|
||||
#endif /* USE_DRAWPOINTS */
|
||||
}
|
||||
#ifdef BENCHMARK
|
||||
}
|
||||
|
||||
g_printerr ("drawing 20 selections took %f seconds\n",
|
||||
g_timer_elapsed (timer, NULL));
|
||||
|
||||
g_timer_destroy (timer);
|
||||
#endif /* BENCHMARK */
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -432,7 +334,8 @@ selection_layer_draw (Selection *selection)
|
|||
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (selection->shell->canvas));
|
||||
|
||||
gimp_display_shell_draw_layer_boundary (selection->shell, cr, drawable,
|
||||
gimp_display_shell_draw_layer_boundary (selection->shell, cr,
|
||||
drawable,
|
||||
selection->segs_layer,
|
||||
selection->n_segs_layer);
|
||||
|
||||
|
@ -447,15 +350,15 @@ selection_layer_undraw (Selection *selection)
|
|||
|
||||
if (selection->segs_layer && selection->n_segs_layer == 4)
|
||||
{
|
||||
gint x1 = selection->segs_layer[0].x1 - 1;
|
||||
gint y1 = selection->segs_layer[0].y1 - 1;
|
||||
gint x2 = selection->segs_layer[3].x2 + 1;
|
||||
gint y2 = selection->segs_layer[3].y2 + 1;
|
||||
const gint x1 = selection->segs_layer[0].x1 - 1;
|
||||
const gint y1 = selection->segs_layer[0].y1 - 1;
|
||||
const gint x2 = selection->segs_layer[3].x2 + 1;
|
||||
const gint y2 = selection->segs_layer[3].y2 + 1;
|
||||
|
||||
gint x3 = selection->segs_layer[0].x1 + 1;
|
||||
gint y3 = selection->segs_layer[0].y1 + 1;
|
||||
gint x4 = selection->segs_layer[3].x2 - 1;
|
||||
gint y4 = selection->segs_layer[3].y2 - 1;
|
||||
const gint x3 = selection->segs_layer[0].x1 + 1;
|
||||
const gint y3 = selection->segs_layer[0].y1 + 1;
|
||||
const gint x4 = selection->segs_layer[3].x2 - 1;
|
||||
const gint y4 = selection->segs_layer[3].y2 - 1;
|
||||
|
||||
/* expose the region, this will restart the selection */
|
||||
gimp_display_shell_expose_area (selection->shell,
|
||||
|
@ -474,137 +377,24 @@ selection_layer_undraw (Selection *selection)
|
|||
}
|
||||
|
||||
static void
|
||||
selection_add_point (GdkPoint *points[8],
|
||||
gint max_npoints[8],
|
||||
gint npoints[8],
|
||||
gint x,
|
||||
gint y)
|
||||
selection_render_mask (Selection *selection)
|
||||
{
|
||||
gint i, j;
|
||||
cairo_t *cr;
|
||||
|
||||
j = (x - y) & 7;
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (selection->shell->canvas));
|
||||
|
||||
i = npoints[j]++;
|
||||
if (i == max_npoints[j])
|
||||
{
|
||||
max_npoints[j] += 2048;
|
||||
points[j] = g_realloc (points[j], sizeof (GdkPoint) * max_npoints[j]);
|
||||
}
|
||||
cairo_push_group_with_content (cr, CAIRO_CONTENT_ALPHA);
|
||||
|
||||
points[j][i].x = x;
|
||||
points[j][i].y = y;
|
||||
}
|
||||
cairo_set_line_width (cr, 1.0);
|
||||
|
||||
gimp_cairo_add_segments (cr,
|
||||
selection->segs_in,
|
||||
selection->n_segs_in);
|
||||
cairo_stroke (cr);
|
||||
|
||||
/* Render the segs_in array into points_in */
|
||||
selection->segs_in_mask = cairo_pop_group (cr);
|
||||
|
||||
static void
|
||||
selection_render_points (Selection *selection)
|
||||
{
|
||||
gint max_npoints[8];
|
||||
gint i;
|
||||
|
||||
if (selection->segs_in == NULL)
|
||||
return;
|
||||
|
||||
for (i = 0; i < 8; i++)
|
||||
{
|
||||
max_npoints[i] = MAX_POINTS_INC;
|
||||
selection->points_in[i] = g_new (GdkPoint, max_npoints[i]);
|
||||
selection->num_points_in[i] = 0;
|
||||
}
|
||||
|
||||
for (i = 0; i < selection->n_segs_in; i++)
|
||||
{
|
||||
gint x, y;
|
||||
gint dx, dy;
|
||||
gint dxa, dya;
|
||||
gint r;
|
||||
|
||||
#ifdef VERBOSE
|
||||
g_print ("%2d: (%d, %d) - (%d, %d)\n", i,
|
||||
selection->segs_in[i].x1,
|
||||
selection->segs_in[i].y1,
|
||||
selection->segs_in[i].x2,
|
||||
selection->segs_in[i].y2);
|
||||
#endif
|
||||
|
||||
x = selection->segs_in[i].x1;
|
||||
dxa = selection->segs_in[i].x2 - x;
|
||||
|
||||
if (dxa > 0)
|
||||
{
|
||||
dx = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
dxa = -dxa;
|
||||
dx = -1;
|
||||
}
|
||||
|
||||
y = selection->segs_in[i].y1;
|
||||
dya = selection->segs_in[i].y2 - y;
|
||||
|
||||
if (dya > 0)
|
||||
{
|
||||
dy = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
dya = -dya;
|
||||
dy = -1;
|
||||
}
|
||||
|
||||
if (dxa > dya)
|
||||
{
|
||||
r = dya;
|
||||
|
||||
do
|
||||
{
|
||||
selection_add_point (selection->points_in,
|
||||
max_npoints,
|
||||
selection->num_points_in,
|
||||
x, y);
|
||||
x += dx;
|
||||
r += dya;
|
||||
|
||||
if (r >= (dxa << 1))
|
||||
{
|
||||
y += dy;
|
||||
r -= (dxa << 1);
|
||||
}
|
||||
}
|
||||
while (x != selection->segs_in[i].x2);
|
||||
}
|
||||
else if (dxa < dya)
|
||||
{
|
||||
r = dxa;
|
||||
|
||||
do
|
||||
{
|
||||
selection_add_point (selection->points_in,
|
||||
max_npoints,
|
||||
selection->num_points_in,
|
||||
x, y);
|
||||
y += dy;
|
||||
r += dxa;
|
||||
|
||||
if (r >= (dya << 1))
|
||||
{
|
||||
x += dx;
|
||||
r -= (dya << 1);
|
||||
}
|
||||
}
|
||||
while (y != selection->segs_in[i].y2);
|
||||
}
|
||||
else
|
||||
{
|
||||
selection_add_point (selection->points_in,
|
||||
max_npoints,
|
||||
selection->num_points_in,
|
||||
x, y);
|
||||
}
|
||||
}
|
||||
cairo_destroy (cr);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -613,9 +403,9 @@ selection_transform_segs (Selection *selection,
|
|||
GdkSegment *dest_segs,
|
||||
gint n_segs)
|
||||
{
|
||||
gint xclamp = selection->shell->disp_width + 1;
|
||||
gint yclamp = selection->shell->disp_height + 1;
|
||||
gint i;
|
||||
const gint xclamp = selection->shell->disp_width + 1;
|
||||
const gint yclamp = selection->shell->disp_height + 1;
|
||||
gint i;
|
||||
|
||||
gimp_display_shell_transform_segments (selection->shell,
|
||||
src_segs, dest_segs, n_segs, FALSE);
|
||||
|
@ -633,7 +423,7 @@ selection_transform_segs (Selection *selection,
|
|||
* lie outside the region...
|
||||
* we need to transform it by one display pixel
|
||||
*/
|
||||
if (!src_segs[i].open)
|
||||
if (! src_segs[i].open)
|
||||
{
|
||||
/* If it is vertical */
|
||||
if (dest_segs[i].x1 == dest_segs[i].x2)
|
||||
|
@ -672,9 +462,7 @@ selection_generate_segs (Selection *selection)
|
|||
selection_transform_segs (selection, segs_in,
|
||||
selection->segs_in, selection->n_segs_in);
|
||||
|
||||
#ifdef USE_DRAWPOINTS
|
||||
selection_render_points (selection);
|
||||
#endif
|
||||
selection_render_mask (selection);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -718,8 +506,6 @@ selection_generate_segs (Selection *selection)
|
|||
static void
|
||||
selection_free_segs (Selection *selection)
|
||||
{
|
||||
gint j;
|
||||
|
||||
if (selection->segs_in)
|
||||
{
|
||||
g_free (selection->segs_in);
|
||||
|
@ -741,14 +527,10 @@ selection_free_segs (Selection *selection)
|
|||
selection->n_segs_layer = 0;
|
||||
}
|
||||
|
||||
for (j = 0; j < 8; j++)
|
||||
if (selection->segs_in_mask)
|
||||
{
|
||||
if (selection->points_in[j])
|
||||
{
|
||||
g_free (selection->points_in[j]);
|
||||
selection->points_in[j] = NULL;
|
||||
selection->num_points_in[j] = 0;
|
||||
}
|
||||
cairo_pattern_destroy (selection->segs_in_mask);
|
||||
selection->segs_in_mask = NULL;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -771,31 +553,21 @@ selection_start_timeout (Selection *selection)
|
|||
/* Draw the ants */
|
||||
if (! selection->hidden)
|
||||
{
|
||||
GimpCanvas *canvas = GIMP_CANVAS (selection->shell->canvas);
|
||||
GimpDisplayConfig *config = selection->shell->display->config;
|
||||
|
||||
selection_draw (selection);
|
||||
|
||||
if (selection->segs_out)
|
||||
{
|
||||
if (selection->use_cairo)
|
||||
{
|
||||
cairo_t *cr;
|
||||
cairo_t *cr;
|
||||
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (selection->shell->canvas));
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (selection->shell->canvas));
|
||||
|
||||
gimp_display_shell_draw_selection_out (selection->shell, cr,
|
||||
selection->segs_out,
|
||||
selection->n_segs_out);
|
||||
gimp_display_shell_draw_selection_out (selection->shell, cr,
|
||||
selection->segs_out,
|
||||
selection->n_segs_out);
|
||||
|
||||
cairo_destroy (cr);
|
||||
}
|
||||
else
|
||||
{
|
||||
gimp_canvas_draw_segments (canvas, GIMP_CANVAS_STYLE_SELECTION_OUT,
|
||||
selection->segs_out,
|
||||
selection->n_segs_out);
|
||||
}
|
||||
cairo_destroy (cr);
|
||||
}
|
||||
|
||||
if (selection->segs_in && selection->visible)
|
||||
|
|
|
@ -34,6 +34,8 @@
|
|||
#include "core/gimpgrid.h"
|
||||
#include "core/gimplayermask.h"
|
||||
|
||||
#include "widgets/gimpcairo.h"
|
||||
|
||||
#include "gimpdisplayshell.h"
|
||||
#include "gimpdisplayshell-style.h"
|
||||
|
||||
|
@ -62,14 +64,6 @@ static const GimpRGB selection_in_fg = { 0.0, 0.0, 0.0, 1.0 };
|
|||
static const GimpRGB selection_in_bg = { 1.0, 1.0, 1.0, 1.0 };
|
||||
|
||||
|
||||
/* local function prototypes */
|
||||
|
||||
static void gimp_display_shell_set_stipple_style (cairo_t *cr,
|
||||
const GimpRGB *fg,
|
||||
const GimpRGB *bg,
|
||||
gint index);
|
||||
|
||||
|
||||
/* public functions */
|
||||
|
||||
void
|
||||
|
@ -77,21 +71,24 @@ gimp_display_shell_set_guide_style (GimpDisplayShell *shell,
|
|||
cairo_t *cr,
|
||||
gboolean active)
|
||||
{
|
||||
cairo_pattern_t *pattern;
|
||||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (cr != NULL);
|
||||
|
||||
cairo_set_line_width (cr, 1.0);
|
||||
|
||||
if (active)
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&guide_active_fg,
|
||||
&guide_active_bg,
|
||||
0);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&guide_active_fg,
|
||||
&guide_active_bg,
|
||||
0);
|
||||
else
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&guide_normal_fg,
|
||||
&guide_normal_bg,
|
||||
0);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&guide_normal_fg,
|
||||
&guide_normal_bg,
|
||||
0);
|
||||
|
||||
cairo_set_source (cr, pattern);
|
||||
cairo_pattern_destroy (pattern);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -129,24 +126,27 @@ gimp_display_shell_set_grid_style (GimpDisplayShell *shell,
|
|||
|
||||
switch (grid->style)
|
||||
{
|
||||
cairo_pattern_t *pattern;
|
||||
|
||||
case GIMP_GRID_ON_OFF_DASH:
|
||||
case GIMP_GRID_DOUBLE_DASH:
|
||||
if (grid->style == GIMP_GRID_DOUBLE_DASH)
|
||||
{
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&grid->fgcolor,
|
||||
&grid->bgcolor,
|
||||
0);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&grid->fgcolor,
|
||||
&grid->bgcolor,
|
||||
0);
|
||||
}
|
||||
else
|
||||
{
|
||||
GimpRGB bg = { 0.0, 0.0, 0.0, 0.0 };
|
||||
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&grid->fgcolor,
|
||||
&bg,
|
||||
0);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&grid->fgcolor,
|
||||
&bg,
|
||||
0);
|
||||
}
|
||||
|
||||
cairo_set_source (cr, pattern);
|
||||
cairo_pattern_destroy (pattern);
|
||||
break;
|
||||
|
||||
case GIMP_GRID_DOTS:
|
||||
|
@ -208,6 +208,8 @@ gimp_display_shell_set_layer_style (GimpDisplayShell *shell,
|
|||
cairo_t *cr,
|
||||
GimpDrawable *drawable)
|
||||
{
|
||||
cairo_pattern_t *pattern;
|
||||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (cr != NULL);
|
||||
g_return_if_fail (GIMP_IS_DRAWABLE (drawable));
|
||||
|
@ -216,40 +218,43 @@ gimp_display_shell_set_layer_style (GimpDisplayShell *shell,
|
|||
|
||||
if (GIMP_IS_LAYER_MASK (drawable))
|
||||
{
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&layer_mask_fg,
|
||||
&layer_mask_bg,
|
||||
0);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&layer_mask_fg,
|
||||
&layer_mask_bg,
|
||||
0);
|
||||
}
|
||||
else if (gimp_viewable_get_children (GIMP_VIEWABLE (drawable)))
|
||||
{
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&layer_group_fg,
|
||||
&layer_group_bg,
|
||||
0);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&layer_group_fg,
|
||||
&layer_group_bg,
|
||||
0);
|
||||
}
|
||||
else
|
||||
{
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&layer_fg,
|
||||
&layer_bg,
|
||||
0);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&layer_fg,
|
||||
&layer_bg,
|
||||
0);
|
||||
}
|
||||
|
||||
cairo_set_source (cr, pattern);
|
||||
cairo_pattern_destroy (pattern);
|
||||
}
|
||||
|
||||
void
|
||||
gimp_display_shell_set_selection_out_style (GimpDisplayShell *shell,
|
||||
cairo_t *cr)
|
||||
{
|
||||
cairo_pattern_t *pattern;
|
||||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (cr != NULL);
|
||||
|
||||
cairo_set_line_width (cr, 1.0);
|
||||
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&selection_out_fg,
|
||||
&selection_out_bg,
|
||||
0);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&selection_out_fg,
|
||||
&selection_out_bg,
|
||||
0);
|
||||
cairo_set_source (cr, pattern);
|
||||
cairo_pattern_destroy (pattern);
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -257,61 +262,16 @@ gimp_display_shell_set_selection_in_style (GimpDisplayShell *shell,
|
|||
cairo_t *cr,
|
||||
gint index)
|
||||
{
|
||||
cairo_pattern_t *pattern;
|
||||
|
||||
g_return_if_fail (GIMP_IS_DISPLAY_SHELL (shell));
|
||||
g_return_if_fail (cr != NULL);
|
||||
|
||||
cairo_set_line_width (cr, 1.0);
|
||||
|
||||
gimp_display_shell_set_stipple_style (cr,
|
||||
&selection_in_fg,
|
||||
&selection_in_bg,
|
||||
index);
|
||||
}
|
||||
|
||||
|
||||
/* private functions */
|
||||
|
||||
static cairo_user_data_key_t surface_data_key = { 0, };
|
||||
|
||||
static void
|
||||
gimp_display_shell_set_stipple_style (cairo_t *cr,
|
||||
const GimpRGB *fg,
|
||||
const GimpRGB *bg,
|
||||
gint index)
|
||||
{
|
||||
cairo_surface_t *surface;
|
||||
guchar *data = g_malloc0 (8 * 8 * 4);
|
||||
guchar fg_r, fg_g, fg_b, fg_a;
|
||||
guchar bg_r, bg_g, bg_b, bg_a;
|
||||
gint x, y;
|
||||
guchar *d;
|
||||
|
||||
gimp_rgba_get_uchar (fg, &fg_r, &fg_g, &fg_b, &fg_a);
|
||||
gimp_rgba_get_uchar (bg, &bg_r, &bg_g, &bg_b, &bg_a);
|
||||
|
||||
d = data;
|
||||
|
||||
for (y = 0; y < 8; y++)
|
||||
{
|
||||
for (x = 0; x < 8; x++)
|
||||
{
|
||||
if ((x + y + index) % 8 >= 4)
|
||||
GIMP_CAIRO_ARGB32_SET_PIXEL (d, fg_r, fg_g, fg_b, fg_a);
|
||||
else
|
||||
GIMP_CAIRO_ARGB32_SET_PIXEL (d, bg_r, bg_g, bg_b, bg_a);
|
||||
|
||||
d += 4;
|
||||
}
|
||||
}
|
||||
|
||||
surface = cairo_image_surface_create_for_data (data,
|
||||
CAIRO_FORMAT_ARGB32,
|
||||
8, 8, 8 * 4);
|
||||
cairo_surface_set_user_data (surface, &surface_data_key,
|
||||
data, (cairo_destroy_func_t) g_free);
|
||||
|
||||
cairo_set_source_surface (cr, surface, 0, 0);
|
||||
cairo_surface_destroy (surface);
|
||||
|
||||
cairo_pattern_set_extend (cairo_get_source (cr), CAIRO_EXTEND_REPEAT);
|
||||
pattern = gimp_cairo_stipple_pattern_create (&selection_in_fg,
|
||||
&selection_in_bg,
|
||||
index);
|
||||
cairo_set_source (cr, pattern);
|
||||
cairo_pattern_destroy (pattern);
|
||||
}
|
||||
|
|
|
@ -289,9 +289,9 @@ gimp_display_shell_init (GimpDisplayShell *shell)
|
|||
shell->x_src_dec = 1;
|
||||
shell->y_src_dec = 1;
|
||||
|
||||
shell->render_buf = g_new (guchar,
|
||||
GIMP_DISPLAY_RENDER_BUF_WIDTH *
|
||||
GIMP_DISPLAY_RENDER_BUF_HEIGHT * 3);
|
||||
shell->render_surface = cairo_image_surface_create (CAIRO_FORMAT_RGB24,
|
||||
GIMP_DISPLAY_RENDER_BUF_WIDTH,
|
||||
GIMP_DISPLAY_RENDER_BUF_HEIGHT);
|
||||
|
||||
shell->icon_size = 32;
|
||||
|
||||
|
@ -868,10 +868,10 @@ gimp_display_shell_destroy (GtkObject *object)
|
|||
shell->filter_idle_id = 0;
|
||||
}
|
||||
|
||||
if (shell->render_buf)
|
||||
if (shell->render_surface)
|
||||
{
|
||||
g_free (shell->render_buf);
|
||||
shell->render_buf = NULL;
|
||||
cairo_surface_destroy (shell->render_surface);
|
||||
shell->render_surface = NULL;
|
||||
}
|
||||
|
||||
if (shell->highlight)
|
||||
|
|
|
@ -131,7 +131,7 @@ struct _GimpDisplayShell
|
|||
|
||||
GtkWidget *statusbar; /* statusbar */
|
||||
|
||||
guchar *render_buf; /* buffer for rendering the image */
|
||||
cairo_surface_t *render_surface; /* buffer for rendering the image */
|
||||
|
||||
guint title_idle_id; /* title update idle ID */
|
||||
gchar *title; /* current title */
|
||||
|
|
|
@ -315,7 +315,7 @@ gimp_pdb_item_is_attached (GimpItem *item,
|
|||
if (! gimp_item_is_attached (item))
|
||||
{
|
||||
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_INVALID_ARGUMENT,
|
||||
_("Item '%s' (%d) can not be used because it has not "
|
||||
_("Item '%s' (%d) cannot be used because it has not "
|
||||
"been added to an image"),
|
||||
gimp_object_get_name (item),
|
||||
gimp_item_get_ID (item));
|
||||
|
@ -325,7 +325,7 @@ gimp_pdb_item_is_attached (GimpItem *item,
|
|||
if (image && image != gimp_item_get_image (item))
|
||||
{
|
||||
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_INVALID_ARGUMENT,
|
||||
_("Item '%s' (%d) can not be used because it is "
|
||||
_("Item '%s' (%d) cannot be used because it is "
|
||||
"attached to another image"),
|
||||
gimp_object_get_name (item),
|
||||
gimp_item_get_ID (item));
|
||||
|
@ -354,7 +354,7 @@ gimp_pdb_item_is_in_tree (GimpItem *item,
|
|||
if (! gimp_item_get_tree (item))
|
||||
{
|
||||
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_INVALID_ARGUMENT,
|
||||
_("Item '%s' (%d) can not be used because it is not "
|
||||
_("Item '%s' (%d) cannot be used because it is not "
|
||||
"a direct child of an item tree"),
|
||||
gimp_object_get_name (item),
|
||||
gimp_item_get_ID (item));
|
||||
|
@ -364,6 +364,61 @@ gimp_pdb_item_is_in_tree (GimpItem *item,
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
gimp_pdb_item_is_in_same_tree (GimpItem *item,
|
||||
GimpItem *item2,
|
||||
GimpImage *image,
|
||||
GError **error)
|
||||
{
|
||||
g_return_val_if_fail (GIMP_IS_ITEM (item), FALSE);
|
||||
g_return_val_if_fail (GIMP_IS_ITEM (item2), FALSE);
|
||||
g_return_val_if_fail (image == NULL || GIMP_IS_IMAGE (image), FALSE);
|
||||
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
|
||||
|
||||
if (! gimp_pdb_item_is_in_tree (item, image, FALSE, error) ||
|
||||
! gimp_pdb_item_is_in_tree (item2, image, FALSE, error))
|
||||
return FALSE;
|
||||
|
||||
if (gimp_item_get_tree (item) != gimp_item_get_tree (item2))
|
||||
{
|
||||
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_INVALID_ARGUMENT,
|
||||
_("Items '%s' (%d) and '%s' (%d) cannot be used "
|
||||
"because they are not part of the same item tree"),
|
||||
gimp_object_get_name (item),
|
||||
gimp_item_get_ID (item),
|
||||
gimp_object_get_name (item2),
|
||||
gimp_item_get_ID (item2));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
gimp_pdb_item_is_not_ancestor (GimpItem *item,
|
||||
GimpItem *not_descendant,
|
||||
GError **error)
|
||||
{
|
||||
g_return_val_if_fail (GIMP_IS_ITEM (item), FALSE);
|
||||
g_return_val_if_fail (GIMP_IS_ITEM (not_descendant), FALSE);
|
||||
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
|
||||
|
||||
if (gimp_viewable_is_ancestor (GIMP_VIEWABLE (item),
|
||||
GIMP_VIEWABLE (not_descendant)))
|
||||
{
|
||||
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_INVALID_ARGUMENT,
|
||||
_("Item '%s' (%d) must not be an ancestor of "
|
||||
"'%s' (%d)"),
|
||||
gimp_object_get_name (item),
|
||||
gimp_item_get_ID (item),
|
||||
gimp_object_get_name (not_descendant),
|
||||
gimp_item_get_ID (not_descendant));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
gimp_pdb_item_is_floating (GimpItem *item,
|
||||
GimpImage *dest_image,
|
||||
|
@ -413,6 +468,26 @@ gimp_pdb_item_is_writable (GimpItem *item,
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
gimp_pdb_item_is_group (GimpItem *item,
|
||||
GError **error)
|
||||
{
|
||||
g_return_val_if_fail (GIMP_IS_ITEM (item), FALSE);
|
||||
g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
|
||||
|
||||
if (! gimp_viewable_get_children (GIMP_VIEWABLE (item)))
|
||||
{
|
||||
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_INVALID_ARGUMENT,
|
||||
_("Item '%s' (%d) cannot be used because it is "
|
||||
"not a group item"),
|
||||
gimp_object_get_name (item),
|
||||
gimp_item_get_ID (item));
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
gboolean
|
||||
gimp_pdb_item_is_not_group (GimpItem *item,
|
||||
GError **error)
|
||||
|
@ -444,7 +519,7 @@ gimp_pdb_layer_is_text_layer (GimpLayer *layer,
|
|||
if (! gimp_drawable_is_text_layer (GIMP_DRAWABLE (layer)))
|
||||
{
|
||||
g_set_error (error, GIMP_PDB_ERROR, GIMP_PDB_INVALID_ARGUMENT,
|
||||
_("Layer '%s' (%d) can not be used because it is not "
|
||||
_("Layer '%s' (%d) cannot be used because it is not "
|
||||
"a text layer"),
|
||||
gimp_object_get_name (layer),
|
||||
gimp_item_get_ID (GIMP_ITEM (layer)));
|
||||
|
|
|
@ -56,11 +56,20 @@ gboolean gimp_pdb_item_is_in_tree (GimpItem *item,
|
|||
GimpImage *image,
|
||||
gboolean writable,
|
||||
GError **error);
|
||||
gboolean gimp_pdb_item_is_in_same_tree (GimpItem *item,
|
||||
GimpItem *item2,
|
||||
GimpImage *image,
|
||||
GError **error);
|
||||
gboolean gimp_pdb_item_is_not_ancestor (GimpItem *item,
|
||||
GimpItem *not_descendant,
|
||||
GError **error);
|
||||
gboolean gimp_pdb_item_is_floating (GimpItem *item,
|
||||
GimpImage *dest_image,
|
||||
GError **error);
|
||||
gboolean gimp_pdb_item_is_writable (GimpItem *item,
|
||||
GError **error);
|
||||
gboolean gimp_pdb_item_is_group (GimpItem *item,
|
||||
GError **error);
|
||||
gboolean gimp_pdb_item_is_not_group (GimpItem *item,
|
||||
GError **error);
|
||||
|
||||
|
|
1139
app/pdb/image-cmds.c
1139
app/pdb/image-cmds.c
File diff suppressed because it is too large
Load Diff
|
@ -28,7 +28,7 @@
|
|||
#include "internal-procs.h"
|
||||
|
||||
|
||||
/* 621 procedures registered total */
|
||||
/* 630 procedures registered total */
|
||||
|
||||
void
|
||||
internal_procs_init (GimpPDB *pdb)
|
||||
|
|
|
@ -26,6 +26,7 @@
|
|||
#include "core/gimpimage.h"
|
||||
#include "core/gimpitem.h"
|
||||
#include "core/gimplayermask.h"
|
||||
#include "core/gimplist.h"
|
||||
#include "core/gimpparamspecs.h"
|
||||
#include "core/gimpselection.h"
|
||||
#include "text/gimptextlayer.h"
|
||||
|
@ -293,6 +294,120 @@ item_is_vectors_invoker (GimpProcedure *procedure,
|
|||
return return_vals;
|
||||
}
|
||||
|
||||
static GValueArray *
|
||||
item_is_group_invoker (GimpProcedure *procedure,
|
||||
Gimp *gimp,
|
||||
GimpContext *context,
|
||||
GimpProgress *progress,
|
||||
const GValueArray *args,
|
||||
GError **error)
|
||||
{
|
||||
gboolean success = TRUE;
|
||||
GValueArray *return_vals;
|
||||
GimpItem *item;
|
||||
gboolean group = FALSE;
|
||||
|
||||
item = gimp_value_get_item (&args->values[0], gimp);
|
||||
|
||||
if (success)
|
||||
{
|
||||
group = (gimp_viewable_get_children (GIMP_VIEWABLE (item)) != NULL);
|
||||
}
|
||||
|
||||
return_vals = gimp_procedure_get_return_values (procedure, success,
|
||||
error ? *error : NULL);
|
||||
|
||||
if (success)
|
||||
g_value_set_boolean (&return_vals->values[1], group);
|
||||
|
||||
return return_vals;
|
||||
}
|
||||
|
||||
static GValueArray *
|
||||
item_get_parent_invoker (GimpProcedure *procedure,
|
||||
Gimp *gimp,
|
||||
GimpContext *context,
|
||||
GimpProgress *progress,
|
||||
const GValueArray *args,
|
||||
GError **error)
|
||||
{
|
||||
gboolean success = TRUE;
|
||||
GValueArray *return_vals;
|
||||
GimpItem *item;
|
||||
GimpItem *parent = NULL;
|
||||
|
||||
item = gimp_value_get_item (&args->values[0], gimp);
|
||||
|
||||
if (success)
|
||||
{
|
||||
parent = gimp_item_get_parent (item);
|
||||
}
|
||||
|
||||
return_vals = gimp_procedure_get_return_values (procedure, success,
|
||||
error ? *error : NULL);
|
||||
|
||||
if (success)
|
||||
gimp_value_set_item (&return_vals->values[1], parent);
|
||||
|
||||
return return_vals;
|
||||
}
|
||||
|
||||
static GValueArray *
|
||||
item_get_children_invoker (GimpProcedure *procedure,
|
||||
Gimp *gimp,
|
||||
GimpContext *context,
|
||||
GimpProgress *progress,
|
||||
const GValueArray *args,
|
||||
GError **error)
|
||||
{
|
||||
gboolean success = TRUE;
|
||||
GValueArray *return_vals;
|
||||
GimpItem *item;
|
||||
gint32 num_children = 0;
|
||||
gint32 *child_ids = NULL;
|
||||
|
||||
item = gimp_value_get_item (&args->values[0], gimp);
|
||||
|
||||
if (success)
|
||||
{
|
||||
GimpContainer *children = gimp_viewable_get_children (GIMP_VIEWABLE (item));
|
||||
|
||||
if (children)
|
||||
{
|
||||
num_children = gimp_container_get_n_children (children);
|
||||
|
||||
if (num_children)
|
||||
{
|
||||
GList *list;
|
||||
gint i;
|
||||
|
||||
child_ids = g_new (gint32, num_children);
|
||||
|
||||
for (list = GIMP_LIST (children)->list, i = 0;
|
||||
list;
|
||||
list = g_list_next (list), i++)
|
||||
{
|
||||
child_ids[i] = gimp_item_get_ID (GIMP_ITEM (list->data));
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
success = FALSE;
|
||||
|
||||
}
|
||||
|
||||
return_vals = gimp_procedure_get_return_values (procedure, success,
|
||||
error ? *error : NULL);
|
||||
|
||||
if (success)
|
||||
{
|
||||
g_value_set_int (&return_vals->values[1], num_children);
|
||||
gimp_value_take_int32array (&return_vals->values[2], child_ids, num_children);
|
||||
}
|
||||
|
||||
return return_vals;
|
||||
}
|
||||
|
||||
static GValueArray *
|
||||
item_get_name_invoker (GimpProcedure *procedure,
|
||||
Gimp *gimp,
|
||||
|
@ -821,6 +936,98 @@ register_item_procs (GimpPDB *pdb)
|
|||
gimp_pdb_register_procedure (pdb, procedure);
|
||||
g_object_unref (procedure);
|
||||
|
||||
/*
|
||||
* gimp-item-is-group
|
||||
*/
|
||||
procedure = gimp_procedure_new (item_is_group_invoker);
|
||||
gimp_object_set_static_name (GIMP_OBJECT (procedure),
|
||||
"gimp-item-is-group");
|
||||
gimp_procedure_set_static_strings (procedure,
|
||||
"gimp-item-is-group",
|
||||
"Returns whether the item is a group item.",
|
||||
"This procedure returns TRUE if the specified item is a group item which can have children.",
|
||||
"Michael Natterer <mitch@gimp.org>",
|
||||
"Michael Natterer",
|
||||
"2010",
|
||||
NULL);
|
||||
gimp_procedure_add_argument (procedure,
|
||||
gimp_param_spec_item_id ("item",
|
||||
"item",
|
||||
"The item",
|
||||
pdb->gimp, FALSE,
|
||||
GIMP_PARAM_READWRITE));
|
||||
gimp_procedure_add_return_value (procedure,
|
||||
g_param_spec_boolean ("group",
|
||||
"group",
|
||||
"TRUE if the item is a group, FALSE otherwise",
|
||||
FALSE,
|
||||
GIMP_PARAM_READWRITE));
|
||||
gimp_pdb_register_procedure (pdb, procedure);
|
||||
g_object_unref (procedure);
|
||||
|
||||
/*
|
||||
* gimp-item-get-parent
|
||||
*/
|
||||
procedure = gimp_procedure_new (item_get_parent_invoker);
|
||||
gimp_object_set_static_name (GIMP_OBJECT (procedure),
|
||||
"gimp-item-get-parent");
|
||||
gimp_procedure_set_static_strings (procedure,
|
||||
"gimp-item-get-parent",
|
||||
"Returns the item's parent item.",
|
||||
"This procedure returns the item's parent item, if any.",
|
||||
"Michael Natterer <mitch@gimp.org>",
|
||||
"Michael Natterer",
|
||||
"2010",
|
||||
NULL);
|
||||
gimp_procedure_add_argument (procedure,
|
||||
gimp_param_spec_item_id ("item",
|
||||
"item",
|
||||
"The item",
|
||||
pdb->gimp, FALSE,
|
||||
GIMP_PARAM_READWRITE));
|
||||
gimp_procedure_add_return_value (procedure,
|
||||
gimp_param_spec_item_id ("parent",
|
||||
"parent",
|
||||
"The item's parent item",
|
||||
pdb->gimp, FALSE,
|
||||
GIMP_PARAM_READWRITE));
|
||||
gimp_pdb_register_procedure (pdb, procedure);
|
||||
g_object_unref (procedure);
|
||||
|
||||
/*
|
||||
* gimp-item-get-children
|
||||
*/
|
||||
procedure = gimp_procedure_new (item_get_children_invoker);
|
||||
gimp_object_set_static_name (GIMP_OBJECT (procedure),
|
||||
"gimp-item-get-children");
|
||||
gimp_procedure_set_static_strings (procedure,
|
||||
"gimp-item-get-children",
|
||||
"Returns the item's list of children.",
|
||||
"This procedure returns the list of items which are children of the specified item. The order is topmost to bottommost.",
|
||||
"Michael Natterer <mitch@gimp.org>",
|
||||
"Michael Natterer",
|
||||
"2010",
|
||||
NULL);
|
||||
gimp_procedure_add_argument (procedure,
|
||||
gimp_param_spec_item_id ("item",
|
||||
"item",
|
||||
"The item",
|
||||
pdb->gimp, FALSE,
|
||||
GIMP_PARAM_READWRITE));
|
||||
gimp_procedure_add_return_value (procedure,
|
||||
gimp_param_spec_int32 ("num-children",
|
||||
"num children",
|
||||
"The item's number of children",
|
||||
0, G_MAXINT32, 0,
|
||||
GIMP_PARAM_READWRITE));
|
||||
gimp_procedure_add_return_value (procedure,
|
||||
gimp_param_spec_int32_array ("child-ids",
|
||||
"child ids",
|
||||
"The item's list of children",
|
||||
GIMP_PARAM_READWRITE));
|
||||
gimp_pdb_register_procedure (pdb, procedure);
|
||||
g_object_unref (procedure);
|
||||
|
||||
/*
|
||||
* gimp-item-get-name
|
||||
*/
|
||||
|
|
|
@ -39,6 +39,8 @@ libappwidgets_a_sources = \
|
|||
gimpbrushselect.h \
|
||||
gimpbufferview.c \
|
||||
gimpbufferview.h \
|
||||
gimpcairo.c \
|
||||
gimpcairo.h \
|
||||
gimpcairo-wilber.c \
|
||||
gimpcairo-wilber.h \
|
||||
gimpcellrendererdashes.c \
|
||||
|
|
|
@ -0,0 +1,201 @@
|
|||
/* GIMP - The GNU Image Manipulation Program
|
||||
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
|
||||
*
|
||||
* gimpcairo.c
|
||||
* Copyright (C) 2010 Michael Natterer <mitch@gimp.org>
|
||||
*
|
||||
* Some code here is based on code from librsvg that was originally
|
||||
* written by Raph Levien <raph@artofcode.com> for Gill.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <gtk/gtk.h>
|
||||
|
||||
#include "libgimpcolor/gimpcolor.h"
|
||||
#include "libgimpwidgets/gimpwidgets.h"
|
||||
|
||||
#include "widgets-types.h"
|
||||
|
||||
#include "gimpcairo.h"
|
||||
#include "gimpcairo-wilber.h"
|
||||
|
||||
|
||||
static cairo_user_data_key_t surface_data_key = { 0, };
|
||||
|
||||
|
||||
cairo_pattern_t *
|
||||
gimp_cairo_stipple_pattern_create (const GimpRGB *fg,
|
||||
const GimpRGB *bg,
|
||||
gint index)
|
||||
{
|
||||
cairo_surface_t *surface;
|
||||
cairo_pattern_t *pattern;
|
||||
guchar *data;
|
||||
guchar *d;
|
||||
guchar fg_r, fg_g, fg_b, fg_a;
|
||||
guchar bg_r, bg_g, bg_b, bg_a;
|
||||
gint x, y;
|
||||
|
||||
g_return_val_if_fail (fg != NULL, NULL);
|
||||
g_return_val_if_fail (bg != NULL, NULL);
|
||||
|
||||
data = g_malloc (8 * 8 * 4);
|
||||
|
||||
gimp_rgba_get_uchar (fg, &fg_r, &fg_g, &fg_b, &fg_a);
|
||||
gimp_rgba_get_uchar (bg, &bg_r, &bg_g, &bg_b, &bg_a);
|
||||
|
||||
d = data;
|
||||
|
||||
for (y = 0; y < 8; y++)
|
||||
{
|
||||
for (x = 0; x < 8; x++)
|
||||
{
|
||||
if ((x + y + index) % 8 >= 4)
|
||||
GIMP_CAIRO_ARGB32_SET_PIXEL (d, fg_r, fg_g, fg_b, fg_a);
|
||||
else
|
||||
GIMP_CAIRO_ARGB32_SET_PIXEL (d, bg_r, bg_g, bg_b, bg_a);
|
||||
|
||||
d += 4;
|
||||
}
|
||||
}
|
||||
|
||||
surface = cairo_image_surface_create_for_data (data,
|
||||
CAIRO_FORMAT_ARGB32,
|
||||
8, 8, 8 * 4);
|
||||
cairo_surface_set_user_data (surface, &surface_data_key,
|
||||
data, (cairo_destroy_func_t) g_free);
|
||||
|
||||
pattern = cairo_pattern_create_for_surface (surface);
|
||||
cairo_pattern_set_extend (pattern, CAIRO_EXTEND_REPEAT);
|
||||
|
||||
cairo_surface_destroy (surface);
|
||||
|
||||
return pattern;
|
||||
}
|
||||
|
||||
void
|
||||
gimp_cairo_add_segments (cairo_t *cr,
|
||||
GdkSegment *segs,
|
||||
gint n_segs)
|
||||
{
|
||||
gint i;
|
||||
|
||||
g_return_if_fail (cr != NULL);
|
||||
g_return_if_fail (segs != NULL && n_segs > 0);
|
||||
|
||||
for (i = 0; i < n_segs; i++)
|
||||
{
|
||||
if (segs[i].x1 == segs[i].x2)
|
||||
{
|
||||
cairo_move_to (cr, segs[i].x1 + 0.5, segs[i].y1);
|
||||
cairo_line_to (cr, segs[i].x2 + 0.5, segs[i].y2);
|
||||
}
|
||||
else
|
||||
{
|
||||
cairo_move_to (cr, segs[i].x1, segs[i].y1 + 0.5);
|
||||
cairo_line_to (cr, segs[i].x2, segs[i].y2 + 0.5);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
gimp_cairo_draw_toolbox_wilber (GtkWidget *widget,
|
||||
cairo_t *cr)
|
||||
{
|
||||
GtkStyle *style;
|
||||
GtkStateType state;
|
||||
GtkAllocation allocation;
|
||||
gdouble wilber_width;
|
||||
gdouble wilber_height;
|
||||
gdouble factor;
|
||||
|
||||
g_return_if_fail (GTK_IS_WIDGET (widget));
|
||||
g_return_if_fail (cr != NULL);
|
||||
|
||||
style = gtk_widget_get_style (widget);
|
||||
state = gtk_widget_get_state (widget);
|
||||
|
||||
gtk_widget_get_allocation (widget, &allocation);
|
||||
|
||||
gimp_cairo_wilber_get_size (cr, &wilber_width, &wilber_height);
|
||||
|
||||
factor = allocation.width / wilber_width * 0.9;
|
||||
|
||||
cairo_scale (cr, factor, factor);
|
||||
|
||||
gimp_cairo_wilber (cr,
|
||||
(allocation.width / factor - wilber_width) / 2.0,
|
||||
(allocation.height / factor - wilber_height) / 2.0);
|
||||
|
||||
cairo_set_source_rgba (cr,
|
||||
style->fg[state].red / 65535.0,
|
||||
style->fg[state].green / 65535.0,
|
||||
style->fg[state].blue / 65535.0,
|
||||
0.10);
|
||||
cairo_fill (cr);
|
||||
}
|
||||
|
||||
void
|
||||
gimp_cairo_draw_drop_wilber (GtkWidget *widget,
|
||||
cairo_t *cr)
|
||||
{
|
||||
GtkStyle *style;
|
||||
GtkStateType state;
|
||||
GtkAllocation allocation;
|
||||
gdouble wilber_width;
|
||||
gdouble wilber_height;
|
||||
gdouble width;
|
||||
gdouble height;
|
||||
gdouble side;
|
||||
gdouble factor;
|
||||
|
||||
g_return_if_fail (GTK_IS_WIDGET (widget));
|
||||
g_return_if_fail (cr != NULL);
|
||||
|
||||
style = gtk_widget_get_style (widget);
|
||||
state = gtk_widget_get_state (widget);
|
||||
|
||||
gtk_widget_get_allocation (widget, &allocation);
|
||||
|
||||
gimp_cairo_wilber_get_size (cr, &wilber_width, &wilber_height);
|
||||
|
||||
wilber_width /= 2;
|
||||
wilber_height /= 2;
|
||||
|
||||
side = MIN (MIN (allocation.width, allocation.height),
|
||||
MAX (allocation.width, allocation.height) / 2);
|
||||
|
||||
width = MAX (wilber_width, side);
|
||||
height = MAX (wilber_height, side);
|
||||
|
||||
factor = MIN (width / wilber_width, height / wilber_height);
|
||||
|
||||
cairo_scale (cr, factor, factor);
|
||||
|
||||
/* magic factors depend on the image used, everything else is generic
|
||||
*/
|
||||
gimp_cairo_wilber (cr,
|
||||
- wilber_width * 0.6,
|
||||
allocation.height / factor - wilber_height * 1.1);
|
||||
|
||||
cairo_set_source_rgba (cr,
|
||||
style->fg[state].red / 65535.0,
|
||||
style->fg[state].green / 65535.0,
|
||||
style->fg[state].blue / 65535.0,
|
||||
0.15);
|
||||
cairo_fill (cr);
|
||||
}
|
|
@ -0,0 +1,42 @@
|
|||
/* GIMP - The GNU Image Manipulation Program
|
||||
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
|
||||
*
|
||||
* gimpcairo.h
|
||||
* Copyright (C) 2010 Michael Natterer <mitch@gimp.org>
|
||||
*
|
||||
* Some code here is based on code from librsvg that was originally
|
||||
* written by Raph Levien <raph@artofcode.com> for Gill.
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
#ifndef __GIMP_CAIRO_H__
|
||||
#define __GIMP_CAIRO_H__
|
||||
|
||||
|
||||
cairo_pattern_t * gimp_cairo_stipple_pattern_create (const GimpRGB *fg,
|
||||
const GimpRGB *bg,
|
||||
gint index);
|
||||
|
||||
void gimp_cairo_add_segments (cairo_t *cr,
|
||||
GdkSegment *segs,
|
||||
gint n_segs);
|
||||
|
||||
void gimp_cairo_draw_toolbox_wilber (GtkWidget *widget,
|
||||
cairo_t *cr);
|
||||
void gimp_cairo_draw_drop_wilber (GtkWidget *widget,
|
||||
cairo_t *cr);
|
||||
|
||||
|
||||
#endif /* __GIMP_CAIRO_H__ */
|
|
@ -54,6 +54,7 @@
|
|||
* all changes need to flush colormap lookup cache
|
||||
*/
|
||||
|
||||
#define BORDER 6
|
||||
|
||||
enum
|
||||
{
|
||||
|
@ -90,14 +91,10 @@ static void gimp_colormap_editor_clear (GimpColormapEditor *editor,
|
|||
gint start_row);
|
||||
static void gimp_colormap_editor_update_entries (GimpColormapEditor *editor);
|
||||
|
||||
static void gimp_colormap_preview_size_allocate (GtkWidget *widget,
|
||||
GtkAllocation *allocation,
|
||||
GimpColormapEditor *editor);
|
||||
static void gimp_colormap_preview_expose (GtkWidget *widget,
|
||||
static gboolean gimp_colormap_preview_expose (GtkWidget *widget,
|
||||
GdkEventExpose *event,
|
||||
GimpColormapEditor *editor);
|
||||
static gboolean
|
||||
gimp_colormap_preview_button_press (GtkWidget *widget,
|
||||
static gboolean gimp_colormap_preview_button_press (GtkWidget *widget,
|
||||
GdkEventButton *bevent,
|
||||
GimpColormapEditor *editor);
|
||||
static void gimp_colormap_preview_drag_color (GtkWidget *widget,
|
||||
|
@ -162,11 +159,9 @@ gimp_colormap_editor_class_init (GimpColormapEditorClass* klass)
|
|||
static void
|
||||
gimp_colormap_editor_init (GimpColormapEditor *editor)
|
||||
{
|
||||
GtkWidget *frame;
|
||||
GtkWidget *table;
|
||||
GtkObject *adj;
|
||||
gint width;
|
||||
gint height;
|
||||
GtkWidget *frame;
|
||||
GtkWidget *table;
|
||||
GtkObject *adj;
|
||||
|
||||
editor->col_index = 0;
|
||||
editor->dnd_col_index = 0;
|
||||
|
@ -188,17 +183,9 @@ gimp_colormap_editor_init (GimpColormapEditor *editor)
|
|||
|
||||
editor->layout = gimp_colormap_editor_create_layout (editor->preview);
|
||||
|
||||
pango_layout_set_width (editor->layout, 180 * PANGO_SCALE);
|
||||
pango_layout_get_pixel_size (editor->layout, &width, &height);
|
||||
gtk_widget_set_size_request (editor->preview, width, height);
|
||||
|
||||
g_signal_connect_after (editor->preview, "size-allocate",
|
||||
G_CALLBACK (gimp_colormap_preview_size_allocate),
|
||||
editor);
|
||||
|
||||
g_signal_connect_after (editor->preview, "expose-event",
|
||||
G_CALLBACK (gimp_colormap_preview_expose),
|
||||
editor);
|
||||
g_signal_connect (editor->preview, "expose-event",
|
||||
G_CALLBACK (gimp_colormap_preview_expose),
|
||||
editor);
|
||||
|
||||
g_signal_connect (editor->preview, "button-press-event",
|
||||
G_CALLBACK (gimp_colormap_preview_button_press),
|
||||
|
@ -486,6 +473,7 @@ gimp_colormap_editor_create_layout (GtkWidget *widget)
|
|||
layout = gtk_widget_create_pango_layout (widget,
|
||||
_("Only indexed images have "
|
||||
"a colormap."));
|
||||
|
||||
pango_layout_set_alignment (layout, PANGO_ALIGN_CENTER);
|
||||
|
||||
attrs = pango_attr_list_new ();
|
||||
|
@ -526,7 +514,8 @@ gimp_colormap_editor_draw (GimpColormapEditor *editor)
|
|||
|
||||
cellsize = sqrt (allocation.width * allocation.height / ncol);
|
||||
while (cellsize >= MIN_CELL_SIZE
|
||||
&& (xn = allocation.width / cellsize) * (yn = allocation.height / cellsize) < ncol)
|
||||
&& ((xn = allocation.width / cellsize) *
|
||||
(yn = allocation.height / cellsize) < ncol))
|
||||
cellsize--;
|
||||
|
||||
if (cellsize < MIN_CELL_SIZE)
|
||||
|
@ -560,7 +549,9 @@ gimp_colormap_editor_draw (GimpColormapEditor *editor)
|
|||
}
|
||||
|
||||
if (j * cellsize < allocation.width)
|
||||
memset (row + j * cellsize * 3, 255, 3 * (allocation.width - j * cellsize));
|
||||
memset (row + j * cellsize * 3,
|
||||
255,
|
||||
3 * (allocation.width - j * cellsize));
|
||||
|
||||
for (k = 0; k < cellsize; k++)
|
||||
{
|
||||
|
@ -647,31 +638,45 @@ gimp_colormap_editor_draw_cell (GimpColormapEditor *editor,
|
|||
cellsize, cellsize);
|
||||
}
|
||||
|
||||
static void
|
||||
static gboolean
|
||||
gimp_colormap_preview_expose (GtkWidget *widget,
|
||||
GdkEventExpose *event,
|
||||
GimpColormapEditor *editor)
|
||||
{
|
||||
GimpImageEditor *image_editor = GIMP_IMAGE_EDITOR (editor);
|
||||
GtkStyle *style;
|
||||
cairo_t *cr;
|
||||
GtkAllocation allocation;
|
||||
gint x, y;
|
||||
gint width, height;
|
||||
gint y;
|
||||
|
||||
if (image_editor->image == NULL ||
|
||||
gimp_image_base_type (image_editor->image) == GIMP_INDEXED)
|
||||
return;
|
||||
return FALSE;
|
||||
|
||||
cr = gdk_cairo_create (event->window);
|
||||
|
||||
gdk_cairo_region (cr, event->region);
|
||||
cairo_clip (cr);
|
||||
|
||||
style = gtk_widget_get_style (widget);
|
||||
gdk_cairo_set_source_color (cr, &style->fg[gtk_widget_get_state (widget)]);
|
||||
|
||||
gtk_widget_get_allocation (widget, &allocation);
|
||||
pango_layout_set_width (editor->layout,
|
||||
PANGO_SCALE * (allocation.width - 2 * BORDER));
|
||||
|
||||
pango_layout_get_pixel_size (editor->layout, &width, &height);
|
||||
|
||||
x = (allocation.width - width) / 2;
|
||||
y = (allocation.height - height) / 2;
|
||||
|
||||
gdk_draw_layout (gtk_widget_get_window (editor->preview),
|
||||
gtk_widget_get_style (editor->preview)->fg_gc[gtk_widget_get_state (widget)],
|
||||
MAX (x, 0), MAX (y, 0),
|
||||
editor->layout);
|
||||
cairo_move_to (cr, BORDER, MAX (y, 0));
|
||||
pango_cairo_show_layout (cr, editor->layout);
|
||||
cairo_fill (cr);
|
||||
|
||||
cairo_destroy (cr);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -734,20 +739,6 @@ gimp_colormap_editor_update_entries (GimpColormapEditor *editor)
|
|||
}
|
||||
}
|
||||
|
||||
static void
|
||||
gimp_colormap_preview_size_allocate (GtkWidget *widget,
|
||||
GtkAllocation *alloc,
|
||||
GimpColormapEditor *editor)
|
||||
{
|
||||
GimpImage *image = GIMP_IMAGE_EDITOR (editor)->image;
|
||||
|
||||
if (HAVE_COLORMAP (image))
|
||||
gimp_colormap_editor_draw (editor);
|
||||
else
|
||||
gimp_colormap_editor_clear (editor, -1);
|
||||
}
|
||||
|
||||
|
||||
static gboolean
|
||||
gimp_colormap_preview_button_press (GtkWidget *widget,
|
||||
GdkEventButton *bevent,
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
#include "file/file-open.h"
|
||||
#include "file/file-utils.h"
|
||||
|
||||
#include "gimpcairo-wilber.h"
|
||||
#include "gimpcairo.h"
|
||||
#include "gimpdevices.h"
|
||||
#include "gimpdialogfactory.h"
|
||||
#include "gimpdockwindow.h"
|
||||
|
@ -674,38 +674,13 @@ gimp_toolbox_expose_event (GtkWidget *widget,
|
|||
&header_allocation,
|
||||
&clip_rect))
|
||||
{
|
||||
GtkStyle *style = gtk_widget_get_style (widget);
|
||||
GtkStateType state = gtk_widget_get_state (widget);
|
||||
cairo_t *cr;
|
||||
gint header_height;
|
||||
gint header_width;
|
||||
gdouble wilber_width;
|
||||
gdouble wilber_height;
|
||||
gdouble factor;
|
||||
cairo_t *cr;
|
||||
|
||||
cr = gdk_cairo_create (gtk_widget_get_window (widget));
|
||||
gdk_cairo_rectangle (cr, &clip_rect);
|
||||
cairo_clip (cr);
|
||||
|
||||
header_width = header_allocation.width;
|
||||
header_height = header_allocation.height;
|
||||
|
||||
gimp_cairo_wilber_get_size (cr, &wilber_width, &wilber_height);
|
||||
|
||||
factor = header_width / wilber_width * 0.9;
|
||||
|
||||
cairo_scale (cr, factor, factor);
|
||||
|
||||
gimp_cairo_wilber (cr,
|
||||
(header_width / factor - wilber_width) / 2.0,
|
||||
(header_height / factor - wilber_height) / 2.0);
|
||||
|
||||
cairo_set_source_rgba (cr,
|
||||
style->fg[state].red / 65535.0,
|
||||
style->fg[state].green / 65535.0,
|
||||
style->fg[state].blue / 65535.0,
|
||||
0.10);
|
||||
cairo_fill (cr);
|
||||
gimp_cairo_draw_toolbox_wilber (toolbox->p->header, cr);
|
||||
|
||||
cairo_destroy (cr);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
/Makefile
|
||||
/Makefile.in
|
|
@ -0,0 +1,2 @@
|
|||
SUBDIRS = \
|
||||
windows
|
|
@ -0,0 +1,21 @@
|
|||
# This is a 'suppressionFile' for buildbot
|
||||
# We use isn.*t because UTF-8 ' might be interpreted as ASCII...
|
||||
|
||||
# Ignore warning from gtk-doc during make
|
||||
: .*warning: Value descriptions for .* are missing in source code comment block.*
|
||||
: .*warning: Property .* has no documentation.*
|
||||
: .*html:.*: warning: no link for: .*
|
||||
: .*warning: Field descriptions for .* are missing in source code comment block.*
|
||||
: .*warning: Section .* is not defined in the .* file.*
|
||||
: .*warning: .* unused declarations.*They should be added to .* in the appropriate place.*
|
||||
|
||||
# This will die in GIMP 3.0, don't bother fixing...
|
||||
: ^gimp-composite-.* warning: function declaration isn.*t a prototype.*
|
||||
: .*gimpcpuaccel.c:182: warning: dereferencing type-punned pointer will break strict-aliasing rules.*
|
||||
|
||||
# Well-known harmless warnings
|
||||
: .*gtkitemfactory.h:47: warning: function declaration isn.*t a prototype.*
|
||||
: .*app/core/gimpimagemap.c:.*: warning: implicit declaration of function .*gegl_node_get_pad.*
|
||||
|
||||
# who cares
|
||||
: .*gimp.desktop: warning: value .* contains .* more than once.*
|
|
@ -0,0 +1,4 @@
|
|||
/Makefile
|
||||
/Makefile.in
|
||||
/gimp.rc
|
||||
/gimp-plug-ins.rc
|
|
@ -0,0 +1,8 @@
|
|||
EXTRA_DIST = \
|
||||
gimprc.rule \
|
||||
gimprc-plug-ins.rule \
|
||||
gimp.rc \
|
||||
gimp-plug-ins.rc \
|
||||
gimp.manifest \
|
||||
fileicon.ico \
|
||||
wilber.ico
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
@ -0,0 +1,66 @@
|
|||
#include <winver.h>
|
||||
|
||||
#define _QUOTE(x) #x
|
||||
#define QUOTE(x) _QUOTE(x)
|
||||
|
||||
#define VER_COMPANYNAME_STR "Spencer Kimball, Peter Mattis and the GIMP Development Team"
|
||||
|
||||
#define VER_PRODUCTVERSION @GIMP_MAJOR_VERSION@,@GIMP_MINOR_VERSION@,@GIMP_MICRO_VERSION@,0
|
||||
#define VER_PRODUCTVERSION_STR "@GIMP_MAJOR_VERSION@.@GIMP_MINOR_VERSION@.@GIMP_MICRO_VERSION@\0"
|
||||
#define VER_PRODUCTNAME_STR "@GIMP_FULL_NAME@"
|
||||
|
||||
#define VER_FILEVERSION @GIMP_MAJOR_VERSION@,@GIMP_MINOR_VERSION@,@GIMP_MICRO_VERSION@,0
|
||||
#define VER_FILEVERSION_STR "@GIMP_MAJOR_VERSION@.@GIMP_MINOR_VERSION@.@GIMP_MICRO_VERSION@.0\0"
|
||||
|
||||
#define VER_FILEDESCRIPTION_STR "@GIMP_FULL_NAME@ Plug-In"
|
||||
#define VER_INTERNALNAME_STR QUOTE(INTERNALNAME_STR)
|
||||
#define VER_ORIGINALFILENAME_STR QUOTE(ORIGINALFILENAME_STR)
|
||||
|
||||
#define VER_LEGALCOPYRIGHT_STR "Copyright © 1995-2010"
|
||||
|
||||
#ifndef DEBUG
|
||||
#define VER_DEBUG 0
|
||||
#else
|
||||
#define VER_DEBUG VS_FF_DEBUG
|
||||
#endif
|
||||
|
||||
#ifndef GIMP_UNSTABLE
|
||||
#define VER_PRERELEASE 0
|
||||
#else
|
||||
#define VER_PRERELEASE VS_FF_PRERELEASE
|
||||
#endif
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION VER_FILEVERSION
|
||||
PRODUCTVERSION VER_PRODUCTVERSION
|
||||
FILEFLAGSMASK VS_FFI_FILEFLAGSMASK
|
||||
FILEFLAGS (VER_PRERELEASE|VER_DEBUG)
|
||||
FILEOS VOS__WINDOWS32
|
||||
FILETYPE VFT_APP
|
||||
FILESUBTYPE VFT2_UNKNOWN
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904B0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", VER_COMPANYNAME_STR
|
||||
VALUE "FileDescription", VER_FILEDESCRIPTION_STR
|
||||
VALUE "FileVersion", VER_FILEVERSION_STR
|
||||
VALUE "InternalName", VER_INTERNALNAME_STR
|
||||
VALUE "OriginalFilename", VER_ORIGINALFILENAME_STR
|
||||
VALUE "ProductName", VER_PRODUCTNAME_STR
|
||||
VALUE "ProductVersion", VER_PRODUCTVERSION_STR
|
||||
VALUE "LegalCopyright", VER_LEGALCOPYRIGHT_STR
|
||||
END
|
||||
END
|
||||
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x409, 1200
|
||||
|
||||
END
|
||||
END
|
||||
|
||||
#include "winuser.h"
|
||||
1 ICON QUOTE(TOP_SRCDIR) "/build/windows/plug-ins.ico"
|
||||
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST QUOTE(TOP_SRCDIR) "/build/windows/gimp.manifest"
|
|
@ -16,7 +16,7 @@
|
|||
#define VER_INTERNALNAME_STR QUOTE(INTERNALNAME_STR)
|
||||
#define VER_ORIGINALFILENAME_STR QUOTE(ORIGINALFILENAME_STR)
|
||||
|
||||
#define VER_LEGALCOPYRIGHT_STR "Copyright © 1995-2009"
|
||||
#define VER_LEGALCOPYRIGHT_STR "Copyright © 1995-2010"
|
||||
|
||||
#ifndef DEBUG
|
||||
#define VER_DEBUG 0
|
||||
|
@ -62,6 +62,6 @@ BEGIN
|
|||
END
|
||||
|
||||
#include "winuser.h"
|
||||
1 ICON "wilber.ico"
|
||||
2 ICON "fileicon.ico"
|
||||
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST "gimp.manifest"
|
||||
1 ICON QUOTE(TOP_SRCDIR) "/build/windows/wilber.ico"
|
||||
2 ICON QUOTE(TOP_SRCDIR) "/build/windows/fileicon.ico"
|
||||
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST QUOTE(TOP_SRCDIR) "/build/windows/gimp.manifest"
|
|
@ -0,0 +1,6 @@
|
|||
# Version resources for Microsoft Windows
|
||||
%.rc.o: $(top_srcdir)/build/windows/gimp-plug-ins.rc
|
||||
$(WINDRES) --define ORIGINALFILENAME_STR="$*$(EXEEXT)" \
|
||||
--define INTERNALNAME_STR="$*" \
|
||||
--define TOP_SRCDIR="$(top_srcdir)" \
|
||||
$< $@
|
|
@ -0,0 +1,6 @@
|
|||
# Version resources for Microsoft Windows
|
||||
%.rc.o: $(top_srcdir)/build/windows/gimp.rc
|
||||
$(WINDRES) --define ORIGINALFILENAME_STR="$*$(EXEEXT)" \
|
||||
--define INTERNALNAME_STR="$*" \
|
||||
--define TOP_SRCDIR="$(top_srcdir)" \
|
||||
$< $@
|
Binary file not shown.
After Width: | Height: | Size: 2.5 KiB |
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 44 KiB |
36
configure.ac
36
configure.ac
|
@ -46,6 +46,7 @@ m4_define([glib_required_version], [2.24.0])
|
|||
m4_define([gtk_required_version], [2.20.0])
|
||||
m4_define([gdk_pixbuf_required_version], [gtk_required_version])
|
||||
m4_define([cairo_required_version], [1.8.0])
|
||||
m4_define([cairo_pdf_required_version], [1.8.0])
|
||||
m4_define([pangocairo_required_version], [1.20.1])
|
||||
m4_define([fontconfig_required_version], [2.2.0])
|
||||
m4_define([gtkdoc_required_version], [1.0])
|
||||
|
@ -1317,7 +1318,7 @@ have_poppler=no
|
|||
if test "x$with_poppler" != xno; then
|
||||
PKG_CHECK_MODULES(POPPLER,
|
||||
poppler-glib >= poppler_required_version gthread-2.0,
|
||||
FILE_PDF='file-pdf$(EXEEXT)'
|
||||
FILE_PDF_LOAD='file-pdf-load$(EXEEXT)'
|
||||
AC_DEFINE(HAVE_POPPLER, 1, [Define to 1 if libpoppler is available])
|
||||
have_poppler=yes,
|
||||
have_poppler="Using PostScript plug-in (libpoppler not found)")
|
||||
|
@ -1325,7 +1326,30 @@ else
|
|||
have_poppler="Using PostScript plug-in (libpoppler support disabled)"
|
||||
fi
|
||||
|
||||
AC_SUBST(FILE_PDF)
|
||||
AC_SUBST(FILE_PDF_LOAD)
|
||||
|
||||
|
||||
#####################
|
||||
# Check for cairo-pdf
|
||||
#####################
|
||||
|
||||
AC_ARG_WITH(cairo_pdf,[ --without-cairo-pdf build without cairo-pdf support])
|
||||
have_cairo_pdf=no
|
||||
if test "x$with_cairo_pdf" != xno; then
|
||||
have_cairo_pdf=yes
|
||||
PKG_CHECK_MODULES(CAIRO_PDF, cairo-pdf >= cairo_pdf_required_version,
|
||||
FILE_PDF_SAVE='file-pdf-save$(EXEEXT)',
|
||||
have_cairo_pdf="no (cairo-pdf not found)")
|
||||
else
|
||||
have_cairo_pdf="no (cairo-pdf support disabled)"
|
||||
fi
|
||||
|
||||
AC_SUBST(FILE_PDF_SAVE)
|
||||
|
||||
## If both poppler and cairo-pdf are enabled then we have complete PDF support
|
||||
if test "x$have_cairo_pdf" = xyes && test "x$have_poppler" = xyes; then
|
||||
MIME_TYPES="$MIME_TYPES;application/pdf"
|
||||
fi
|
||||
|
||||
|
||||
################################
|
||||
|
@ -2017,7 +2041,6 @@ libgimpmath/Makefile
|
|||
libgimpmodule/Makefile
|
||||
libgimpthumb/Makefile
|
||||
libgimpwidgets/Makefile
|
||||
app/gimp.rc
|
||||
app/Makefile
|
||||
app/actions/Makefile
|
||||
app/base/Makefile
|
||||
|
@ -2049,6 +2072,10 @@ app/tests/gimpdir/Makefile
|
|||
app/tests/gimpdir/brushes/Makefile
|
||||
app/tests/gimpdir/gradients/Makefile
|
||||
app/tests/gimpdir/patterns/Makefile
|
||||
build/Makefile
|
||||
build/windows/Makefile
|
||||
build/windows/gimp.rc
|
||||
build/windows/gimp-plug-ins.rc
|
||||
plug-ins/Makefile
|
||||
plug-ins/color-rotate/Makefile
|
||||
plug-ins/color-rotate/images/Makefile
|
||||
|
@ -2192,7 +2219,8 @@ Optional Plug-Ins:
|
|||
JPEG: $jpeg_ok
|
||||
JPEG 2000: $have_jp2
|
||||
MNG: $have_libmng
|
||||
PDF: $have_poppler
|
||||
PDF (import): $have_poppler
|
||||
PDF (export): $have_cairo_pdf
|
||||
PNG: $have_libpng
|
||||
Print: $enable_print
|
||||
PSP: $have_zlib
|
||||
|
|
|
@ -330,6 +330,7 @@ EXPORTS
|
|||
gimp_image_get_floating_sel
|
||||
gimp_image_get_guide_orientation
|
||||
gimp_image_get_guide_position
|
||||
gimp_image_get_item_position
|
||||
gimp_image_get_layer_by_tattoo
|
||||
gimp_image_get_layer_position
|
||||
gimp_image_get_layers
|
||||
|
@ -358,6 +359,8 @@ EXPORTS
|
|||
gimp_image_is_valid
|
||||
gimp_image_list
|
||||
gimp_image_lower_channel
|
||||
gimp_image_lower_item
|
||||
gimp_image_lower_item_to_bottom
|
||||
gimp_image_lower_layer
|
||||
gimp_image_lower_layer_to_bottom
|
||||
gimp_image_lower_vectors
|
||||
|
@ -372,6 +375,8 @@ EXPORTS
|
|||
gimp_image_pick_color
|
||||
gimp_image_pick_correlate_layer
|
||||
gimp_image_raise_channel
|
||||
gimp_image_raise_item
|
||||
gimp_image_raise_item_to_top
|
||||
gimp_image_raise_layer
|
||||
gimp_image_raise_layer_to_top
|
||||
gimp_image_raise_vectors
|
||||
|
@ -379,6 +384,7 @@ EXPORTS
|
|||
gimp_image_remove_channel
|
||||
gimp_image_remove_layer
|
||||
gimp_image_remove_vectors
|
||||
gimp_image_reorder_item
|
||||
gimp_image_resize
|
||||
gimp_image_resize_to_layers
|
||||
gimp_image_rotate
|
||||
|
@ -409,14 +415,17 @@ EXPORTS
|
|||
gimp_install_temp_proc
|
||||
gimp_invert
|
||||
gimp_item_delete
|
||||
gimp_item_get_children
|
||||
gimp_item_get_image
|
||||
gimp_item_get_linked
|
||||
gimp_item_get_lock_content
|
||||
gimp_item_get_name
|
||||
gimp_item_get_parent
|
||||
gimp_item_get_tattoo
|
||||
gimp_item_get_visible
|
||||
gimp_item_is_channel
|
||||
gimp_item_is_drawable
|
||||
gimp_item_is_group
|
||||
gimp_item_is_layer
|
||||
gimp_item_is_layer_mask
|
||||
gimp_item_is_selection
|
||||
|
|
|
@ -1042,180 +1042,6 @@ gimp_image_remove_layer (gint32 image_ID,
|
|||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_get_layer_position:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer.
|
||||
*
|
||||
* Returns the position of the layer in the layer stack.
|
||||
*
|
||||
* This procedure determines the position of the specified layer in the
|
||||
* images layer stack. If the layer doesn't exist in the image, an
|
||||
* error is returned.
|
||||
*
|
||||
* Returns: The position of the layer in the layer stack.
|
||||
*
|
||||
* Since: GIMP 2.4
|
||||
*/
|
||||
gint
|
||||
gimp_image_get_layer_position (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gint position = 0;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-get-layer-position",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
|
||||
position = return_vals[1].data.d_int32;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return position;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_raise_layer:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer to raise.
|
||||
*
|
||||
* Raise the specified layer in the image's layer stack
|
||||
*
|
||||
* This procedure raises the specified layer one step in the existing
|
||||
* layer stack. The procecure call will fail if there is no layer above
|
||||
* it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_raise_layer (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-raise-layer",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_lower_layer:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer to lower.
|
||||
*
|
||||
* Lower the specified layer in the image's layer stack
|
||||
*
|
||||
* This procedure lowers the specified layer one step in the existing
|
||||
* layer stack. The procecure call will fail if there is no layer below
|
||||
* it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_lower_layer (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-lower-layer",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_raise_layer_to_top:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer to raise to top.
|
||||
*
|
||||
* Raise the specified layer in the image's layer stack to top of stack
|
||||
*
|
||||
* This procedure raises the specified layer to top of the existing
|
||||
* layer stack. It will not move the layer if there is no layer above
|
||||
* it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_raise_layer_to_top (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-raise-layer-to-top",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_lower_layer_to_bottom:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer to lower to bottom.
|
||||
*
|
||||
* Lower the specified layer in the image's layer stack to bottom of
|
||||
* stack
|
||||
*
|
||||
* This procedure lowers the specified layer to bottom of the existing
|
||||
* layer stack. It will not move the layer if there is no layer below
|
||||
* it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_lower_layer_to_bottom (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-lower-layer-to-bottom",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_add_channel:
|
||||
* @image_ID: The image.
|
||||
|
@ -1287,111 +1113,6 @@ gimp_image_remove_channel (gint32 image_ID,
|
|||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_get_channel_position:
|
||||
* @image_ID: The image.
|
||||
* @channel_ID: The channel.
|
||||
*
|
||||
* Returns the position of the channel in the channel stack.
|
||||
*
|
||||
* This procedure determines the position of the specified channel in
|
||||
* the images channel stack. If the channel doesn't exist in the image,
|
||||
* an error is returned.
|
||||
*
|
||||
* Returns: The position of the channel in the channel stack.
|
||||
*
|
||||
* Since: GIMP 2.4
|
||||
*/
|
||||
gint
|
||||
gimp_image_get_channel_position (gint32 image_ID,
|
||||
gint32 channel_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gint position = 0;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-get-channel-position",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_CHANNEL, channel_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
|
||||
position = return_vals[1].data.d_int32;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return position;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_raise_channel:
|
||||
* @image_ID: The image.
|
||||
* @channel_ID: The channel to raise.
|
||||
*
|
||||
* Raise the specified channel in the image's channel stack
|
||||
*
|
||||
* This procedure raises the specified channel one step in the existing
|
||||
* channel stack. The procecure call will fail if there is no channel
|
||||
* above it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_raise_channel (gint32 image_ID,
|
||||
gint32 channel_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-raise-channel",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_CHANNEL, channel_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_lower_channel:
|
||||
* @image_ID: The image.
|
||||
* @channel_ID: The channel to lower.
|
||||
*
|
||||
* Lower the specified channel in the image's channel stack
|
||||
*
|
||||
* This procedure lowers the specified channel one step in the existing
|
||||
* channel stack. The procecure call will fail if there is no channel
|
||||
* below it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_lower_channel (gint32 image_ID,
|
||||
gint32 channel_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-lower-channel",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_CHANNEL, channel_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_add_vectors:
|
||||
* @image_ID: The image.
|
||||
|
@ -1464,17 +1185,477 @@ gimp_image_remove_vectors (gint32 image_ID,
|
|||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_get_item_position:
|
||||
* @image_ID: The image.
|
||||
* @item_ID: The item.
|
||||
*
|
||||
* Returns the position of the item in its level of its item tree.
|
||||
*
|
||||
* This procedure determines the position of the specified item in its
|
||||
* level in its item tree in the image. If the item doesn't exist in
|
||||
* the image, or the item is not part of an item tree, an error is
|
||||
* returned.
|
||||
*
|
||||
* Returns: The position of the item in its level in the item tree.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gint
|
||||
gimp_image_get_item_position (gint32 image_ID,
|
||||
gint32 item_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gint position = 0;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-get-item-position",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
|
||||
position = return_vals[1].data.d_int32;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return position;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_raise_item:
|
||||
* @image_ID: The image.
|
||||
* @item_ID: The item to raise.
|
||||
*
|
||||
* Raise the specified item in its level in its item tree
|
||||
*
|
||||
* This procedure raises the specified item one step in the item tree.
|
||||
* The procecure call will fail if there is no item above it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_raise_item (gint32 image_ID,
|
||||
gint32 item_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-raise-item",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_lower_item:
|
||||
* @image_ID: The image.
|
||||
* @item_ID: The item to lower.
|
||||
*
|
||||
* Lower the specified item in its level in its item tree
|
||||
*
|
||||
* This procedure lowers the specified item one step in the item tree.
|
||||
* The procecure call will fail if there is no item below it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_lower_item (gint32 image_ID,
|
||||
gint32 item_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-lower-item",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_raise_item_to_top:
|
||||
* @image_ID: The image.
|
||||
* @item_ID: The item to raise to top.
|
||||
*
|
||||
* Raise the specified item to the top of its level in its item tree
|
||||
*
|
||||
* This procedure raises the specified item to top of its level in the
|
||||
* item tree. It will not move the item if there is no item above it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_raise_item_to_top (gint32 image_ID,
|
||||
gint32 item_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-raise-item-to-top",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_lower_item_to_bottom:
|
||||
* @image_ID: The image.
|
||||
* @item_ID: The item to lower to bottom.
|
||||
*
|
||||
* Lower the specified item to the bottom of its level in its item tree
|
||||
*
|
||||
* This procedure lowers the specified item to bottom of its level in
|
||||
* the item tree. It will not move the layer if there is no layer below
|
||||
* it.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_lower_item_to_bottom (gint32 image_ID,
|
||||
gint32 item_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-lower-item-to-bottom",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_reorder_item:
|
||||
* @image_ID: The image.
|
||||
* @item_ID: The item to reorder.
|
||||
* @parent_ID: The new parent item.
|
||||
* @position: The new position of the item.
|
||||
*
|
||||
* Reorder the specified item within its item tree
|
||||
*
|
||||
* This procedure reorders the specified item within its item tree.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_reorder_item (gint32 image_ID,
|
||||
gint32 item_ID,
|
||||
gint32 parent_ID,
|
||||
gint position)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-reorder-item",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_ITEM, parent_ID,
|
||||
GIMP_PDB_INT32, position,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_get_layer_position:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer.
|
||||
*
|
||||
* Deprecated: Use gimp_image_get_item_position() instead.
|
||||
*
|
||||
* Returns: The position of the layer in the layer stack.
|
||||
*
|
||||
* Since: GIMP 2.4
|
||||
*/
|
||||
gint
|
||||
gimp_image_get_layer_position (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gint position = 0;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-get-layer-position",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
|
||||
position = return_vals[1].data.d_int32;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return position;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_raise_layer:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer to raise.
|
||||
*
|
||||
* Deprecated: Use gimp_image_raise_item() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_raise_layer (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-raise-layer",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_lower_layer:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer to lower.
|
||||
*
|
||||
* Deprecated: Use gimp_image_lower_item() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_lower_layer (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-lower-layer",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_raise_layer_to_top:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer to raise to top.
|
||||
*
|
||||
* Deprecated: Use gimp_image_raise_item_to_top() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_raise_layer_to_top (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-raise-layer-to-top",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_lower_layer_to_bottom:
|
||||
* @image_ID: The image.
|
||||
* @layer_ID: The layer to lower to bottom.
|
||||
*
|
||||
* Deprecated: Use gimp_image_lower_item_to_bottom() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_lower_layer_to_bottom (gint32 image_ID,
|
||||
gint32 layer_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-lower-layer-to-bottom",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_LAYER, layer_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_get_channel_position:
|
||||
* @image_ID: The image.
|
||||
* @channel_ID: The channel.
|
||||
*
|
||||
* Deprecated: Use gimp_image_get_item_position() instead.
|
||||
*
|
||||
* Returns: The position of the channel in the channel stack.
|
||||
*
|
||||
* Since: GIMP 2.4
|
||||
*/
|
||||
gint
|
||||
gimp_image_get_channel_position (gint32 image_ID,
|
||||
gint32 channel_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gint position = 0;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-get-channel-position",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_CHANNEL, channel_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
|
||||
position = return_vals[1].data.d_int32;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return position;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_raise_channel:
|
||||
* @image_ID: The image.
|
||||
* @channel_ID: The channel to raise.
|
||||
*
|
||||
* Deprecated: Use gimp_image_raise_item() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_raise_channel (gint32 image_ID,
|
||||
gint32 channel_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-raise-channel",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_CHANNEL, channel_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_lower_channel:
|
||||
* @image_ID: The image.
|
||||
* @channel_ID: The channel to lower.
|
||||
*
|
||||
* Deprecated: Use gimp_image_lower_item() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*/
|
||||
gboolean
|
||||
gimp_image_lower_channel (gint32 image_ID,
|
||||
gint32 channel_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean success = TRUE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-image-lower-channel",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_IMAGE, image_ID,
|
||||
GIMP_PDB_CHANNEL, channel_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
success = return_vals[0].data.d_status == GIMP_PDB_SUCCESS;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return success;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_image_get_vectors_position:
|
||||
* @image_ID: The image.
|
||||
* @vectors_ID: The vectors object.
|
||||
*
|
||||
* Returns the position of the vectors object in the vectors objects
|
||||
* stack.
|
||||
*
|
||||
* This procedure determines the position of the specified vectors
|
||||
* object in the images vectors object stack. If the vectors object
|
||||
* doesn't exist in the image, an error is returned.
|
||||
* Deprecated: Use gimp_image_get_item_position() instead.
|
||||
*
|
||||
* Returns: The position of the vectors object in the vectors stack.
|
||||
*
|
||||
|
@ -1507,11 +1688,7 @@ gimp_image_get_vectors_position (gint32 image_ID,
|
|||
* @image_ID: The image.
|
||||
* @vectors_ID: The vectors object to raise.
|
||||
*
|
||||
* Raise the specified vectors in the image's vectors stack
|
||||
*
|
||||
* This procedure raises the specified vectors one step in the existing
|
||||
* vectors stack. The procecure call will fail if there is no vectors
|
||||
* above it.
|
||||
* Deprecated: Use gimp_image_raise_item() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
|
@ -1543,11 +1720,7 @@ gimp_image_raise_vectors (gint32 image_ID,
|
|||
* @image_ID: The image.
|
||||
* @vectors_ID: The vectors object to lower.
|
||||
*
|
||||
* Lower the specified vectors in the image's vectors stack
|
||||
*
|
||||
* This procedure lowers the specified vectors one step in the existing
|
||||
* vectors stack. The procecure call will fail if there is no vectors
|
||||
* below it.
|
||||
* Deprecated: Use gimp_image_lower_item() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
|
@ -1579,12 +1752,7 @@ gimp_image_lower_vectors (gint32 image_ID,
|
|||
* @image_ID: The image.
|
||||
* @vectors_ID: The vectors object to raise to top.
|
||||
*
|
||||
* Raise the specified vectors in the image's vectors stack to top of
|
||||
* stack
|
||||
*
|
||||
* This procedure raises the specified vectors to top of the existing
|
||||
* vectors stack. It will not move the vectors if there is no vectors
|
||||
* above it.
|
||||
* Deprecated: Use gimp_image_raise_item_to_top() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
|
@ -1616,12 +1784,7 @@ gimp_image_raise_vectors_to_top (gint32 image_ID,
|
|||
* @image_ID: The image.
|
||||
* @vectors_ID: The vectors object to lower to bottom.
|
||||
*
|
||||
* Lower the specified vectors in the image's vectors stack to bottom
|
||||
* of stack
|
||||
*
|
||||
* This procedure lowers the specified vectors to bottom of the
|
||||
* existing vectors stack. It will not move the vectors if there is no
|
||||
* vectors below it.
|
||||
* Deprecated: Use gimp_image_lower_item_to_bottom() instead.
|
||||
*
|
||||
* Returns: TRUE on success.
|
||||
*
|
||||
|
|
|
@ -89,6 +89,31 @@ gboolean gimp_image_add_layer (gint32
|
|||
gint position);
|
||||
gboolean gimp_image_remove_layer (gint32 image_ID,
|
||||
gint32 layer_ID);
|
||||
gboolean gimp_image_add_channel (gint32 image_ID,
|
||||
gint32 channel_ID,
|
||||
gint position);
|
||||
gboolean gimp_image_remove_channel (gint32 image_ID,
|
||||
gint32 channel_ID);
|
||||
gboolean gimp_image_add_vectors (gint32 image_ID,
|
||||
gint32 vectors_ID,
|
||||
gint position);
|
||||
gboolean gimp_image_remove_vectors (gint32 image_ID,
|
||||
gint32 vectors_ID);
|
||||
gint gimp_image_get_item_position (gint32 image_ID,
|
||||
gint32 item_ID);
|
||||
gboolean gimp_image_raise_item (gint32 image_ID,
|
||||
gint32 item_ID);
|
||||
gboolean gimp_image_lower_item (gint32 image_ID,
|
||||
gint32 item_ID);
|
||||
gboolean gimp_image_raise_item_to_top (gint32 image_ID,
|
||||
gint32 item_ID);
|
||||
gboolean gimp_image_lower_item_to_bottom (gint32 image_ID,
|
||||
gint32 item_ID);
|
||||
gboolean gimp_image_reorder_item (gint32 image_ID,
|
||||
gint32 item_ID,
|
||||
gint32 parent_ID,
|
||||
gint position);
|
||||
#ifndef GIMP_DISABLE_DEPRECATED
|
||||
gint gimp_image_get_layer_position (gint32 image_ID,
|
||||
gint32 layer_ID);
|
||||
gboolean gimp_image_raise_layer (gint32 image_ID,
|
||||
|
@ -99,22 +124,12 @@ gboolean gimp_image_raise_layer_to_top (gint32
|
|||
gint32 layer_ID);
|
||||
gboolean gimp_image_lower_layer_to_bottom (gint32 image_ID,
|
||||
gint32 layer_ID);
|
||||
gboolean gimp_image_add_channel (gint32 image_ID,
|
||||
gint32 channel_ID,
|
||||
gint position);
|
||||
gboolean gimp_image_remove_channel (gint32 image_ID,
|
||||
gint32 channel_ID);
|
||||
gint gimp_image_get_channel_position (gint32 image_ID,
|
||||
gint32 channel_ID);
|
||||
gboolean gimp_image_raise_channel (gint32 image_ID,
|
||||
gint32 channel_ID);
|
||||
gboolean gimp_image_lower_channel (gint32 image_ID,
|
||||
gint32 channel_ID);
|
||||
gboolean gimp_image_add_vectors (gint32 image_ID,
|
||||
gint32 vectors_ID,
|
||||
gint position);
|
||||
gboolean gimp_image_remove_vectors (gint32 image_ID,
|
||||
gint32 vectors_ID);
|
||||
gint gimp_image_get_vectors_position (gint32 image_ID,
|
||||
gint32 vectors_ID);
|
||||
gboolean gimp_image_raise_vectors (gint32 image_ID,
|
||||
|
@ -125,6 +140,7 @@ gboolean gimp_image_raise_vectors_to_top (gint32
|
|||
gint32 vectors_ID);
|
||||
gboolean gimp_image_lower_vectors_to_bottom (gint32 image_ID,
|
||||
gint32 vectors_ID);
|
||||
#endif /* GIMP_DISABLE_DEPRECATED */
|
||||
gint32 gimp_image_flatten (gint32 image_ID);
|
||||
gint32 gimp_image_merge_visible_layers (gint32 image_ID,
|
||||
GimpMergeType merge_type);
|
||||
|
|
|
@ -22,6 +22,8 @@
|
|||
|
||||
#include "config.h"
|
||||
|
||||
#include <string.h>
|
||||
|
||||
#include "gimp.h"
|
||||
|
||||
|
||||
|
@ -326,6 +328,114 @@ gimp_item_is_vectors (gint32 item_ID)
|
|||
return vectors;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_item_is_group:
|
||||
* @item_ID: The item.
|
||||
*
|
||||
* Returns whether the item is a group item.
|
||||
*
|
||||
* This procedure returns TRUE if the specified item is a group item
|
||||
* which can have children.
|
||||
*
|
||||
* Returns: TRUE if the item is a group, FALSE otherwise.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gboolean
|
||||
gimp_item_is_group (gint32 item_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gboolean group = FALSE;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-item-is-group",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
|
||||
group = return_vals[1].data.d_int32;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return group;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_item_get_parent:
|
||||
* @item_ID: The item.
|
||||
*
|
||||
* Returns the item's parent item.
|
||||
*
|
||||
* This procedure returns the item's parent item, if any.
|
||||
*
|
||||
* Returns: The item's parent item.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gint32
|
||||
gimp_item_get_parent (gint32 item_ID)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gint32 parent_ID = -1;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-item-get-parent",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
|
||||
parent_ID = return_vals[1].data.d_item;
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return parent_ID;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_item_get_children:
|
||||
* @item_ID: The item.
|
||||
* @num_children: The item's number of children.
|
||||
*
|
||||
* Returns the item's list of children.
|
||||
*
|
||||
* This procedure returns the list of items which are children of the
|
||||
* specified item. The order is topmost to bottommost.
|
||||
*
|
||||
* Returns: The item's list of children.
|
||||
*
|
||||
* Since: GIMP 2.8
|
||||
*/
|
||||
gint *
|
||||
gimp_item_get_children (gint32 item_ID,
|
||||
gint *num_children)
|
||||
{
|
||||
GimpParam *return_vals;
|
||||
gint nreturn_vals;
|
||||
gint *child_ids = NULL;
|
||||
|
||||
return_vals = gimp_run_procedure ("gimp-item-get-children",
|
||||
&nreturn_vals,
|
||||
GIMP_PDB_ITEM, item_ID,
|
||||
GIMP_PDB_END);
|
||||
|
||||
*num_children = 0;
|
||||
|
||||
if (return_vals[0].data.d_status == GIMP_PDB_SUCCESS)
|
||||
{
|
||||
*num_children = return_vals[1].data.d_int32;
|
||||
child_ids = g_new (gint32, *num_children);
|
||||
memcpy (child_ids,
|
||||
return_vals[2].data.d_int32array,
|
||||
*num_children * sizeof (gint32));
|
||||
}
|
||||
|
||||
gimp_destroy_params (return_vals, nreturn_vals);
|
||||
|
||||
return child_ids;
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_item_get_name:
|
||||
* @item_ID: The item.
|
||||
|
|
|
@ -37,6 +37,10 @@ gboolean gimp_item_is_channel (gint32 item_ID);
|
|||
gboolean gimp_item_is_layer_mask (gint32 item_ID);
|
||||
gboolean gimp_item_is_selection (gint32 item_ID);
|
||||
gboolean gimp_item_is_vectors (gint32 item_ID);
|
||||
gboolean gimp_item_is_group (gint32 item_ID);
|
||||
gint32 gimp_item_get_parent (gint32 item_ID);
|
||||
gint* gimp_item_get_children (gint32 item_ID,
|
||||
gint *num_children);
|
||||
gchar* gimp_item_get_name (gint32 item_ID);
|
||||
gboolean gimp_item_set_name (gint32 item_ID,
|
||||
const gchar *name);
|
||||
|
|
|
@ -102,12 +102,12 @@ main (void)
|
|||
if (failures)
|
||||
{
|
||||
g_print ("%d out of %d samples failed!\n\n",
|
||||
failures, G_N_ELEMENTS (samples));
|
||||
failures, (int)G_N_ELEMENTS (samples));
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
else
|
||||
{
|
||||
g_print ("All %d samples passed.\n\n", G_N_ELEMENTS (samples));
|
||||
g_print ("All %d samples passed.\n\n", (int)G_N_ELEMENTS (samples));
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -55,7 +55,9 @@ if GIMP_UNSTABLE
|
|||
DEBUG_MENU_PARAMS = --stringparam debug-menu yes
|
||||
endif
|
||||
|
||||
%.xml: %.xml.in $(top_srcdir)/configure.ac $(srcdir)/menus.xsl dialogs-menuitems.xml
|
||||
SUFFIXES = .xml.in .xml
|
||||
|
||||
.xml.in.xml: $(top_srcdir)/configure.ac $(srcdir)/menus.xsl dialogs-menuitems.xml
|
||||
if HAVE_XSLTPROC
|
||||
$(XSLTPROC) --xinclude $(DEBUG_MENU_PARAMS) $(srcdir)/menus.xsl $< > $(@) || rm -f $(@)
|
||||
else
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
color_rotate_RC = color-rotate.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
SUBDIRS = images
|
||||
|
@ -49,4 +54,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(color_rotate_RC)
|
||||
|
|
|
@ -130,8 +130,10 @@
|
|||
/file-pat.exe
|
||||
/file-pcx
|
||||
/file-pcx.exe
|
||||
/file-pdf
|
||||
/file-pdf.exe
|
||||
/file-pdf-load
|
||||
/file-pdf-load.exe
|
||||
/file-pdf-save
|
||||
/file-pdf-save.exe
|
||||
/file-pix
|
||||
/file-pix.exe
|
||||
/file-png
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,6 +1,6 @@
|
|||
/* GIMP - The GNU Image Manipulation Program
|
||||
*
|
||||
* file-pdf.c - PDF file loader
|
||||
* file-pdf-load.c - PDF file loader
|
||||
*
|
||||
* Copyright (C) 2005 Nathan Summers
|
||||
*
|
||||
|
@ -34,7 +34,7 @@
|
|||
|
||||
#define LOAD_PROC "file-pdf-load"
|
||||
#define LOAD_THUMB_PROC "file-pdf-load-thumb"
|
||||
#define PLUG_IN_BINARY "file-pdf"
|
||||
#define PLUG_IN_BINARY "file-pdf-load"
|
||||
|
||||
#define THUMBNAIL_SIZE 128
|
||||
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,145 @@
|
|||
alien_map_RC = alien-map.rc.o
|
||||
align_layers_RC = align-layers.rc.o
|
||||
animation_optimize_RC = animation-optimize.rc.o
|
||||
animation_play_RC = animation-play.rc.o
|
||||
antialias_RC = antialias.rc.o
|
||||
apply_canvas_RC = apply-canvas.rc.o
|
||||
blinds_RC = blinds.rc.o
|
||||
blur_RC = blur.rc.o
|
||||
blur_gauss_RC = blur-gauss.rc.o
|
||||
blur_gauss_selective_RC = blur-gauss-selective.rc.o
|
||||
blur_motion_RC = blur-motion.rc.o
|
||||
border_average_RC = border-average.rc.o
|
||||
bump_map_RC = bump-map.rc.o
|
||||
cartoon_RC = cartoon.rc.o
|
||||
channel_mixer_RC = channel-mixer.rc.o
|
||||
checkerboard_RC = checkerboard.rc.o
|
||||
cml_explorer_RC = cml-explorer.rc.o
|
||||
color_cube_analyze_RC = color-cube-analyze.rc.o
|
||||
color_enhance_RC = color-enhance.rc.o
|
||||
color_exchange_RC = color-exchange.rc.o
|
||||
color_to_alpha_RC = color-to-alpha.rc.o
|
||||
colorify_RC = colorify.rc.o
|
||||
colormap_remap_RC = colormap-remap.rc.o
|
||||
compose_RC = compose.rc.o
|
||||
contrast_normalize_RC = contrast-normalize.rc.o
|
||||
contrast_retinex_RC = contrast-retinex.rc.o
|
||||
contrast_stretch_RC = contrast-stretch.rc.o
|
||||
contrast_stretch_hsv_RC = contrast-stretch-hsv.rc.o
|
||||
convolution_matrix_RC = convolution-matrix.rc.o
|
||||
crop_auto_RC = crop-auto.rc.o
|
||||
crop_zealous_RC = crop-zealous.rc.o
|
||||
cubism_RC = cubism.rc.o
|
||||
curve_bend_RC = curve-bend.rc.o
|
||||
decompose_RC = decompose.rc.o
|
||||
deinterlace_RC = deinterlace.rc.o
|
||||
depth_merge_RC = depth-merge.rc.o
|
||||
despeckle_RC = despeckle.rc.o
|
||||
destripe_RC = destripe.rc.o
|
||||
diffraction_RC = diffraction.rc.o
|
||||
displace_RC = displace.rc.o
|
||||
edge_RC = edge.rc.o
|
||||
edge_dog_RC = edge-dog.rc.o
|
||||
edge_laplace_RC = edge-laplace.rc.o
|
||||
edge_neon_RC = edge-neon.rc.o
|
||||
edge_sobel_RC = edge-sobel.rc.o
|
||||
emboss_RC = emboss.rc.o
|
||||
engrave_RC = engrave.rc.o
|
||||
file_aa_RC = file-aa.rc.o
|
||||
file_cel_RC = file-cel.rc.o
|
||||
file_compressor_RC = file-compressor.rc.o
|
||||
file_csource_RC = file-csource.rc.o
|
||||
file_desktop_link_RC = file-desktop-link.rc.o
|
||||
file_dicom_RC = file-dicom.rc.o
|
||||
file_gbr_RC = file-gbr.rc.o
|
||||
file_gif_load_RC = file-gif-load.rc.o
|
||||
file_gif_save_RC = file-gif-save.rc.o
|
||||
file_gih_RC = file-gih.rc.o
|
||||
file_glob_RC = file-glob.rc.o
|
||||
file_header_RC = file-header.rc.o
|
||||
file_html_table_RC = file-html-table.rc.o
|
||||
file_jp2_load_RC = file-jp2-load.rc.o
|
||||
file_mng_RC = file-mng.rc.o
|
||||
file_pat_RC = file-pat.rc.o
|
||||
file_pcx_RC = file-pcx.rc.o
|
||||
file_pdf_load_RC = file-pdf-load.rc.o
|
||||
file_pdf_save_RC = file-pdf-save.rc.o
|
||||
file_pix_RC = file-pix.rc.o
|
||||
file_png_RC = file-png.rc.o
|
||||
file_pnm_RC = file-pnm.rc.o
|
||||
file_ps_RC = file-ps.rc.o
|
||||
file_psp_RC = file-psp.rc.o
|
||||
file_raw_RC = file-raw.rc.o
|
||||
file_sunras_RC = file-sunras.rc.o
|
||||
file_svg_RC = file-svg.rc.o
|
||||
file_tga_RC = file-tga.rc.o
|
||||
file_tiff_load_RC = file-tiff-load.rc.o
|
||||
file_tiff_save_RC = file-tiff-save.rc.o
|
||||
file_wmf_RC = file-wmf.rc.o
|
||||
file_xbm_RC = file-xbm.rc.o
|
||||
file_xmc_RC = file-xmc.rc.o
|
||||
file_xpm_RC = file-xpm.rc.o
|
||||
file_xwd_RC = file-xwd.rc.o
|
||||
film_RC = film.rc.o
|
||||
filter_pack_RC = filter-pack.rc.o
|
||||
fractal_trace_RC = fractal-trace.rc.o
|
||||
gradient_map_RC = gradient-map.rc.o
|
||||
grid_RC = grid.rc.o
|
||||
guillotine_RC = guillotine.rc.o
|
||||
hot_RC = hot.rc.o
|
||||
illusion_RC = illusion.rc.o
|
||||
iwarp_RC = iwarp.rc.o
|
||||
jigsaw_RC = jigsaw.rc.o
|
||||
lcms_RC = lcms.rc.o
|
||||
lens_apply_RC = lens-apply.rc.o
|
||||
lens_distortion_RC = lens-distortion.rc.o
|
||||
lens_flare_RC = lens-flare.rc.o
|
||||
mail_RC = mail.rc.o
|
||||
max_rgb_RC = max-rgb.rc.o
|
||||
mosaic_RC = mosaic.rc.o
|
||||
newsprint_RC = newsprint.rc.o
|
||||
nl_filter_RC = nl-filter.rc.o
|
||||
noise_hsv_RC = noise-hsv.rc.o
|
||||
noise_randomize_RC = noise-randomize.rc.o
|
||||
noise_rgb_RC = noise-rgb.rc.o
|
||||
noise_solid_RC = noise-solid.rc.o
|
||||
noise_spread_RC = noise-spread.rc.o
|
||||
nova_RC = nova.rc.o
|
||||
oilify_RC = oilify.rc.o
|
||||
photocopy_RC = photocopy.rc.o
|
||||
pixelize_RC = pixelize.rc.o
|
||||
plasma_RC = plasma.rc.o
|
||||
plugin_browser_RC = plugin-browser.rc.o
|
||||
polar_coords_RC = polar-coords.rc.o
|
||||
procedure_browser_RC = procedure-browser.rc.o
|
||||
qbist_RC = qbist.rc.o
|
||||
red_eye_removal_RC = red-eye-removal.rc.o
|
||||
ripple_RC = ripple.rc.o
|
||||
rotate_RC = rotate.rc.o
|
||||
sample_colorize_RC = sample-colorize.rc.o
|
||||
screenshot_RC = screenshot.rc.o
|
||||
semi_flatten_RC = semi-flatten.rc.o
|
||||
sharpen_RC = sharpen.rc.o
|
||||
shift_RC = shift.rc.o
|
||||
sinus_RC = sinus.rc.o
|
||||
smooth_palette_RC = smooth-palette.rc.o
|
||||
softglow_RC = softglow.rc.o
|
||||
sparkle_RC = sparkle.rc.o
|
||||
sphere_designer_RC = sphere-designer.rc.o
|
||||
threshold_alpha_RC = threshold-alpha.rc.o
|
||||
tile_RC = tile.rc.o
|
||||
tile_glass_RC = tile-glass.rc.o
|
||||
tile_paper_RC = tile-paper.rc.o
|
||||
tile_seamless_RC = tile-seamless.rc.o
|
||||
tile_small_RC = tile-small.rc.o
|
||||
unit_editor_RC = unit-editor.rc.o
|
||||
unsharp_mask_RC = unsharp-mask.rc.o
|
||||
value_invert_RC = value-invert.rc.o
|
||||
value_propagate_RC = value-propagate.rc.o
|
||||
van_gogh_lic_RC = van-gogh-lic.rc.o
|
||||
video_RC = video.rc.o
|
||||
warp_RC = warp.rc.o
|
||||
waves_RC = waves.rc.o
|
||||
web_browser_RC = web-browser.rc.o
|
||||
whirl_pinch_RC = whirl-pinch.rc.o
|
||||
wind_RC = wind.rc.o
|
|
@ -8,11 +8,15 @@ require 'util.pl';
|
|||
*FILE_EXT = \$Gimp::CodeGen::util::FILE_EXT;
|
||||
|
||||
$ignorefile = ".gitignore";
|
||||
$rcfile = "gimprc.common";
|
||||
|
||||
$outmk = "Makefile.am$FILE_EXT";
|
||||
$outignore = "$ignorefile$FILE_EXT";
|
||||
$outrc = "$rcfile$FILE_EXT";
|
||||
|
||||
open MK, "> $outmk";
|
||||
open IGNORE, "> $outignore";
|
||||
open RC, "> $outrc";
|
||||
|
||||
require 'plugin-defs.pl';
|
||||
|
||||
|
@ -57,6 +61,11 @@ else
|
|||
libm = -lm
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include \$(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
include $rcfile
|
||||
endif
|
||||
|
||||
libgimp = \$(top_builddir)/libgimp/libgimp-\$(GIMP_API_VERSION).la
|
||||
libgimpbase = \$(top_builddir)/libgimpbase/libgimpbase-\$(GIMP_API_VERSION).la
|
||||
libgimpcolor = \$(top_builddir)/libgimpcolor/libgimpcolor-\$(GIMP_API_VERSION).la
|
||||
|
@ -73,7 +82,8 @@ libexecdir = \$(gimpplugindir)/plug-ins
|
|||
|
||||
EXTRA_DIST = \\
|
||||
mkgen.pl \\
|
||||
plugin-defs.pl$extra
|
||||
plugin-defs.pl$extra \\
|
||||
$rcfile
|
||||
|
||||
INCLUDES = \\
|
||||
-I\$(top_srcdir) \\
|
||||
|
@ -160,6 +170,8 @@ EOT
|
|||
}
|
||||
}
|
||||
|
||||
my $rclib = "\$(${makename}_RC)";
|
||||
|
||||
print MK <<EOT;
|
||||
|
||||
${makename}_SOURCES = \\
|
||||
|
@ -168,16 +180,23 @@ ${makename}_SOURCES = \\
|
|||
${makename}_LDADD = \\
|
||||
$libgimp \\
|
||||
$glib \\$optlib
|
||||
$deplib
|
||||
$deplib \\
|
||||
$rclib
|
||||
EOT
|
||||
|
||||
print RC <<EOT;
|
||||
${makename}_RC = $_.rc.o
|
||||
EOT
|
||||
|
||||
print IGNORE "/$_\n";
|
||||
print IGNORE "/$_.exe\n";
|
||||
}
|
||||
|
||||
close RC;
|
||||
close MK;
|
||||
close IGNORE;
|
||||
|
||||
&write_file($outmk);
|
||||
&write_file($outignore);
|
||||
&write_file($outrc);
|
||||
|
||||
|
|
|
@ -66,7 +66,8 @@
|
|||
'file-pix' => { ui => 1 },
|
||||
'file-png' => { ui => 1, optional => 1, libs => 'PNG_LIBS', cflags => 'PNG_CFLAGS' },
|
||||
'file-pnm' => { ui => 1 },
|
||||
'file-pdf' => { ui => 1, optional => 1, libs => 'POPPLER_LIBS', cflags => 'POPPLER_CFLAGS' },
|
||||
'file-pdf-load' => { ui => 1, optional => 1, libs => 'POPPLER_LIBS', cflags => 'POPPLER_CFLAGS' },
|
||||
'file-pdf-save' => { ui => 1, optional => 1, libs => 'CAIRO_PDF_LIBS', cflags => 'CAIRO_PDF_CFLAGS' },
|
||||
'file-ps' => { ui => 1 },
|
||||
'file-psp' => { ui => 1, optional => 1, libs => 'Z_LIBS' },
|
||||
'file-raw' => { ui => 1 },
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_bmp_RC = file-bmp.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -39,4 +44,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_bmp_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_faxg3_RC = file-faxg3.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -36,4 +41,5 @@ LDADD = \
|
|||
$(libgimpmath) \
|
||||
$(GLIB_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_faxg3_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_fits_RC = file-fits.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -38,4 +43,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_fits_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_fli_RC = file-fli.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -38,4 +43,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_fli_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_ico_RC = file-ico.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -46,4 +51,5 @@ LDADD = \
|
|||
$(PNG_LIBS) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_ico_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_jpeg_RC = file-jpeg.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -55,7 +60,8 @@ file_jpeg_LDADD = \
|
|||
$(GTK_LIBS) \
|
||||
$(EXIF_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_jpeg_RC)
|
||||
|
||||
|
||||
noinst_PROGRAMS = jpegqual
|
||||
|
|
|
@ -12,6 +12,12 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_psd_load_RC = file-psd-load.rc.o
|
||||
file_psd_save_RC = file-psd-save.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -60,3 +66,11 @@ LDADD = \
|
|||
$(IPTCDATA_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
|
||||
file_psd_load_LDADD = \
|
||||
$(LDADD) \
|
||||
$(file_psd_load_RC)
|
||||
|
||||
file_psd_save_LDADD = \
|
||||
$(LDADD) \
|
||||
$(file_psd_save_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_sgi_RC = file-sgi.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -38,4 +43,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_sgi_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_uri_RC = file-uri.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -56,4 +61,5 @@ LDADD = \
|
|||
$(backend_libs) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_uri_RC)
|
||||
|
|
|
@ -8,6 +8,11 @@ libgimpcolor = $(top_builddir)/libgimpcolor/libgimpcolor-$(GIMP_API_VERSION).la
|
|||
libgimpbase = $(top_builddir)/libgimpbase/libgimpbase-$(GIMP_API_VERSION).la
|
||||
libgimpmath = $(top_builddir)/libgimpmath/libgimpmath-$(GIMP_API_VERSION).la
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
file_xjt_RC = file-xjt.rc.o
|
||||
endif
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
||||
libexec_PROGRAMS = file-xjt
|
||||
|
@ -37,4 +42,5 @@ LDADD = \
|
|||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(JPEG_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(file_xjt_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
flame_RC = flame.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -45,4 +50,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(flame_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
fractal_explorer_RC = fractal-explorer.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
SUBDIRS = examples
|
||||
|
@ -41,4 +46,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(fractal_explorer_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
gfig_RC = gfig.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
SUBDIRS = gfig-examples images
|
||||
|
@ -72,4 +77,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(gfig_RC)
|
||||
|
|
|
@ -14,6 +14,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
gimpressionist_RC = gimpressionist.rc.o
|
||||
endif
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-DDEFAULTPATH=\""~/$(gimpdir)/gimpressionist:$(gimpdatadir)/gimpressionist"\"
|
||||
|
||||
|
@ -72,6 +77,7 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(gimpressionist_RC)
|
||||
|
||||
EXTRA_DIST = README
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
gradient_flare_RC = gradient-flare.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
SUBDIRS = flares
|
||||
|
@ -37,4 +42,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(gradient_flare_RC)
|
||||
|
|
|
@ -14,6 +14,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
help_browser_RC = help-browser.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -38,7 +43,8 @@ LDADD = \
|
|||
$(GIO_LIBS) \
|
||||
$(GLIB_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(help_browser_RC)
|
||||
|
||||
help_browser_SOURCES = \
|
||||
gimpthrobber.c \
|
||||
|
|
|
@ -11,6 +11,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
help_RC = help.rc.o
|
||||
endif
|
||||
|
||||
AM_CPPFLAGS = -DDATADIR=\""$(gimpdatadir)"\"
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
@ -51,7 +56,8 @@ LDADD = \
|
|||
$(libgimpmath) \
|
||||
$(GIO_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(help_RC)
|
||||
|
||||
|
||||
noinst_PROGRAMS = gimp-help-lookup
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
ifs_compose_RC = ifs-compose.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -41,4 +46,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(ifs_compose_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
imagemap_RC = imagemap.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
SUBDIRS = images
|
||||
|
@ -139,7 +144,8 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(imagemap)
|
||||
|
||||
CLEANFILES = y.tab.c y.tab.h
|
||||
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
lighting_RC = lighting.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
SUBDIRS = images
|
||||
|
@ -51,4 +56,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(lighting_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
map_object_RC = map-object.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -51,4 +56,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(map_object_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
maze_RC = maze.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -43,4 +48,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(maze_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
metadata_RC = metadata.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -77,7 +82,8 @@ LDADD = \
|
|||
$(EXIF_LIBS) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(metadata_RC)
|
||||
|
||||
# test program, not built by default
|
||||
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
pagecurl_RC = pagecurl.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -42,7 +47,8 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(pagecurl_RC)
|
||||
|
||||
|
||||
PAGECURL_IMAGES = \
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
print_RC = print.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
INCLUDES = \
|
||||
|
@ -29,7 +34,8 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(print_RC)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
||||
|
|
|
@ -16,6 +16,11 @@ mwindows = -mwindows
|
|||
WINSOCK_LIBS = -lws2_32
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
script_fu_RC = script-fu.rc.o
|
||||
endif
|
||||
|
||||
AM_CFLAGS = \
|
||||
-DSTANDALONE=0 \
|
||||
-DUSE_INTERFACE=1 \
|
||||
|
@ -74,4 +79,5 @@ LDADD = \
|
|||
$(SOCKET_LIBS) \
|
||||
$(WINSOCK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(script_fu_RC)
|
||||
|
|
|
@ -12,6 +12,11 @@ if OS_WIN32
|
|||
mwindows = -mwindows
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
selection_to_path_RC = selection-to-path.rc.o
|
||||
endif
|
||||
|
||||
AM_LDFLAGS = $(mwindows)
|
||||
|
||||
libexecdir = $(gimpplugindir)/plug-ins
|
||||
|
@ -59,4 +64,5 @@ LDADD = \
|
|||
$(libgimpbase) \
|
||||
$(GTK_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS)
|
||||
$(INTLLIBS) \
|
||||
$(selection_to_path_RC)
|
||||
|
|
|
@ -19,6 +19,10 @@ twain_LDFLAGS = -mwindows -luser32
|
|||
twainplatform = tw_win.c
|
||||
endif
|
||||
|
||||
if HAVE_WINDRES
|
||||
include $(top_srcdir)/build/windows/gimprc-plug-ins.rule
|
||||
twain_RC = twain.rc.o
|
||||
endif
|
||||
|
||||
if HAVE_MAC_TWAIN
|
||||
twain_LDFLAGS = -framework Carbon -framework TWAIN
|
||||
|
@ -61,4 +65,5 @@ LDADD = \
|
|||
$(GLIB_LIBS) \
|
||||
$(RT_LIBS) \
|
||||
$(INTLLIBS) \
|
||||
$(twain_LIBS)
|
||||
$(twain_LIBS) \
|
||||
$(twain_RC)
|
||||
|
|
446
po-libgimp/br.po
446
po-libgimp/br.po
File diff suppressed because it is too large
Load Diff
|
@ -70,7 +70,7 @@ plug-ins/common/file-jp2-load.c
|
|||
plug-ins/common/file-mng.c
|
||||
plug-ins/common/file-pat.c
|
||||
plug-ins/common/file-pcx.c
|
||||
plug-ins/common/file-pdf.c
|
||||
plug-ins/common/file-pdf-load.c
|
||||
plug-ins/common/file-pix.c
|
||||
plug-ins/common/file-png.c
|
||||
plug-ins/common/file-pnm.c
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -4,6 +4,7 @@ ar
|
|||
az
|
||||
be
|
||||
bg
|
||||
br
|
||||
ca
|
||||
ca@valencia
|
||||
cs
|
||||
|
|
|
@ -0,0 +1,337 @@
|
|||
# Breton translation for Gimp Python
|
||||
# Copyright (c) 2010 The Gnome Project
|
||||
# This file is distributed under the same license as the Gimp Python package.
|
||||
# Alan Monfort <alan.monfort@free.fr>, 2010.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: Gimp Python\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gimp&component=general\n"
|
||||
"POT-Creation-Date: 2010-08-25 11:03+0000\n"
|
||||
"PO-Revision-Date: 2010-08-27 12:14+0100\n"
|
||||
"Last-Translator: Denis <denisarnuad@yahoo.fr>\n"
|
||||
"Language-Team: Drouizig <alan.monfort@free.fr>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Poedit-Language: Breton\n"
|
||||
"X-Poedit-Country: FRANCE\n"
|
||||
"X-Poedit-SourceCharset: utf-8\n"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpfu.py:394
|
||||
msgid "Missing exception information"
|
||||
msgstr "Stlennoù an nemedenn o vankout"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpfu.py:403
|
||||
#, python-format
|
||||
msgid "An error occurred running %s"
|
||||
msgstr "Degouezhet ez eus bet ur fazi e-pad ma oa oc'h erounit %s"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpfu.py:414
|
||||
msgid "_More Information"
|
||||
msgstr "_Muioc'h a stlennoù"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpfu.py:526
|
||||
#: ../plug-ins/pygimp/gimpfu.py:538
|
||||
#: ../plug-ins/pygimp/gimpfu.py:544
|
||||
msgid "No"
|
||||
msgstr "Ket"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpfu.py:536
|
||||
#: ../plug-ins/pygimp/gimpfu.py:544
|
||||
msgid "Yes"
|
||||
msgstr "Ya"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpfu.py:596
|
||||
#: ../plug-ins/pygimp/gimpui.py:223
|
||||
msgid "Python-Fu File Selection"
|
||||
msgstr "Diuzad restr Python-Fu"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpfu.py:607
|
||||
msgid "Python-Fu Folder Selection"
|
||||
msgstr "Diuzad teuliad Python-Fu"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpfu.py:696
|
||||
#, python-format
|
||||
msgid "Invalid input for '%s'"
|
||||
msgstr "Enankad didalvoudek evit '%s'"
|
||||
|
||||
#: ../plug-ins/pygimp/gimpui.py:176
|
||||
msgid "Python-Fu Color Selection"
|
||||
msgstr "Diuzad liv Python-Fu"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:106
|
||||
msgid "Saving as colored XHTML"
|
||||
msgstr "Oc'h enrollañ evel XHTML livet"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:183
|
||||
msgid "Save as colored XHTML"
|
||||
msgstr "Enrollañ evel XHTML livet"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:188
|
||||
msgid "Colored XHTML"
|
||||
msgstr "XHTML livet"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:195
|
||||
msgid "Character _source"
|
||||
msgstr "_Tarzh an arouezennoù"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:196
|
||||
msgid "Source code"
|
||||
msgstr "Tarzh ar voneg"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:197
|
||||
msgid "Text file"
|
||||
msgstr "Restr testenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:198
|
||||
msgid "Entry box"
|
||||
msgstr "Boestad enankañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:199
|
||||
msgid "_File to read or characters to use"
|
||||
msgstr "_Restr da lenn pe arouezenn da arverañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:201
|
||||
msgid "Fo_nt size in pixels"
|
||||
msgstr "Ment an _nodrezh e pikselioù"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/colorxhtml.py:202
|
||||
msgid "_Write a separate CSS file"
|
||||
msgstr "Skrivañ ur restr CSS disrannet"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/foggify.py:56
|
||||
msgid "Add a layer of fog"
|
||||
msgstr "Ouzhpennañ un dreuzfollennad latar"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/foggify.py:61
|
||||
msgid "_Fog..."
|
||||
msgstr "_Latar..."
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/foggify.py:66
|
||||
msgid "_Layer name"
|
||||
msgstr "Anv an _dreuzfollenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/foggify.py:66
|
||||
msgid "Clouds"
|
||||
msgstr "Koumoul"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/foggify.py:67
|
||||
msgid "_Fog color"
|
||||
msgstr "_Liv al latar"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/foggify.py:68
|
||||
msgid "_Turbulence"
|
||||
msgstr "S_trafuilh"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/foggify.py:69
|
||||
msgid "Op_acity"
|
||||
msgstr "_Demerez"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-offset.py:44
|
||||
msgid "Offset the colors in a palette"
|
||||
msgstr "Linkañ al livioù wwar ul livaoueg"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-offset.py:49
|
||||
msgid "_Offset Palette..."
|
||||
msgstr "Linkañ al liva_oueg..."
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-offset.py:52
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:56
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-to-gradient.py:56
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-to-gradient.py:78
|
||||
msgid "Palette"
|
||||
msgstr "Livaoueg"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-offset.py:53
|
||||
msgid "Off_set"
|
||||
msgstr "Lin_kañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:48
|
||||
msgid "Sort the colors in a palette"
|
||||
msgstr "Rummañ al livioù war ul livaoueg"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:53
|
||||
msgid "_Sort Palette..."
|
||||
msgstr "_Rummañ al livaoueg..."
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:57
|
||||
msgid "Color _model"
|
||||
msgstr "Skouer li_v"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:58
|
||||
msgid "RGB"
|
||||
msgstr "RGG"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:59
|
||||
msgid "HSV"
|
||||
msgstr "APL"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:60
|
||||
msgid "Channel to _sort"
|
||||
msgstr "_Sanell da rummañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:61
|
||||
msgid "Red or Hue"
|
||||
msgstr "Rue pe arliv"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:62
|
||||
msgid "Green or Saturation"
|
||||
msgstr "Gwer pe peurvec'hiañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:63
|
||||
msgid "Blue or Value"
|
||||
msgstr "Glas pe lintr"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-sort.py:64
|
||||
msgid "_Ascending"
|
||||
msgstr "W_ar gresk"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-to-gradient.py:49
|
||||
msgid "Create a repeating gradient using colors from the palette"
|
||||
msgstr "Krouiñ un ilrezenn arrenek oc'h arverañ al livioù diwar al livaoueg"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-to-gradient.py:54
|
||||
msgid "Palette to _Repeating Gradient"
|
||||
msgstr "Livaoueg war an ilrezenn ar_rennek"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-to-gradient.py:71
|
||||
msgid "Create a gradient using colors from the palette"
|
||||
msgstr "Krouiñ un ilrezenn oc'h arverañ al livioù diwar al livaoueg"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/palette-to-gradient.py:76
|
||||
msgid "Palette to _Gradient"
|
||||
msgstr "Livaoueg d'an _ilrezenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:56
|
||||
msgid "Slice"
|
||||
msgstr "Darn"
|
||||
|
||||
#. table snippet means a small piece of HTML code here
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:417
|
||||
msgid "Cuts an image along its guides, creates images and a HTML table snippet"
|
||||
msgstr "Troc'hañ ur skeudenn a-hed he dealfoù, krouiñ a ra skeudennoù ha brizhenn un daolenn HTML "
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:428
|
||||
msgid "_Slice..."
|
||||
msgstr "_Darnañ..."
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:433
|
||||
msgid "Path for HTML export"
|
||||
msgstr "TReug evit an ezporzhiañ HTML"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:434
|
||||
msgid "Filename for export"
|
||||
msgstr "Anv restr evit an ezporzhiañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:435
|
||||
msgid "Image name prefix"
|
||||
msgstr "Rakger anv ar skeudenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:436
|
||||
msgid "Image format"
|
||||
msgstr "Mentrezh ar skeudenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:437
|
||||
msgid "Separate image folder"
|
||||
msgstr "Dispartiañ an teuliad skeudennoù"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:439
|
||||
msgid "Folder for image export"
|
||||
msgstr "Teuliad evit ezporzhiañ ar skeudenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:440
|
||||
msgid "Space between table elements"
|
||||
msgstr "Egor etre elfennoù an daolenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:442
|
||||
msgid "Javascript for onmouseover and clicked"
|
||||
msgstr "Javascript evit onmouseover ha kliket"
|
||||
|
||||
#. table caps are table cells on the edge of the table
|
||||
#: ../plug-ins/pygimp/plug-ins/py-slice.py:445
|
||||
msgid "Skip animation for table caps"
|
||||
msgstr "Dilemel ar bliverezh evit pennlizherennoù an daolenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/python-console.py:56
|
||||
msgid "Python Console"
|
||||
msgstr "Penel Python"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/python-console.py:60
|
||||
msgid "_Browse..."
|
||||
msgstr "_Kantreal..."
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/python-console.py:138
|
||||
msgid "Python Procedure Browser"
|
||||
msgstr "Kantreer argerzhadur Python"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/python-console.py:167
|
||||
#, python-format
|
||||
msgid "Could not open '%s' for writing: %s"
|
||||
msgstr "N'haller ket digeriñ '%s' evit skrivañ : %s"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/python-console.py:182
|
||||
#, python-format
|
||||
msgid "Could not write to '%s': %s"
|
||||
msgstr "N'haller ket skrivañ war '%s' : %s"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/python-console.py:190
|
||||
msgid "Save Python-Fu Console Output"
|
||||
msgstr "Enrollañ ec'hankad penel Python-Fu"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/python-console.py:216
|
||||
msgid "Interactive GIMP Python interpreter"
|
||||
msgstr "Jubenner etrewezhiat Python evit GIMP"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/python-console.py:221
|
||||
msgid "_Console"
|
||||
msgstr "_Penel"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/shadow_bevel.py:60
|
||||
msgid "Add a drop shadow to a layer, and optionally bevel it"
|
||||
msgstr "Ouzhpennañ un disheol o kouezhañ dindan an dreuzfollenn, ha dre zibarzh lakaat beskell warni"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/shadow_bevel.py:65
|
||||
msgid "_Drop Shadow and Bevel..."
|
||||
msgstr "_Disheol o kouezhañ ha beskell..."
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/shadow_bevel.py:70
|
||||
msgid "_Shadow blur"
|
||||
msgstr "_Ruzed an disheol"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/shadow_bevel.py:71
|
||||
msgid "_Bevel"
|
||||
msgstr "_Beskell"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/shadow_bevel.py:72
|
||||
msgid "_Drop shadow"
|
||||
msgstr "_Disheol o kouezhañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/shadow_bevel.py:73
|
||||
msgid "Drop shadow _X displacement"
|
||||
msgstr "Dilec'hiadur _X an disheol o kouezhañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/shadow_bevel.py:74
|
||||
msgid "Drop shadow _Y displacement"
|
||||
msgstr "Dilec'hiadur _Y an disheol o kouezhañ"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/text-brush.py:75
|
||||
msgid "Create a new brush with characters from a text sequence"
|
||||
msgstr "Krouiñ ur broust nevez gant arouezennoù un destenn"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/text-brush.py:81
|
||||
msgid "New Brush from _Text..."
|
||||
msgstr "Broust nevez diouzh an des_tenn..."
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/text-brush.py:84
|
||||
msgid "Font"
|
||||
msgstr "Nodrezh"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/text-brush.py:85
|
||||
msgid "Pixel Size"
|
||||
msgstr "Ment ar piksel"
|
||||
|
||||
#: ../plug-ins/pygimp/plug-ins/text-brush.py:86
|
||||
msgid "Text"
|
||||
msgstr "Testenn"
|
||||
|
|
@ -1,64 +1,71 @@
|
|||
# Breton translation for gimp
|
||||
# Copyright (c) 2008 Rosetta Contributors and Canonical Ltd 2008
|
||||
# French translation of gimp-script-fu.
|
||||
# Copyright (C) 2000-2006 Free Software Foundation, Inc.
|
||||
# This file is distributed under the same license as the gimp package.
|
||||
# Alan Monfort <alan.monfort@free.fr>, 2007.
|
||||
#
|
||||
# David Monniaux <monniaux@arbouse.ens.fr>, 2000.
|
||||
# Christophe Merlet (RedFox) <redfox@redfoxcenter.org>, 2000-2006.
|
||||
# maintainer: Raymond Ostertag <r.ostertag@caramail.com>, 2002-2006.
|
||||
# Jean-Louis Berliet <jl.berliet@free.fr>, 2004.
|
||||
#
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: gimp\n"
|
||||
"Report-Msgid-Bugs-To: An Drouizig <drouizig@drouizig.org>\n"
|
||||
"POT-Creation-Date: 2009-03-10 06:21+0000\n"
|
||||
"PO-Revision-Date: 2009-07-28 04:47+0100\n"
|
||||
"Project-Id-Version: gimp-script-fu 2.4\n"
|
||||
"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=gimp&component=general\n"
|
||||
"POT-Creation-Date: 2010-08-25 11:03+0000\n"
|
||||
"PO-Revision-Date: 2010-08-25 20:09+0100\n"
|
||||
"Last-Translator: Alan Monfort <alan.monfort@free.fr>\n"
|
||||
"Language-Team: An Drouizig <drouizig@drouizig.org>\n"
|
||||
"Language-Team: Alan Monfort <drouizig@drouizig.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Poedit-Language: breton\n"
|
||||
"X-Poedit-Country: france\n"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:131
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:198
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:130
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:197
|
||||
msgid "Script-Fu Console"
|
||||
msgstr "Penel Skript-Fu"
|
||||
msgstr "Penel Script-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:194
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:193
|
||||
msgid "Welcome to TinyScheme"
|
||||
msgstr "Degemer mat e TinyScheme"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:200
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:199
|
||||
msgid "Interactive Scheme Development"
|
||||
msgstr "Steuñv diorrenn etrewezhiat"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:236
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:235
|
||||
msgid "_Browse..."
|
||||
msgstr "_Furchal..."
|
||||
msgstr "_Kantreal..."
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:294
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:293
|
||||
msgid "Save Script-Fu Console Output"
|
||||
msgstr "Enrollañ ec'hankad penel Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:341
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:340
|
||||
#, c-format
|
||||
msgid "Could not open '%s' for writing: %s"
|
||||
msgstr "N'haller ket digeriñ '%s' evit skrivañ : %s"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:370
|
||||
#: ../plug-ins/script-fu/script-fu-console.c:369
|
||||
msgid "Script-Fu Procedure Browser"
|
||||
msgstr "Merdeer an treugennadoù Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-eval.c:63
|
||||
#: ../plug-ins/script-fu/script-fu-eval.c:60
|
||||
msgid "Script-Fu evaluation mode only allows non-interactive invocation"
|
||||
msgstr "Aotreet e vez galvadennoù anetrewezhiat hepken gant mod priziañ Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:196
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:195
|
||||
msgid "Script-Fu cannot process two scripts at the same time."
|
||||
msgstr "Skript-Fu n'eo ket gouest da erounit daou skript war un dro."
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:198
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:197
|
||||
#, c-format
|
||||
msgid "You are already running the \"%s\" script."
|
||||
msgstr "Emaoc'h oc'h erounit ar skript \"%s\" ."
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:224
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:223
|
||||
#, c-format
|
||||
msgid "Script-Fu: %s"
|
||||
msgstr "Skript-Fu : %s"
|
||||
|
@ -66,148 +73,148 @@ msgstr "Skript-Fu : %s"
|
|||
#. we add a colon after the label;
|
||||
#. * some languages want an extra space here
|
||||
#.
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:288
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:287
|
||||
#, c-format
|
||||
msgid "%s:"
|
||||
msgstr "%s :"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:336
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:335
|
||||
msgid "Script-Fu Color Selection"
|
||||
msgstr "Diuzad al liv evit Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:445
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:444
|
||||
msgid "Script-Fu File Selection"
|
||||
msgstr "Diuzad ar restr evit Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:448
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:447
|
||||
msgid "Script-Fu Folder Selection"
|
||||
msgstr "Diuzad an teuliad evit Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:461
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:460
|
||||
msgid "Script-Fu Font Selection"
|
||||
msgstr "Diuzad an nodrezh evit Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:469
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:468
|
||||
msgid "Script-Fu Palette Selection"
|
||||
msgstr "Diuzad al livaoueg evit Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:478
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:477
|
||||
msgid "Script-Fu Pattern Selection"
|
||||
msgstr "Diuzad ar goustur evit Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:487
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:486
|
||||
msgid "Script-Fu Gradient Selection"
|
||||
msgstr "Diuzad an ilrezenn evit Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:496
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:495
|
||||
msgid "Script-Fu Brush Selection"
|
||||
msgstr "Diuzad ar broust evit Skript-Fu"
|
||||
msgstr "Diuzad ar broust evit Skript-Fu "
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:824
|
||||
#: ../plug-ins/script-fu/script-fu-interface.c:826
|
||||
#, c-format
|
||||
msgid "Error while executing %s:"
|
||||
msgstr "Fazi e-pad ma oa oc'h erounit %s :"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-scripts.c:150
|
||||
#: ../plug-ins/script-fu/script-fu-scripts.c:149
|
||||
msgid "Too few arguments to 'script-fu-register' call"
|
||||
msgstr "Re nebeut a arguzennoù evit galvadenn 'script-fu-register'"
|
||||
msgstr "N'eus ket arguzennoù a-walc'h evit galv 'script-fu-register'"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-scripts.c:609
|
||||
#: ../plug-ins/script-fu/script-fu-scripts.c:608
|
||||
#, c-format
|
||||
msgid "Error while loading %s:"
|
||||
msgstr "Fazi e-pad ma oa o kargañ %s :"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-server.c:713
|
||||
#: ../plug-ins/script-fu/script-fu-server.c:804
|
||||
msgid "Script-Fu Server Options"
|
||||
msgstr "Dibarzhioù an dafariad Skript-Fu"
|
||||
msgstr "Dibarzhioù an dafariad Skript-Fu "
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-server.c:718
|
||||
#: ../plug-ins/script-fu/script-fu-server.c:809
|
||||
msgid "_Start Server"
|
||||
msgstr "_Loc'hañ an dafariad"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-server.c:746
|
||||
#: ../plug-ins/script-fu/script-fu-server.c:837
|
||||
msgid "Server port:"
|
||||
msgstr "Porzh an dafariad :"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu-server.c:752
|
||||
#: ../plug-ins/script-fu/script-fu-server.c:843
|
||||
msgid "Server logfile:"
|
||||
msgstr "Kerzhlevr an dafariad :"
|
||||
msgstr "Restr kerzhlevr an dafariad :"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:111
|
||||
#: ../plug-ins/script-fu/script-fu.c:110
|
||||
msgid "Interactive console for Script-Fu development"
|
||||
msgstr "Penel etrewezhiat evit diorren Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:117
|
||||
#: ../plug-ins/script-fu/script-fu.c:116
|
||||
msgid "_Console"
|
||||
msgstr "_Penel"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:141
|
||||
#: ../plug-ins/script-fu/script-fu.c:140
|
||||
msgid "Server for remote Script-Fu operation"
|
||||
msgstr "Dafariad evit gwezhiadurioù Skript-Fu a-bell"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:146
|
||||
#: ../plug-ins/script-fu/script-fu.c:145
|
||||
msgid "_Start Server..."
|
||||
msgstr "_Loc'hañ an dafariad..."
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:302
|
||||
#: ../plug-ins/script-fu/script-fu.c:301
|
||||
msgid "_GIMP Online"
|
||||
msgstr "_GIMP enlinenn"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:303
|
||||
#: ../plug-ins/script-fu/script-fu.c:302
|
||||
msgid "_User Manual"
|
||||
msgstr "Dornlevr an arveriad"
|
||||
msgstr "D_ornlevr an arveriad"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:306
|
||||
#: ../plug-ins/script-fu/script-fu.c:305
|
||||
msgid "_Script-Fu"
|
||||
msgstr "_Script-Fu"
|
||||
msgstr "_Skript-Fu"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:308
|
||||
#: ../plug-ins/script-fu/script-fu.c:307
|
||||
msgid "_Test"
|
||||
msgstr "_Taol arnod"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:311
|
||||
#: ../plug-ins/script-fu/script-fu.c:310
|
||||
msgid "_Buttons"
|
||||
msgstr "A_fell"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:313
|
||||
#: ../plug-ins/script-fu/script-fu.c:312
|
||||
msgid "_Logos"
|
||||
msgstr "Sie_lloù"
|
||||
msgstr "_Sielloù"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:315
|
||||
#: ../plug-ins/script-fu/script-fu.c:314
|
||||
msgid "_Patterns"
|
||||
msgstr "_Gousturioù"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:318
|
||||
#: ../plug-ins/script-fu/script-fu.c:317
|
||||
msgid "_Web Page Themes"
|
||||
msgstr "Neuzioù ar bajennad _web"
|
||||
msgstr "Neuzioù pajennad _web"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:320
|
||||
#: ../plug-ins/script-fu/script-fu.c:319
|
||||
msgid "_Alien Glow"
|
||||
msgstr "S_kleur Alien"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:322
|
||||
#: ../plug-ins/script-fu/script-fu.c:321
|
||||
msgid "_Beveled Pattern"
|
||||
msgstr "Goustur _beskellet"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:324
|
||||
#: ../plug-ins/script-fu/script-fu.c:323
|
||||
msgid "_Classic.Gimp.Org"
|
||||
msgstr "_Gimp.Org Klasel"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:327
|
||||
#: ../plug-ins/script-fu/script-fu.c:326
|
||||
msgid "Alpha to _Logo"
|
||||
msgstr "Alfa war ar _siell"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:330
|
||||
#: ../plug-ins/script-fu/script-fu.c:329
|
||||
msgid "Re-read all available Script-Fu scripts"
|
||||
msgstr "Lenn en-dro an holl skriptoù Script-Fu hegerz"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:335
|
||||
#: ../plug-ins/script-fu/script-fu.c:334
|
||||
msgid "_Refresh Scripts"
|
||||
msgstr "_Azbevaat ar skriptoù"
|
||||
|
||||
#: ../plug-ins/script-fu/script-fu.c:358
|
||||
#: ../plug-ins/script-fu/script-fu.c:357
|
||||
msgid "You can not use \"Refresh Scripts\" while a Script-Fu dialog box is open. Please close all Script-Fu windows and try again."
|
||||
msgstr "N'hallit ket arverañ \"Azbevaat ar skriptoù\" mard eo digor ur voestad emziviz Script-Fu. Serrit prenestroù Script-Fu ha klaskit en-dro."
|
||||
msgstr "N'hallit ket arverañ \"Azbevaat ar skriptoù\" mard eo digor ur voestad emziviz Script-Fu. Serrit ar prenestroù Script-Fu ha klaskit en-dro."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/3d-outline.scm.h:1
|
||||
msgid "3D _Outline..."
|
||||
|
@ -245,8 +252,6 @@ msgstr "Arventennoù ar bosoù dre ziouer"
|
|||
#: ../plug-ins/script-fu/scripts/coolmetal-logo.scm.h:6
|
||||
#: ../plug-ins/script-fu/scripts/crystal-logo.scm.h:6
|
||||
#: ../plug-ins/script-fu/scripts/frosty-logo.scm.h:5
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:5
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:6
|
||||
#: ../plug-ins/script-fu/scripts/glossy.scm.h:7
|
||||
#: ../plug-ins/script-fu/scripts/glowing-logo.scm.h:5
|
||||
#: ../plug-ins/script-fu/scripts/gradient-bevel-logo.scm.h:7
|
||||
|
@ -284,8 +289,6 @@ msgstr "Nodrezh"
|
|||
#: ../plug-ins/script-fu/scripts/coolmetal-logo.scm.h:7
|
||||
#: ../plug-ins/script-fu/scripts/crystal-logo.scm.h:7
|
||||
#: ../plug-ins/script-fu/scripts/frosty-logo.scm.h:6
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:6
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:7
|
||||
#: ../plug-ins/script-fu/scripts/glossy.scm.h:8
|
||||
#: ../plug-ins/script-fu/scripts/glowing-logo.scm.h:6
|
||||
#: ../plug-ins/script-fu/scripts/gradient-bevel-logo.scm.h:8
|
||||
|
@ -357,8 +360,6 @@ msgstr "Skin ruzed an disheol"
|
|||
#: ../plug-ins/script-fu/scripts/coolmetal-logo.scm.h:10
|
||||
#: ../plug-ins/script-fu/scripts/crystal-logo.scm.h:8
|
||||
#: ../plug-ins/script-fu/scripts/frosty-logo.scm.h:7
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:13
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:17
|
||||
#: ../plug-ins/script-fu/scripts/glossy.scm.h:18
|
||||
#: ../plug-ins/script-fu/scripts/glowing-logo.scm.h:8
|
||||
#: ../plug-ins/script-fu/scripts/gradient-bevel-logo.scm.h:10
|
||||
|
@ -396,7 +397,6 @@ msgstr "Truched 3_M..."
|
|||
#: ../plug-ins/script-fu/scripts/comic-logo.scm.h:2
|
||||
#: ../plug-ins/script-fu/scripts/coolmetal-logo.scm.h:2
|
||||
#: ../plug-ins/script-fu/scripts/frosty-logo.scm.h:2
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:1
|
||||
#: ../plug-ins/script-fu/scripts/glossy.scm.h:2
|
||||
#: ../plug-ins/script-fu/scripts/glowing-logo.scm.h:2
|
||||
#: ../plug-ins/script-fu/scripts/gradient-bevel-logo.scm.h:2
|
||||
|
@ -417,7 +417,7 @@ msgstr "Ment ar bloc'had"
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/3dTruchet.scm.h:4
|
||||
msgid "Create an image filled with a 3D Truchet pattern"
|
||||
msgstr "Krouiñ ur skeudenn leuniet gant ur goustur 3M mod Truchet"
|
||||
msgstr "Krouiñ ur skeudenn leuniet gant ur goustur 3M Truchet"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/3dTruchet.scm.h:5
|
||||
#: ../plug-ins/script-fu/scripts/blended-logo.scm.h:7
|
||||
|
@ -595,7 +595,7 @@ msgstr "A_fell..."
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/alien-glow-button.scm.h:3
|
||||
msgid "Create a button graphic with an eerie glow for web pages"
|
||||
msgstr "Krouiñ un afell gevregat gant ur skleur iskis evit pajennadoù web"
|
||||
msgstr "Krouiñ un afell gevregat gant ur skleur iskis evit ajennadoù web"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/alien-glow-button.scm.h:8
|
||||
msgid "Glow radius"
|
||||
|
@ -612,8 +612,6 @@ msgstr "Leuniadur"
|
|||
#: ../plug-ins/script-fu/scripts/beveled-button.scm.h:10
|
||||
#: ../plug-ins/script-fu/scripts/beveled-pattern-button.scm.h:8
|
||||
#: ../plug-ins/script-fu/scripts/blended-logo.scm.h:18
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:14
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:18
|
||||
#: ../plug-ins/script-fu/scripts/i26-gunya2.scm.h:8
|
||||
#: ../plug-ins/script-fu/scripts/news-text.scm.h:11
|
||||
#: ../plug-ins/script-fu/scripts/pupi-button.scm.h:14
|
||||
|
@ -752,7 +750,6 @@ msgid "Create a beveled pattern hrule for webpages"
|
|||
msgstr "Krouiñ ur goustur reolennH beskellet evit ar pajennadoù web"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/beveled-pattern-hrule.scm.h:2
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:8
|
||||
#: ../plug-ins/script-fu/scripts/gradient-example.scm.h:4
|
||||
#: ../plug-ins/script-fu/scripts/mkbrush.scm.h:7
|
||||
#: ../plug-ins/script-fu/scripts/swirltile.scm.h:7
|
||||
|
@ -971,7 +968,7 @@ msgstr "Engravet..."
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/carved-logo.scm.h:4
|
||||
msgid "Create a logo with text raised above or carved in to the specified background image"
|
||||
msgstr "Krouiñ ur siell gant an destenn savet dirak pe zelwennet e-barzh drekva erspizet ar skeudenn"
|
||||
msgstr "Krouiñ ur siell gant an destenn savet dirak pe zelwennet e-barzh drekva erspizet ar skeudenn "
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/carved-logo.scm.h:7
|
||||
msgid "Padding around text"
|
||||
|
@ -983,7 +980,7 @@ msgstr "Liv ar c'hleiz"
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/chalk.scm.h:3
|
||||
msgid "Create a chalk drawing effect for the selected region (or alpha)"
|
||||
msgstr "Krouiñ un efed tresañ dre gleiz evit ar maez diuzet (pe an alfa)"
|
||||
msgstr "Krouiñ un efed tresañ dre gleiz evit ar maez diuzet (pe d'an alfa)"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/chalk.scm.h:4
|
||||
msgid "Create a logo resembling chalk scribbled on a blackboard"
|
||||
|
@ -1062,7 +1059,7 @@ msgstr "Maezioù gwenn ar c'hrom"
|
|||
#: ../plug-ins/script-fu/scripts/crystal-logo.scm.h:5
|
||||
#: ../plug-ins/script-fu/scripts/sota-chrome-logo.scm.h:6
|
||||
msgid "Environment map"
|
||||
msgstr "Kartenn an amva"
|
||||
msgstr "Kartennad an amva"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/chrome-it.scm.h:8
|
||||
#: ../plug-ins/script-fu/scripts/sota-chrome-logo.scm.h:9
|
||||
|
@ -1282,12 +1279,10 @@ msgid "Color"
|
|||
msgstr "Liv"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/drop-shadow.scm.h:5
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:11
|
||||
msgid "Offset X"
|
||||
msgstr "Linkañ X"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/drop-shadow.scm.h:6
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:12
|
||||
msgid "Offset Y"
|
||||
msgstr "Linkañ Y"
|
||||
|
||||
|
@ -1392,7 +1387,7 @@ msgstr "Du war wenn"
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/font-map.scm.h:3
|
||||
msgid "Create an image filled with previews of fonts matching a fontname filter"
|
||||
msgstr "Krouiñ ur skeudenn leuniet gant alberzioù nodrezhoù o klotañ gant sil un anv nodrezh"
|
||||
msgstr "Krouiñ ur skeudenn leuniet gant alberzioù nodrezhioù o klotañ gant sil un anv nodrezh"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/font-map.scm.h:4
|
||||
msgid "Font _size (pixels)"
|
||||
|
@ -1468,91 +1463,61 @@ msgstr "Tevder an disheol (%)"
|
|||
msgid "_Fuzzy Border..."
|
||||
msgstr "Riblenn _dispis..."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:1
|
||||
msgid "Autocrop"
|
||||
msgstr "Didroc'hañ emgefreek"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:1
|
||||
msgid "Bookmark to the GIMP web site"
|
||||
msgstr "Merker war lec'hienn web GIMP"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:2
|
||||
msgid "Create an image of a large header using the gimp.org webpage theme"
|
||||
msgstr "Krouiñ ur skeudenn eus un talbenn bras en ur arverañ neuz pajennad web gimp.org"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:2
|
||||
msgid "Bookmark to the user manual"
|
||||
msgstr "Merker war dornlevr an arveriad"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:3
|
||||
msgid "Create an image of a small header using the gimp.org webpage theme"
|
||||
msgstr "Krouiñ ur skeudenn eus un talbenn bihan en ur arverañ neuz pajenn web gimp.org"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:3
|
||||
msgid "Create and Use _Selections"
|
||||
msgstr "Krouiñ hag arverañ diu_zadoù"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:4
|
||||
msgid "Dark color"
|
||||
msgstr "Liv teñval"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:4
|
||||
msgid "Create, Open and Save _Files"
|
||||
msgstr "Krouiñ, digeriñ hag enrollañ _restroù"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:7
|
||||
#: ../plug-ins/script-fu/scripts/xach-effect.scm.h:9
|
||||
msgid "Highlight color"
|
||||
msgstr "Liv flamm"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:5
|
||||
msgid "Drawing _Simple Objects"
|
||||
msgstr "Tresañ er_gorennoù eeun"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:8
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:9
|
||||
msgid "Index image"
|
||||
msgstr "Skeudenn ibil"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:6
|
||||
msgid "How to Use _Dialogs"
|
||||
msgstr "Penaos arverañ ar _boestadoù emziviz"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:9
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:10
|
||||
msgid "Number of colors"
|
||||
msgstr "Niver a livioù"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:7
|
||||
msgid "Plug-in _Registry"
|
||||
msgstr "Marilh an enlugelladoù"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:10
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:13
|
||||
msgid "Remove background"
|
||||
msgstr "Dilemel an drekva"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:8
|
||||
msgid "Using _Paths"
|
||||
msgstr "Arverañ _treugoù"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:11
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:14
|
||||
msgid "Select-by-color threshold"
|
||||
msgstr "Gwehin diuzañ dre liv"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:9
|
||||
msgid "_Basic Concepts"
|
||||
msgstr "Ergrafoù dia_zez"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:12
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:15
|
||||
msgid "Shadow color"
|
||||
msgstr "Liv an disheol"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:10
|
||||
msgid "_Developer Web Site"
|
||||
msgstr "Lec'hienn internet an diorrenourion"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:15
|
||||
msgid "_Big Header..."
|
||||
msgstr "Tal_benn bras..."
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:11
|
||||
msgid "_Main Web Site"
|
||||
msgstr "L_oad internet pennañ"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-headers.scm.h:16
|
||||
msgid "_Small Header..."
|
||||
msgstr "Talbenn bi_han..."
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:12
|
||||
msgid "_Preparing your Images for the Web"
|
||||
msgstr "_Prientiñ ho skeudenn evit ar web"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:2
|
||||
msgid "Create an image of a Tube Button Label Header using the gimp.org webpage theme"
|
||||
msgstr "Krouiñ ur skeudenn eus un talbenn afell e stumm un duellenn en ur arverañ neuz pajenn web gimp.org"
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:13
|
||||
msgid "_User Manual Web Site"
|
||||
msgstr "L_ec'hienn internet dornlevr an arveriad"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:3
|
||||
msgid "Create an image of a Tube Button Label using the gimp.org webpage theme"
|
||||
msgstr "Krouiñ ur skeudenn eus ur skritell afell he stumm un duellenn en ur arverañ neuz pajenn web gimp.org"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:4
|
||||
msgid "Create an image of a second level Tube Button Label using the gimp.org webpage theme"
|
||||
msgstr "Krouiñ ur skeudenn eus un eil skritell afell he stumm un duellenn en ur arverañ neuz pajenn web gimp.org"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:5
|
||||
msgid "Create an image of a third level Tube Button Label using the gimp.org webpage theme"
|
||||
msgstr "Krouiñ ur skeudenn eus un teirvet skritell afell he stumm un duellenn en ur arverañ neuz pajenn web gimp.org"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:16
|
||||
msgid "T_ube Sub-Button Label..."
|
||||
msgstr "Skritell isafell mod 'Korzenn'..."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:19
|
||||
msgid "Tub_e Sub-Sub-Button Label..."
|
||||
msgstr "Skritell is-isafell mod 'Korzenn'..."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:20
|
||||
msgid "_General Tube Labels..."
|
||||
msgstr "Skritell hollek mod 'Korzenn'..."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gimp-labels.scm.h:21
|
||||
msgid "_Tube Button Label..."
|
||||
msgstr "Skritell afell mod 'Korzenn'..."
|
||||
#: ../plug-ins/script-fu/scripts/gimp-online.scm.h:14
|
||||
msgid "_Working with Digital Camera Photos"
|
||||
msgstr "_Labourat gant ur benveg luc'hskeudennoù niverel"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/glossy.scm.h:1
|
||||
msgid "Add gradients, patterns, shadows, and bump maps to the selected region (or alpha)"
|
||||
|
@ -1898,6 +1863,42 @@ msgstr "Sepia"
|
|||
msgid "_Old Photo..."
|
||||
msgstr "Luc'hsk. k_ozh..."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:1
|
||||
msgid "All characters in the name are either white-spaces or characters which can not appear in filenames."
|
||||
msgstr "An holl arouezennoù en anv zo pe egoroù gwenn pe arouezennoù n'hallont ket bezañ en anvioù restr."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:2
|
||||
msgid "Export the active palette as a CSS stylesheet with the color entry name as their class name, and the color itself as the color attribute"
|
||||
msgstr "Ezporzhiañ al livaoueg oberiant evel ur follennad stil gant anv enankañ al liv evel o anv rummad, hag al liv e-unan evel doareenn al liv"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:3
|
||||
msgid "Export the active palette as a PHP dictionary (name => color)"
|
||||
msgstr "Ezporzhiañ al livaoueg oberiant evel ur geriadur PHP (anv => liv)"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:4
|
||||
msgid "Export the active palette as a Python dictionary (name: color)"
|
||||
msgstr "Ezporzhiañ al livaoueg oberiant evel ur geriadur Python (anv: liv)"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:5
|
||||
msgid "Export the active palette as a java.util.Hashtable<String, Color>"
|
||||
msgstr "Ezporzhiañ al livaoueg oberiant evel ur java.util.Hashtable<Hedad, Liv>"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:6
|
||||
msgid "Folder for the output file"
|
||||
msgstr "Teuliad evit ar restr ec'hankañ"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:7
|
||||
msgid "The filename you entered is not a suitable name for a file."
|
||||
msgstr "An anv restr enanket ganeoc'h n'eo ket un anv dereat evit ur restr."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:8
|
||||
msgid "The name of the file to create (if a file with this name already exist, it will be replaced)"
|
||||
msgstr "An anv evit ar restr da grouiñ (mar bez ur restr gant an anv-mañ endeo e vo amsavet)"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/palette-export.scm.h:9
|
||||
msgid "Write all the colors in a palette to a text file, one hexadecimal value per line (no names)"
|
||||
msgstr "Skrivañ an holl livioù war al livaoueg en ur restr mod testenn, ur werzh c'hwezekredel gant pep linenn (anv ebet)"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/paste-as-brush.scm.h:1
|
||||
#: ../plug-ins/script-fu/scripts/select-to-brush.scm.h:1
|
||||
msgid "Brush name"
|
||||
|
@ -1921,7 +1922,7 @@ msgstr "Pegañ ar golverad e-barzh ur broust nevez"
|
|||
#: ../plug-ins/script-fu/scripts/paste-as-brush.scm.h:6
|
||||
#: ../plug-ins/script-fu/scripts/paste-as-pattern.scm.h:5
|
||||
msgid "There is no image data in the clipboard to paste."
|
||||
msgstr "N'eus tamm roadenn skeudenn ebet er golver da begañ."
|
||||
msgstr "N'eus roadenn skeudenn ebet er golver da begañ."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/paste-as-pattern.scm.h:2
|
||||
msgid "New _Pattern..."
|
||||
|
@ -1962,7 +1963,7 @@ msgstr "_Diarsell.."
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/predator.scm.h:1
|
||||
msgid "Add a 'Predator' effect to the selected region (or alpha)"
|
||||
msgstr "Ouzhpennañ un efed mod 'Predator' d'ar maez diuzet (pe d'an alfa)"
|
||||
msgstr "Ouzhpennañ un efed 'Predator' d'ar maez diuzet (pe d'an alfa)"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/predator.scm.h:2
|
||||
msgid "Edge amount"
|
||||
|
@ -2042,7 +2043,7 @@ msgstr "Munut e kreiz"
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/rendermap.scm.h:8
|
||||
msgid "Render _Map..."
|
||||
msgstr "Deo_uez..."
|
||||
msgstr "Glennad an deo_uez..."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/rendermap.scm.h:9
|
||||
msgid "Tile"
|
||||
|
@ -2156,7 +2157,7 @@ msgstr "Skin (%)"
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/selection-round.scm.h:4
|
||||
msgid "Round the corners of the current selection"
|
||||
msgstr "Rontaat kornioù an diuzad bremanel"
|
||||
msgstr "Rontaat kornioù an diuzad bremanel."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/selection-round.scm.h:5
|
||||
msgid "Rounded R_ectangle..."
|
||||
|
@ -2164,7 +2165,7 @@ msgstr "R_eizhkorn rontaet..."
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/slide.scm.h:1
|
||||
msgid "Add a slide-film like frame, sprocket holes, and labels to an image"
|
||||
msgstr "Ouzhpennañ ur frammad heñvel ouzh ur film, toulloù dibunañ ha skritelloù, d'ar skeudenn"
|
||||
msgstr "Ouzhpennañ ur frammad heñvel ouzh ur film, toulloù dibunañ ha skritelloù d'ar skeudenn"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/slide.scm.h:3
|
||||
msgid "Font color"
|
||||
|
@ -2216,7 +2217,7 @@ msgstr "_Boull o treiñ..."
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/spyrogimp.scm.h:1
|
||||
msgid "Add Spirographs, Epitrochoids, and Lissajous Curves to the current layer"
|
||||
msgstr "Ouzhpennañ krommennoù epitrokoidel, Lissajous ha mod spirograf d'an dreuzfollennad vremanel"
|
||||
msgstr "Ouzhpennañ krommennoù epitrokoidel, Lissajous ha mod spirograf d'an dreuzfollenn vremanel"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/spyrogimp.scm.h:2
|
||||
msgid "Airbrush"
|
||||
|
@ -2575,62 +2576,6 @@ msgstr "Hed an neudenn"
|
|||
msgid "_Weave..."
|
||||
msgstr "_Plezhañ..."
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:1
|
||||
msgid "Bookmark to the GIMP web site"
|
||||
msgstr "Merker war lec'hienn web GIMP"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:2
|
||||
msgid "Bookmark to the user manual"
|
||||
msgstr "Merker war dornlevr an arveriad"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:3
|
||||
msgid "Create and Use _Selections"
|
||||
msgstr "Krouiñ hag arverañ diu_zadoù"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:4
|
||||
msgid "Create, Open and Save _Files"
|
||||
msgstr "Krouiñ, digeriñ hag enrollañ _restroù"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:5
|
||||
msgid "Drawing _Simple Objects"
|
||||
msgstr "Tresañ er_gorennoù eeun"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:6
|
||||
msgid "How to Use _Dialogs"
|
||||
msgstr "Penaos arverañ ar _boestadoù emziviz"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:7
|
||||
msgid "Plug-in _Registry"
|
||||
msgstr "Marilh an enlugelladoù"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:8
|
||||
msgid "Using _Paths"
|
||||
msgstr "Arverañ _treugoù"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:9
|
||||
msgid "_Basic Concepts"
|
||||
msgstr "Ergrafoù dia_zez"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:10
|
||||
msgid "_Developer Web Site"
|
||||
msgstr "Load internet an diorrenourion"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:11
|
||||
msgid "_Main Web Site"
|
||||
msgstr "L_oad internet pennañ"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:12
|
||||
msgid "_Preparing your Images for the Web"
|
||||
msgstr "_Prientiñ ho skeudenn evit ar web"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:13
|
||||
msgid "_User Manual Web Site"
|
||||
msgstr "L_ec'hienn internet dornlevr an arveriad"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/web-browser.scm.h:14
|
||||
msgid "_Working with Digital Camera Photos"
|
||||
msgstr "_Labourat gant ur benveg luc'hskeudennoù niverel"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/xach-effect.scm.h:1
|
||||
msgid "Add a subtle translucent 3D effect to the selected region (or alpha)"
|
||||
msgstr "Ouzhpennañ un efed 3M treuzwelus soutil war ar maez bet diuzet (pe d'an alfa)"
|
||||
|
@ -2663,6 +2608,10 @@ msgstr "Linkañ X al lintr"
|
|||
msgid "Highlight Y offset"
|
||||
msgstr "Linkañ Y al lintr"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/xach-effect.scm.h:9
|
||||
msgid "Highlight color"
|
||||
msgstr "Liv flamm"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/xach-effect.scm.h:10
|
||||
msgid "Highlight opacity"
|
||||
msgstr "Demerez al lintr"
|
||||
|
@ -2671,3 +2620,145 @@ msgstr "Demerez al lintr"
|
|||
msgid "_Xach-Effect..."
|
||||
msgstr "Efed _Xach..."
|
||||
|
||||
#~ msgid "_Misc"
|
||||
#~ msgstr "_Liesseurt"
|
||||
#~ msgid "_Utilities"
|
||||
#~ msgstr "_Goulevioù mavek"
|
||||
#~ msgid "An_imation"
|
||||
#~ msgstr "Bl_iverezh"
|
||||
#~ msgid "_Animators"
|
||||
#~ msgstr "Bli_vourion"
|
||||
#~ msgid "_Artistic"
|
||||
#~ msgstr "_Arzel"
|
||||
#~ msgid "_Blur"
|
||||
#~ msgstr "_Ruzed"
|
||||
#~ msgid "_Decor"
|
||||
#~ msgstr "_Kinkladur"
|
||||
#~ msgid "_Effects"
|
||||
#~ msgstr "_Efedoù"
|
||||
#~ msgid "En_hance"
|
||||
#~ msgstr "Gw_ellekaat"
|
||||
#~ msgid "_Light and Shadow"
|
||||
#~ msgstr "Skêrijenn ha _disheol"
|
||||
#~ msgid "S_hadow"
|
||||
#~ msgstr "Dis_heol"
|
||||
#~ msgid "_Render"
|
||||
#~ msgstr "_Deouez"
|
||||
#~ msgid "_Alchemy"
|
||||
#~ msgstr "_Alkimiezh"
|
||||
#~ msgid "Autocrop"
|
||||
#~ msgstr "Didroc'hañ emgefreek"
|
||||
#~ msgid "Create an image of a large header using the gimp.org webpage theme"
|
||||
#~ msgstr ""
|
||||
#~ "Krouiñ ur skeudenn eus un talbenn bras en ur arverañ neuz pajenn web gimp."
|
||||
#~ "org"
|
||||
#~ msgid "Create an image of a small header using the gimp.org webpage theme"
|
||||
#~ msgstr ""
|
||||
#~ "Krouiñ ur skeudenn eus un talbenn bihan en ur arverañ neuz pajenn web "
|
||||
#~ "gimp.org"
|
||||
#~ msgid "Dark color"
|
||||
#~ msgstr "Liv teñval"
|
||||
#~ msgid "Index image"
|
||||
#~ msgstr "Skeudenn ibil"
|
||||
#~ msgid "Number of colors"
|
||||
#~ msgstr "Niver a livioù"
|
||||
#~ msgid "Remove background"
|
||||
#~ msgstr "Dilemel an drekva"
|
||||
#~ msgid "Select-by-color threshold"
|
||||
#~ msgstr "Gwehin diuzañ dre liv"
|
||||
#~ msgid "Shadow color"
|
||||
#~ msgstr "Liv an disheol"
|
||||
#~ msgid "_Big Header..."
|
||||
#~ msgstr "Tal_benn bras..."
|
||||
#~ msgid "_Small Header..."
|
||||
#~ msgstr "Talbenn bi_han..."
|
||||
#~ msgid ""
|
||||
#~ "Create an image of a Tube Button Label Header using the gimp.org webpage "
|
||||
#~ "theme"
|
||||
#~ msgstr ""
|
||||
#~ "Krouiñ ur skeudenn eus un talbenn afell e stumm un duellenn en ur arverañ "
|
||||
#~ "neuz pajenn web gimp.org"
|
||||
#~ msgid ""
|
||||
#~ "Create an image of a Tube Button Label using the gimp.org webpage theme"
|
||||
#~ msgstr ""
|
||||
#~ "Krouiñ ur skeudenn eus ur skritell afell he stumm un duellenn en ur "
|
||||
#~ "arverañ neuz pajenn web gimp.org"
|
||||
#~ msgid ""
|
||||
#~ "Create an image of a second level Tube Button Label using the gimp.org "
|
||||
#~ "webpage theme"
|
||||
#~ msgstr ""
|
||||
#~ "Krouiñ ur skeudenn eus un eil skritell afell he stumm un duellenn en ur "
|
||||
#~ "arverañ neuz pajenn web gimp.org"
|
||||
#~ msgid ""
|
||||
#~ "Create an image of a third level Tube Button Label using the gimp.org "
|
||||
#~ "webpage theme"
|
||||
#~ msgstr ""
|
||||
#~ "Krouiñ ur skeudenn eus un teirvet skritell afell he stumm un duellenn en "
|
||||
#~ "ur arverañ neuz pajenn web gimp.org"
|
||||
#~ msgid "T_ube Sub-Button Label..."
|
||||
#~ msgstr "Skritell isafell mod 'Korzenn'..."
|
||||
#~ msgid "Tub_e Sub-Sub-Button Label..."
|
||||
#~ msgstr "Skritell is-isafell mod 'Korzenn'..."
|
||||
#~ msgid "_General Tube Labels..."
|
||||
#~ msgstr "Skritell hollek mod 'Korzenn'..."
|
||||
#~ msgid "_Tube Button Label..."
|
||||
#~ msgstr "Skritell afell mod 'Korzenn'..."
|
||||
#~ msgid "Effect size (pixels * 3)"
|
||||
#~ msgstr "Ment an efed (pikselioù * 3)"
|
||||
#~ msgid "BG opacity"
|
||||
#~ msgstr "Demerez an DV"
|
||||
#~ msgid "Create a graph of the Hue, Saturation, and Value distributions"
|
||||
#~ msgstr ""
|
||||
#~ "Krouiñ ur c'hevregad eus dasparzhadurioù an arliv, ar peurvec'hiañ hag al "
|
||||
#~ "lintr"
|
||||
#~ msgid "Draw _HSV Graph..."
|
||||
#~ msgstr "Tresañ kevregad _APL..."
|
||||
#~ msgid "End X"
|
||||
#~ msgstr "Dibenn X"
|
||||
#~ msgid "End Y"
|
||||
#~ msgstr "Dibenn Y"
|
||||
#~ msgid "From top-left to bottom-right"
|
||||
#~ msgstr "Eus an tu kleiz e lein d'an tu dehou en traoñ"
|
||||
#~ msgid "Graph scale"
|
||||
#~ msgstr "Skeul ar c'hevregad"
|
||||
#~ msgid "Start X"
|
||||
#~ msgstr "Derou X"
|
||||
#~ msgid "Start Y"
|
||||
#~ msgstr "Derou Y"
|
||||
#~ msgid "Use selection bounds instead of values below"
|
||||
#~ msgstr "Arverañ bevennoù an diuzad e-lec'h re amañ dindan"
|
||||
#~ msgid "Effect size (pixels * 5)"
|
||||
#~ msgstr "Ment an efed (pikselioù * 5)"
|
||||
#~ msgid "Create a simple sphere with a drop shadow"
|
||||
#~ msgstr "Krouiñ ur pelenn eeun gant un disheol bannet"
|
||||
#~ msgid "Lighting (degrees)"
|
||||
#~ msgstr "Lintr (derezioù)"
|
||||
#~ msgid "Radius (pixels)"
|
||||
#~ msgstr "Skin (pikselioù)"
|
||||
#~ msgid "Sphere color"
|
||||
#~ msgstr "Liv ar bellenn"
|
||||
#~ msgid "_Sphere..."
|
||||
#~ msgstr "_Pellenn..."
|
||||
#~ msgid "Burst color"
|
||||
#~ msgstr "Liv tarzhañ"
|
||||
#~ msgid "Create a logo using a starburst gradient"
|
||||
#~ msgstr "Krouiñ ur siell oc'h arverañ ilrezenn ur steredenn o tarzhañ"
|
||||
#~ msgid "Effect size (pixels * 30)"
|
||||
#~ msgstr "Ment an efed (pikselioù * 30)"
|
||||
#~ msgid ""
|
||||
#~ "Fill the selected region (or alpha) with a starburst gradient and add a "
|
||||
#~ "shadow"
|
||||
#~ msgstr ""
|
||||
#~ "Leuniañ ar maez diuzet (pa an alfa) gant ilrezenn ur steredenn o tarzhañ "
|
||||
#~ "hag ouzhpennañ un disheol"
|
||||
#~ msgid "Starb_urst..."
|
||||
#~ msgstr "Tarzh St_ered..."
|
||||
#~ msgid "Effect size (pixels * 4)"
|
||||
#~ msgstr "Ment an efed (pikselioù * 4)"
|
||||
#~ msgid ""
|
||||
#~ "Fill the selected region (or alpha) with a rock-like texture, a nova "
|
||||
#~ "glow, and shadow"
|
||||
#~ msgstr ""
|
||||
#~ "Leuniañ ar maez diuzet (pe an alfa) gant ur wiadezh heñvel ouzh maen, ur "
|
||||
#~ "skleur nova ha disheol"
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ msgstr ""
|
|||
"Project-Id-Version: gimp 2.0\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2010-08-03 17:48+0200\n"
|
||||
"PO-Revision-Date: 2010-08-03 17:47+0200\n"
|
||||
"PO-Revision-Date: 2010-08-27 11:26+0200\n"
|
||||
"Last-Translator: Marco Ciampa <ciampix@libero.it>\n"
|
||||
"Language-Team: gimp.linux.it\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
|
@ -1674,7 +1674,7 @@ msgstr ""
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/gradient-bevel-logo.scm.h:3
|
||||
msgid "Bevel height (sharpness)"
|
||||
msgstr "Altezza rilievo (definizione)"
|
||||
msgstr "Altezza rilievo (nitidezza)"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/gradient-bevel-logo.scm.h:5
|
||||
#: ../plug-ins/script-fu/scripts/t-o-p-logo.scm.h:4
|
||||
|
@ -1851,7 +1851,7 @@ msgstr "Casualità"
|
|||
|
||||
#: ../plug-ins/script-fu/scripts/line-nova.scm.h:6
|
||||
msgid "Sharpness (degrees)"
|
||||
msgstr "Affilatura (gradi)"
|
||||
msgstr "Nitidezza (gradi)"
|
||||
|
||||
#: ../plug-ins/script-fu/scripts/mkbrush.scm.h:1
|
||||
msgid "Create a rectangular brush"
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
app
|
||||
data/tips
|
||||
desktop
|
||||
desktop/gimp.desktop.in
|
||||
libgimp
|
||||
libgimpbase
|
||||
libgimpconfig
|
||||
libgimpmodule
|
||||
libgimpthumb
|
||||
libgimpwidgets
|
||||
modules
|
||||
plug-ins
|
||||
tools
|
|
@ -722,15 +722,203 @@ CODE
|
|||
);
|
||||
}
|
||||
|
||||
sub image_get_layer_position {
|
||||
$blurb = 'Returns the position of the layer in the layer stack.';
|
||||
sub image_get_item_position {
|
||||
$blurb = 'Returns the position of the item in its level of its item tree.';
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure determines the position of the specified layer in the
|
||||
images layer stack. If the layer doesn't exist in the image, an error
|
||||
is returned.
|
||||
This procedure determines the position of the specified item in its
|
||||
level in its item tree in the image. If the item doesn't exist in the
|
||||
image, or the item is not part of an item tree, an error is returned.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
desc => 'The image' },
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item' }
|
||||
);
|
||||
|
||||
@outargs = (
|
||||
{ name => 'position', type => 'int32',
|
||||
desc => "The position of the item in its level in the item tree" }
|
||||
);
|
||||
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
if (gimp_pdb_item_is_in_tree (item, image, FALSE, error))
|
||||
position = gimp_item_get_index (item);
|
||||
else
|
||||
success = FALSE;
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub image_raise_item {
|
||||
$blurb = "Raise the specified item in its level in its item tree";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure raises the specified item one step in the item tree.
|
||||
The procecure call will fail if there is no item above it.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
desc => 'The image' },
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item to raise' }
|
||||
);
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
if (gimp_pdb_item_is_in_tree (item, image, FALSE, error))
|
||||
success = gimp_image_raise_item (image, item, error);
|
||||
else
|
||||
success = FALSE;
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub image_lower_item {
|
||||
$blurb = "Lower the specified item in its level in its item tree";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure lowers the specified item one step in the item tree.
|
||||
The procecure call will fail if there is no item below it.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
desc => 'The image' },
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item to lower' }
|
||||
);
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
if (gimp_pdb_item_is_in_tree (item, image, FALSE, error))
|
||||
success = gimp_image_lower_item (image, item, error);
|
||||
else
|
||||
success = FALSE;
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub image_raise_item_to_top {
|
||||
$blurb = <<'BLURB';
|
||||
Raise the specified item to the top of its level in its item tree
|
||||
BLURB
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure raises the specified item to top of its level in the
|
||||
item tree. It will not move the item if there is no item above it.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
desc => 'The image' },
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item to raise to top' }
|
||||
);
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
if (gimp_pdb_item_is_in_tree (item, image, FALSE, error))
|
||||
success = gimp_image_raise_item_to_top (image, item);
|
||||
else
|
||||
success = FALSE;
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub image_lower_item_to_bottom {
|
||||
$blurb = <<'BLURB';
|
||||
Lower the specified item to the bottom of its level in its item tree
|
||||
BLURB
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure lowers the specified item to bottom of its level in the
|
||||
item tree. It will not move the layer if there is no layer below it.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
desc => 'The image' },
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item to lower to bottom' }
|
||||
);
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
if (gimp_pdb_item_is_in_tree (item, image, FALSE, error))
|
||||
success = gimp_image_lower_item_to_bottom (image, item);
|
||||
else
|
||||
success = FALSE;
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub image_reorder_item {
|
||||
$blurb = "Reorder the specified item within its item tree";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure reorders the specified item within its item tree.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
desc => 'The image' },
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item to reorder' },
|
||||
{ name => 'parent', type => 'item',
|
||||
desc => 'The new parent item' },
|
||||
{ name => 'position', type => 'int32',
|
||||
desc => 'The new position of the item' }
|
||||
);
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
if (gimp_pdb_item_is_in_tree (item, image, FALSE, error) &&
|
||||
(parent == NULL ||
|
||||
(gimp_pdb_item_is_in_same_tree (item, parent, image, error) &&
|
||||
gimp_pdb_item_is_group (parent, error) &&
|
||||
gimp_pdb_item_is_not_ancestor (item, parent, error))))
|
||||
{
|
||||
success = gimp_image_reorder_item (image, item, parent, position,
|
||||
TRUE, NULL);
|
||||
}
|
||||
else
|
||||
success = FALSE;
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub image_get_layer_position {
|
||||
&std_pdb_deprecated('gimp-image-get-item-position');
|
||||
&simon_pdb_misc('2006', '2.4');
|
||||
|
||||
@inargs = (
|
||||
|
@ -761,14 +949,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_raise_layer {
|
||||
$blurb = "Raise the specified layer in the image's layer stack";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure raises the specified layer one step in the existing layer stack.
|
||||
The procecure call will fail if there is no layer above it.
|
||||
HELP
|
||||
|
||||
&std_pdb_misc;
|
||||
&std_pdb_deprecated('gimp-image-raise-item');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
|
@ -790,14 +971,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_lower_layer {
|
||||
$blurb = "Lower the specified layer in the image's layer stack";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure lowers the specified layer one step in the existing layer stack.
|
||||
The procecure call will fail if there is no layer below it.
|
||||
HELP
|
||||
|
||||
&std_pdb_misc;
|
||||
&std_pdb_deprecated('gimp-image-lower-item');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
|
@ -819,17 +993,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_raise_layer_to_top {
|
||||
$blurb = <<'BLURB';
|
||||
Raise the specified layer in the image's layer stack to top of stack
|
||||
BLURB
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure raises the specified layer to top of the existing layer stack.
|
||||
It will not move the layer if there is no layer above it.
|
||||
HELP
|
||||
|
||||
&wolfgang_pdb_misc('1998');
|
||||
$author .= ", Sven Neumann";
|
||||
&std_pdb_deprecated('gimp-image-raise-item-to-top');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
|
@ -851,17 +1015,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_lower_layer_to_bottom {
|
||||
$blurb = <<'BLURB';
|
||||
Lower the specified layer in the image's layer stack to bottom of stack
|
||||
BLURB
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure lowers the specified layer to bottom of the existing layer stack.
|
||||
It will not move the layer if there is no layer below it.
|
||||
HELP
|
||||
|
||||
&wolfgang_pdb_misc('1998');
|
||||
$author .= ", Sven Neumann";
|
||||
&std_pdb_deprecated('gimp-image-lower-item-to-bottom');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
|
@ -1128,14 +1282,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_get_channel_position {
|
||||
$blurb = 'Returns the position of the channel in the channel stack.';
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure determines the position of the specified channel in
|
||||
the images channel stack. If the channel doesn't exist in the image,
|
||||
an error is returned.
|
||||
HELP
|
||||
|
||||
&std_pdb_deprecated('gimp-image-get-item-position');
|
||||
&simon_pdb_misc('2006', '2.4');
|
||||
|
||||
@inargs = (
|
||||
|
@ -1166,15 +1313,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_raise_channel {
|
||||
$blurb = "Raise the specified channel in the image's channel stack";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure raises the specified channel one step in the existing
|
||||
channel stack. The procecure call will fail if there is no channel
|
||||
above it.
|
||||
HELP
|
||||
|
||||
&std_pdb_misc;
|
||||
&std_pdb_deprecated('gimp-image-raise-item');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
|
@ -1196,15 +1335,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_lower_channel {
|
||||
$blurb = "Lower the specified channel in the image's channel stack";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure lowers the specified channel one step in the existing
|
||||
channel stack. The procecure call will fail if there is no channel
|
||||
below it.
|
||||
HELP
|
||||
|
||||
&std_pdb_misc;
|
||||
&std_pdb_deprecated('gimp-image-lower-item');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'image', type => 'image',
|
||||
|
@ -1358,14 +1489,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_get_vectors_position {
|
||||
$blurb = 'Returns the position of the vectors object in the vectors objects stack.';
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure determines the position of the specified vectors object in the
|
||||
images vectors object stack. If the vectors object doesn't exist in the image,
|
||||
an error is returned.
|
||||
HELP
|
||||
|
||||
&std_pdb_deprecated('gimp-image-get-item-position');
|
||||
&simon_pdb_misc('2006', '2.4');
|
||||
|
||||
@inargs = (
|
||||
|
@ -1396,14 +1520,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_raise_vectors {
|
||||
$blurb = "Raise the specified vectors in the image's vectors stack";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure raises the specified vectors one step in the existing
|
||||
vectors stack. The procecure call will fail if there is no vectors
|
||||
above it.
|
||||
HELP
|
||||
|
||||
&std_pdb_deprecated('gimp-image-raise-item');
|
||||
&simon_pdb_misc('2005', '2.4');
|
||||
|
||||
@inargs = (
|
||||
|
@ -1426,14 +1543,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_lower_vectors {
|
||||
$blurb = "Lower the specified vectors in the image's vectors stack";
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure lowers the specified vectors one step in the existing
|
||||
vectors stack. The procecure call will fail if there is no vectors
|
||||
below it.
|
||||
HELP
|
||||
|
||||
&std_pdb_deprecated('gimp-image-lower-item');
|
||||
&simon_pdb_misc('2005', '2.4');
|
||||
|
||||
@inargs = (
|
||||
|
@ -1456,16 +1566,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_raise_vectors_to_top {
|
||||
$blurb = <<'BLURB';
|
||||
Raise the specified vectors in the image's vectors stack to top of stack
|
||||
BLURB
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure raises the specified vectors to top of the existing
|
||||
vectors stack. It will not move the vectors if there is no vectors
|
||||
above it.
|
||||
HELP
|
||||
|
||||
&std_pdb_deprecated('gimp-image-raise-item-to-top');
|
||||
&simon_pdb_misc('2005', '2.4');
|
||||
|
||||
@inargs = (
|
||||
|
@ -1488,16 +1589,7 @@ CODE
|
|||
}
|
||||
|
||||
sub image_lower_vectors_to_bottom {
|
||||
$blurb = <<'BLURB';
|
||||
Lower the specified vectors in the image's vectors stack to bottom of stack
|
||||
BLURB
|
||||
|
||||
$help = <<'HELP';
|
||||
This procedure lowers the specified vectors to bottom of the existing
|
||||
vectors stack. It will not move the vectors if there is no vectors
|
||||
below it.
|
||||
HELP
|
||||
|
||||
&std_pdb_deprecated('gimp-image-lower-item-to-bottom');
|
||||
&simon_pdb_misc('2005', '2.4');
|
||||
|
||||
@inargs = (
|
||||
|
@ -2725,13 +2817,17 @@ CODE
|
|||
image_pick_color
|
||||
image_pick_correlate_layer
|
||||
image_add_layer image_remove_layer
|
||||
image_add_channel image_remove_channel
|
||||
image_add_vectors image_remove_vectors
|
||||
image_get_item_position
|
||||
image_raise_item image_lower_item
|
||||
image_raise_item_to_top image_lower_item_to_bottom
|
||||
image_reorder_item
|
||||
image_get_layer_position
|
||||
image_raise_layer image_lower_layer
|
||||
image_raise_layer_to_top image_lower_layer_to_bottom
|
||||
image_add_channel image_remove_channel
|
||||
image_get_channel_position
|
||||
image_raise_channel image_lower_channel
|
||||
image_add_vectors image_remove_vectors
|
||||
image_get_vectors_position
|
||||
image_raise_vectors image_lower_vectors
|
||||
image_raise_vectors_to_top image_lower_vectors_to_bottom
|
||||
|
@ -2756,7 +2852,7 @@ CODE
|
|||
image_get_channel_by_tattoo
|
||||
image_get_vectors_by_tattoo);
|
||||
|
||||
%exports = (app => [@procs], lib => [@procs[0..46,49..77]]);
|
||||
%exports = (app => [@procs], lib => [@procs[0..52,55..83]]);
|
||||
|
||||
$desc = 'Image';
|
||||
$doc_title = 'gimpimage';
|
||||
|
|
|
@ -281,6 +281,117 @@ CODE
|
|||
);
|
||||
}
|
||||
|
||||
sub item_is_group {
|
||||
$blurb = 'Returns whether the item is a group item.';
|
||||
|
||||
$help = <<HELP;
|
||||
This procedure returns TRUE if the specified item is a group item which
|
||||
can have children.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item' }
|
||||
);
|
||||
|
||||
@outargs = (
|
||||
{ name => 'group', type => 'boolean',
|
||||
desc => 'TRUE if the item is a group, FALSE otherwise' }
|
||||
);
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
group = (gimp_viewable_get_children (GIMP_VIEWABLE (item)) != NULL);
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub item_get_parent {
|
||||
$blurb = "Returns the item's parent item.";
|
||||
|
||||
$help = <<HELP;
|
||||
This procedure returns the item's parent item, if any.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item' }
|
||||
);
|
||||
|
||||
@outargs = (
|
||||
{ name => 'parent', type => 'item',
|
||||
desc => "The item's parent item" }
|
||||
);
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
parent = gimp_item_get_parent (item);
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub item_get_children {
|
||||
$blurb = "Returns the item's list of children.";
|
||||
|
||||
$help = <<HELP;
|
||||
This procedure returns the list of items which are children of the specified
|
||||
item. The order is topmost to bottommost.
|
||||
HELP
|
||||
|
||||
&mitch_pdb_misc('2010', '2.8');
|
||||
|
||||
@inargs = (
|
||||
{ name => 'item', type => 'item',
|
||||
desc => 'The item' }
|
||||
);
|
||||
|
||||
@outargs = (
|
||||
{ name => 'child_ids', type => 'int32array',
|
||||
desc => "The item's list of children",
|
||||
array => { name => 'num_children',
|
||||
desc => "The item's number of children" } }
|
||||
);
|
||||
|
||||
%invoke = (
|
||||
code => <<'CODE'
|
||||
{
|
||||
GimpContainer *children = gimp_viewable_get_children (GIMP_VIEWABLE (item));
|
||||
|
||||
if (children)
|
||||
{
|
||||
num_children = gimp_container_get_n_children (children);
|
||||
|
||||
if (num_children)
|
||||
{
|
||||
GList *list;
|
||||
gint i;
|
||||
|
||||
child_ids = g_new (gint32, num_children);
|
||||
|
||||
for (list = GIMP_LIST (children)->list, i = 0;
|
||||
list;
|
||||
list = g_list_next (list), i++)
|
||||
{
|
||||
child_ids[i] = gimp_item_get_ID (GIMP_ITEM (list->data));
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
success = FALSE;
|
||||
|
||||
}
|
||||
CODE
|
||||
);
|
||||
}
|
||||
|
||||
sub item_get_name {
|
||||
$blurb = "Get the name of the specified item.";
|
||||
|
||||
|
@ -544,6 +655,7 @@ CODE
|
|||
}
|
||||
|
||||
@headers = qw("core/gimplayermask.h"
|
||||
"core/gimplist.h"
|
||||
"core/gimpselection.h"
|
||||
"text/gimptextlayer.h"
|
||||
"vectors/gimpvectors.h"
|
||||
|
@ -559,6 +671,9 @@ CODE
|
|||
item_is_layer_mask
|
||||
item_is_selection
|
||||
item_is_vectors
|
||||
item_is_group
|
||||
item_get_parent
|
||||
item_get_children
|
||||
item_get_name item_set_name
|
||||
item_get_visible item_set_visible
|
||||
item_get_linked item_set_linked
|
||||
|
|
Loading…
Reference in New Issue