20#include "kis_import_catcher.h"
27#include "kis_group_layer.h"
29KisImportCatcher::KisImportCatcher(KURL url, KisImageSP image)
31 , m_doc( new KisDoc() )
36 if ( !m_doc->isLoading() ) {
37 slotLoadingFinished();
40 connect(m_doc, TQ_SIGNAL(loadingFinished()), this, TQ_SLOT(slotLoadingFinished()));
44void KisImportCatcher::slotLoadingFinished()
46 KisImageSP importedImage = m_doc->currentImage();
49 KisLayerSP importedImageLayer = importedImage->rootLayer().data();
51 if (importedImageLayer != 0) {
53 if (importedImageLayer->numLayers() == 2) {
56 importedImageLayer = importedImageLayer->firstChild();
57 importedImageLayer->parent()->removeLayer(importedImageLayer);
60 importedImageLayer->setName(m_url.prettyURL());
62 KisGroupLayerSP parent = 0;
63 KisLayerSP currentActiveLayer = m_image->activeLayer();
65 if (currentActiveLayer) {
66 parent = currentActiveLayer->parent();
70 parent = m_image->rootLayer();
73 m_image->addLayer(importedImageLayer.data(), parent, currentActiveLayer);
|