Update of /cvsroot/ufraw/ufraw
In directory sfp-cvsdas-2.v30.ch3.sourceforge.com:/tmp/cvs-serv28055
Modified Files:
configure.ac dcraw.h dcraw_api.h dcraw_indi.c uf_glib.h
uf_gtk.cc uf_gtk.h ufobject.h ufraw-gimp.c ufraw.c
ufraw_chooser.c ufraw_exiv2.cc ufraw_lens_ui.c
ufraw_lensfun.cc ufraw_preview.c ufraw_ufraw.c
Log Message:
Update version to 0.18. Update version requirements of various libraries. Clean
up code.
Index: dcraw_api.h
===================================================================
RCS file: /cvsroot/ufraw/ufraw/dcraw_api.h,v
retrieving revision 1.41
retrieving revision 1.42
diff -u -d -r1.41 -r1.42
--- dcraw_api.h 23 Feb 2010 19:36:43 -0000 1.41
+++ dcraw_api.h 5 Apr 2010 14:30:18 -0000 1.42
@@ -16,7 +16,7 @@
#ifndef _DCRAW_API_H
#define _DCRAW_API_H
-#ifdef __cplusplus
+#ifdef __cplusplus
extern "C" {
#endif
@@ -82,7 +82,7 @@
void dcraw_message(void *dcraw, int code, char *format, ...);
-#ifdef __cplusplus
+#ifdef __cplusplus
}
#endif
Index: ufraw_chooser.c
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufraw_chooser.c,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -d -r1.31 -r1.32
--- ufraw_chooser.c 23 Jan 2010 05:00:58 -0000 1.31
+++ ufraw_chooser.c 5 Apr 2010 14:30:18 -0000 1.32
@@ -15,13 +15,11 @@
#include <string.h>
#include <glib/gi18n.h>
-#if GTK_CHECK_VERSION(2,6,0)
void ufraw_chooser_toggle(GtkToggleButton *button, GtkFileChooser *fileChooser)
{
gtk_file_chooser_set_show_hidden(fileChooser,
gtk_toggle_button_get_active(button));
}
-#endif
/* Create a GtkFileChooser dialog for selecting raw files */
GtkFileChooser *ufraw_raw_chooser(conf_data *conf,
@@ -45,7 +43,7 @@
GDK_WINDOW_TYPE_HINT_NORMAL);
else
ufraw_focus(fileChooser, TRUE);
- uf_window_set_icon_name(GTK_WINDOW(fileChooser), "ufraw");
+ gtk_window_set_icon_name(GTK_WINDOW(fileChooser), "ufraw");
ufraw_message(UFRAW_SET_PARENT, (char *)fileChooser);
if (defPath!=NULL) {
@@ -113,14 +111,12 @@
gtk_file_filter_add_pattern(filter, "*");
gtk_file_chooser_add_filter(fileChooser, filter);
-#if GTK_CHECK_VERSION(2,6,0)
gtk_file_chooser_set_show_hidden(fileChooser, FALSE);
GtkWidget *button = gtk_check_button_new_with_label(_("Show hidden
files"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), FALSE);
g_signal_connect(G_OBJECT(button), "toggled",
G_CALLBACK(ufraw_chooser_toggle), fileChooser);
gtk_file_chooser_set_extra_widget(fileChooser, button);
-#endif
if (multiple)
gtk_file_chooser_set_select_multiple(fileChooser, TRUE);
/* Add shortcut to folder of last opened file */
Index: ufraw_exiv2.cc
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufraw_exiv2.cc,v
retrieving revision 1.56
retrieving revision 1.57
diff -u -d -r1.56 -r1.57
--- ufraw_exiv2.cc 26 Feb 2010 03:30:10 -0000 1.56
+++ ufraw_exiv2.cc 5 Apr 2010 14:30:18 -0000 1.57
@@ -16,9 +16,7 @@
#ifdef HAVE_EXIV2
#include <exiv2/image.hpp>
-#if EXIV2_TEST_VERSION(0,18,1)
#include <exiv2/easyaccess.hpp>
-#endif
#include <exiv2/exif.hpp>
#include <sstream>
#include <cassert>
@@ -30,14 +28,7 @@
static void uf_strlcpy_to_utf8(char *dest, size_t dest_max,
Exiv2::ExifData::const_iterator pos, Exiv2::ExifData& exifData)
{
-#if EXIV2_TEST_VERSION(0,18,0)
std::string str = pos->print(&exifData);
-#else
- (void)exifData;
- std::stringstream strm;
- strm << *pos;
- std::string str = strm.str();
-#endif
char *s = g_locale_to_utf8(str.c_str(), str.length(),
NULL, NULL, NULL);
@@ -104,55 +95,18 @@
uf->conf->aperture = pos->toFloat ();
}
/* Read ISO speed */
-#if EXIV2_TEST_VERSION(0,18,1)
if ( (pos=Exiv2::isoSpeed(exifData)) != exifData.end() ) {
uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
}
-#else
- if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Photo.ISOSpeedRatings")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey(
- "Exif.CanonSi.ISOSpeed"))) != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Nikon1.ISOSpeed")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Nikon2.ISOSpeed")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Nikon3.ISOSpeed")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(
- Exiv2::ExifKey("Exif.MinoltaCsNew.ISOSpeed")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(
- Exiv2::ExifKey("Exif.MinoltaCsOld.ISOSpeed")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(
- Exiv2::ExifKey("Exif.MinoltaCs5D.ISOSpeed")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey(
- "Exif.MinoltaCs7D.ISOSpeed")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->isoText, max_name, pos, exifData);
- }
-#endif
/* Read focal length */
if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Photo.FocalLength")))
!= exifData.end() ) {
uf_strlcpy_to_utf8(uf->conf->focalLenText, max_name, pos, exifData);
uf->conf->focal_len = pos->toFloat ();
-#if EXIV2_TEST_VERSION(0,18,1)
} else if ( (pos=exifData.findKey(Exiv2::ExifKey(
"Exif.Canon.FocalLength"))) != exifData.end() ) {
uf_strlcpy_to_utf8(uf->conf->focalLenText, max_name, pos, exifData);
uf->conf->focal_len = pos->toFloat ();
-#endif
}
/* Read focal length in 35mm equivalent */
if ( (pos=exifData.findKey(Exiv2::ExifKey(
@@ -161,40 +115,9 @@
uf_strlcpy_to_utf8(uf->conf->focalLen35Text, max_name, pos, exifData);
}
/* Read full lens name */
-#if EXIV2_TEST_VERSION(0,18,1)
if ( (pos=Exiv2::lensName(exifData)) != exifData.end() ) {
uf_strlcpy_to_utf8(uf->conf->lensText, max_name, pos, exifData);
}
-#else
- if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Nikon3.LensData")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->lensText, max_name, pos, exifData);
- /* Read short lens name if full lens name if not defined */
- if ( isdigit(uf->conf->lensText[0]) ) {
- ufraw_message(UFRAW_SET_LOG,
- "Value of EXIF tag 'Exif.Nikon3.LensData' is not defined. "
- "Reading 'Exif.Nikon3.Lens'.\n");
- if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Nikon3.Lens")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->lensText, max_name, pos, exifData);
- }
- }
-#if EXIV2_TEST_VERSION(0,18,0)
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.CanonCs.LensType")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->lensText, max_name, pos, exifData);
-#endif
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Canon.0x0095")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->lensText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Minolta.LensID")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->lensText, max_name, pos, exifData);
- } else if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Pentax.LensType")))
- != exifData.end() ) {
- uf_strlcpy_to_utf8(uf->conf->lensText, max_name, pos, exifData);
- }
-#endif
/* Read flash mode */
if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Photo.Flash")))
!= exifData.end() ) {
@@ -216,18 +139,11 @@
}
/* Store all EXIF data read in. */
-#if EXIV2_TEST_VERSION(0,18,0)
Exiv2::Blob blob;
Exiv2::ExifParser::encode(blob, Exiv2::bigEndian, exifData);
uf->inputExifBufLen = blob.size();
uf->inputExifBuf = g_new(unsigned char, uf->inputExifBufLen);
memcpy(uf->inputExifBuf, &blob[0], blob.size());
-#else
- Exiv2::DataBuf buf(exifData.copy());
- uf->inputExifBufLen = buf.size_;
- uf->inputExifBuf = g_new(unsigned char, uf->inputExifBufLen);
- memcpy(uf->inputExifBuf, buf.pData_, buf.size_);
-#endif
ufraw_message(UFRAW_SET_LOG, "EXIF data read using exiv2, buflen %d\n",
uf->inputExifBufLen);
g_strlcpy(uf->conf->exifSource, EXV_PACKAGE_STRING, max_name);
@@ -251,11 +167,7 @@
Exiv2::ExifData exifData = Exiv2::ExifData();
/* Start from the input EXIF data */
-#if EXIV2_TEST_VERSION(0,18,0)
Exiv2::ExifParser::decode(exifData, uf->inputExifBuf, uf->inputExifBufLen);
-#else
- exifData.load(uf->inputExifBuf, uf->inputExifBufLen);
-#endif
Exiv2::ExifData::iterator pos;
if ( uf->conf->rotate ) {
/* Reset orientation tag since UFRaw already rotates the image */
@@ -317,7 +229,6 @@
if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Nikon3.Preview")))
!= exifData.end() )
exifData.erase(pos);
-#if EXIV2_TEST_VERSION(0,18,0)
if (
(pos=exifData.findKey(Exiv2::ExifKey("Exif.NikonPreview.JPEGInterchangeFormat")))
!= exifData.end() )
exifData.erase(pos);
@@ -326,7 +237,6 @@
if ( (pos=exifData.findKey(Exiv2::ExifKey("Exif.Image.DNGPrivateData")))
!= exifData.end() )
exifData.erase(pos);
-#endif
// Pentax thumbnail data
if (
(pos=exifData.findKey(Exiv2::ExifKey("Exif.Pentax.PreviewResolution")))
@@ -384,14 +294,9 @@
Exiv2::ExifData exifData = ufraw_prepare_exifdata(uf);
int size;
-#if EXIV2_TEST_VERSION(0,18,0)
Exiv2::Blob blob;
Exiv2::ExifParser::encode(blob, Exiv2::bigEndian, exifData);
size = blob.size();
-#else
- Exiv2::DataBuf buf(exifData.copy());
- size = buf.size_;
-#endif
const unsigned char ExifHeader[] = {0x45, 0x78, 0x69, 0x66, 0x00, 0x00};
/* If buffer too big for JPEG, try deleting some stuff. */
if ( size+sizeof(ExifHeader)>65533 ) {
@@ -402,41 +307,23 @@
ufraw_message(UFRAW_SET_LOG,
"buflen %d too big, erasing Exif.Photo.MakerNote\n",
size+sizeof(ExifHeader));
-#if EXIV2_TEST_VERSION(0,18,0)
Exiv2::ExifParser::encode(blob, Exiv2::bigEndian, exifData);
size = blob.size();
-#else
- buf = exifData.copy();
- size = buf.size_;
-#endif
}
}
if ( size+sizeof(ExifHeader)>65533 ) {
-#if EXIV2_TEST_VERSION(0,18,0)
Exiv2::ExifThumb thumb(exifData);
thumb.erase();
-#else
- exifData.eraseThumbnail();
-#endif
ufraw_message(UFRAW_SET_LOG,
"buflen %d too big, erasing Thumbnail\n",
size+sizeof(ExifHeader));
-#if EXIV2_TEST_VERSION(0,18,0)
Exiv2::ExifParser::encode(blob, Exiv2::bigEndian, exifData);
size = blob.size();
-#else
- buf = exifData.copy();
- size = buf.size_;
-#endif
}
uf->outputExifBufLen = size + sizeof(ExifHeader);
uf->outputExifBuf = g_new(unsigned char, uf->outputExifBufLen);
memcpy(uf->outputExifBuf, ExifHeader, sizeof(ExifHeader));
-#if EXIV2_TEST_VERSION(0,18,0)
memcpy(uf->outputExifBuf+sizeof(ExifHeader), &blob[0], blob.size());
-#else
- memcpy(uf->outputExifBuf+sizeof(ExifHeader), buf.pData_, buf.size_);
-#endif
std::cerr.rdbuf(savecerr);
ufraw_message(UFRAW_SET_LOG, "%s\n", stderror.str().c_str());
@@ -453,7 +340,6 @@
extern "C" int ufraw_exif_write(ufraw_data *uf)
{
-#if EXIV2_TEST_VERSION(0,18,0)
/* Redirect exiv2 errors to a string buffer */
std::ostringstream stderror;
std::streambuf *savecerr = std::cerr.rdbuf();
@@ -489,10 +375,6 @@
ufraw_message(UFRAW_SET_WARNING, "%s\n", s.c_str());
return UFRAW_ERROR;
}
-#else
- (void)uf;
- return UFRAW_SUCCESS;
-#endif
}
#else
Index: dcraw_indi.c
===================================================================
RCS file: /cvsroot/ufraw/ufraw/dcraw_indi.c,v
retrieving revision 1.81
retrieving revision 1.82
diff -u -d -r1.81 -r1.82
--- dcraw_indi.c 23 Feb 2010 19:36:43 -0000 1.81
+++ dcraw_indi.c 5 Apr 2010 14:30:18 -0000 1.82
@@ -127,18 +127,8 @@
// dcraw_message (dcraw, DCRAW_VERBOSE,_("Wavelet denoising...\n")); /*UF*/
/* Scaling is done somewhere else - NKBJ*/
-#if 0
- while (maximum << scale < 0x10000) scale++;
- maximum <<= --scale;
- black <<= scale;
- if ((size = iheight*iwidth) < 0x15550000)
- fimg = (float *) malloc ((size*3 + iheight + iwidth) * sizeof *fimg);
- merror (fimg, "wavelet_denoise()");
- temp = fimg + size*3;
-#else
size = iheight*iwidth;
float temp[iheight + iwidth];
-#endif
if ((nc = colors) == 3 && filters) nc++;
progress(PROGRESS_WAVELET_DENOISE, -nc*5);
#ifdef _OPENMP
@@ -205,9 +195,6 @@
}
}
}
-#if 0
- free (fimg);
-#endif
}
void CLASS scale_colors_INDI(int maximum, const int black,
@@ -219,38 +206,7 @@
int val, dark, sat;
double /*dsum[8],*/ dmin, dmax;
float scale_mul[4]/*, fr, fc*/;
-#if 0
- ushort *img=0, *pix;
- if (user_mul[0])
- memcpy (pre_mul, user_mul, sizeof pre_mul);
- if (use_auto_wb || (use_camera_wb && cam_mul[0] == -1)) {
- memset (dsum, 0, sizeof dsum);
- bottom = MIN (greybox[1]+greybox[3], height);
- right = MIN (greybox[0]+greybox[2], width);
- for (row=greybox[1]; row < bottom; row += 8)
- for (col=greybox[0]; col < right; col += 8) {
- memset (sum, 0, sizeof sum);
- for (y=row; y < row+8 /*&& y < bottom*/; y++)
- for (x=col; x < col+8 /*&& x < right*/; x++)
- FORC4 {
- if (filters) {
- c = FC(y,x);
- val = BAYER(y,x);
- } else
- val = image[y*iwidth+x][c];
- if (val > maximum-25) goto skip_block;
- if ((val -= black) < 0) val = 0;
- sum[c] += val;
- sum[c+4]++;
- if (filters) break;
- }
- FORC(8) dsum[c] += sum[c];
-skip_block: ;
- }
- FORC4 if (dsum[c]) pre_mul[c] = dsum[c+4] / dsum[c];
- }
-#endif
if (use_camera_wb && cam_mul[0] != -1) {
memset (sum, 0, sizeof sum);
for (row=0; row < 8; row++)
@@ -275,9 +231,6 @@
if (pre_mul[3] == 0) pre_mul[3] = colors < 4 ? pre_mul[1] : 1;
dark = black;
sat = maximum;
-#if 0
- if (threshold) wavelet_denoise();
-#endif
maximum -= black;
for (dmin=DBL_MAX, dmax=c=0; c < 4; c++) {
if (dmin > pre_mul[c])
@@ -285,9 +238,6 @@
if (dmax < pre_mul[c])
dmax = pre_mul[c];
}
-#if 0
- if (!highlight) dmax = dmin;
-#endif
FORC4 scale_mul[c] = (pre_mul[c] /= dmax) * 65535.0 / maximum;
dcraw_message(dcraw, DCRAW_VERBOSE,
_("Scaling with darkness %d, saturation %d, and\nmultipliers"),
@@ -296,41 +246,6 @@
dcraw_message(dcraw, DCRAW_VERBOSE, "\n");
/* The rest of the scaling is done somewhere else UF*/
-#if 0
- size = iheight*iwidth;
- for (i=0; i < size*4; i++) {
- val = image[0][i];
- if (!val) continue;
- val -= black;
- val = (int)(val*scale_mul[i & 3]);
- image[0][i] = CLIP(val);
- }
- if ((aber[0] != 1 || aber[2] != 1) && colors == 3) {
- dcraw_message (DCRAW_VERBOSE,_("Correcting chromatic aberration...\n"));
- for (c=0; c < 4; c+=2) {
- if (aber[c] == 1) continue;
- img = (ushort *) malloc (size * sizeof *img);
- merror (img, "scale_colors()");
- for (i=0; i < size; i++)
- img[i] = image[i][c];
- for (row=0; row < iheight; row++) {
- ur = fr = (row - iheight*0.5) * aber[c] + iheight*0.5;
- if (ur > (unsigned)(iheight-2)) continue;
- fr -= ur;
- for (col=0; col < iwidth; col++) {
- uc = fc = (col - iwidth*0.5) * aber[c] + iwidth*0.5;
- if (uc > (unsigned)(iwidth-2)) continue;
- fc -= uc;
- pix = img + ur*iwidth + uc;
- image[row*iwidth+col][c] =
- (pix[ 0]*(1-fc) + pix[ 1]*fc) * (1-fr) +
- (pix[iwidth]*(1-fc) + pix[iwidth+1]*fc) * fr;
- }
- }
- free(img);
- }
- }
-#endif
}
void CLASS border_interpolate_INDI (const int height, const int width,
Index: ufraw_lens_ui.c
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufraw_lens_ui.c,v
retrieving revision 1.40
retrieving revision 1.41
diff -u -d -r1.40 -r1.41
--- ufraw_lens_ui.c 1 Apr 2010 05:00:31 -0000 1.40
+++ ufraw_lens_ui.c 5 Apr 2010 14:30:18 -0000 1.41
@@ -46,7 +46,7 @@
"Crop factor:\t%.1f"),
maker, model, _variant,
camera->Mount, camera->CropFactor);
- uf_widget_set_tooltip(data->CameraModel, fm);
+ gtk_widget_set_tooltip_text(data->CameraModel, fm);
g_free(fm);
}
@@ -174,7 +174,7 @@
gtk_box_pack_start(GTK_BOX(box), label, FALSE, FALSE, 2);
GtkWidget *combo = ufarray_combo_box_entry_new(object);
gtk_box_pack_start(GTK_BOX(box), combo, TRUE, TRUE, 2);
- uf_widget_set_tooltip(label, tooltip);
+ gtk_widget_set_tooltip_text(label, tooltip);
}
static void lens_set(GtkWidget *lensModel, preview_data *data)
@@ -218,7 +218,7 @@
maker ? maker : "?", model ? model : "?",
focal, aperture, lens->CropFactor,
lf_get_lens_type_desc(lens->Type, NULL), mounts);
- uf_widget_set_tooltip(lensModel, fm);
+ gtk_widget_set_tooltip_text(lensModel, fm);
g_free(fm);
/* Create the focal/aperture/distance combo boxes */
@@ -347,9 +347,11 @@
return;
GtkButton *button = ufobject_user_data(object);
if (ufstring_is_equal(object, "yes"))
- uf_button_set_stock_image(button, "object-automatic");
+ gtk_button_set_image(button, gtk_image_new_from_stock(
+ "object-automatic", GTK_ICON_SIZE_BUTTON));
else
- uf_button_set_stock_image(button, "object-manual");
+ gtk_button_set_image(button, gtk_image_new_from_stock(
+ "object-manual", GTK_ICON_SIZE_BUTTON));
}
/* --- TCA correction page --- */
@@ -397,7 +399,8 @@
UFObject *tca = ufgroup_element(lensfun, ufTCA);
GtkWidget *combo = ufarray_combo_box_new(tca);
gtk_box_pack_start(GTK_BOX(hbox), combo, TRUE, TRUE, 0);
- uf_widget_set_tooltip(combo, _("Chromatic Aberrations mathematical
model"));
+ gtk_widget_set_tooltip_text(combo,
+ _("Chromatic Aberrations mathematical model"));
g_signal_connect_after(G_OBJECT(combo), "changed",
G_CALLBACK(tca_model_changed), data);
ufobject_reset_button_add(reset, tca);
@@ -462,7 +465,8 @@
UFObject *vignetting = ufgroup_element(lensfun, ufVignetting);
GtkWidget *combo = ufarray_combo_box_new(vignetting);
gtk_box_pack_start(GTK_BOX(hbox), combo, TRUE, TRUE, 0);
- uf_widget_set_tooltip(combo, _("Optical vignetting mathematical model"));
+ gtk_widget_set_tooltip_text(combo,
+ _("Optical vignetting mathematical model"));
g_signal_connect_after(G_OBJECT(combo), "changed",
G_CALLBACK(vignetting_model_changed), data);
ufobject_reset_button_add(reset, vignetting);
@@ -529,7 +533,7 @@
UFObject *distortion = ufgroup_element(lensfun, ufDistortion);
GtkWidget *combo = ufarray_combo_box_new(distortion);
gtk_box_pack_start(GTK_BOX(hbox), combo, TRUE, TRUE, 0);
- uf_widget_set_tooltip(combo, _("Lens distortion mathematical model"));
+ gtk_widget_set_tooltip_text(combo, _("Lens distortion mathematical
model"));
g_signal_connect_after(G_OBJECT(combo), "changed",
G_CALLBACK(distortion_model_changed), data);
ufobject_reset_button_add(reset, distortion);
@@ -572,7 +576,7 @@
gtk_table_attach(geometryTable, label, 0, 1, 0, 1, GTK_FILL, 0, 5, 0);
UFObject *lensGeometry = ufgroup_element(lensfun, ufLensGeometry);
GtkWidget *combo = ufarray_combo_box_new(lensGeometry);
- uf_widget_set_tooltip(combo,
+ gtk_widget_set_tooltip_text(combo,
_("The geometry of the lens used to make the shot"));
gtk_table_attach(geometryTable, combo, 1, 2, 0, 1,
GTK_EXPAND | GTK_FILL, 0, 0, 0);
@@ -595,7 +599,8 @@
UFObject *targetLensGeometry =
ufgroup_element(lensfun, ufTargetLensGeometry);
combo = ufarray_combo_box_new(targetLensGeometry);
- uf_widget_set_tooltip(combo, _("The target geometry for output image"));
+ gtk_widget_set_tooltip_text(combo,
+ _("The target geometry for output image"));
gtk_table_attach(geometryTable, combo, 1, 2, 2, 3,
GTK_EXPAND | GTK_FILL, 0, 0, 0);
ufobject_reset_button_add(reset, targetLensGeometry);
@@ -676,7 +681,7 @@
GtkWidget *autoLens = gtk_toggle_button_new();
gtk_table_attach(table, autoLens, 4, 5, 1, 2, 0, 0, 0, 0);
- uf_widget_set_tooltip(autoLens,
+ gtk_widget_set_tooltip_text(autoLens,
_("Automatically find lens and set lens corrections"));
UFObject *lensfunAuto = ufgroup_element(CFG->ufobject, ufLensfunAuto);
g_signal_connect(G_OBJECT(autoLens), "toggled",
Index: ufraw_preview.c
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufraw_preview.c,v
retrieving revision 1.350
retrieving revision 1.351
diff -u -d -r1.350 -r1.351
--- ufraw_preview.c 30 Mar 2010 04:49:08 -0000 1.350
+++ ufraw_preview.c 5 Apr 2010 14:30:18 -0000 1.351
@@ -37,9 +37,7 @@
#define uf_omp_get_max_threads() 1
#endif
-#if GTK_CHECK_VERSION(2,6,0)
void ufraw_chooser_toggle(GtkToggleButton *button, GtkFileChooser
*filechooser);
-#endif
static void update_crop_ranges(preview_data *data, gboolean render);
static void adjustment_update(GtkAdjustment *adj, double *valuep);
@@ -148,14 +146,12 @@
GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL));
ufraw_focus(fileChooser, TRUE);
gtk_file_chooser_set_select_multiple(fileChooser, TRUE);
-#if GTK_CHECK_VERSION(2,6,0)
gtk_file_chooser_set_show_hidden(fileChooser, FALSE);
GtkWidget *button = gtk_check_button_new_with_label(_("Show hidden
files"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), FALSE);
g_signal_connect(G_OBJECT(button), "toggled",
G_CALLBACK(ufraw_chooser_toggle), fileChooser);
gtk_file_chooser_set_extra_widget(fileChooser, button);
-#endif
filter = GTK_FILE_FILTER(gtk_file_filter_new());
gtk_file_filter_set_name(filter, _("All curve formats"));
gtk_file_filter_add_pattern(filter, "*.ntc");
@@ -250,14 +246,12 @@
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT, NULL));
ufraw_focus(fileChooser, TRUE);
-#if GTK_CHECK_VERSION(2,6,0)
gtk_file_chooser_set_show_hidden(fileChooser, FALSE);
GtkWidget *button = gtk_check_button_new_with_label(_("Show hidden
files"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), FALSE);
g_signal_connect(G_OBJECT(button), "toggled",
G_CALLBACK(ufraw_chooser_toggle), fileChooser);
gtk_file_chooser_set_extra_widget(fileChooser, button);
-#endif
filter = GTK_FILE_FILTER(gtk_file_filter_new());
gtk_file_filter_set_name(filter, _("All curve formats"));
gtk_file_filter_add_pattern(filter, "*.ntc");
@@ -333,14 +327,12 @@
GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, NULL));
ufraw_focus(fileChooser, TRUE);
gtk_file_chooser_set_select_multiple(fileChooser, TRUE);
-#if GTK_CHECK_VERSION(2,6,0)
gtk_file_chooser_set_show_hidden(fileChooser, FALSE);
GtkWidget *button = gtk_check_button_new_with_label(_("Show hidden
files"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), FALSE);
g_signal_connect(G_OBJECT(button), "toggled",
G_CALLBACK(ufraw_chooser_toggle), fileChooser);
gtk_file_chooser_set_extra_widget(fileChooser, button);
-#endif
if (strlen(CFG->profilePath)>0)
gtk_file_chooser_set_current_folder(fileChooser, CFG->profilePath);
filter = GTK_FILE_FILTER(gtk_file_filter_new());
@@ -431,15 +423,15 @@
switch (c)
{
case 0: case 1: case 2:
- uf_label_set_width_chars(l->labels[c], 3);
+ gtk_label_set_width_chars(l->labels[c], 3);
break;
case 3:
- uf_label_set_width_chars(l->labels[c], 5);
- uf_widget_set_tooltip(event_box, _("Luminosity (Y value)"));
+ gtk_label_set_width_chars(l->labels[c], 5);
+ gtk_widget_set_tooltip_text(event_box, _("Luminosity (Y value)"));
break;
case 4:
- uf_label_set_width_chars(l->labels[c], 4);
- uf_widget_set_tooltip(event_box, _("Adams' zone"));
+ gtk_label_set_width_chars(l->labels[c], 4);
+ gtk_widget_set_tooltip_text(event_box, _("Adams' zone"));
}
}
return l;
@@ -1554,7 +1546,7 @@
gtk_widget_set_sensitive(data->ResetLightnessAdjustmentButton[i],
fabs(CFG->lightnessAdjustment[i].adjustment - 1.0) >= 0.01);
}
-
gtk_widget_set_sensitive(GTK_WIDGET(data->ResetGrayscaleChannelMixerButton),
+ gtk_widget_set_sensitive(data->ResetGrayscaleChannelMixerButton,
(CFG->grayscaleMixer[0] != conf_default.grayscaleMixer[0])
|| (CFG->grayscaleMixer[1] != conf_default.grayscaleMixer[1])
|| (CFG->grayscaleMixer[2] != conf_default.grayscaleMixer[2]));
@@ -1583,9 +1575,11 @@
gtk_toggle_button_set_active(button, FALSE);
}
if (*valuep)
- uf_button_set_stock_image(GTK_BUTTON(button), "object-automatic");
+ gtk_button_set_image(GTK_BUTTON(button), gtk_image_new_from_stock(
+ "object-automatic", GTK_ICON_SIZE_BUTTON));
else
- uf_button_set_stock_image(GTK_BUTTON(button), "object-manual");
+ gtk_button_set_image(GTK_BUTTON(button), gtk_image_new_from_stock(
+ "object-manual", GTK_ICON_SIZE_BUTTON));
}
static void curve_update(GtkWidget *widget, long curveType)
@@ -2434,12 +2428,14 @@
gtk_toggle_button_set_active(button, FALSE);
}
if (*valuep) {
- uf_button_set_stock_image(GTK_BUTTON(button), "object-lock");
- uf_widget_set_tooltip(GTK_WIDGET(button),
+ gtk_button_set_image(GTK_BUTTON(button), gtk_image_new_from_stock(
+ "object-lock", GTK_ICON_SIZE_BUTTON));
+ gtk_widget_set_tooltip_text(GTK_WIDGET(button),
_("Aspect ratio locked, click to unlock"));
} else {
- uf_button_set_stock_image(GTK_BUTTON(button), "object-unlock");
- uf_widget_set_tooltip(GTK_WIDGET(button),
+ gtk_button_set_image(GTK_BUTTON(button), gtk_image_new_from_stock(
+ "object-unlock", GTK_ICON_SIZE_BUTTON));
+ gtk_widget_set_tooltip_text(GTK_WIDGET(button),
_("Aspect ratio unlocked, click to lock"));
}
}
@@ -2546,7 +2542,7 @@
gtk_container_add(GTK_CONTAINER(event_box), image);
gtk_widget_show_all(event_box);
gtk_notebook_append_page(notebook, GTK_WIDGET(page), event_box);
- uf_widget_set_tooltip(event_box, text);
+ gtk_widget_set_tooltip_text(event_box, text);
}
return page;
}
@@ -2711,15 +2707,18 @@
const char *state;
switch (CFG->restoreDetails) {
case clip_details:
- uf_button_set_stock_image(button, GTK_STOCK_CUT);
+ gtk_button_set_image(button, gtk_image_new_from_stock(
+ GTK_STOCK_CUT, GTK_ICON_SIZE_BUTTON));
state = _("clip");
break;
case restore_lch_details:
- uf_button_set_stock_image(button, "restore-highlights-lch");
+ gtk_button_set_image(button, gtk_image_new_from_stock(
+ "restore-highlights-lch", GTK_ICON_SIZE_BUTTON));
state = _("restore in LCH space for soft details");
break;
case restore_hsv_details:
- uf_button_set_stock_image(button, "restore-highlights-hsv");
+ gtk_button_set_image(button, gtk_image_new_from_stock(
+ "restore-highlights-hsv", GTK_ICON_SIZE_BUTTON));
state = _("restore in HSV space for sharp details");
break;
default:
@@ -2727,7 +2726,7 @@
}
char *text = g_strdup_printf(_("Restore details for negative EV\n"
"Current state: %s"), state);
- uf_widget_set_tooltip(GTK_WIDGET(button), text);
+ gtk_widget_set_tooltip_text(GTK_WIDGET(button), text);
g_free(text);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), FALSE);
}
@@ -2737,11 +2736,13 @@
const char *state;
switch (CFG->clipHighlights) {
case digital_highlights:
- uf_button_set_stock_image(button, "clip-highlights-digital");
+ gtk_button_set_image(button, gtk_image_new_from_stock(
+ "clip-highlights-digital", GTK_ICON_SIZE_BUTTON));
state = _("digital linear");
break;
case film_highlights:
- uf_button_set_stock_image(button, "clip-highlights-film");
+ gtk_button_set_image(button, gtk_image_new_from_stock(
+ "clip-highlights-film", GTK_ICON_SIZE_BUTTON));
state = _("soft film like");
break;
default:
@@ -2749,7 +2750,7 @@
}
char *text = g_strdup_printf(_("Clip highlights for positive EV\n"
"Current state: %s"), state);
- uf_widget_set_tooltip(GTK_WIDGET(button), text);
+ gtk_widget_set_tooltip_text(GTK_WIDGET(button), text);
g_free(text);
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), FALSE);
}
@@ -2869,7 +2870,7 @@
b |= fabs(c->despeckleDecay[i] - conf_default.despeckleDecay[i]) >
0.001;
b |= fabs(c->despecklePasses[i] - conf_default.despecklePasses[i]) >
0.1;
}
- gtk_widget_set_sensitive(GTK_WIDGET(data->ResetDespeckleButton), b);
+ gtk_widget_set_sensitive(data->ResetDespeckleButton, b);
b = FALSE;
for (i = 1; i < data->UF->colors; ++i) {
b |= c->despeckleWindow[0] != c->despeckleWindow[i];
@@ -3025,7 +3026,7 @@
gtk_container_add(GTK_CONTAINER(button),
gtk_image_new_from_stock(stock_id, size));
if (tip != NULL)
- uf_widget_set_tooltip(button, tip);
+ gtk_widget_set_tooltip_text(button, tip);
g_signal_connect(G_OBJECT(button), "clicked", callback, data);
return button;
}
@@ -3189,15 +3190,15 @@
}
gtk_table_attach(table, w, x, x+1, y, y+1,
GTK_SHRINK|GTK_FILL, 0, 0, 0);
- uf_widget_set_tooltip(w, tip);
+ gtk_widget_set_tooltip_text(w, tip);
}
w = ufnumber_hscale_new(obj);
gtk_table_attach(table, w, x+1, x+5, y, y+1, GTK_EXPAND|GTK_FILL, 0, 0, 0);
- uf_widget_set_tooltip(w, tip);
+ gtk_widget_set_tooltip_text(w, tip);
w = ufnumber_spin_button_new(obj);
gtk_table_attach(table, w, x+5, x+7, y, y+1, GTK_SHRINK|GTK_FILL, 0, 0, 0);
- uf_widget_set_tooltip(w, tip);
+ gtk_widget_set_tooltip_text(w, tip);
}
@@ -3223,7 +3224,7 @@
}
gtk_table_attach(table, w, x, x+1, y, y+1,
GTK_SHRINK|GTK_FILL, 0, 0, 0);
- uf_widget_set_tooltip(w, tip);
+ gtk_widget_set_tooltip_text(w, tip);
}
adj = GTK_ADJUSTMENT(gtk_adjustment_new(value, min, max, step, jump, 0));
g_object_set_data(G_OBJECT(adj), "Adjustment-Accuracy",
(gpointer)accuracy);
@@ -3232,7 +3233,7 @@
g_object_set_data(G_OBJECT(adj), "Parent-Widget", w);
gtk_scale_set_draw_value(GTK_SCALE(w), FALSE);
gtk_table_attach(table, w, x+1, x+5, y, y+1, GTK_EXPAND|GTK_FILL, 0, 0, 0);
- uf_widget_set_tooltip(w, tip);
+ gtk_widget_set_tooltip_text(w, tip);
g_signal_connect(G_OBJECT(adj), "value-changed", callback, valuep);
w = gtk_spin_button_new(adj, step, accuracy);
@@ -3240,7 +3241,7 @@
gtk_spin_button_set_update_policy(GTK_SPIN_BUTTON(w), GTK_UPDATE_IF_VALID);
gtk_spin_button_set_wrap(GTK_SPIN_BUTTON(w), wrap_spinner);
gtk_table_attach(table, w, x+5, x+7, y, y+1, GTK_SHRINK|GTK_FILL, 0, 0, 0);
- uf_widget_set_tooltip(w, tip);
+ gtk_widget_set_tooltip_text(w, tip);
if (resetButton != NULL) {
*resetButton = reset_button(resetTip, resetCallback, NULL);
@@ -3259,7 +3260,7 @@
CFG->createID==only_id ? _("\nCreate only ID file") : "");
g_free(utf8);
g_free(absFilename);
- uf_widget_set_tooltip(data->SaveButton, text);
+ gtk_widget_set_tooltip_text(data->SaveButton, text);
g_free(text);
}
@@ -3563,7 +3564,7 @@
gtk_box_pack_start(GTK_BOX(box), hBox, FALSE, FALSE, 0);
button = gtk_button_new_with_label(_("Save configuration"));
gtk_box_pack_start(GTK_BOX(hBox), button, FALSE, FALSE, 0);
- uf_widget_set_tooltip(button,
+ gtk_widget_set_tooltip_text(button,
_("Save configuration to resource file ($HOME/.ufrawrc)"));
g_signal_connect(G_OBJECT(button), "clicked",
G_CALLBACK(configuration_save), NULL);
@@ -3997,13 +3998,14 @@
ControlButtons buttonEnum, preview_data *data)
{
GtkWidget *button = gtk_button_new();
- uf_button_set_stock_image(GTK_BUTTON(button), stockImage);
+ gtk_button_set_image(GTK_BUTTON(button), gtk_image_new_from_stock(
+ stockImage, GTK_ICON_SIZE_BUTTON));
g_signal_connect(G_OBJECT(button), "clicked",
G_CALLBACK(control_button_event), (gpointer)buttonEnum);
char **tipParts = g_strsplit(tip, "_", 2);
if ( tipParts[0]==NULL || tipParts[1]==NULL ) {
// No mnemonic
- uf_widget_set_tooltip(button, tip);
+ gtk_widget_set_tooltip_text(button, tip);
return button;
}
@@ -4014,7 +4016,7 @@
char *tooltip = g_strdup_printf(_("%s%s (Alt-%s)"),
tipParts[0], tipParts[1], hot_char);
- uf_widget_set_tooltip(button, tooltip);
+ gtk_widget_set_tooltip_text(button, tooltip);
g_free(tooltip);
data->ButtonMnemonic[buttonEnum] = gdk_keyval_to_lower(
gdk_unicode_to_keyval(g_utf8_get_char(tipParts[1])));
@@ -4148,7 +4150,7 @@
"Parent-Widget", button);
g_signal_connect(G_OBJECT(data->HotpixelAdjustment), "value-changed",
G_CALLBACK(adjustment_update), &CFG->hotpixel);
- uf_widget_set_tooltip(button, _("Hot pixel sensitivity"));
+ gtk_widget_set_tooltip_text(button, _("Hot pixel sensitivity"));
gtk_box_pack_start(box, button, FALSE, FALSE, 0);
button = reset_button(
@@ -4317,7 +4319,7 @@
UFObject *wb = ufgroup_element(image, ufWB);
combo = GTK_COMBO_BOX(ufarray_combo_box_new(wb));
gtk_box_pack_start(box, GTK_WIDGET(combo), TRUE, TRUE, 0);
- uf_widget_set_tooltip(GTK_WIDGET(combo), _("White Balance"));
+ gtk_widget_set_tooltip_text(GTK_WIDGET(combo), _("White Balance"));
button = ufnumber_spin_button_new(
ufgroup_element(image, ufWBFineTuning));
@@ -4328,14 +4330,15 @@
GTK_ICON_SIZE_BUTTON);
gtk_container_add(GTK_CONTAINER(event_box), label);
gtk_box_pack_start(box, event_box, FALSE, FALSE, 0);
- uf_widget_set_tooltip(event_box, _("Cannot use camera white balance."));
+ gtk_widget_set_tooltip_text(event_box,
+ _("Cannot use camera white balance."));
} else if (!uf->wb_presets_make_model_match) {
event_box = gtk_event_box_new();
label = gtk_image_new_from_stock(GTK_STOCK_DIALOG_WARNING,
GTK_ICON_SIZE_BUTTON);
gtk_container_add(GTK_CONTAINER(event_box), label);
gtk_box_pack_start(box, event_box, FALSE, FALSE, 0);
- uf_widget_set_tooltip(event_box,
+ gtk_widget_set_tooltip_text(event_box,
_("There are no white balance presets for your camera model.\n"
"Check UFRaw's webpage for information on how to get your\n"
"camera supported."));
@@ -4384,7 +4387,7 @@
GTK_ICON_SIZE_LARGE_TOOLBAR);
gtk_container_add(GTK_CONTAINER(event_box), icon);
gtk_table_attach(table, event_box, 0, 1, 0, 1, 0, 0, 0, 0);
- uf_widget_set_tooltip(event_box, _("Bayer pattern interpolation"));
+ gtk_widget_set_tooltip_text(event_box, _("Bayer pattern interpolation"));
combo = GTK_COMBO_BOX(uf_combo_box_new_text());
if ( data->UF->HaveFilters ) {
if ( data->UF->colors==4 ) {
@@ -4423,7 +4426,7 @@
gtk_container_add(GTK_CONTAINER(button),
gtk_image_new_from_stock(GTK_STOCK_CLEAR, GTK_ICON_SIZE_BUTTON));
gtk_table_attach(table, button, 2, 3, 0, 1, 0, 0, 0, 0);
- uf_widget_set_tooltip(button, _("Apply color smoothing"));
+ gtk_widget_set_tooltip_text(button, _("Apply color smoothing"));
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button),
CFG->smoothing);
g_signal_connect(G_OBJECT(button), "toggled",
@@ -4578,7 +4581,7 @@
int right = 6 + data->UF->colors; // Right column location
icon = gtk_image_new_from_stock("gtk-help", GTK_ICON_SIZE_BUTTON);
gtk_table_attach(table, icon, right, right+1, 0, 1, 0, 0, 0, 0);
- uf_widget_set_tooltip(icon, _(
+ gtk_widget_set_tooltip_text(icon, _(
"Despeckling is mainly useful when combining a high ISO number "
"with a high channel multiplier: when one channel has a very bad "
"signal to noise ratio. Try setting window size, color decay and "
@@ -4596,7 +4599,8 @@
gtk_box_pack_start(box, button, FALSE, FALSE, 0);
gtk_table_attach(table, GTK_WIDGET(box), right, right+1, 1, 4,
GTK_FILL, 0, 0, 0);
- uf_widget_set_tooltip(button, _("Update channel parameters together"));
+ gtk_widget_set_tooltip_text(button,
+ _("Update channel parameters together"));
data->ResetDespeckleButton = reset_button(_("Reset despeckle parameters"),
G_CALLBACK(button_update), NULL);
gtk_box_pack_start(box, data->ResetDespeckleButton, FALSE, FALSE, 0);
@@ -4755,7 +4759,7 @@
GTK_ICON_SIZE_LARGE_TOOLBAR);
gtk_container_add(GTK_CONTAINER(event_box), icon);
gtk_table_attach(table, event_box, 0, 1, 4*j+1, 4*j+2, 0, 0, 0, 0);
- uf_widget_set_tooltip(event_box,
+ gtk_widget_set_tooltip_text(event_box,
j==in_profile ? _("Input ICC profile") :
j==out_profile ? _("Output ICC profile") :
j==display_profile ? _("Display ICC profile") : "Error");
@@ -4905,18 +4909,10 @@
gtk_table_attach(subTable, data->ResetCurveButton, 8, 9, 7, 8, 0, 0, 0, 0);
data->BlackLabel = gtk_label_new(NULL);
-#if GTK_CHECK_VERSION(2,6,0)
gtk_misc_set_alignment(GTK_MISC(data->BlackLabel), 0.5, 1.0);
gtk_label_set_angle(GTK_LABEL(data->BlackLabel), 90);
gtk_table_attach(subTable, data->BlackLabel, 0, 1, 5, 6,
0, GTK_FILL|GTK_EXPAND, 0, 0);
-#else
- button = gtk_alignment_new(0, 0, 0, 0);
- gtk_table_attach(subTable, button, 0, 1, 5, 6,
- 0, GTK_FILL|GTK_EXPAND, 0, 0);
- gtk_misc_set_alignment(GTK_MISC(data->BlackLabel), 0.0, 0.5);
- gtk_table_attach(subTable, data->BlackLabel, 1, 8, 8, 9, GTK_FILL, 0, 0,
0);
-#endif
data->ResetBlackButton = reset_button(
_("Reset black-point to default"), G_CALLBACK(button_update), NULL);
gtk_table_attach(subTable, GTK_WIDGET(data->ResetBlackButton), 0, 1, 7, 8,
@@ -4925,7 +4921,7 @@
data->AutoBlackButton = GTK_TOGGLE_BUTTON(gtk_toggle_button_new());
gtk_table_attach(subTable, GTK_WIDGET(data->AutoBlackButton), 0, 1, 6, 7,
0, GTK_SHRINK, 0, 0);
- uf_widget_set_tooltip(GTK_WIDGET(data->AutoBlackButton),
+ gtk_widget_set_tooltip_text(GTK_WIDGET(data->AutoBlackButton),
_("Auto adjust black-point"));
auto_button_toggle(data->AutoBlackButton, &CFG->autoBlack);
g_signal_connect(G_OBJECT(data->AutoBlackButton), "toggled",
@@ -5003,7 +4999,7 @@
data->AutoCropButton = GTK_TOGGLE_BUTTON(gtk_toggle_button_new());
gtk_table_attach(table, GTK_WIDGET(data->AutoCropButton), 4, 5, 1, 2,
0, 0, 0, 0);
- uf_widget_set_tooltip(GTK_WIDGET(data->AutoCropButton),
+ gtk_widget_set_tooltip_text(GTK_WIDGET(data->AutoCropButton),
_("Auto fit crop area"));
auto_button_toggle(data->AutoCropButton, &CFG->autoCrop);
gtk_toggle_button_set_active(data->AutoCropButton, CFG->autoCrop);
@@ -5026,7 +5022,7 @@
gtk_entry_set_width_chars(data->AspectEntry, 6);
gtk_entry_set_alignment(data->AspectEntry, 0.5);
gtk_table_attach(table, GTK_WIDGET(entry), 1, 2, 0, 1, 0, 0, 5, 0);
- uf_widget_set_tooltip(GTK_WIDGET(data->AspectEntry),
+ gtk_widget_set_tooltip_text(GTK_WIDGET(data->AspectEntry),
_("Crop area aspect ratio.\n"
"Can be entered in decimal notation (1.273)\n"
"or as a ratio of two numbers (14:11)"));
@@ -5311,7 +5307,7 @@
gtk_box_pack_start(GTK_BOX(hBox), event_box, FALSE, FALSE, 0);
label = gtk_label_new(_("Save image defaults "));
gtk_container_add(GTK_CONTAINER(event_box), label);
- uf_widget_set_tooltip(event_box,
+ gtk_widget_set_tooltip_text(event_box,
_("Save current image manipulation parameters as defaults.\n"
"The output parameters in this window are always saved."));
GtkComboBox *confCombo = GTK_COMBO_BOX(gtk_combo_box_new_text());
@@ -5453,7 +5449,7 @@
g_free(utf8_filename);
ufraw_icons_init();
- uf_window_set_icon_name(GTK_WINDOW(previewWindow), "ufraw");
+ gtk_window_set_icon_name(GTK_WINDOW(previewWindow), "ufraw");
g_signal_connect(G_OBJECT(previewWindow), "delete-event",
G_CALLBACK(window_delete_event), NULL);
g_signal_connect(G_OBJECT(previewWindow), "map-event",
@@ -5530,7 +5526,7 @@
data->AutoExposureButton = GTK_TOGGLE_BUTTON(gtk_toggle_button_new());
gtk_table_attach(table, GTK_WIDGET(data->AutoExposureButton), 9, 10, 0, 1,
0, 0, 0, 0);
- uf_widget_set_tooltip(GTK_WIDGET(data->AutoExposureButton),
+ gtk_widget_set_tooltip_text(GTK_WIDGET(data->AutoExposureButton),
_("Auto adjust exposure"));
auto_button_toggle(data->AutoExposureButton, &CFG->autoExposure);
g_signal_connect(G_OBJECT(data->AutoExposureButton), "toggled",
@@ -5677,7 +5673,7 @@
g_signal_connect(G_OBJECT(data->ZoomAdjustment), "value-changed",
G_CALLBACK(zoom_update), NULL);
gtk_box_pack_start(ZoomBox, button, FALSE, FALSE, 0);
- uf_widget_set_tooltip(button, _("Zoom percentage"));
+ gtk_widget_set_tooltip_text(button, _("Zoom percentage"));
// Zoom in button:
button = stock_icon_button(GTK_STOCK_ZOOM_IN, NULL,
@@ -5758,12 +5754,6 @@
gtk_widget_hide(GTK_WIDGET(data->LightnessAdjustmentTable[i]));
gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook), data->PageNumSpot);
-#if !GTK_CHECK_VERSION(2,8,0)
- /* There is a bug that causes the mouse location to be misplaced
- * in the event-box. The following voodoo seems to fix the mapping. */
- gtk_widget_set_size_request(scroll, preview_width+1, preview_height+1);
- while (gtk_events_pending()) gtk_main_iteration();
-#endif
if ( CFG->WindowMaximized ) {
gtk_widget_set_size_request(scroll, -1, -1);
preview_progress_disable(data);
Index: configure.ac
===================================================================
RCS file: /cvsroot/ufraw/ufraw/configure.ac,v
retrieving revision 1.156
retrieving revision 1.157
diff -u -d -r1.156 -r1.157
--- configure.ac 30 Mar 2010 04:49:08 -0000 1.156
+++ configure.ac 5 Apr 2010 14:30:18 -0000 1.157
@@ -1,5 +1,5 @@
dnl $Id$
-AC_INIT(UFRaw, 0.17)
+AC_INIT(UFRaw, 0.18)
AC_PREREQ(2.57)
# Create host_os, host_cpu variables
@@ -105,7 +105,7 @@
[ with_dosprefix=$withval],
[ with_dosprefix=NONE ] )
-PKG_CHECK_MODULES(GLIB, glib-2.0 gthread-2.0)
+PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.12 gthread-2.0)
PKG_CHECK_MODULES(LCMS, lcms >= 1.14)
AC_ARG_WITH([gtk],
@@ -116,7 +116,7 @@
have_gtk=no
AS_IF([test "x$with_gtk" != xno],
- [PKG_CHECK_MODULES(GTKBASE, gtk+-2.0 >= 2.6,
+ [PKG_CHECK_MODULES(GTKBASE, gtk+-2.0 >= 2.12,
[ have_gtk=yes ],
[ have_gtk=no
if test "x$with_gtk" != xcheck; then
@@ -146,7 +146,7 @@
[with_gimp=check])
AS_IF([test "x$with_gimp" != xno],
- [PKG_CHECK_MODULES(GIMP, gimpui-2.0,
+ [PKG_CHECK_MODULES(GIMP, gimpui-2.0 >= 2.2.0,
[ have_gimp=yes
GIMP_LIBDIR=`$pkg_prefix --variable=gimplibdir gimp-2.0` ],
[ have_gimp=no
@@ -252,7 +252,7 @@
[ have_cfitsio=no
AC_MSG_RESULT($CFITSIO_PKG_ERRORS) ] )
-PKG_CHECK_MODULES(EXIV2, exiv2 >= 0.16,
+PKG_CHECK_MODULES(EXIV2, exiv2 >= 0.18.1,
[ have_exiv2=yes
AC_DEFINE(HAVE_EXIV2, 1, have the exiv2 library) ],
[ have_exiv2=no
@@ -346,6 +346,13 @@
enable_interp_none=no)
AC_MSG_RESULT($enable_interp_none)
+AC_MSG_CHECKING(whether to enable debugging with valgrind)
+AC_ARG_ENABLE(valgrind,
+ [ --enable-valgrind enable debugging with valgrind],
+ AC_DEFINE(UFRAW_VALGRIND, 1, Debugging with valgrind enabled),
+ enable_valgrind=no)
+AC_MSG_RESULT($enable_valgrind)
+
AC_CONFIG_FILES(Makefile)
AC_CONFIG_FILES(icons/Makefile)
AC_CONFIG_FILES(po/Makefile.in)
Index: uf_glib.h
===================================================================
RCS file: /cvsroot/ufraw/ufraw/uf_glib.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- uf_glib.h 23 Jan 2010 05:00:58 -0000 1.6
+++ uf_glib.h 5 Apr 2010 14:30:18 -0000 1.7
@@ -13,50 +13,23 @@
#ifndef _UF_GLIB_H
#define _UF_GLIB_H
-#ifdef __cplusplus
+#ifdef __cplusplus
extern "C" {
#endif
-// glib is required for the GLIB_CHECK_VERSION macro
-#include <glib.h>
-
-// gstdio exists only since glib-2.6
-#if GLIB_CHECK_VERSION(2,6,0)
#include <glib/gstdio.h>
-#else
-// Otherwise we define the gstdio functions as macros
-#include <stdio.h>
-#define g_fopen fopen
-#define g_unlink unlink
-#define g_rename rename
-#endif
-
-// Before glib-2.10 g_unlink was a macro, requiring some more headers
-#if !GLIB_CHECK_VERSION(2,10,0)
-#include <unistd.h> // for unlink
-#endif
// g_win32_locale_filename_from_utf8 is needed only on win32
-#if GLIB_CHECK_VERSION(2,8,0) && defined(WIN32)
+#ifdef WIN32
#define uf_win32_locale_filename_from_utf8(__some_string__) \
g_win32_locale_filename_from_utf8(__some_string__)
#define uf_win32_locale_filename_free(__some_string__) g_free(__some_string__)
-
-// g_win32_locale_filename_from_utf8 exists since glib-2.8
-// with glib-2.6, g_locale_from_utf8 is the cheap replacement
-#elif GLIB_CHECK_VERSION(2,6,0) && defined(WIN32)
-#define uf_win32_locale_filename_from_utf8(__some_string__) \
- g_locale_from_utf8(__some_string__, -1, NULL, NULL, NULL)
-#define uf_win32_locale_filename_free(__some_string__) g_free(__some_string__)
-
-// On other platforms nothing is needed
#else
#define uf_win32_locale_filename_from_utf8(__some_string__) (__some_string__)
#define uf_win32_locale_filename_free(__some_string__) (void)(__some_string__)
-
#endif
-// One win32 command-line arguments need to be translated to UTF-8
+// On win32 command-line arguments need to be translated to UTF-8
#ifdef WIN32
#define uf_win32_locale_to_utf8(__some_string__) \
g_locale_to_utf8(__some_string__, -1, NULL, NULL, NULL)
@@ -66,7 +39,7 @@
#define uf_win32_locale_free(__some_string__) (void)(__some_string__)
#endif
-#ifdef __cplusplus
+#ifdef __cplusplus
}
#endif
Index: ufraw-gimp.c
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufraw-gimp.c,v
retrieving revision 1.63
retrieving revision 1.64
diff -u -d -r1.63 -r1.64
--- ufraw-gimp.c 24 Feb 2010 17:44:27 -0000 1.63
+++ ufraw-gimp.c 5 Apr 2010 14:30:18 -0000 1.64
@@ -23,7 +23,6 @@
#include <plugin_main.h>
#define GIMP_CONST
/* Fix some compatibility issues between CinePaint and GIMP */
-#define GIMP_CHECK_VERSION(a,b,c) 0
typedef GimpRunModeType GimpRunMode;
#define PLUGIN_MODE 2
#else
@@ -66,7 +65,7 @@
static GIMP_CONST GimpParamDef load_return_vals[] = {
{ GIMP_PDB_IMAGE, "image", "Output image" },
};
-#if GIMP_CHECK_VERSION(2,2,0)
+#ifndef UFRAW_CINEPAINT
static GIMP_CONST GimpParamDef thumb_args[] = {
{ GIMP_PDB_STRING, "filename", "The name of the file to load" },
{ GIMP_PDB_INT32, "thumb_size", "Preferred thumbnail size" }
@@ -85,7 +84,7 @@
"Copyright 2004 by Pawel Jochym\n"
"Copyright 2004-2010 by Udi Fuchs",
"ufraw-" VERSION,
-#if GIMP_CHECK_VERSION(2,2,0)
+#ifndef UFRAW_CINEPAINT
"raw image",
#else
"<Load>/UFRaw",
@@ -99,7 +98,7 @@
gimp_register_load_handler("file_ufraw_load", (char *)raw_ext, "");
-#if GIMP_CHECK_VERSION(2,2,0)
+#ifndef UFRAW_CINEPAINT
gimp_install_procedure ("file_ufraw_load_thumb",
"Loads thumbnails from digital camera raw files.",
"Loads thumbnails from digital camera raw files.",
@@ -219,7 +218,7 @@
}
ufraw_icons_init();
GtkWidget *dummyWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- uf_window_set_icon_name(GTK_WINDOW(dummyWindow), "ufraw");
+ gtk_window_set_icon_name(GTK_WINDOW(dummyWindow), "ufraw");
ufraw_message(UFRAW_SET_PARENT, (char *)dummyWindow);
ufraw_message(UFRAW_REPORT, NULL);
@@ -237,7 +236,7 @@
ufraw_config(uf, &rc, NULL, NULL);
sendToGimpMode = (uf->conf->createID==send_id);
-#if GIMP_CHECK_VERSION(2,2,0)
+#ifndef UFRAW_CINEPAINT
if ( loadThumbnail ) {
uf->conf->size = size;
uf->conf->embeddedImage = TRUE;
Index: ufraw_ufraw.c
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufraw_ufraw.c,v
retrieving revision 1.252
retrieving revision 1.253
diff -u -d -r1.252 -r1.253
--- ufraw_ufraw.c 30 Mar 2010 22:51:02 -0000 1.252
+++ ufraw_ufraw.c 5 Apr 2010 14:30:18 -0000 1.253
@@ -855,22 +855,12 @@
}
ufraw_image_type *src = (ufraw_image_type *)(img->buffer +
yy * img->rowstride + xx * img->depth);
-#if 1
- /* Do it in integer arithmetic, it's a bit faster */
guint64 dx = (gint32)(srcX * 4096.0) - (xx << 12);
guint64 dy = (gint32)(srcY * 4096.0) - (yy << 12);
for (c = 0; c < uf->colors; c++)
cur[c] = ( (4096-dy)*((4096-dx)*src[0][c] + dx*src[1][c])
+ dy*((4096-dx)*src[img->width][c]
+ (dx)*src[img->width+1][c]) ) >> 24;
-#else
- float dx = srcX - xx;
- float dy = srcY - yy;
- for (c = 0; c < uf->colors; c++)
- cur[c] = (1-dy)*((1-dx)*src[0][c] + dx*src[1][c])
- + dy*((1-dx)*src[img->width][c]
- + (dx)*src[img->width+1][c]);
-#endif
}
}
}
Index: uf_gtk.h
===================================================================
RCS file: /cvsroot/ufraw/ufraw/uf_gtk.h,v
retrieving revision 1.12
retrieving revision 1.13
diff -u -d -r1.12 -r1.13
--- uf_gtk.h 4 Mar 2010 04:52:32 -0000 1.12
+++ uf_gtk.h 5 Apr 2010 14:30:18 -0000 1.13
@@ -16,23 +16,11 @@
#include <gtk/gtk.h>
#include <ufobject.h>
-#ifdef __cplusplus
+#ifdef __cplusplus
extern "C" {
#endif
-// Interface to gtk_widget_set_tooltip_text() introduced in 2.12
-// Should be called after widget has a toplevel to minimize number
-// of calls to gtk_tooltips_new()
-void uf_widget_set_tooltip(GtkWidget *widget, const gchar *text);
-
-void uf_button_set_stock_image(GtkButton *button, const gchar *stock_image);
-
-void uf_label_set_width_chars(GtkLabel *label, gint n_chars);
-
-// Interface to gtk_window_set_icon_name() introduced in 2.6
-void uf_window_set_icon_name(GtkWindow *window, const gchar *name);
-
-// Create a GtkCheckButton with a label an a value that gets updated
+// Create a GtkCheckButton with a label and a value that gets updated
GtkWidget *uf_check_button_new(const char *label, gboolean *valuep);
// Create a new ComboBox text with small width.
@@ -70,7 +58,7 @@
GtkWidget *ufarray_combo_box_new(UFObject *object);
GtkWidget *ufarray_combo_box_entry_new(UFObject *object);
-#ifdef __cplusplus
+#ifdef __cplusplus
}
#endif
Index: ufobject.h
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufobject.h,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -d -r1.6 -r1.7
--- ufobject.h 4 Mar 2010 04:52:32 -0000 1.6
+++ ufobject.h 5 Apr 2010 14:30:18 -0000 1.7
@@ -396,7 +396,7 @@
explicit UFException(std::string &Message);
};
-#endif /*__cplusplus*/
+#endif // __cplusplus
/*************************\
* UFObject C interface *
Index: ufraw_lensfun.cc
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufraw_lensfun.cc,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- ufraw_lensfun.cc 31 Mar 2010 17:15:09 -0000 1.16
+++ ufraw_lensfun.cc 5 Apr 2010 14:30:18 -0000 1.17
@@ -39,7 +39,7 @@
double ApertureValue;
double DistanceValue;
Lensfun();
-#if 0 // Can be useful for valgrind --leak-check=full
+#ifdef UFRAW_VALGRIND // Can be useful for valgrind --leak-check=full
~Lensfun() {
if (_LensDB != NULL)
lf_db_destroy(_LensDB);
Index: dcraw.h
===================================================================
RCS file: /cvsroot/ufraw/ufraw/dcraw.h,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -d -r1.61 -r1.62
--- dcraw.h 28 Mar 2010 17:45:14 -0000 1.61
+++ dcraw.h 5 Apr 2010 14:30:18 -0000 1.62
@@ -26,13 +26,11 @@
*/
#if !defined(DCRAW_NOMAIN) && defined(WIN32)
#include <glib.h>
-#if GLIB_CHECK_VERSION(2,6,0)
extern "C" {
#include <glib/gstdio.h>
}
#define fopen g_fopen
#endif
-#endif
class DCRaw { public:
/* All dcraw's global variables are members of this class. */
Index: ufraw.c
===================================================================
RCS file: /cvsroot/ufraw/ufraw/ufraw.c,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -d -r1.58 -r1.59
--- ufraw.c 24 Feb 2010 17:44:27 -0000 1.58
+++ ufraw.c 5 Apr 2010 14:30:18 -0000 1.59
@@ -43,7 +43,7 @@
ufraw_icons_init();
#ifdef WIN32
dummyWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- uf_window_set_icon_name(GTK_WINDOW(dummyWindow), "ufraw");
+ gtk_window_set_icon_name(GTK_WINDOW(dummyWindow), "ufraw");
ufraw_message(UFRAW_SET_PARENT, (char *)dummyWindow);
#endif
/* Load $HOME/.ufrawrc */
@@ -84,7 +84,7 @@
/* Create a dummyWindow for the GUI error messenger */
if (dummyWindow==NULL) {
dummyWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
- uf_window_set_icon_name(GTK_WINDOW(dummyWindow), "ufraw");
+ gtk_window_set_icon_name(GTK_WINDOW(dummyWindow), "ufraw");
ufraw_message(UFRAW_SET_PARENT, (char *)dummyWindow);
}
conf_file_load(&conf, cmd.inputFilename);
Index: uf_gtk.cc
===================================================================
RCS file: /cvsroot/ufraw/ufraw/uf_gtk.cc,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- uf_gtk.cc 4 Mar 2010 04:52:32 -0000 1.21
+++ uf_gtk.cc 5 Apr 2010 14:30:18 -0000 1.22
@@ -28,86 +28,6 @@
extern "C" {
-#if !GTK_CHECK_VERSION(2,12,0)
-static void _uf_widget_set_tooltip_destroy_event(GObject *object,
- gpointer user_data)
-{
- (void)user_data;
- GObject *Tooltips = static_cast<GObject *>(
- g_object_get_data(object, "UF-Tooltips"));
- if ( Tooltips!=NULL )
- g_object_unref(Tooltips);
-}
-#endif
-
-// Interface to gtk_widget_set_tooltip_text() introduced in 2.12
-// Should be called after widget has a toplevel to minimize number
-// of calls to gtk_tooltips_new()
-void uf_widget_set_tooltip(GtkWidget *widget, const gchar *text)
-{
-#if GTK_CHECK_VERSION(2,12,0)
- gtk_widget_set_tooltip_text(widget, text);
-#else
- GObject *parentWindow = G_OBJECT(gtk_widget_get_toplevel(widget));
- GtkTooltips *Tooltips = static_cast<GtkTooltips *>(
- g_object_get_data(parentWindow, "UF-Tooltips"));
- if ( Tooltips==NULL ) {
- // On first call create the tooltips
- Tooltips = gtk_tooltips_new();
-#if GTK_CHECK_VERSION(2,10,0)
- g_object_ref_sink(Tooltips);
-#else
- g_object_ref(Tooltips);
- gtk_object_sink(GTK_OBJECT(Tooltips));
-#endif
- g_object_set_data(parentWindow, "UF-Tooltips", Tooltips);
- g_signal_connect(parentWindow, "destroy",
- G_CALLBACK(_uf_widget_set_tooltip_destroy_event), NULL);
- }
- gtk_tooltips_set_tip(Tooltips, widget, text, NULL);
-#endif
-}
-
-void uf_button_set_stock_image(GtkButton *button, const gchar *stock_image)
-{
-#if GTK_CHECK_VERSION(2,8,0)
- gtk_button_set_image(button, gtk_image_new_from_stock(
- stock_image, GTK_ICON_SIZE_BUTTON));
-#else
- GtkWidget *lastImage = gtk_bin_get_child(GTK_BIN(button));
- if ( lastImage!=NULL )
- gtk_container_remove(GTK_CONTAINER(button), lastImage);
-
- GtkWidget *image = gtk_image_new_from_stock(stock_image,
- GTK_ICON_SIZE_BUTTON);
- gtk_container_add(GTK_CONTAINER(button), image);
- gtk_widget_show(image);
-#endif
-}
-
-// Interface to gtk_window_set_icon_name() introduced in 2.6
-// but was buggy until 2.8
-void uf_window_set_icon_name(GtkWindow *window, const gchar *name)
-{
-#if GTK_CHECK_VERSION(2,8,0)
- gtk_window_set_icon_name(window, name);
-#else
- gtk_window_set_icon(window,
- gtk_icon_theme_load_icon(gtk_icon_theme_get_default(),
- name, 48, GTK_ICON_LOOKUP_USE_BUILTIN, NULL));
-#endif
-}
-
-void uf_label_set_width_chars(GtkLabel *label, gint n_chars)
-{
-#if GTK_CHECK_VERSION(2,6,0)
- gtk_label_set_width_chars(label, n_chars);
-#else
- (void)label;
- (void)n_chars;
-#endif
-}
-
static void _uf_toggle_button_toggled(GtkToggleButton *button, gboolean
*valuep)
{
*valuep = gtk_toggle_button_get_active(button);
@@ -569,7 +489,7 @@
gtk_container_add(GTK_CONTAINER(button),
gtk_image_new_from_stock(GTK_STOCK_REFRESH, GTK_ICON_SIZE_BUTTON));
if (tip != NULL)
- uf_widget_set_tooltip(button, tip);
+ gtk_widget_set_tooltip_text(button, tip);
_UFObjectList *objectList = new _UFObjectList;
g_object_set_data(G_OBJECT(button), "UFObjectList", objectList);
------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
ufraw-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ufraw-cvs