diff options
Diffstat (limited to 'chalk/plugins/viewplugins/imagesize/imagesize.cc')
-rw-r--r-- | chalk/plugins/viewplugins/imagesize/imagesize.cc | 190 |
1 files changed, 0 insertions, 190 deletions
diff --git a/chalk/plugins/viewplugins/imagesize/imagesize.cc b/chalk/plugins/viewplugins/imagesize/imagesize.cc deleted file mode 100644 index c795924e1..000000000 --- a/chalk/plugins/viewplugins/imagesize/imagesize.cc +++ /dev/null @@ -1,190 +0,0 @@ -/* - * imagesize.cc -- Part of Chalk - * - * Copyright (c) 2004 Boudewijn Rempt (boud@valdyas.org) - * - * 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 <math.h> - -#include <stdlib.h> - -#include <tqslider.h> -#include <tqrect.h> -#include <tqpoint.h> - -#include <tdelocale.h> -#include <kiconloader.h> -#include <kinstance.h> -#include <tdemessagebox.h> -#include <kstandarddirs.h> -#include <tdetempfile.h> -#include <kdebug.h> -#include <kgenericfactory.h> -#include <kstdaction.h> - -#include <kis_doc.h> -#include <kis_config.h> -#include <kis_image.h> -#include <kis_layer.h> -#include <kis_global.h> -#include <kis_types.h> -#include <kis_view.h> -#include <kis_selection.h> -#include <kis_selection_manager.h> -#include <kis_transaction.h> -#include <kis_canvas_controller.h> -#include <kis_scale_visitor.h> - -#include "imagesize.h" -#include "dlg_imagesize.h" -#include "dlg_layersize.h" -#include "kis_filter_strategy.h" - -typedef KGenericFactory<ImageSize> ImageSizeFactory; -K_EXPORT_COMPONENT_FACTORY( chalkimagesize, ImageSizeFactory( "chalk" ) ) - -ImageSize::ImageSize(TQObject *parent, const char *name, const TQStringList &) - : KParts::Plugin(parent, name) -{ - if ( parent->inherits("KisView") ) - { - setInstance(ImageSizeFactory::instance()); - setXMLFile(locate("data","chalkplugins/imagesize.rc"), true); - - (void) new TDEAction(i18n("Change &Image Size..."), 0, "Shift-s", this, TQT_SLOT(slotImageSize()), actionCollection(), "imagesize"); - (void) new TDEAction(i18n("&Scale Layer..."), 0, 0, this, TQT_SLOT(slotLayerSize()), actionCollection(), "layerscale"); - - - m_view = (KisView*) parent; - // Selection manager takes ownership? - TDEAction * a = new TDEAction(i18n("&Scale Selection..."), 0, 0, this, TQT_SLOT(slotSelectionScale()), actionCollection(), "selectionscale"); - TQ_CHECK_PTR(a); - m_view ->canvasSubject()-> selectionManager()->addSelectionAction(a); - } -} - -ImageSize::~ImageSize() -{ - m_view = 0; -} - -void ImageSize::slotImageSize() -{ - KisImageSP image = m_view->canvasSubject()->currentImg(); - - if (!image) return; - - DlgImageSize * dlgImageSize = new DlgImageSize(m_view, "ImageSize"); - TQ_CHECK_PTR(dlgImageSize); - - dlgImageSize->setCaption(i18n("Image Size")); - - KisConfig cfg; - - dlgImageSize->setWidth(image->width()); - dlgImageSize->setHeight(image->height()); - - if (dlgImageSize->exec() == TQDialog::Accepted) { - TQ_INT32 w = dlgImageSize->width(); - TQ_INT32 h = dlgImageSize->height(); - - if (dlgImageSize->scale()) { - m_view->scaleCurrentImage((double)w / ((double)(image->width())), - (double)h / ((double)(image->height())), - dlgImageSize->filterType()); - } - else { - m_view->resizeCurrentImage(w, h, dlgImageSize->cropLayers()); - } - } - - delete dlgImageSize; -} - -void ImageSize::slotLayerSize() -{ - KisImageSP image = m_view->canvasSubject()->currentImg(); - - if (!image) return; - - DlgLayerSize * dlgLayerSize = new DlgLayerSize(m_view, "LayerSize"); - TQ_CHECK_PTR(dlgLayerSize); - - dlgLayerSize->setCaption(i18n("Layer Size")); - - KisConfig cfg; - KisPaintDeviceSP dev = image->activeDevice(); - - TQRect rc = dev->exactBounds(); - - dlgLayerSize->setWidth(rc.width()); - dlgLayerSize->setHeight(rc.height()); - - if (dlgLayerSize->exec() == TQDialog::Accepted) { - TQ_INT32 w = dlgLayerSize->width(); - TQ_INT32 h = dlgLayerSize->height(); - - m_view->scaleLayer((double)w / ((double)(rc.width())), - (double)h / ((double)(rc.height())), - dlgLayerSize->filterType()); - } - delete dlgLayerSize; -} - -void ImageSize::slotSelectionScale() -{ - KisImageSP image = m_view->canvasSubject()->currentImg(); - - if (!image) return; - - KisPaintDeviceSP layer = image->activeDevice(); - - if (!layer) return; - - if (!layer->hasSelection()) return; - - - DlgLayerSize * dlgLayerSize = new DlgLayerSize(m_view, "SelectionScale"); - TQ_CHECK_PTR(dlgLayerSize); - - dlgLayerSize->setCaption(i18n("Scale Selection")); - - KisConfig cfg; - TQRect rc = layer->selection()->selectedRect(); - - dlgLayerSize->setWidth(rc.width()); - dlgLayerSize->setHeight(rc.height()); - - if (dlgLayerSize->exec() == TQDialog::Accepted) { - TQ_INT32 w = dlgLayerSize->width(); - TQ_INT32 h = dlgLayerSize->height(); - - KisScaleWorker worker (layer->selection().data(), - (double)w / ((double)(rc.width())), - (double)h / ((double)(rc.height())), - dlgLayerSize->filterType()); - worker.run(); - - m_view->getCanvasController()->updateCanvas(); - - } - delete dlgLayerSize; -} - - -#include "imagesize.moc" |