mirror of
https://gitlab.gnome.org/GNOME/gimp.git
synced 2025-07-03 17:33:25 +00:00

* libgimpwidgets/gimppreview.c * libgimpwidgets/gimppreview.h: split this widget into itself (more abstract now) and ... * libgimpwidgets/gimpscrolledpreview.c * libgimpwidgets/gimpscrolledpreview.h: this widget which also have some scrollbars and a nagivation preview. * libgimpwidgets/Makefile.am * libgimpwidgets/gimpwidgetstypes.h: changed accordingly. * libgimp/gimpaspectpreview.c * libgimp/gimpaspectpreview.h: Added this widget, derived from GimpPreview, which has always the same ratio has the given drawable. This widget has almost the same api as GimpDrawablePreview, and is useful for plug-ins that show the whole (scaled) drawable in their preview. * libgimp/gimpdrawablepreview.c * libgimp/gimpdrawablepreview.h: GimpDrawablePreview is now derived from GimpScrolledPreview. * libgimp/Makefile.am * libgimp/gimpui.h * libgimp/gimpuitypes.h: changed accordingly. * plug-ins/common/plasma.c: use a GimpAspectPreview. * plug-ins/common/bumpmap.c * plug-ins/common/cartoon.c * plug-ins/common/deinterlace.c * plug-ins/common/despeckle.c * plug-ins/common/dog.c * plug-ins/common/edge.c * plug-ins/common/engrave.c * plug-ins/common/exchange.c * plug-ins/common/gauss.c * plug-ins/common/grid.c * plug-ins/common/mblur.c * plug-ins/common/neon.c * plug-ins/common/noisify.c * plug-ins/common/oilify.c * plug-ins/common/photocopy.c * plug-ins/common/sel_gauss.c * plug-ins/common/sharpen.c * plug-ins/common/shift.c * plug-ins/common/sobel.c * plug-ins/common/softglow.c * plug-ins/common/spread.c * plug-ins/common/struc.c * plug-ins/common/unsharp.c * plug-ins/common/wind.c: use gimp_scrolled_preview_get_position instead of gimp_preview_get_position.
83 lines
2.8 KiB
C
83 lines
2.8 KiB
C
/* LIBGIMP - The GIMP Library
|
|
* Copyright (C) 1995-1997 Peter Mattis and Spencer Kimball
|
|
*
|
|
* gimpscrolledpreview.h
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License as published by the Free Software Foundation; either
|
|
* version 2 of the License, or (at your option) any later version.
|
|
*
|
|
* This library 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
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the
|
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
* Boston, MA 02111-1307, USA.
|
|
*/
|
|
|
|
#ifndef __GIMP_SCROLLED_PREVIEW_H__
|
|
#define __GIMP_SCROLLED_PREVIEW_H__
|
|
|
|
#include "gimppreview.h"
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
|
|
/* For information look into the C source or the html documentation */
|
|
|
|
|
|
#define GIMP_TYPE_SCROLLED_PREVIEW (gimp_scrolled_preview_get_type ())
|
|
#define GIMP_SCROLLED_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_SCROLLED_PREVIEW, GimpScrolledPreview))
|
|
#define GIMP_SCROLLED_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_SCROLLED_PREVIEW, GimpScrolledPreviewClass))
|
|
#define GIMP_IS_SCROLLED_PREVIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_SCROLLED_PREVIEW))
|
|
#define GIMP_IS_SCROLLED_PREVIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), GIMP_TYPE_SCROLLED_PREVIEW))
|
|
#define GIMP_SCROLLED_PREVIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GIMP_TYPE_SCROLLED_PREVIEW, GimpScrolledPreviewClass))
|
|
|
|
|
|
typedef struct _GimpScrolledPreviewClass GimpScrolledPreviewClass;
|
|
|
|
struct _GimpScrolledPreview
|
|
{
|
|
GimpPreview parent_instance;
|
|
|
|
/*< protected >*/
|
|
GtkWidget *hscr;
|
|
GtkWidget *vscr;
|
|
GtkWidget *nav_icon;
|
|
GtkWidget *nav_popup;
|
|
GdkCursor *cursor_move;
|
|
GdkGC *nav_gc;
|
|
|
|
/*< private >*/
|
|
gint xoff, yoff;
|
|
gint drag_x, drag_y;
|
|
gint drag_xoff, drag_yoff;
|
|
|
|
gboolean in_drag;
|
|
};
|
|
|
|
struct _GimpScrolledPreviewClass
|
|
{
|
|
GimpPreviewClass parent_class;
|
|
|
|
/* virtuals */
|
|
void (* draw_thumb) (GimpScrolledPreview *preview,
|
|
GimpPreviewArea *area,
|
|
gint width,
|
|
gint height);
|
|
};
|
|
|
|
|
|
GType gimp_scrolled_preview_get_type (void) G_GNUC_CONST;
|
|
|
|
void gimp_scrolled_preview_get_position (GimpScrolledPreview *preview,
|
|
gint *x,
|
|
gint *y);
|
|
|
|
G_END_DECLS
|
|
|
|
#endif /* __GIMP_SCROLLED_PREVIEW_H__ */
|