File indexing completed on 2024-05-12 15:58:37
0001 /* 0002 * SPDX-FileCopyrightText: 2007 Cyrille Berger <cberger@cberger.net> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "kis_processing_information.h" 0008 #include "kis_paint_device.h" 0009 #include "kis_selection.h" 0010 #include "kis_image.h" 0011 0012 struct Q_DECL_HIDDEN KisConstProcessingInformation::Private { 0013 Private() : device(0), selection(0) {} 0014 KisPaintDeviceSP device; 0015 KisSelectionSP selection; 0016 QPoint topLeft; 0017 }; 0018 0019 KisConstProcessingInformation::KisConstProcessingInformation(const KisPaintDeviceSP device, const QPoint& topLeft, const KisSelectionSP selection) : d(new Private) 0020 { 0021 d->device = device; 0022 d->selection = selection; 0023 d->topLeft = topLeft; 0024 } 0025 0026 KisConstProcessingInformation::KisConstProcessingInformation(const KisConstProcessingInformation& _rhs) : d(new Private) 0027 { 0028 *d = *_rhs.d; 0029 } 0030 0031 KisConstProcessingInformation& KisConstProcessingInformation::operator=(const KisConstProcessingInformation & _rhs) 0032 { 0033 *d = *_rhs.d; 0034 return *this; 0035 } 0036 0037 KisConstProcessingInformation::~KisConstProcessingInformation() 0038 { 0039 delete d; 0040 } 0041 0042 const KisPaintDeviceSP KisConstProcessingInformation::paintDevice() const 0043 { 0044 return d->device; 0045 } 0046 0047 const KisSelectionSP KisConstProcessingInformation::selection() const 0048 { 0049 return d->selection; 0050 } 0051 0052 const QPoint& KisConstProcessingInformation::topLeft() const 0053 { 0054 return d->topLeft; 0055 } 0056 0057 struct Q_DECL_HIDDEN KisProcessingInformation::Private { 0058 KisPaintDeviceSP device; 0059 }; 0060 0061 KisProcessingInformation::KisProcessingInformation(KisPaintDeviceSP device, const QPoint& topLeft, const KisSelectionSP selection) : KisConstProcessingInformation(device, topLeft, selection), d(new Private) 0062 { 0063 d->device = device; 0064 } 0065 0066 KisProcessingInformation::KisProcessingInformation(const KisProcessingInformation& _rhs) : KisConstProcessingInformation(_rhs), d(new Private(*_rhs.d)) 0067 { 0068 } 0069 0070 KisProcessingInformation& KisProcessingInformation::operator=(const KisProcessingInformation & _rhs) 0071 { 0072 *d = *_rhs.d; 0073 KisConstProcessingInformation::operator=(_rhs); 0074 return *this; 0075 } 0076 0077 KisProcessingInformation::~KisProcessingInformation() 0078 { 0079 delete d; 0080 } 0081 0082 KisPaintDeviceSP KisProcessingInformation::paintDevice() 0083 { 0084 return d->device; 0085 }