| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 
 | /*
Gwenview: an image viewer
Copyright 2022 Ilya Pominov <ipominov@astralinux.ru>
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*/
#include "annotatedialog.h"
// Qt
#include <QDialogButtonBox>
#include <QPixmap>
#include <QVBoxLayout>
// KImageAnnotator
#include <kImageAnnotator/KImageAnnotator.h>
namespace Gwenview
{
AnnotateDialog::AnnotateDialog(QWidget *parent)
    : QDialog(parent)
    , mAnnotator(new kImageAnnotator::KImageAnnotator())
{
    mAnnotator->setParent(this);
    auto layout = new QVBoxLayout;
    layout->addWidget(mAnnotator);
    auto buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel);
    layout->addWidget(buttonBox);
    setLayout(layout);
    connect(buttonBox, &QDialogButtonBox::accepted, this, &QDialog::accept);
    connect(buttonBox, &QDialogButtonBox::rejected, this, &QDialog::reject);
}
AnnotateDialog::~AnnotateDialog()
{
    delete mAnnotator;
}
void AnnotateDialog::setImage(const QImage &image)
{
    mAnnotator->loadImage(QPixmap::fromImage(image));
}
QImage AnnotateDialog::getImage() const
{
    return mAnnotator->image();
}
} // namespace
 |