~ubuntu-branches/ubuntu/jaunty/gimp/jaunty-security

« back to all changes in this revision

Viewing changes to app/widgets/gimpviewrendererimage.c

  • Committer: Bazaar Package Importer
  • Author(s): Daniel Holbach
  • Date: 2007-05-02 16:33:03 UTC
  • mfrom: (1.1.4 upstream)
  • Revision ID: james.westby@ubuntu.com-20070502163303-bvzhjzbpw8qglc4y
Tags: 2.3.16-1ubuntu1
* Resynchronized with Debian, remaining Ubuntu changes:
  - debian/rules: i18n magic.
* debian/control.in:
  - Maintainer: Ubuntu Core Developers <ubuntu-devel@lists.ubuntu.com>
* debian/patches/02_help-message.patch,
  debian/patches/03_gimp.desktop.in.in.patch,
  debian/patches/10_dont_show_wizard.patch: updated.
* debian/patches/04_composite-signedness.patch,
  debian/patches/05_add-letter-spacing.patch: dropped, used upstream.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* The GIMP -- an image manipulation program
 
1
/* GIMP - The GNU Image Manipulation Program
2
2
 * Copyright (C) 1995 Spencer Kimball and Peter Mattis
3
3
 *
4
4
 * gimpviewrendererimage.c
34
34
#include "gimpviewrendererimage.h"
35
35
 
36
36
 
37
 
static void   gimp_view_renderer_image_class_init (GimpViewRendererImageClass *klass);
38
 
static void   gimp_view_renderer_image_init       (GimpViewRendererImage      *renderer);
39
 
 
40
 
static void   gimp_view_renderer_image_render     (GimpViewRenderer *renderer,
41
 
                                                   GtkWidget        *widget);
42
 
 
43
 
 
44
 
static GimpViewRendererClass *parent_class = NULL;
45
 
 
46
 
 
47
 
GType
48
 
gimp_view_renderer_image_get_type (void)
49
 
{
50
 
  static GType renderer_type = 0;
51
 
 
52
 
  if (! renderer_type)
53
 
    {
54
 
      static const GTypeInfo renderer_info =
55
 
      {
56
 
        sizeof (GimpViewRendererImageClass),
57
 
        NULL,           /* base_init */
58
 
        NULL,           /* base_finalize */
59
 
        (GClassInitFunc) gimp_view_renderer_image_class_init,
60
 
        NULL,           /* class_finalize */
61
 
        NULL,           /* class_data */
62
 
        sizeof (GimpViewRendererImage),
63
 
        0,              /* n_preallocs */
64
 
        (GInstanceInitFunc) gimp_view_renderer_image_init,
65
 
      };
66
 
 
67
 
      renderer_type = g_type_register_static (GIMP_TYPE_VIEW_RENDERER,
68
 
                                              "GimpViewRendererImage",
69
 
                                              &renderer_info, 0);
70
 
    }
71
 
 
72
 
  return renderer_type;
73
 
}
 
37
static void   gimp_view_renderer_image_render (GimpViewRenderer *renderer,
 
38
                                               GtkWidget        *widget);
 
39
 
 
40
 
 
41
G_DEFINE_TYPE (GimpViewRendererImage, gimp_view_renderer_image,
 
42
               GIMP_TYPE_VIEW_RENDERER)
 
43
 
 
44
#define parent_class gimp_view_renderer_image_parent_class
 
45
 
74
46
 
75
47
static void
76
48
gimp_view_renderer_image_class_init (GimpViewRendererImageClass *klass)
77
49
{
78
50
  GimpViewRendererClass *renderer_class = GIMP_VIEW_RENDERER_CLASS (klass);
79
51
 
80
 
  parent_class = g_type_class_peek_parent (klass);
81
 
 
82
52
  renderer_class->render = gimp_view_renderer_image_render;
83
53
}
84
54
 
93
63
                                 GtkWidget        *widget)
94
64
{
95
65
  GimpViewRendererImage *rendererimage = GIMP_VIEW_RENDERER_IMAGE (renderer);
96
 
  GimpImage             *gimage;
 
66
  GimpImage             *image;
97
67
  gint                   view_width;
98
68
  gint                   view_height;
99
69
  gboolean               scaling_up;
100
70
  TempBuf               *render_buf = NULL;
101
71
 
102
 
  gimage = GIMP_IMAGE (renderer->viewable);
 
72
  image = GIMP_IMAGE (renderer->viewable);
103
73
 
104
 
  gimp_viewable_calc_preview_size (gimage->width,
105
 
                                   gimage->height,
 
74
  gimp_viewable_calc_preview_size (image->width,
 
75
                                   image->height,
106
76
                                   renderer->width,
107
77
                                   renderer->height,
108
78
                                   renderer->dot_for_dot,
109
 
                                   gimage->xresolution,
110
 
                                   gimage->yresolution,
 
79
                                   image->xresolution,
 
80
                                   image->yresolution,
111
81
                                   &view_width,
112
82
                                   &view_height,
113
83
                                   &scaling_up);
117
87
      TempBuf *temp_buf;
118
88
 
119
89
      temp_buf = gimp_viewable_get_new_preview (renderer->viewable,
120
 
                                                gimage->width, gimage->height);
 
90
                                                renderer->context,
 
91
                                                image->width, image->height);
121
92
 
122
93
      if (temp_buf)
123
94
        {
129
100
  else
130
101
    {
131
102
      render_buf = gimp_viewable_get_new_preview (renderer->viewable,
 
103
                                                  renderer->context,
132
104
                                                  view_width,
133
105
                                                  view_height);
134
106
    }
157
129
 
158
130
      if (rendererimage->channel != -1)
159
131
        component_index =
160
 
          gimp_image_get_component_index (gimage, rendererimage->channel);
 
132
          gimp_image_get_component_index (image, rendererimage->channel);
161
133
 
162
134
      gimp_view_renderer_render_buffer (renderer, render_buf,
163
135
                                        component_index,