[Kde-imaging] [Bug 141528] remove confirmation dialog for image rotate
Gerhard Kulzer
gerhard at kulzer.net
Sat Mar 3 04:38:58 CET 2007
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=141528
gerhard kulzer net changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
------- Additional Comments From gerhard kulzer net 2007-03-03 04:38 -------
SVN commit 638734 by gkulzer:
If no error occurs, run dialog will be automatically closed.
BUG:141528
CCMAIL:caulier.gilles gmail com
M +69 -56 plugin_jpeglossless.cpp
M +5 -3 plugin_jpeglossless.h
--- trunk/extragear/libs/kipi-plugins/jpeglossless/plugin_jpeglossless.cpp #638733:638734
@ -1,11 +1,11 @
/* ============================================================
* Authors: Renchi Raju <renchi pooh tam uiuc edu>
- * Gilles Caulier <caulier dot gilles at kdemail dot net>
+ * Gilles Caulier <caulier dot gilles at gmail dot com>
* Date : 2003-09-26
* Description : JPEG loss less operations plugin
*
* Copyright 2003-2005 by Renchi Raju & Gilles Caulier
- * Copyright 2006 by Gilles Caulier
+ * Copyright 2006-2007 by Gilles Caulier
*
* This program is free software; you can redistribute it
* and/or modify it under the terms of the GNU General
@ -40,7 +40,7 @
#include <kmessagebox.h>
#include <kapplication.h>
-// Lib KIPI includes.
+// LibKipi includes.
#include <libkipi/batchprogressdialog.h>
#include <libkipi/interface.h>
@ -68,6 +68,7 @
m_action_FlipImage = 0;
m_progressDlg = 0;
m_thread = 0;
+ m_failed = false;
kdDebug( 51001 ) << "Plugin_JPEGLossless plugin loaded" << endl;
}
@ -77,18 +78,16 @
KIPI::Plugin::setup( widget );
m_action_AutoExif = new KAction(i18n("Auto Rotate/Flip Using Exif Information"),
- 0,
- 0,
- this,
- SLOT(slotRotate()),
- actionCollection(),
- "rotate_exif");
+ 0, 0,
+ this,
+ SLOT(slotRotate()),
+ actionCollection(),
+ "rotate_exif");
-
m_action_RotateImage = new KActionMenu(i18n("Rotate"),
- "rotate_cw",
- actionCollection(),
- "jpeglossless_rotate");
+ "rotate_cw",
+ actionCollection(),
+ "jpeglossless_rotate");
m_action_RotateImage->insert( new KAction(i18n("90 Degrees"),
0,
@ -115,33 +114,33 @
"rotate_270") );
m_action_FlipImage = new KActionMenu(i18n("Flip"),
- "flip",
- actionCollection(),
- "jpeglossless_flip");
+ "flip",
+ actionCollection(),
+ "jpeglossless_flip");
m_action_FlipImage->insert( new KAction(i18n("Horizontally"),
- 0,
- CTRL+Key_Asterisk,
- this,
- SLOT(slotFlip()),
- actionCollection(),
- "flip_horizontal") );
+ 0,
+ CTRL+Key_Asterisk,
+ this,
+ SLOT(slotFlip()),
+ actionCollection(),
+ "flip_horizontal") );
m_action_FlipImage->insert( new KAction(i18n("Vertically"),
- 0,
- CTRL+Key_Slash,
- this,
- SLOT(slotFlip()),
- actionCollection(),
- "flip_vertical") );
+ 0,
+ CTRL+Key_Slash,
+ this,
+ SLOT(slotFlip()),
+ actionCollection(),
+ "flip_vertical") );
m_action_Convert2GrayScale = new KAction(i18n("Convert to Black && White"),
- "grayscaleconvert",
- 0,
- this,
- SLOT(slotConvert2GrayScale()),
- actionCollection(),
- "jpeglossless_convert2grayscale");
+ "grayscaleconvert",
+ 0,
+ this,
+ SLOT(slotConvert2GrayScale()),
+ actionCollection(),
+ "jpeglossless_convert2grayscale");
addAction( m_action_AutoExif );
addAction( m_action_RotateImage );
@ -149,18 +148,18 @
addAction( m_action_Convert2GrayScale );
KIPI::Interface* interface = dynamic_cast<KIPI::Interface*>( parent() );
-
+
if ( !interface )
{
kdError( 51000 ) << "Kipi interface is null!" << endl;
return;
}
-
+
m_action_AutoExif->setEnabled( false );
m_action_RotateImage->setEnabled( false );
m_action_FlipImage->setEnabled( false );
m_action_Convert2GrayScale->setEnabled( false );
-
+
m_thread = new KIPIJPEGLossLessPlugin::ActionThread(interface, this);
connect( interface, SIGNAL( selectionChanged( bool ) ),
@ -212,13 +211,14 @
if (!proceed) return;
m_total = items.count();
m_current = 0;
+ m_failed = false;
if (m_progressDlg)
delete m_progressDlg;
-
+
m_progressDlg = new KIPI::BatchProgressDialog(kapp->activeWindow(),
i18n("Flip images %1").arg(title));
-
+
connect(m_progressDlg, SIGNAL(cancelClicked()),
this, SLOT(slotCancel()));
@ -270,6 +270,7 @
if (!proceed) return;
m_total = items.count();
m_current = 0;
+ m_failed = false;
if (m_progressDlg)
delete m_progressDlg;
@ -299,6 +300,7 @
m_total = items.count();
m_current = 0;
+ m_failed = false;
if (m_progressDlg)
delete m_progressDlg;
@ -321,13 +323,13 @
m_thread->cancel();
KIPI::Interface* interface = dynamic_cast<KIPI::Interface*>( parent() );
-
+
if ( !interface )
{
kdError( 51000 ) << "Kipi interface is null!" << endl;
return;
}
-
+
interface->refreshImages( m_images );
}
@ -359,7 +361,7 @
text = i18n("Converting to Black & White \"%1\"").arg(d->fileName.section('/', -1));
break;
}
- default:
+ default:
{
kdWarning( 51000 ) << "KIPIJPEGLossLessPlugin: Unknown event" << endl;
}
@ -367,10 +369,12 @
m_progressDlg->addedAction(text, KIPI::StartingMessage);
}
- else
+ else
{
if (!d->success)
{
+ m_failed = true;
+
switch (d->action)
{
case(KIPIJPEGLossLessPlugin::Rotate):
@ -393,10 +397,11 @
kdWarning( 51000 ) << "KIPIJPEGLossLessPlugin: Unknown event" << endl;
}
}
-
+
m_progressDlg->addedAction(text, KIPI::WarningMessage);
+
if (!d->errString.isEmpty())
- m_progressDlg->addedAction(d->errString, KIPI::WarningMessage);
+ m_progressDlg->addedAction(d->errString, KIPI::WarningMessage);
}
else
{
@ -436,17 +441,25 @
{
m_current = 0;
+ if (m_failed)
+ {
#if KDE_VERSION >= 0x30200
- m_progressDlg->setButtonCancel( KStdGuiItem::close() );
+ m_progressDlg->setButtonCancel( KStdGuiItem::close() );
#else
- m_progressDlg->setButtonCancelText( i18n("&Close") );
+ m_progressDlg->setButtonCancelText( i18n("&Close") );
#endif
- disconnect(m_progressDlg, SIGNAL(cancelClicked()),
- this, SLOT(slotCancel()));
+ disconnect(m_progressDlg, SIGNAL(cancelClicked()),
+ this, SLOT(slotCancel()));
+ }
+ else
+ {
+ slotCancel();
+ m_progressDlg->close();
+ }
KIPI::Interface* interface = dynamic_cast<KIPI::Interface*>( parent() );
-
+
if ( !interface )
{
kdError( 51000 ) << "Kipi interface is null!" << endl;
@ -462,12 +475,12 @
if (action == m_action_AutoExif)
return KIPI::IMAGESPLUGIN;
else if ( action == m_action_RotateImage )
- return KIPI::IMAGESPLUGIN;
+ return KIPI::IMAGESPLUGIN;
else if ( action == m_action_FlipImage )
- return KIPI::IMAGESPLUGIN;
+ return KIPI::IMAGESPLUGIN;
else if ( action == m_action_Convert2GrayScale )
- return KIPI::IMAGESPLUGIN;
-
+ return KIPI::IMAGESPLUGIN;
+
kdWarning( 51000 ) << "Unrecognized action for plugin category identification" << endl;
return KIPI::IMAGESPLUGIN; // no warning from compiler, please
}
@ -475,13 +488,13 @
KURL::List Plugin_JPEGLossless::images()
{
KIPI::Interface* interface = dynamic_cast<KIPI::Interface*>( parent() );
-
+
if ( !interface )
{
kdError( 51000 ) << "Kipi interface is null!" << endl;
return KURL::List();
}
-
+
KIPI::ImageCollection images = interface->currentSelection();
if ( !images.isValid() )
return KURL::List();
--- trunk/extragear/libs/kipi-plugins/jpeglossless/plugin_jpeglossless.h #638733:638734
@ -1,11 +1,11 @
/* ============================================================
* Authors: Renchi Raju <renchi pooh tam uiuc edu>
- * Gilles Caulier <caulier dot gilles at kdemail dot net>
+ * Gilles Caulier <caulier dot gilles at gmail dot com>
* Date : 2003-09-26
* Description : JPEG loss less operations plugin
*
* Copyright 2003-2005 by Renchi Raju & Gilles Caulier
- * Copyright 2006 by Gilles Caulier
+ * Copyright 2006-2007 by Gilles Caulier
*
* This program is free software; you can redistribute it
* and/or modify it under the terms of the GNU General
@ -23,7 +23,7 @
#ifndef PLUGIN_JPEGLOSSLESS_H
#define PLUGIN_JPEGLOSSLESS_H
-// LibKiPi includes.
+// LibKipi includes.
#include <libkipi/plugin.h>
#include <libkipi/imagecollection.h>
@ -64,6 +64,8 @
private:
+ bool m_failed;
+
int m_total;
int m_current;
More information about the Kde-imaging
mailing list