File indexing completed on 2024-05-12 15:55:06

0001 /************************************************************************
0002  *                                  *
0003  *  This file is part of Kooka, a scanning/OCR application using    *
0004  *  Qt <http://www.qt.io> and KDE Frameworks <http://www.kde.org>.  *
0005  *                                  *
0006  *  Copyright (C) 2000-2016 Klaas Freitag <freitag@suse.de>     *
0007  *                          Jonathan Marten <jjm@keelhaul.me.uk>    *
0008  *                                  *
0009  *  Kooka is free software; you can redistribute it and/or modify it    *
0010  *  under the terms of the GNU Library General Public License as    *
0011  *  published by the Free Software Foundation and appearing in the  *
0012  *  file COPYING included in the packaging of this file;  either    *
0013  *  version 2 of the License, or (at your option) any later version.    *
0014  *                                  *
0015  *  As a special exception, permission is given to link this program    *
0016  *  with any version of the KADMOS OCR/ICR engine (a product of     *
0017  *  reRecognition GmbH, Kreuzlingen), and distribute the resulting  *
0018  *  executable without including the source code for KADMOS in the  *
0019  *  source distribution.                        *
0020  *                                  *
0021  *  This program is distributed in the hope that it will be useful, *
0022  *  but WITHOUT ANY WARRANTY; without even the implied warranty of  *
0023  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the   *
0024  *  GNU General Public License for more details.            *
0025  *                                  *
0026  *  You should have received a copy of the GNU General Public       *
0027  *  License along with this program;  see the file COPYING.  If     *
0028  *  not, see <http://www.gnu.org/licenses/>.                *
0029  *                                  *
0030  ************************************************************************/
0031 
0032 #include "destinationgallery.h"
0033 
0034 #include <kpluginfactory.h>
0035 #include <klocalizedstring.h>
0036 
0037 #include "scangallery.h"
0038 #include "kookasettings.h"
0039 #include "destination_logging.h"
0040 
0041 
0042 K_PLUGIN_FACTORY_WITH_JSON(DestinationGalleryFactory, "kookadestination-gallery.json", registerPlugin<DestinationGallery>();)
0043 #include "destinationgallery.moc"
0044 
0045 
0046 DestinationGallery::DestinationGallery(QObject *pnt, const QVariantList &args)
0047     : AbstractDestination(pnt, "DestinationGallery")
0048 {
0049 }
0050 
0051 
0052 bool DestinationGallery::scanStarting(ScanImage::ImageType type)
0053 {
0054     qCDebug(DESTINATION_LOG) << "type" << type;
0055     if (type==ScanImage::None) return (true);       // can't prompt for anything yet
0056 
0057     if (KookaSettings::saverAskBeforeScan())        // ask for file name first?
0058     {
0059         return (gallery()->prepareToSave(type));    // ask for file name and format
0060     }
0061     else return (true);
0062 }
0063 
0064 
0065 void DestinationGallery::imageScanned(ScanImage::Ptr img)
0066 {
0067     qCDebug(DESTINATION_LOG) << "received image size" << img->size();
0068     gallery()->addImage(img);
0069 }
0070 
0071 
0072 KLocalizedString DestinationGallery::scanDestinationString()
0073 {
0074     return (kxi18n("<filename>%1</filename>").subs(gallery()->saveURL().url(QUrl::PreferLocalFile)));
0075 }