[gthumb] simplified the code in gth_cell_renderer_thumbnail_get_size
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gthumb] simplified the code in gth_cell_renderer_thumbnail_get_size
- Date: Thu, 3 Nov 2011 17:07:29 +0000 (UTC)
commit 3e38fab896baa20a65f13580e29e3b31e24078b8
Author: Paolo Bacchilega <paobac src gnome org>
Date: Thu Nov 3 17:42:36 2011 +0100
simplified the code in gth_cell_renderer_thumbnail_get_size
gthumb/gth-cell-renderer-thumbnail.c | 55 ++++++++--------------------------
1 files changed, 13 insertions(+), 42 deletions(-)
---
diff --git a/gthumb/gth-cell-renderer-thumbnail.c b/gthumb/gth-cell-renderer-thumbnail.c
index 360f5d4..ea7307d 100644
--- a/gthumb/gth-cell-renderer-thumbnail.c
+++ b/gthumb/gth-cell-renderer-thumbnail.c
@@ -165,44 +165,18 @@ gth_cell_renderer_thumbnail_get_size (GtkCellRenderer *cell,
int *height)
{
GthCellRendererThumbnail *self;
- int image_width;
- int image_height;
- int calc_width;
- int calc_height;
int xpad;
int ypad;
+ int calc_width;
+ int calc_height;
self = (GthCellRendererThumbnail *) cell;
- if (self->priv->thumbnail != NULL) {
- image_width = gdk_pixbuf_get_width (self->priv->thumbnail);
- image_height = gdk_pixbuf_get_height (self->priv->thumbnail);
- }
- else {
- image_width = 0;
- image_height = 0;
- }
-
gtk_cell_renderer_get_padding (cell, &xpad, &ypad);
-
- if (self->priv->is_icon
- || self->priv->fixed_size
- || (self->priv->thumbnail == NULL)
- || ((image_width < self->priv->size) && (image_height < self->priv->size)))
- {
- calc_width = (int) (xpad * 2) + (THUMBNAIL_BORDER * 2) + self->priv->size;
- calc_height = (int) (ypad * 2) + (THUMBNAIL_BORDER * 2) + self->priv->size;
- }
- else {
- calc_width = (int) (xpad * 2) + (THUMBNAIL_BORDER * 2) + self->priv->size;
- calc_height = (int) (ypad * 2) + (THUMBNAIL_BORDER * 2) + self->priv->size;
- }
-
- if (width != NULL)
- *width = calc_width;
-
- if (height != NULL)
- *height = calc_height;
+ calc_width = (int) (xpad * 2) + (THUMBNAIL_BORDER * 2) + self->priv->size;
+ calc_height = (int) (ypad * 2) + (THUMBNAIL_BORDER * 2) + self->priv->size;
+ if (width != NULL) *width = calc_width;
+ if (height != NULL) *height = calc_height;
if (cell_area != NULL) {
float xalign;
@@ -210,15 +184,12 @@ gth_cell_renderer_thumbnail_get_size (GtkCellRenderer *cell,
gtk_cell_renderer_get_alignment (cell, &xalign, &yalign);
- if (x_offset != NULL) {
- *x_offset = xalign * (cell_area->width - calc_width);
- *x_offset = MAX (*x_offset, 0);
- }
-
- if (y_offset != NULL) {
- *y_offset = yalign * (cell_area->height - calc_height);
- *y_offset = MAX (*y_offset, 0);
- }
+ if (x_offset != NULL) *x_offset = MAX (xalign * (cell_area->width - calc_width), 0);
+ if (y_offset != NULL) *y_offset = MAX (yalign * (cell_area->height - calc_height), 0);
+ }
+ else {
+ if (x_offset) *x_offset = 0;
+ if (y_offset) *y_offset = 0;
}
}
@@ -308,7 +279,7 @@ gth_cell_renderer_thumbnail_render (GtkCellRenderer *cell,
_gdk_rgba_darker (&background_color, &lighter_color);
_gdk_rgba_darker (&lighter_color, &darker_color);
- if (self->priv->fixed_size && _g_mime_type_is_image (gth_file_data_get_mime_type (self->priv->file))) {
+ if (self->priv->fixed_size && (self->priv->file != NULL) && _g_mime_type_is_image (gth_file_data_get_mime_type (self->priv->file))) {
frame_rect.width = self->priv->size; /*image_rect.width*/
frame_rect.height = self->priv->size; /*image_rect.height*/
frame_rect.x = thumb_rect.x + (thumb_rect.width - frame_rect.width) * .5; /*cell_area->x + xpad + THUMBNAIL_BORDER - 1;*/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]