r16122 by fschmid - Partly fixed Bug #9599. selecting single items out of groups works now with the Outline Palette.

scribus-commit scribus-commit at lists.scribus.net
Mon Dec 20 20:34:48 CET 2010


Author: fschmid
Date: Mon Dec 20 19:34:48 2010
New Revision: 16122

URL: http://scribus.info/websvn/listing.php?repname=Scribus&sc=1&rev=16122
Log:
Partly fixed Bug #9599. selecting single items out of groups works now with the Outline Palette.

Modified:
    trunk/Scribus/scribus/canvas.cpp
    trunk/Scribus/scribus/canvas.h
    trunk/Scribus/scribus/canvasmode_normal.cpp
    trunk/Scribus/scribus/documentchecker.cpp
    trunk/Scribus/scribus/scribus.cpp
    trunk/Scribus/scribus/scribus.h
    trunk/Scribus/scribus/scribusdoc.cpp
    trunk/Scribus/scribus/scribusdoc.h
    trunk/Scribus/scribus/ui/bookmwin.cpp
    trunk/Scribus/scribus/ui/bookmwin.h
    trunk/Scribus/scribus/ui/checkDocument.cpp
    trunk/Scribus/scribus/ui/checkDocument.h
    trunk/Scribus/scribus/ui/outlinepalette.cpp
    trunk/Scribus/scribus/ui/outlinepalette.h
    trunk/Scribus/scribus/ui/propertiespalette.cpp

Modified: trunk/Scribus/scribus/canvas.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/canvas.cpp
==============================================================================
--- trunk/Scribus/scribus/canvas.cpp (original)
+++ trunk/Scribus/scribus/canvas.cpp Mon Dec 20 19:34:48 2010
@@ -468,8 +468,47 @@
 			currClip.closeSubpath();
 			if (currPath.intersects(mouseArea) || currClip.intersects(mouseArea))
 			{
+				if (currItem->isGroup() && allowInGroup)
+				{
+					PageItem* ret = itemInGroup(currItem, itemPos, mouseArea);
+					if (ret != NULL)
+						return ret;
+				}
 				return currItem;
 			}
+		}
+		--currNr;
+	}
+	return NULL;
+}
+
+PageItem* Canvas::itemInGroup(PageItem* group, QTransform itemPos, QRectF mouseArea) const
+{
+	int currNr = group->groupItemList.count() - 1;
+	while (currNr >= 0)
+	{
+		PageItem* embedded = group->groupItemList.at(currNr);
+		QPainterPath currPath(itemPos.map(QPointF(embedded->gXpos,embedded->gYpos)));
+		currPath.lineTo(itemPos.map(QPointF(embedded->width(), embedded->gYpos)));
+		currPath.lineTo(itemPos.map(QPointF(embedded->width(), embedded->height())));
+		currPath.lineTo(itemPos.map(QPointF(embedded->gXpos, embedded->height())));
+		currPath.closeSubpath();
+		QPainterPath currClip;
+		currClip.addPolygon(itemPos.map(QPolygonF(embedded->Clip)));
+		currClip.closeSubpath();
+		if (currPath.intersects(mouseArea) || currClip.intersects(mouseArea))
+		{
+			if (embedded->isGroup())
+			{
+				QTransform itemPosG = itemPos;
+				itemPosG.translate(embedded->gXpos,embedded->gYpos);
+				itemPosG.scale(group->width() / group->groupWidth, group->height() / group->groupHeight);
+				PageItem* ret = itemInGroup(embedded, itemPosG, mouseArea);
+				if (ret != NULL)
+					return ret;
+			}
+			else
+				return embedded;
 		}
 		--currNr;
 	}

Modified: trunk/Scribus/scribus/canvas.h
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/canvas.h
==============================================================================
--- trunk/Scribus/scribus/canvas.h (original)
+++ trunk/Scribus/scribus/canvas.h Mon Dec 20 19:34:48 2010
@@ -169,7 +169,7 @@
 	 (this flag is ignored in masterpage mode, since all items are masterpage items then).
 	 */
 	PageItem* itemUnderCursor(QPoint globalPos, PageItem* itemAbove=NULL, bool allowInGroup=false, bool allowMasterItems=false) const;
-	
+	PageItem* itemInGroup(PageItem* group, QTransform itemPos, QRectF mouseArea) const;
 	PageItem* itemUnderItem(PageItem* item, int& index) const;
 	
 	const QPolygon& redrawPolygon() const { return m_viewMode.redrawPolygon; }

Modified: trunk/Scribus/scribus/canvasmode_normal.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/canvasmode_normal.cpp
==============================================================================
--- trunk/Scribus/scribus/canvasmode_normal.cpp (original)
+++ trunk/Scribus/scribus/canvasmode_normal.cpp Mon Dec 20 19:34:48 2010
@@ -1051,7 +1051,7 @@
 bool CanvasMode_Normal::SeleItem(QMouseEvent *m)
 {
 	m_canvas->m_viewMode.operItemSelecting = true;
-	const unsigned SELECT_IN_GROUP = Qt::AltModifier;
+	const unsigned SELECT_IN_GROUP = Qt::AltModifier; // Qt::MetaModifier;
 	const unsigned SELECT_MULTIPLE = Qt::ShiftModifier;
 	const unsigned SELECT_BENEATH = Qt::ControlModifier;
 	QTransform p;

Modified: trunk/Scribus/scribus/documentchecker.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/documentchecker.cpp
==============================================================================
--- trunk/Scribus/scribus/documentchecker.cpp (original)
+++ trunk/Scribus/scribus/documentchecker.cpp Mon Dec 20 19:34:48 2010
@@ -38,7 +38,6 @@
 
 bool DocumentChecker::checkDocument(ScribusDoc *currDoc)
 {
-	PageItem* currItem;
 	QString chstr;
 	struct CheckerPrefs checkerSettings;
 	checkerSettings.ignoreErrors = currDoc->checkerProfiles()[currDoc->curCheckProfile()].ignoreErrors;
@@ -88,45 +87,67 @@
 		if (layerError.count() != 0)
 			currDoc->docLayerErrors.insert(ll.ID, layerError);
 	}
-	for (int d = 0; d < currDoc->MasterItems.count(); ++d)
+	QList<PageItem*> allItems;
+	uint masterItemsCount = currDoc->MasterItems.count();
+	for (uint i = 0; i < masterItemsCount; ++i)
 	{
-		currItem = currDoc->MasterItems.at(d);
-		if (!currItem->printEnabled())
-			continue;
-		if (!(currDoc->layerPrintable(currItem->LayerID)) && (checkerSettings.ignoreOffLayers))
-			continue;
-		itemError.clear();
-		if (((currItem->isAnnotation()) || (currItem->isBookmark)) && (checkerSettings.checkAnnotations))
-			itemError.insert(PDFAnnotField, 0);
-		if (((currItem->fillTransparency() != 0.0) || (currItem->lineTransparency() != 0.0) || (currItem->fillBlendmode() != 0) || (currItem->lineBlendmode() != 0)) && (checkerSettings.checkTransparency))
-			itemError.insert(Transparency, 0);
-		if ((currItem->GrType != 0) && (checkerSettings.checkTransparency))
+		PageItem* currItem = currDoc->MasterItems.at(i);
+		if (currItem->isGroup())
+			allItems = currItem->getItemList();
+		else
+			allItems.append(currItem);
+		for (int ii = 0; ii < allItems.count(); ii++)
 		{
-			if (currItem->GrType == 9)
-			{
-				if (currItem->GrCol1transp != 1.0)
-					itemError.insert(Transparency, 0);
-				else if (currItem->GrCol2transp != 1.0)
-					itemError.insert(Transparency, 0);
-				else if (currItem->GrCol3transp != 1.0)
-					itemError.insert(Transparency, 0);
-				else if (currItem->GrCol4transp != 1.0)
-					itemError.insert(Transparency, 0);
-			}
-			else if (currItem->GrType == 11)
-			{
-				for (int grow = 0; grow < currItem->meshGradientArray.count(); grow++)
-				{
-					for (int gcol = 0; gcol < currItem->meshGradientArray[grow].count(); gcol++)
-					{
-						if (currItem->meshGradientArray[grow][gcol].transparency != 1.0)
+			currItem = allItems.at(ii);
+			if (!currItem->printEnabled())
+				continue;
+			if (!(currDoc->layerPrintable(currItem->LayerID)) && (checkerSettings.ignoreOffLayers))
+				continue;
+			itemError.clear();
+			if (((currItem->isAnnotation()) || (currItem->isBookmark)) && (checkerSettings.checkAnnotations))
+				itemError.insert(PDFAnnotField, 0);
+			if (((currItem->fillTransparency() != 0.0) || (currItem->lineTransparency() != 0.0) || (currItem->fillBlendmode() != 0) || (currItem->lineBlendmode() != 0)) && (checkerSettings.checkTransparency))
+				itemError.insert(Transparency, 0);
+			if ((currItem->GrType != 0) && (checkerSettings.checkTransparency))
+			{
+				if (currItem->GrType == 9)
+				{
+					if (currItem->GrCol1transp != 1.0)
+						itemError.insert(Transparency, 0);
+					else if (currItem->GrCol2transp != 1.0)
+						itemError.insert(Transparency, 0);
+					else if (currItem->GrCol3transp != 1.0)
+						itemError.insert(Transparency, 0);
+					else if (currItem->GrCol4transp != 1.0)
+						itemError.insert(Transparency, 0);
+				}
+				else if (currItem->GrType == 11)
+				{
+					for (int grow = 0; grow < currItem->meshGradientArray.count(); grow++)
+					{
+						for (int gcol = 0; gcol < currItem->meshGradientArray[grow].count(); gcol++)
+						{
+							if (currItem->meshGradientArray[grow][gcol].transparency != 1.0)
+								itemError.insert(Transparency, 0);
+						}
+					}
+				}
+				else
+				{
+					QList<VColorStop*> colorStops = currItem->fill_gradient.colorStops();
+					for( int offset = 0 ; offset < colorStops.count() ; offset++ )
+					{
+						if (colorStops[offset]->opacity != 1.0)
+						{
 							itemError.insert(Transparency, 0);
-					}
-				}
-			}
-			else
-			{
-				QList<VColorStop*> colorStops = currItem->fill_gradient.colorStops();
+							break;
+						}
+					}
+				}
+			}
+			if ((currItem->GrTypeStroke != 0) && (checkerSettings.checkTransparency))
+			{
+				QList<VColorStop*> colorStops = currItem->stroke_gradient.colorStops();
 				for( int offset = 0 ; offset < colorStops.count() ; offset++ )
 				{
 					if (colorStops[offset]->opacity != 1.0)
@@ -136,463 +157,460 @@
 					}
 				}
 			}
+			if ((currItem->GrMask > 0) && (checkerSettings.checkTransparency))
+				itemError.insert(Transparency, 0);
+			if ((currItem->OwnPage == -1) && (checkerSettings.checkOrphans))
+				itemError.insert(ObjectNotOnPage, 0);
+	#ifdef HAVE_OSG
+			if (currItem->asImageFrame() && !currItem->asOSGFrame())
+	#else
+			if (currItem->asImageFrame())
+	#endif
+			{
+				if ((!currItem->PictureIsAvailable) && (checkerSettings.checkPictures))
+					itemError.insert(MissingImage, 0);
+				else
+				{
+					if  (((qRound(72.0 / currItem->imageXScale()) < checkerSettings.minResolution) || (qRound(72.0 / currItem->imageYScale()) < checkerSettings.minResolution))
+							&& (currItem->isRaster) && (checkerSettings.checkResolution))
+						itemError.insert(ImageDPITooLow, 0);
+					if  (((qRound(72.0 / currItem->imageXScale()) > checkerSettings.maxResolution) || (qRound(72.0 / currItem->imageYScale()) > checkerSettings.maxResolution))
+							&& (currItem->isRaster) && (checkerSettings.checkResolution))
+						itemError.insert(ImageDPITooHigh, 0);
+					QFileInfo fi = QFileInfo(currItem->Pfile);
+					QString ext = fi.suffix().toLower();
+					if (extensionIndicatesPDF(ext) && (checkerSettings.checkRasterPDF))
+						itemError.insert(PlacedPDF, 0);
+					if ((ext == "gif") && (checkerSettings.checkForGIF))
+						itemError.insert(ImageIsGIF, 0);
+	
+					if (extensionIndicatesPDF(ext))
+					{
+						PDFAnalyzer analyst(currItem->Pfile);
+						QList<PDFColorSpace> usedColorSpaces;
+						bool hasTransparency = false;
+						QList<PDFFont> usedFonts;
+						int pageNum = qMin(qMax(1, currItem->pixm.imgInfo.actualPageNumber), currItem->pixm.imgInfo.numberOfPages) - 1;
+						QList<PDFImage> imgs;
+						bool succeeded = analyst.inspectPDF(pageNum, usedColorSpaces, hasTransparency, usedFonts, imgs);
+						if (succeeded)
+						{
+							if (checkerSettings.checkNotCMYKOrSpot || checkerSettings.checkDeviceColorsAndOutputIntend)
+							{
+								eColorSpaceType currPrintProfCS = ColorSpace_Unknown;
+								if (currDoc->HasCMS)
+								{
+									ScColorProfile printerProf = currDoc->DocPrinterProf;
+									currPrintProfCS = printerProf.colorSpace();
+								}
+								if (checkerSettings.checkNotCMYKOrSpot)
+								{
+									for (int i=0; i<usedColorSpaces.size(); ++i)
+									{
+										if (usedColorSpaces[i] == CS_DeviceRGB || usedColorSpaces[i] == CS_ICCBased || usedColorSpaces[i] == CS_CalGray
+											|| usedColorSpaces[i] == CS_CalRGB || usedColorSpaces[i] == CS_Lab)
+										{
+											itemError.insert(NotCMYKOrSpot, 0);
+											break;
+										}
+									}
+								}
+								if (checkerSettings.checkDeviceColorsAndOutputIntend && currDoc->HasCMS)
+								{
+									for (int i=0; i<usedColorSpaces.size(); ++i)
+									{
+										if (currPrintProfCS == ColorSpace_Cmyk && (usedColorSpaces[i] == CS_DeviceRGB || usedColorSpaces[i] == CS_DeviceGray))
+										{
+											itemError.insert(DeviceColorAndOutputIntend, 0);
+											break;
+										}
+										else if (currPrintProfCS == ColorSpace_Rgb && (usedColorSpaces[i] == CS_DeviceCMYK || usedColorSpaces[i] == CS_DeviceGray))
+										{
+											itemError.insert(DeviceColorAndOutputIntend, 0);
+											break;
+										}
+									}
+								}
+							}
+							if (checkerSettings.checkTransparency && hasTransparency)
+								itemError.insert(Transparency, 0);
+							if (checkerSettings.checkFontNotEmbedded || checkerSettings.checkFontIsOpenType)
+							{
+								for (int i=0; i<usedFonts.size(); ++i)
+								{
+									PDFFont currentFont = usedFonts[i];
+									if (!currentFont.isEmbedded && checkerSettings.checkFontNotEmbedded)
+										itemError.insert(FontNotEmbedded, 0);
+									if (currentFont.isEmbedded && currentFont.isOpenType && checkerSettings.checkFontIsOpenType)
+										itemError.insert(EmbeddedFontIsOpenType, 0);
+								}
+							}
+							if (checkerSettings.checkResolution)
+							{
+								for (int i=0; i<imgs.size(); ++i)
+								{
+									if ((imgs[i].dpiX < checkerSettings.minResolution) || (imgs[i].dpiY < checkerSettings.minResolution))
+										itemError.insert(ImageDPITooLow, 0);
+									if ((imgs[i].dpiX > checkerSettings.maxResolution) || (imgs[i].dpiY > checkerSettings.maxResolution))
+										itemError.insert(ImageDPITooHigh, 0);
+								}
+							}
+						}
+					}
+				}
+			}
+			if ((currItem->asTextFrame()) || (currItem->asPathText()))
+			{
+	#ifndef NLS_PROTO
+				if ( currItem->frameOverflows() && (checkerSettings.checkOverflow) && (!((currItem->isAnnotation()) && ((currItem->annotation().Type() == 5) || (currItem->annotation().Type() == 6)))))
+					itemError.insert(TextOverflow, 0);
+				if (currItem->isAnnotation())
+				{
+					ScFace::FontFormat fformat = currItem->itemText.defaultStyle().charStyle().font().format();
+					if (!(fformat == ScFace::SFNT || fformat == ScFace::TTCF))
+						itemError.insert(WrongFontInAnnotation, 0);
+				}
+				for (int e = currItem->firstInFrame(); e <= currItem->lastInFrame(); ++e)
+				{
+					uint chr = currItem->itemText.text(e).unicode();
+					if ((chr == 13) || (chr == 32) || (chr == 29) || (chr == 28) || (chr == 27) || (chr == 26) || (chr == 25))
+						continue;
+					if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
+					{
+						chstr = currItem->itemText.text(e);
+						if (chstr.toUpper() != currItem->itemText.text(e))
+							chstr = chstr.toUpper();
+						chr = chstr[0].unicode();
+					}
+					if (chr == 9)
+					{
+						for (int t1 = 0; t1 < currItem->itemText.paragraphStyle(e).tabValues().count(); t1++)
+						{
+							if (currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar.isNull())
+								continue;
+							chstr = QString(currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar);
+							if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
+							{
+								if (chstr.toUpper() != QString(currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar))
+									chstr = chstr.toUpper();
+							}
+							chr = chstr[0].unicode();
+							if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
+								itemError.insert(MissingGlyph, 0);
+						}
+						for (int t1 = 0; t1 < currItem->itemText.defaultStyle().tabValues().count(); t1++)
+						{
+							if (currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar.isNull())
+								continue;
+							chstr = QString(currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar);
+							if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
+							{
+								if (chstr.toUpper() != QString(currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar))
+									chstr = chstr.toUpper();
+							}
+							chr = chstr[0].unicode();
+							if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
+								itemError.insert(MissingGlyph, 0);
+						}
+						continue;
+					}
+					if ((chr == 30) || (chr == 23))
+					{
+						for (int numco = 0x30; numco < 0x3A; ++numco)
+						{
+							if ((!currItem->itemText.charStyle(e).font().canRender(numco)) && (checkerSettings.checkGlyphs))
+								itemError.insert(MissingGlyph, 0);
+						}
+						continue;
+					}
+					if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
+						itemError.insert(MissingGlyph, 0);
+				}
+	#endif
+			}
+			if (((currItem->fillColor() != CommonStrings::None) || (currItem->lineColor() != CommonStrings::None)) && (checkerSettings.checkNotCMYKOrSpot))
+			{
+				bool rgbUsed = false;
+				if ((currItem->fillColor() != CommonStrings::None))
+				{
+					ScColor tmpC = currDoc->PageColors[currItem->fillColor()];
+					if (tmpC.getColorModel() == colorModelRGB)
+						rgbUsed = true;
+				}
+				if ((currItem->lineColor() != CommonStrings::None))
+				{
+					ScColor tmpC = currDoc->PageColors[currItem->lineColor()];
+					if (tmpC.getColorModel() == colorModelRGB)
+						rgbUsed = true;
+				}
+				if (rgbUsed)
+					itemError.insert(NotCMYKOrSpot, 0);
+			}
+			if (itemError.count() != 0)
+				currDoc->masterItemErrors.insert(currItem, itemError);
 		}
-		if ((currItem->GrTypeStroke != 0) && (checkerSettings.checkTransparency))
+	}
+	allItems.clear();
+	uint docItemsCount = currDoc->DocItems.count();
+	for (uint i = 0; i < docItemsCount; ++i)
+	{
+		PageItem* currItem = currDoc->DocItems.at(i);
+		if (currItem->isGroup())
+			allItems = currItem->getItemList();
+		else
+			allItems.append(currItem);
+		for (int ii = 0; ii < allItems.count(); ii++)
 		{
-			QList<VColorStop*> colorStops = currItem->stroke_gradient.colorStops();
-			for( int offset = 0 ; offset < colorStops.count() ; offset++ )
-			{
-				if (colorStops[offset]->opacity != 1.0)
-				{
-					itemError.insert(Transparency, 0);
-					break;
-				}
-			}
+			currItem = allItems.at(ii);
+			if (!currItem->printEnabled())
+				continue;
+			if (!(currDoc->layerPrintable(currItem->LayerID)) && (checkerSettings.ignoreOffLayers))
+				continue;
+			itemError.clear();
+			if (((currItem->fillTransparency() != 0.0) || (currItem->lineTransparency() != 0.0) || (currItem->fillBlendmode() != 0) || (currItem->lineBlendmode() != 0)) && (checkerSettings.checkTransparency))
+				itemError.insert(Transparency, 0);
+			if ((currItem->GrType != 0) && (checkerSettings.checkTransparency))
+			{
+				if (currItem->GrType == 9)
+				{
+					if (currItem->GrCol1transp != 1.0)
+						itemError.insert(Transparency, 0);
+					else if (currItem->GrCol2transp != 1.0)
+						itemError.insert(Transparency, 0);
+					else if (currItem->GrCol3transp != 1.0)
+						itemError.insert(Transparency, 0);
+					else if (currItem->GrCol4transp != 1.0)
+						itemError.insert(Transparency, 0);
+				}
+				else if (currItem->GrType == 11)
+				{
+					for (int grow = 0; grow < currItem->meshGradientArray.count(); grow++)
+					{
+						for (int gcol = 0; gcol < currItem->meshGradientArray[grow].count(); gcol++)
+						{
+							if (currItem->meshGradientArray[grow][gcol].transparency != 1.0)
+								itemError.insert(Transparency, 0);
+						}
+					}
+				}
+				else
+				{
+					QList<VColorStop*> colorStops = currItem->fill_gradient.colorStops();
+					for( int offset = 0 ; offset < colorStops.count() ; offset++ )
+					{
+						if (colorStops[offset]->opacity != 1.0)
+						{
+							itemError.insert(Transparency, 0);
+							break;
+						}
+					}
+				}
+			}
+			if ((currItem->GrTypeStroke != 0) && (checkerSettings.checkTransparency))
+			{
+				QList<VColorStop*> colorStops = currItem->stroke_gradient.colorStops();
+				for( int offset = 0 ; offset < colorStops.count() ; offset++ )
+				{
+					if (colorStops[offset]->opacity != 1.0)
+					{
+						itemError.insert(Transparency, 0);
+						break;
+					}
+				}
+			}
+			if ((currItem->GrMask > 0) && (checkerSettings.checkTransparency))
+				itemError.insert(Transparency, 0);
+			if (((currItem->isAnnotation()) || (currItem->isBookmark)) && (checkerSettings.checkAnnotations))
+				itemError.insert(PDFAnnotField, 0);
+			if ((currItem->OwnPage == -1) && (checkerSettings.checkOrphans))
+				itemError.insert(ObjectNotOnPage, 0);
+	#ifdef HAVE_OSG
+			if (currItem->asImageFrame() && !currItem->asOSGFrame())
+	#else
+			if (currItem->asImageFrame())
+	#endif
+			{
+				if ((!currItem->PictureIsAvailable) && (checkerSettings.checkPictures))
+					itemError.insert(MissingImage, 0);
+				else
+				{
+					if  (((qRound(72.0 / currItem->imageXScale()) < checkerSettings.minResolution) || (qRound(72.0 / currItem->imageYScale()) < checkerSettings.minResolution))
+							&& (currItem->isRaster) && (checkerSettings.checkResolution))
+						itemError.insert(ImageDPITooLow, 0);
+					if  (((qRound(72.0 / currItem->imageXScale()) > checkerSettings.maxResolution) || (qRound(72.0 / currItem->imageYScale()) > checkerSettings.maxResolution))
+							&& (currItem->isRaster) && (checkerSettings.checkResolution))
+						itemError.insert(ImageDPITooHigh, 0);
+					QFileInfo fi = QFileInfo(currItem->Pfile);
+					QString ext = fi.suffix().toLower();
+					if (extensionIndicatesPDF(ext) && (checkerSettings.checkRasterPDF))
+						itemError.insert(PlacedPDF, 0);
+					if ((ext == "gif") && (checkerSettings.checkForGIF))
+						itemError.insert(ImageIsGIF, 0);
+					if (extensionIndicatesPDF(ext))
+					{
+						PDFAnalyzer analyst(currItem->Pfile);
+						QList<PDFColorSpace> usedColorSpaces;
+						bool hasTransparency = false;
+						QList<PDFFont> usedFonts;
+						int pageNum = qMin(qMax(1, currItem->pixm.imgInfo.actualPageNumber), currItem->pixm.imgInfo.numberOfPages) - 1;
+						QList<PDFImage> imgs;
+						bool succeeded = analyst.inspectPDF(pageNum, usedColorSpaces, hasTransparency, usedFonts, imgs);
+						if (succeeded)
+						{
+							if (checkerSettings.checkNotCMYKOrSpot || checkerSettings.checkDeviceColorsAndOutputIntend)
+							{
+								int currPrintProfCS = -1;
+								if (currDoc->HasCMS)
+								{
+									ScColorProfile printerProf = currDoc->DocPrinterProf;
+									currPrintProfCS = static_cast<int>(printerProf.colorSpace());
+								}
+								if (checkerSettings.checkNotCMYKOrSpot)
+								{
+									for (int i=0; i<usedColorSpaces.size(); ++i)
+									{
+										if (usedColorSpaces[i] == CS_DeviceRGB || usedColorSpaces[i] == CS_ICCBased || usedColorSpaces[i] == CS_CalGray
+											|| usedColorSpaces[i] == CS_CalRGB || usedColorSpaces[i] == CS_Lab)
+										{
+											itemError.insert(NotCMYKOrSpot, 0);
+											break;
+										}
+									}
+								}
+								if (checkerSettings.checkDeviceColorsAndOutputIntend && currDoc->HasCMS)
+								{
+									for (int i=0; i<usedColorSpaces.size(); ++i)
+									{
+										if (currPrintProfCS == ColorSpace_Cmyk && (usedColorSpaces[i] == CS_DeviceRGB || usedColorSpaces[i] == CS_DeviceGray))
+										{
+											itemError.insert(DeviceColorAndOutputIntend, 0);
+											break;
+										}
+										else if (currPrintProfCS == ColorSpace_Rgb && (usedColorSpaces[i] == CS_DeviceCMYK || usedColorSpaces[i] == CS_DeviceGray))
+										{
+											itemError.insert(DeviceColorAndOutputIntend, 0);
+											break;
+										}
+									}
+								}
+							}
+							if (checkerSettings.checkTransparency && hasTransparency)
+								itemError.insert(Transparency, 0);
+							if (checkerSettings.checkFontNotEmbedded || checkerSettings.checkFontIsOpenType)
+							{
+								for (int i=0; i<usedFonts.size(); ++i)
+								{
+									PDFFont currentFont = usedFonts[i];
+									if (!currentFont.isEmbedded && checkerSettings.checkFontNotEmbedded)
+										itemError.insert(FontNotEmbedded, 0);
+									if (currentFont.isEmbedded && currentFont.isOpenType && checkerSettings.checkFontIsOpenType)
+										itemError.insert(EmbeddedFontIsOpenType, 0);
+								}
+							}
+							if (checkerSettings.checkResolution)
+							{
+								for (int i=0; i<imgs.size(); ++i)
+								{
+									if ((imgs[i].dpiX < checkerSettings.minResolution) || (imgs[i].dpiY < checkerSettings.minResolution))
+										itemError.insert(ImageDPITooLow, 0);
+									if ((imgs[i].dpiX > checkerSettings.maxResolution) || (imgs[i].dpiY > checkerSettings.maxResolution))
+										itemError.insert(ImageDPITooHigh, 0);
+								}
+							}
+						}
+					}
+				}
+			}
+			if ((currItem->asTextFrame()) || (currItem->asPathText()))
+			{
+	#ifndef NLS_PROTO
+				if ( currItem->frameOverflows() && (checkerSettings.checkOverflow) && (!((currItem->isAnnotation()) && ((currItem->annotation().Type() == 5) || (currItem->annotation().Type() == 6)))))
+					itemError.insert(TextOverflow, 0);
+				if (currItem->isAnnotation())
+				{
+					ScFace::FontFormat fformat = currItem->itemText.defaultStyle().charStyle().font().format();
+					if (!(fformat == ScFace::SFNT || fformat == ScFace::TTCF))
+						itemError.insert(WrongFontInAnnotation, 0);
+				}
+				for (int e = currItem->firstInFrame(); e <= currItem->lastInFrame(); ++e)
+				{
+					uint chr = currItem->itemText.text(e).unicode();
+					if ((chr == 13) || (chr == 32) || (chr == 29) || (chr == 28) || (chr == 27) || (chr == 26) || (chr == 25))
+						continue;
+					if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
+					{
+						chstr = currItem->itemText.text(e,1);
+						if (chstr.toUpper() != currItem->itemText.text(e,1))
+							chstr = chstr.toUpper();
+						chr = chstr[0].unicode();
+					}
+					if (chr == 9)
+					{
+						for (int t1 = 0; t1 < currItem->itemText.paragraphStyle(e).tabValues().count(); t1++)
+						{
+							if (currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar.isNull())
+								continue;
+							chstr = QString(currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar);
+							if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
+							{
+								if (chstr.toUpper() != QString(currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar))
+									chstr = chstr.toUpper();
+							}
+							chr = chstr[0].unicode();
+							if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
+								itemError.insert(MissingGlyph, 0);
+						}
+						for (int t1 = 0; t1 < currItem->itemText.defaultStyle().tabValues().count(); t1++)
+						{
+							if (currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar.isNull())
+								continue;
+							chstr = QString(currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar);
+							if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
+							{
+								if (chstr.toUpper() != QString(currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar))
+									chstr = chstr.toUpper();
+							}
+							chr = chstr[0].unicode();
+							if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
+								itemError.insert(MissingGlyph, 0);
+						}
+						continue;
+					}
+					if ((chr == 30) || (chr == 23))
+					{
+						for (uint numco = 0x30; numco < 0x3A; ++numco)
+						{
+							if ((!currItem->itemText.charStyle(e).font().canRender(numco)) && (checkerSettings.checkGlyphs))
+								itemError.insert(MissingGlyph, 0);
+						}
+						continue;
+					}
+					if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
+						itemError.insert(MissingGlyph, 0);
+				}
+	#endif
+			}
+			if (((currItem->fillColor() != CommonStrings::None) || (currItem->lineColor() != CommonStrings::None)) && (checkerSettings.checkNotCMYKOrSpot))
+			{
+				bool rgbUsed = false;
+				if ((currItem->fillColor() != CommonStrings::None))
+				{
+					ScColor tmpC = currDoc->PageColors[currItem->fillColor()];
+					if (tmpC.getColorModel() == colorModelRGB)
+						rgbUsed = true;
+				}
+				if ((currItem->lineColor() != CommonStrings::None))
+				{
+					ScColor tmpC = currDoc->PageColors[currItem->lineColor()];
+					if (tmpC.getColorModel() == colorModelRGB)
+						rgbUsed = true;
+				}
+				if (rgbUsed)
+					itemError.insert(NotCMYKOrSpot, 0);
+			}
+			if (itemError.count() != 0)
+				currDoc->docItemErrors.insert(currItem, itemError);
 		}
-		if ((currItem->GrMask > 0) && (checkerSettings.checkTransparency))
-			itemError.insert(Transparency, 0);
-		if ((currItem->OwnPage == -1) && (checkerSettings.checkOrphans))
-			itemError.insert(ObjectNotOnPage, 0);
-#ifdef HAVE_OSG
-		if (currItem->asImageFrame() && !currItem->asOSGFrame())
-#else
-		if (currItem->asImageFrame())
-#endif
-		{
-			if ((!currItem->PictureIsAvailable) && (checkerSettings.checkPictures))
-				itemError.insert(MissingImage, 0);
-			else
-			{
-				if  (((qRound(72.0 / currItem->imageXScale()) < checkerSettings.minResolution) || (qRound(72.0 / currItem->imageYScale()) < checkerSettings.minResolution))
-						  && (currItem->isRaster) && (checkerSettings.checkResolution))
-					itemError.insert(ImageDPITooLow, 0);
-				if  (((qRound(72.0 / currItem->imageXScale()) > checkerSettings.maxResolution) || (qRound(72.0 / currItem->imageYScale()) > checkerSettings.maxResolution))
-						  && (currItem->isRaster) && (checkerSettings.checkResolution))
-					itemError.insert(ImageDPITooHigh, 0);
-				QFileInfo fi = QFileInfo(currItem->Pfile);
-				QString ext = fi.suffix().toLower();
-				if (extensionIndicatesPDF(ext) && (checkerSettings.checkRasterPDF))
-					itemError.insert(PlacedPDF, 0);
-				if ((ext == "gif") && (checkerSettings.checkForGIF))
-					itemError.insert(ImageIsGIF, 0);
-
-				if (extensionIndicatesPDF(ext))
-				{
-					PDFAnalyzer analyst(currItem->Pfile);
-					QList<PDFColorSpace> usedColorSpaces;
-					bool hasTransparency = false;
-					QList<PDFFont> usedFonts;
-					int pageNum = qMin(qMax(1, currItem->pixm.imgInfo.actualPageNumber), currItem->pixm.imgInfo.numberOfPages) - 1;
-					QList<PDFImage> imgs;
-					bool succeeded = analyst.inspectPDF(pageNum, usedColorSpaces, hasTransparency, usedFonts, imgs);
-					if (succeeded)
-					{
-						if (checkerSettings.checkNotCMYKOrSpot || checkerSettings.checkDeviceColorsAndOutputIntend)
-						{
-							eColorSpaceType currPrintProfCS = ColorSpace_Unknown;
-							if (currDoc->HasCMS)
-							{
-								ScColorProfile printerProf = currDoc->DocPrinterProf;
-								currPrintProfCS = printerProf.colorSpace();
-							}
-							if (checkerSettings.checkNotCMYKOrSpot)
-							{
-								for (int i=0; i<usedColorSpaces.size(); ++i)
-								{
-									if (usedColorSpaces[i] == CS_DeviceRGB || usedColorSpaces[i] == CS_ICCBased || usedColorSpaces[i] == CS_CalGray
-										|| usedColorSpaces[i] == CS_CalRGB || usedColorSpaces[i] == CS_Lab)
-									{
-										itemError.insert(NotCMYKOrSpot, 0);
-										break;
-									}
-								}
-							}
-							if (checkerSettings.checkDeviceColorsAndOutputIntend && currDoc->HasCMS)
-							{
-								for (int i=0; i<usedColorSpaces.size(); ++i)
-								{
-									if (currPrintProfCS == ColorSpace_Cmyk && (usedColorSpaces[i] == CS_DeviceRGB || usedColorSpaces[i] == CS_DeviceGray))
-									{
-										itemError.insert(DeviceColorAndOutputIntend, 0);
-										break;
-									}
-									else if (currPrintProfCS == ColorSpace_Rgb && (usedColorSpaces[i] == CS_DeviceCMYK || usedColorSpaces[i] == CS_DeviceGray))
-									{
-										itemError.insert(DeviceColorAndOutputIntend, 0);
-										break;
-									}
-								}
-							}
-						}
-						if (checkerSettings.checkTransparency && hasTransparency)
-							itemError.insert(Transparency, 0);
-						if (checkerSettings.checkFontNotEmbedded || checkerSettings.checkFontIsOpenType)
-						{
-							for (int i=0; i<usedFonts.size(); ++i)
-							{
-								PDFFont currentFont = usedFonts[i];
-								if (!currentFont.isEmbedded && checkerSettings.checkFontNotEmbedded)
-									itemError.insert(FontNotEmbedded, 0);
-								if (currentFont.isEmbedded && currentFont.isOpenType && checkerSettings.checkFontIsOpenType)
-									itemError.insert(EmbeddedFontIsOpenType, 0);
-							}
-						}
-						if (checkerSettings.checkResolution)
-						{
-							for (int i=0; i<imgs.size(); ++i)
-							{
-								if ((imgs[i].dpiX < checkerSettings.minResolution) || (imgs[i].dpiY < checkerSettings.minResolution))
-									itemError.insert(ImageDPITooLow, 0);
-								if ((imgs[i].dpiX > checkerSettings.maxResolution) || (imgs[i].dpiY > checkerSettings.maxResolution))
-									itemError.insert(ImageDPITooHigh, 0);
-							}
-						}
-					}
-				}
-			}
-		}
-		if ((currItem->asTextFrame()) || (currItem->asPathText()))
-		{
-#ifndef NLS_PROTO
-			if ( currItem->frameOverflows() && (checkerSettings.checkOverflow) && (!((currItem->isAnnotation()) && ((currItem->annotation().Type() == 5) || (currItem->annotation().Type() == 6)))))
-				itemError.insert(TextOverflow, 0);
-			if (currItem->isAnnotation())
-			{
-				ScFace::FontFormat fformat = currItem->itemText.defaultStyle().charStyle().font().format();
-				if (!(fformat == ScFace::SFNT || fformat == ScFace::TTCF))
-					itemError.insert(WrongFontInAnnotation, 0);
-			}
-			for (int e = currItem->firstInFrame(); e <= currItem->lastInFrame(); ++e)
-			{
-				uint chr = currItem->itemText.text(e).unicode();
-				if ((chr == 13) || (chr == 32) || (chr == 29) || (chr == 28) || (chr == 27) || (chr == 26) || (chr == 25))
-					continue;
-				if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
-				{
-					chstr = currItem->itemText.text(e);
-					if (chstr.toUpper() != currItem->itemText.text(e))
-						chstr = chstr.toUpper();
-					chr = chstr[0].unicode();
-				}
-				if (chr == 9)
-				{
-					for (int t1 = 0; t1 < currItem->itemText.paragraphStyle(e).tabValues().count(); t1++)
-					{
-						if (currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar.isNull())
-							continue;
-						chstr = QString(currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar);
-						if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
-						{
-							if (chstr.toUpper() != QString(currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar))
-								chstr = chstr.toUpper();
-						}
-						chr = chstr[0].unicode();
-						if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
-							itemError.insert(MissingGlyph, 0);
-					}
-					for (int t1 = 0; t1 < currItem->itemText.defaultStyle().tabValues().count(); t1++)
-					{
-						if (currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar.isNull())
-							continue;
-						chstr = QString(currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar);
-						if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
-						{
-							if (chstr.toUpper() != QString(currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar))
-								chstr = chstr.toUpper();
-						}
-						chr = chstr[0].unicode();
-						if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
-							itemError.insert(MissingGlyph, 0);
-					}
-					continue;
-				}
-				if ((chr == 30) || (chr == 23))
-				{
-					for (int numco = 0x30; numco < 0x3A; ++numco)
-					{
-						if ((!currItem->itemText.charStyle(e).font().canRender(numco)) && (checkerSettings.checkGlyphs))
-							itemError.insert(MissingGlyph, 0);
-					}
-					continue;
-				}
-				if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
-					itemError.insert(MissingGlyph, 0);
-			}
-#endif
-		}
-		if (((currItem->fillColor() != CommonStrings::None) || (currItem->lineColor() != CommonStrings::None)) && (checkerSettings.checkNotCMYKOrSpot))
-		{
-			bool rgbUsed = false;
-			if ((currItem->fillColor() != CommonStrings::None))
-			{
-				ScColor tmpC = currDoc->PageColors[currItem->fillColor()];
-				if (tmpC.getColorModel() == colorModelRGB)
-					rgbUsed = true;
-			}
-			if ((currItem->lineColor() != CommonStrings::None))
-			{
-				ScColor tmpC = currDoc->PageColors[currItem->lineColor()];
-				if (tmpC.getColorModel() == colorModelRGB)
-					rgbUsed = true;
-			}
-			if (rgbUsed)
-				itemError.insert(NotCMYKOrSpot, 0);
-		}
-		if (itemError.count() != 0)
-			currDoc->masterItemErrors.insert(d /*currItem->ItemNr*/, itemError);
 	}
-	for (int d = 0; d < currDoc->DocItems.count(); ++d)
-	{
-		currItem = currDoc->DocItems.at(d);
-		if (!currItem->printEnabled())
-			continue;
-		if (!(currDoc->layerPrintable(currItem->LayerID)) && (checkerSettings.ignoreOffLayers))
-			continue;
-		itemError.clear();
-		if (((currItem->fillTransparency() != 0.0) || (currItem->lineTransparency() != 0.0) || (currItem->fillBlendmode() != 0) || (currItem->lineBlendmode() != 0)) && (checkerSettings.checkTransparency))
-			itemError.insert(Transparency, 0);
-		if ((currItem->GrType != 0) && (checkerSettings.checkTransparency))
-		{
-			if (currItem->GrType == 9)
-			{
-				if (currItem->GrCol1transp != 1.0)
-					itemError.insert(Transparency, 0);
-				else if (currItem->GrCol2transp != 1.0)
-					itemError.insert(Transparency, 0);
-				else if (currItem->GrCol3transp != 1.0)
-					itemError.insert(Transparency, 0);
-				else if (currItem->GrCol4transp != 1.0)
-					itemError.insert(Transparency, 0);
-			}
-			else if (currItem->GrType == 11)
-			{
-				for (int grow = 0; grow < currItem->meshGradientArray.count(); grow++)
-				{
-					for (int gcol = 0; gcol < currItem->meshGradientArray[grow].count(); gcol++)
-					{
-						if (currItem->meshGradientArray[grow][gcol].transparency != 1.0)
-							itemError.insert(Transparency, 0);
-					}
-				}
-			}
-			else
-			{
-				QList<VColorStop*> colorStops = currItem->fill_gradient.colorStops();
-				for( int offset = 0 ; offset < colorStops.count() ; offset++ )
-				{
-					if (colorStops[offset]->opacity != 1.0)
-					{
-						itemError.insert(Transparency, 0);
-						break;
-					}
-				}
-			}
-		}
-		if ((currItem->GrTypeStroke != 0) && (checkerSettings.checkTransparency))
-		{
-			QList<VColorStop*> colorStops = currItem->stroke_gradient.colorStops();
-			for( int offset = 0 ; offset < colorStops.count() ; offset++ )
-			{
-				if (colorStops[offset]->opacity != 1.0)
-				{
-					itemError.insert(Transparency, 0);
-					break;
-				}
-			}
-		}
-		if ((currItem->GrMask > 0) && (checkerSettings.checkTransparency))
-			itemError.insert(Transparency, 0);
-		if (((currItem->isAnnotation()) || (currItem->isBookmark)) && (checkerSettings.checkAnnotations))
-			itemError.insert(PDFAnnotField, 0);
-		if ((currItem->OwnPage == -1) && (checkerSettings.checkOrphans))
-			itemError.insert(ObjectNotOnPage, 0);
-#ifdef HAVE_OSG
-		if (currItem->asImageFrame() && !currItem->asOSGFrame())
-#else
-		if (currItem->asImageFrame())
-#endif
-		{
-			if ((!currItem->PictureIsAvailable) && (checkerSettings.checkPictures))
-				itemError.insert(MissingImage, 0);
-			else
-			{
-				if  (((qRound(72.0 / currItem->imageXScale()) < checkerSettings.minResolution) || (qRound(72.0 / currItem->imageYScale()) < checkerSettings.minResolution))
-						   && (currItem->isRaster) && (checkerSettings.checkResolution))
-					itemError.insert(ImageDPITooLow, 0);
-				if  (((qRound(72.0 / currItem->imageXScale()) > checkerSettings.maxResolution) || (qRound(72.0 / currItem->imageYScale()) > checkerSettings.maxResolution))
-						  && (currItem->isRaster) && (checkerSettings.checkResolution))
-					itemError.insert(ImageDPITooHigh, 0);
-				QFileInfo fi = QFileInfo(currItem->Pfile);
-				QString ext = fi.suffix().toLower();
-				if (extensionIndicatesPDF(ext) && (checkerSettings.checkRasterPDF))
-					itemError.insert(PlacedPDF, 0);
-				if ((ext == "gif") && (checkerSettings.checkForGIF))
-					itemError.insert(ImageIsGIF, 0);
-				if (extensionIndicatesPDF(ext))
-				{
-					PDFAnalyzer analyst(currItem->Pfile);
-					QList<PDFColorSpace> usedColorSpaces;
-					bool hasTransparency = false;
-					QList<PDFFont> usedFonts;
-					int pageNum = qMin(qMax(1, currItem->pixm.imgInfo.actualPageNumber), currItem->pixm.imgInfo.numberOfPages) - 1;
-					QList<PDFImage> imgs;
-					bool succeeded = analyst.inspectPDF(pageNum, usedColorSpaces, hasTransparency, usedFonts, imgs);
-					if (succeeded)
-					{
-						if (checkerSettings.checkNotCMYKOrSpot || checkerSettings.checkDeviceColorsAndOutputIntend)
-						{
-							int currPrintProfCS = -1;
-							if (currDoc->HasCMS)
-							{
-								ScColorProfile printerProf = currDoc->DocPrinterProf;
-								currPrintProfCS = static_cast<int>(printerProf.colorSpace());
-							}
-							if (checkerSettings.checkNotCMYKOrSpot)
-							{
-								for (int i=0; i<usedColorSpaces.size(); ++i)
-								{
-									if (usedColorSpaces[i] == CS_DeviceRGB || usedColorSpaces[i] == CS_ICCBased || usedColorSpaces[i] == CS_CalGray
-										|| usedColorSpaces[i] == CS_CalRGB || usedColorSpaces[i] == CS_Lab)
-									{
-										itemError.insert(NotCMYKOrSpot, 0);
-										break;
-									}
-								}
-							}
-							if (checkerSettings.checkDeviceColorsAndOutputIntend && currDoc->HasCMS)
-							{
-								for (int i=0; i<usedColorSpaces.size(); ++i)
-								{
-									if (currPrintProfCS == ColorSpace_Cmyk && (usedColorSpaces[i] == CS_DeviceRGB || usedColorSpaces[i] == CS_DeviceGray))
-									{
-										itemError.insert(DeviceColorAndOutputIntend, 0);
-										break;
-									}
-									else if (currPrintProfCS == ColorSpace_Rgb && (usedColorSpaces[i] == CS_DeviceCMYK || usedColorSpaces[i] == CS_DeviceGray))
-									{
-										itemError.insert(DeviceColorAndOutputIntend, 0);
-										break;
-									}
-								}
-							}
-						}
-						if (checkerSettings.checkTransparency && hasTransparency)
-							itemError.insert(Transparency, 0);
-						if (checkerSettings.checkFontNotEmbedded || checkerSettings.checkFontIsOpenType)
-						{
-							for (int i=0; i<usedFonts.size(); ++i)
-							{
-								PDFFont currentFont = usedFonts[i];
-								if (!currentFont.isEmbedded && checkerSettings.checkFontNotEmbedded)
-									itemError.insert(FontNotEmbedded, 0);
-								if (currentFont.isEmbedded && currentFont.isOpenType && checkerSettings.checkFontIsOpenType)
-									itemError.insert(EmbeddedFontIsOpenType, 0);
-							}
-						}
-						if (checkerSettings.checkResolution)
-						{
-							for (int i=0; i<imgs.size(); ++i)
-							{
-								if ((imgs[i].dpiX < checkerSettings.minResolution) || (imgs[i].dpiY < checkerSettings.minResolution))
-									itemError.insert(ImageDPITooLow, 0);
-								if ((imgs[i].dpiX > checkerSettings.maxResolution) || (imgs[i].dpiY > checkerSettings.maxResolution))
-									itemError.insert(ImageDPITooHigh, 0);
-							}
-						}
-					}
-				}
-			}
-		}
-		if ((currItem->asTextFrame()) || (currItem->asPathText()))
-		{
-#ifndef NLS_PROTO
-			if ( currItem->frameOverflows() && (checkerSettings.checkOverflow) && (!((currItem->isAnnotation()) && ((currItem->annotation().Type() == 5) || (currItem->annotation().Type() == 6)))))
-				itemError.insert(TextOverflow, 0);
-			if (currItem->isAnnotation())
-			{
-				ScFace::FontFormat fformat = currItem->itemText.defaultStyle().charStyle().font().format();
-				if (!(fformat == ScFace::SFNT || fformat == ScFace::TTCF))
-					itemError.insert(WrongFontInAnnotation, 0);
-			}
-			for (int e = currItem->firstInFrame(); e <= currItem->lastInFrame(); ++e)
-			{
-				uint chr = currItem->itemText.text(e).unicode();
-				if ((chr == 13) || (chr == 32) || (chr == 29) || (chr == 28) || (chr == 27) || (chr == 26) || (chr == 25))
-					continue;
-				if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
-				{
-					chstr = currItem->itemText.text(e,1);
-					if (chstr.toUpper() != currItem->itemText.text(e,1))
-						chstr = chstr.toUpper();
-					chr = chstr[0].unicode();
-				}
-				if (chr == 9)
-				{
-					for (int t1 = 0; t1 < currItem->itemText.paragraphStyle(e).tabValues().count(); t1++)
-					{
-						if (currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar.isNull())
-							continue;
-						chstr = QString(currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar);
-						if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
-						{
-							if (chstr.toUpper() != QString(currItem->itemText.paragraphStyle(e).tabValues()[t1].tabFillChar))
-								chstr = chstr.toUpper();
-						}
-						chr = chstr[0].unicode();
-						if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
-							itemError.insert(MissingGlyph, 0);
-					}
-					for (int t1 = 0; t1 < currItem->itemText.defaultStyle().tabValues().count(); t1++)
-					{
-						if (currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar.isNull())
-							continue;
-						chstr = QString(currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar);
-						if ((currItem->itemText.charStyle(e).effects() & ScStyle_SmallCaps) || (currItem->itemText.charStyle(e).effects() & ScStyle_AllCaps))
-						{
-							if (chstr.toUpper() != QString(currItem->itemText.defaultStyle().tabValues()[t1].tabFillChar))
-								chstr = chstr.toUpper();
-						}
-						chr = chstr[0].unicode();
-						if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
-							itemError.insert(MissingGlyph, 0);
-					}
-					continue;
-				}
-				if ((chr == 30) || (chr == 23))
-				{
-					for (uint numco = 0x30; numco < 0x3A; ++numco)
-					{
-						if ((!currItem->itemText.charStyle(e).font().canRender(numco)) && (checkerSettings.checkGlyphs))
-							itemError.insert(MissingGlyph, 0);
-					}
-					continue;
-				}
-				if ((!currItem->itemText.charStyle(e).font().canRender(chr)) && (checkerSettings.checkGlyphs))
-					itemError.insert(MissingGlyph, 0);
-			}
-#endif
-		}
-		if (((currItem->fillColor() != CommonStrings::None) || (currItem->lineColor() != CommonStrings::None)) && (checkerSettings.checkNotCMYKOrSpot))
-		{
-			bool rgbUsed = false;
-			if ((currItem->fillColor() != CommonStrings::None))
-			{
-				ScColor tmpC = currDoc->PageColors[currItem->fillColor()];
-				if (tmpC.getColorModel() == colorModelRGB)
-					rgbUsed = true;
-			}
-			if ((currItem->lineColor() != CommonStrings::None))
-			{
-				ScColor tmpC = currDoc->PageColors[currItem->lineColor()];
-				if (tmpC.getColorModel() == colorModelRGB)
-					rgbUsed = true;
-			}
-			if (rgbUsed)
-				itemError.insert(NotCMYKOrSpot, 0);
-		}
-		if (itemError.count() != 0)
-			currDoc->docItemErrors.insert(d /*currItem->ItemNr*/, itemError);
-	}
-
 	return ((currDoc->docItemErrors.count() != 0) || (currDoc->masterItemErrors.count() != 0) || (currDoc->docLayerErrors.count() != 0));
 }

Modified: trunk/Scribus/scribus/scribus.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/scribus.cpp
==============================================================================
--- trunk/Scribus/scribus/scribus.cpp (original)
+++ trunk/Scribus/scribus/scribus.cpp Mon Dec 20 19:34:48 2010
@@ -584,10 +584,12 @@
 	connect( styleManager, SIGNAL(paletteShown(bool)), scrActions["editStyles"], SLOT(setChecked(bool)));
 	styleManager->installEventFilter(this);
 
-	connect(docCheckerPalette, SIGNAL(selectElement(int, int)), this, SLOT(selectItemsFromOutlines(int, int)));
+//	connect(docCheckerPalette, SIGNAL(selectElement(int, int)), this, SLOT(selectItemsFromOutlines(int, int)));
+	connect(docCheckerPalette, SIGNAL(selectElementByItem(PageItem *, bool)), this, SLOT(selectItemsFromOutlines(PageItem *, bool)));
 	connect(docCheckerPalette, SIGNAL(selectPage(int)), this, SLOT(selectPagesFromOutlines(int)));
 	connect(docCheckerPalette, SIGNAL(selectMasterPage(QString)), this, SLOT(manageMasterPages(QString)));
 	connect(outlinePalette, SIGNAL(selectElement(int, int, bool)), this, SLOT(selectItemsFromOutlines(int, int, bool)));
+	connect(outlinePalette, SIGNAL(selectElementByItem(PageItem *, bool)), this, SLOT(selectItemsFromOutlines(PageItem *, bool)));
 	connect(outlinePalette, SIGNAL(selectPage(int)), this, SLOT(selectPagesFromOutlines(int)));
 	connect(outlinePalette, SIGNAL(selectMasterPage(QString)), this, SLOT(manageMasterPages(QString)));
 	connect(propertiesPalette->paraStyleCombo, SIGNAL(newStyle(const QString&)), this, SLOT(setNewParStyle(const QString&)));
@@ -600,7 +602,7 @@
 
 	connect(bookmarkPalette->BView, SIGNAL(MarkMoved()), this, SLOT(StoreBookmarks()));
 	connect(bookmarkPalette->BView, SIGNAL(changed()), this, SLOT(slotDocCh()));
-	connect(bookmarkPalette->BView, SIGNAL(SelectElement(PageItem *)), this, SLOT(selectItemsFromOutlines(PageItem *)));
+	connect(bookmarkPalette->BView, SIGNAL(SelectElement(PageItem *, bool)), this, SLOT(selectItemsFromOutlines(PageItem *, bool)));
 	// guides
 	connect(scrActions["pageManageGuides"], SIGNAL(toggled(bool)), guidePalette, SLOT(setPaletteShown(bool)));
 	connect(guidePalette, SIGNAL(paletteShown(bool)), scrActions["pageManageGuides"], SLOT(setChecked(bool)));
@@ -7506,10 +7508,38 @@
 	delete dia;
 }
 
-void ScribusMainWindow::selectItemsFromOutlines(PageItem* ite)
-{
-	int d = doc->Items->indexOf(ite);
-	selectItemsFromOutlines(ite->OwnPage, d, true);
+void ScribusMainWindow::selectItemsFromOutlines(PageItem* ite, bool single)
+{
+	if (HaveDoc && doc->appMode == modeEditClip)
+		view->requestMode(submodeEndNodeEdit);
+	activateWindow();
+	view->Deselect(true);
+	if ((ite->OwnPage != -1) && (ite->OwnPage != static_cast<int>(doc->currentPage()->pageNr())))
+		view->GotoPage(ite->OwnPage);
+	doc->m_Selection->delaySignalsOn();
+	view->SelectItem(ite, true, single);
+	doc->m_Selection->delaySignalsOff();
+	doc->m_Selection->connectItemToGUI();
+	if (doc->m_Selection->count() != 0)
+	{
+		PageItem *currItem = doc->m_Selection->itemAt(0);
+	 	double rotation=currItem->rotation();
+		if ( rotation != 0.0 )
+		{
+			double MPI180=1.0/(180.0*M_PI);
+			double y1 = sin(rotation*MPI180) * currItem->width();
+			double x1 = cos(rotation*MPI180) * currItem->width();
+			double y2 = sin((rotation+90.0)*MPI180) * currItem->height();
+			double x2 = cos((rotation+90.0)*MPI180) * currItem->height();
+			double mx = currItem->xPos() + ((x1 + x2)/2.0);
+			double my = currItem->yPos() + ((y1 + y2)/2.0);
+			view->SetCCPo(mx, my);
+		}
+		else
+		{
+			view->SetCCPo(currItem->xPos() + currItem->width() / 2.0, currItem->yPos() + currItem->height() / 2.0);
+		}
+	}
 }
 
 void ScribusMainWindow::selectItemsFromOutlines(int Page, int Item, bool single)

Modified: trunk/Scribus/scribus/scribus.h
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/scribus.h
==============================================================================
--- trunk/Scribus/scribus/scribus.h (original)
+++ trunk/Scribus/scribus/scribus.h Mon Dec 20 19:34:48 2010
@@ -497,7 +497,7 @@
 	void setNewParStyle(const QString& name);
 	void setNewCharStyle(const QString& name);
 	void setAbsValue(int a);
-	void selectItemsFromOutlines(PageItem *ite);
+	void selectItemsFromOutlines(PageItem *ite, bool single = false);
 	void selectItemsFromOutlines(int Page, int Item, bool single = false);
 	void selectPagesFromOutlines(int Page);
 	void doPrintPreview();

Modified: trunk/Scribus/scribus/scribusdoc.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/scribusdoc.cpp
==============================================================================
--- trunk/Scribus/scribus/scribusdoc.cpp (original)
+++ trunk/Scribus/scribus/scribusdoc.cpp Mon Dec 20 19:34:48 2010
@@ -11824,6 +11824,11 @@
 bool ScribusDoc::MoveSizeItem(FPoint newX, FPoint newY, int ite, bool fromMP, bool constrainRotation)
 {
 	PageItem *currItem = Items->at(ite);
+	return MoveSizeItem(newX, newY, currItem, fromMP, constrainRotation);
+}
+
+bool ScribusDoc::MoveSizeItem(FPoint newX, FPoint newY, PageItem* currItem, bool fromMP, bool constrainRotation)
+{
 	QRectF oldR(currItem->getBoundingRect());
 	if (currItem->asLine())
 	{
@@ -11861,12 +11866,12 @@
 			ma3.rotate(currItem->rotation());
 			double mxc3 = currItem->xPos() - (ma3.m11() * npv.x() + ma3.m21() * npv.y() + ma3.dx());
 			double myc3 = currItem->yPos() - (ma3.m22() * npv.y() + ma3.m12() * npv.x() + ma3.dy());
-			SizeItem(currItem->width() - newY.x(), currItem->height() - newY.y(), ite, fromMP, true, false);
+			SizeItem(currItem->width() - newY.x(), currItem->height() - newY.y(), currItem, fromMP, true, false);
 			MoveItem(-mxc3, -myc3, currItem, fromMP);
 		}
 		else
 		{
-			SizeItem(currItem->width() - newY.x(), currItem->height() - newY.y(), ite, fromMP, true, false);
+			SizeItem(currItem->width() - newY.x(), currItem->height() - newY.y(), currItem, fromMP, true, false);
 			MoveItem(newX.x(), newX.y(), currItem, fromMP);
 		}
 	}

Modified: trunk/Scribus/scribus/scribusdoc.h
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/scribusdoc.h
==============================================================================
--- trunk/Scribus/scribus/scribusdoc.h (original)
+++ trunk/Scribus/scribus/scribusdoc.h Mon Dec 20 19:34:48 2010
@@ -1015,6 +1015,7 @@
 	bool SizeItem(double newX, double newY, int ite, bool fromMP = false, bool DoUpdateClip = true, bool redraw = true);
 	bool SizeItem(double newX, double newY, PageItem *pi, bool fromMP = false, bool DoUpdateClip = true, bool redraw = true);
 	bool MoveSizeItem(FPoint newX, FPoint newY, int ite, bool fromMP = false, bool constrainRotation=false);
+	bool MoveSizeItem(FPoint newX, FPoint newY, PageItem* currItem, bool fromMP = false, bool constrainRotation = false);
 	void AdjustItemSize(PageItem *currItem, bool includeGroup = false);
 	void moveGroup(double x, double y, bool fromMP = false, Selection* customSelection = 0);
 	void rotateGroup(double angle, FPoint RCenter);
@@ -1185,8 +1186,8 @@
 	QList<OpenNodesList> OpenNodes;
 	QTimer *CurTimer;
 	QMap<int, errorCodes> docLayerErrors;
-	QMap<int, errorCodes> docItemErrors;
-	QMap<int, errorCodes> masterItemErrors;
+	QMap<PageItem*, errorCodes> docItemErrors;
+	QMap<PageItem*, errorCodes> masterItemErrors;
 	FPointArray symReturn;
 	FPointArray symNewLine;
 	FPointArray symTab;

Modified: trunk/Scribus/scribus/ui/bookmwin.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/ui/bookmwin.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/bookmwin.cpp (original)
+++ trunk/Scribus/scribus/ui/bookmwin.cpp Mon Dec 20 19:34:48 2010
@@ -158,7 +158,7 @@
 	BookMItem * i = dynamic_cast<BookMItem*>(current);
 	// something weird here at 1st call...
 	if (i)
-		emit SelectElement(i->PageObject);
+		emit SelectElement(i->PageObject, false);
 }
 
 void BookMView::dropEvent(QDropEvent *e)

Modified: trunk/Scribus/scribus/ui/bookmwin.h
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/ui/bookmwin.h
==============================================================================
--- trunk/Scribus/scribus/ui/bookmwin.h (original)
+++ trunk/Scribus/scribus/ui/bookmwin.h Mon Dec 20 19:34:48 2010
@@ -100,7 +100,7 @@
 
 signals:
 	void MarkMoved();
-	void SelectElement(PageItem *);
+	void SelectElement(PageItem *, bool);
 	void changed();
 
 protected:

Modified: trunk/Scribus/scribus/ui/checkDocument.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/ui/checkDocument.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/checkDocument.cpp (original)
+++ trunk/Scribus/scribus/ui/checkDocument.cpp Mon Dec 20 19:34:48 2010
@@ -36,116 +36,14 @@
 #define COLUMN_LAYER 2
 // #define COLUMN_INFO 3
 
-/*
-static const unsigned char image0_data[] =
-    {
-        0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
-        0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x0b,
-        0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0xac, 0x77, 0x26, 0x00, 0x00, 0x00,
-        0xff, 0x49, 0x44, 0x41, 0x54, 0x78, 0x9c, 0x75, 0x91, 0x31, 0x4e, 0xc3,
-        0x40, 0x10, 0x45, 0x9f, 0xad, 0x2d, 0xe6, 0x0a, 0xdc, 0xc2, 0x8e, 0x44,
-        0x91, 0x83, 0x50, 0x51, 0x91, 0x58, 0x29, 0x42, 0xba, 0x80, 0x28, 0x10,
-        0x55, 0xe4, 0x02, 0x45, 0x74, 0x18, 0x24, 0x64, 0xdc, 0xe5, 0x28, 0x31,
-        0x92, 0xd1, 0xe2, 0x74, 0x5c, 0x83, 0x72, 0x0a, 0x4b, 0x43, 0xe1, 0x78,
-        0xb1, 0x22, 0xb1, 0xcd, 0x6a, 0x67, 0xde, 0xfc, 0x9d, 0x99, 0x1f, 0xf9,
-        0xc6, 0x43, 0x07, 0x38, 0xd0, 0x4e, 0x11, 0x27, 0xff, 0xbe, 0xdd, 0x10,
-        0xd0, 0x4e, 0x59, 0x2d, 0xdf, 0x8d, 0xd1, 0x29, 0xdf, 0xae, 0xa3, 0x71,
-        0xde, 0x89, 0x13, 0x8a, 0x57, 0xec, 0xbb, 0xdd, 0x51, 0x1e, 0x2a, 0x00,
-        0x14, 0x10, 0x20, 0x5b, 0x60, 0xd3, 0xf3, 0x35, 0x97, 0x57, 0x3f, 0x91,
-        0x38, 0x21, 0xd6, 0x4e, 0x69, 0xdb, 0x82, 0xfa, 0xe2, 0x8c, 0x49, 0xbe,
-        0x0d, 0xa0, 0x02, 0xe5, 0xa1, 0xe2, 0xe3, 0xf3, 0x29, 0x28, 0xc7, 0x37,
-        0xcb, 0x9d, 0x95, 0x87, 0x0a, 0x5c, 0x8f, 0xc8, 0xb1, 0x85, 0x71, 0x41,
-        0xb6, 0x28, 0x4c, 0x9c, 0xe0, 0x14, 0x05, 0xa0, 0xbe, 0xbb, 0x0d, 0xc0,
-        0xe9, 0x0d, 0xfd, 0xb0, 0x31, 0x48, 0x48, 0x70, 0x02, 0x4e, 0xf2, 0xcd,
-        0x5f, 0xdc, 0x09, 0xf1, 0xf0, 0x75, 0x50, 0x18, 0x81, 0x83, 0xd0, 0xa0,
-        0x8c, 0x6f, 0x3c, 0x69, 0x32, 0x33, 0x0f, 0xb6, 0x07, 0xf3, 0x60, 0x96,
-        0x6f, 0xcc, 0x1e, 0xb7, 0xb6, 0x07, 0x9b, 0x26, 0x4b, 0xf3, 0xb5, 0xc7,
-        0x37, 0xbe, 0xdf, 0x73, 0x9a, 0xae, 0xc9, 0x8e, 0xc3, 0x28, 0xf0, 0x75,
-        0xff, 0x80, 0x02, 0xab, 0x64, 0x46, 0x9a, 0xce, 0x83, 0x41, 0x91, 0x6f,
-        0x7c, 0x70, 0x2a, 0x5b, 0x14, 0x36, 0x74, 0x2d, 0x08, 0xcf, 0x2f, 0xf3,
-        0x68, 0xec, 0xe4, 0x2f, 0x90, 0x07, 0x8c, 0x36, 0xce, 0xc2, 0x57, 0x47,
-        0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
-    };
-
-static const unsigned char image1_data[] =
-    {
-        0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
-        0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x0b,
-        0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0xac, 0x77, 0x26, 0x00, 0x00, 0x00,
-        0xfa, 0x49, 0x44, 0x41, 0x54, 0x78, 0x9c, 0x75, 0x91, 0x31, 0x6e, 0x83,
-        0x40, 0x10, 0x45, 0x1f, 0x68, 0x8b, 0xb9, 0x4a, 0x3a, 0x63, 0xc9, 0x05,
-        0x25, 0xe7, 0x48, 0x15, 0x8c, 0x28, 0x88, 0x3b, 0xe7, 0x1a, 0xe9, 0x02,
-        0x91, 0x2c, 0x42, 0xe7, 0x73, 0x50, 0x19, 0x24, 0xac, 0x35, 0xa5, 0xaf,
-        0x91, 0x72, 0x0b, 0xa4, 0x49, 0x41, 0xb2, 0x46, 0x48, 0x99, 0x66, 0x35,
-        0x33, 0x7f, 0xdf, 0xd7, 0xee, 0x0f, 0xec, 0x60, 0x61, 0x02, 0x0c, 0xb8,
-        0xc9, 0x21, 0x46, 0xfe, 0xed, 0xcd, 0xdf, 0xc0, 0x4d, 0x8e, 0x43, 0xf1,
-        0xa5, 0x2c, 0xaa, 0x3e, 0xbd, 0x06, 0xcb, 0xbd, 0x11, 0x23, 0x94, 0x9f,
-        0xe8, 0x7d, 0x3c, 0x53, 0x57, 0xcd, 0x2f, 0x11, 0xc4, 0x40, 0x96, 0xa3,
-        0xf1, 0xee, 0xc8, 0xf3, 0xcb, 0x77, 0x20, 0x46, 0x08, 0xdd, 0xe4, 0x18,
-        0xc7, 0x92, 0x6e, 0xbc, 0xb3, 0x8d, 0x13, 0x2f, 0x74, 0x13, 0xd4, 0xa7,
-        0x86, 0xfe, 0xfa, 0xee, 0xc9, 0xe1, 0x5b, 0x71, 0xd6, 0xba, 0x6a, 0xbc,
-        0xb5, 0x18, 0x60, 0x75, 0x21, 0xcb, 0x4b, 0x15, 0x23, 0x18, 0x87, 0x03,
-        0x03, 0x5d, 0xdf, 0x7a, 0xc1, 0xfa, 0x84, 0xf9, 0xb1, 0x21, 0x88, 0x5f,
-        0xb0, 0x12, 0x6e, 0x77, 0xc9, 0x3c, 0x07, 0xc4, 0x08, 0x21, 0xb8, 0x07,
-        0x61, 0x25, 0x9c, 0x89, 0x0f, 0x32, 0x76, 0xb0, 0x44, 0x9b, 0x54, 0xed,
-        0x80, 0x5e, 0x3a, 0xd4, 0x0e, 0xa8, 0x6a, 0xa2, 0xaa, 0x89, 0x5e, 0x3a,
-        0x34, 0xde, 0x14, 0x6a, 0x3b, 0x8b, 0x1d, 0xec, 0xfc, 0x1b, 0x51, 0x74,
-        0x24, 0xcb, 0x53, 0xef, 0x70, 0xbb, 0xb6, 0x74, 0x7d, 0xcb, 0xa1, 0x48,
-        0x79, 0x8a, 0xf6, 0x3e, 0xa0, 0xc0, 0x0e, 0xd6, 0x27, 0x95, 0xe5, 0xa5,
-        0x82, 0x00, 0x0e, 0x41, 0xf8, 0xa8, 0xf6, 0xc1, 0x32, 0xc9, 0x1f, 0x9e,
-        0x1c, 0x9d, 0xca, 0x9e, 0x4f, 0x38, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x49,
-        0x45, 0x4e, 0x44, 0xae, 0x42, 0x60, 0x82
-    };
-
-static const unsigned char image2_data[] =
-    {
-        0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
-        0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x00, 0x0b,
-        0x08, 0x06, 0x00, 0x00, 0x00, 0xa9, 0xac, 0x77, 0x26, 0x00, 0x00, 0x01,
-        0x02, 0x49, 0x44, 0x41, 0x54, 0x78, 0x9c, 0x75, 0x91, 0xb1, 0x4a, 0xc4,
-        0x40, 0x10, 0x86, 0xbf, 0x84, 0x29, 0xc6, 0x37, 0xb8, 0xd6, 0xf2, 0xca,
-        0x10, 0xae, 0xc8, 0x2b, 0xf8, 0x0a, 0xa9, 0x84, 0xa4, 0x08, 0xd8, 0x1c,
-        0xa4, 0xb4, 0x13, 0xbb, 0x80, 0x85, 0x4a, 0xe0, 0x12, 0xb8, 0x46, 0x4b,
-        0x5b, 0x3b, 0xeb, 0xc0, 0x49, 0xd8, 0xd2, 0x57, 0x48, 0x69, 0x21, 0xb8,
-        0xc5, 0x42, 0x2c, 0x72, 0xc9, 0xad, 0x88, 0xdb, 0x2c, 0x33, 0x3b, 0xf3,
-        0xfd, 0x3f, 0xfb, 0x07, 0xfd, 0xa1, 0x07, 0x07, 0x08, 0x58, 0x67, 0x51,
-        0xd1, 0x7f, 0x6b, 0x99, 0x1b, 0xd6, 0x59, 0xae, 0x9b, 0xab, 0x11, 0xef,
-        0x54, 0x45, 0x1b, 0xf8, 0xef, 0xa2, 0xa2, 0x74, 0xf2, 0x38, 0xbe, 0x36,
-        0x1f, 0x0c, 0xb9, 0x01, 0x01, 0x1c, 0xa8, 0x40, 0x59, 0x67, 0x63, 0xba,
-        0x4d, 0x58, 0x7f, 0xa5, 0x81, 0x8a, 0x12, 0x5a, 0x67, 0x79, 0xb9, 0x37,
-        0x3c, 0xed, 0x2c, 0x7d, 0x12, 0x79, 0x16, 0x60, 0x28, 0x0c, 0xcf, 0x77,
-        0xdd, 0x42, 0x0e, 0x6f, 0xf7, 0xe5, 0x38, 0xe4, 0x06, 0x3d, 0x4a, 0xeb,
-        0x91, 0x3c, 0x2b, 0x7c, 0x16, 0x86, 0xb2, 0xce, 0x46, 0x15, 0x45, 0xbe,
-        0x9d, 0x05, 0x81, 0xb8, 0x3b, 0x59, 0xf0, 0x6f, 0xeb, 0x26, 0x88, 0x75,
-        0x96, 0xd0, 0xf7, 0xe8, 0x0f, 0xaa, 0x40, 0xbf, 0x89, 0xa6, 0x1a, 0x50,
-        0x51, 0xc2, 0x5f, 0x04, 0x6f, 0xe1, 0x6d, 0x13, 0x4d, 0x53, 0x3e, 0xb9,
-        0x2a, 0xda, 0x60, 0x55, 0x47, 0x7f, 0x88, 0xca, 0x64, 0xed, 0x7c, 0x9f,
-        0x50, 0xe5, 0xed, 0xe9, 0x37, 0xd2, 0x6d, 0xc4, 0xbc, 0x60, 0x1d, 0xc4,
-        0xef, 0x86, 0xb8, 0x33, 0xac, 0x9a, 0x88, 0x8b, 0x62, 0xbd, 0x04, 0x14,
-        0xf4, 0x87, 0x7e, 0x49, 0xaa, 0xac, 0xb3, 0x71, 0x56, 0x38, 0x13, 0xe5,
-        0xe6, 0xf2, 0x21, 0xf0, 0x93, 0xfc, 0x01, 0x78, 0x2a, 0x84, 0x98, 0x28,
-        0xe8, 0xa9, 0x58, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae,
-        0x42, 0x60, 0x82
-    };
-*/
 CheckDocument::CheckDocument( QWidget* parent, bool modal )
 	: ScrPaletteBase( parent, "checkDocument", modal, 0 ),
 	m_Doc(0),
-// 	globalGraveError(false),
 	pageGraveError(false),
 	itemError(false),
 	minResDPI(0),
 	maxResDPI(0)
 {
-/*
-	QPixmap img;
-	img.loadFromData( image0_data, sizeof( image0_data ), "PNG" );
-	graveError = img;
-	img.loadFromData( image1_data, sizeof( image1_data ), "PNG" );
-	onlyWarning = img;
-	img.loadFromData( image2_data, sizeof( image2_data ), "PNG" );
-	noErrors = img;
-*/
 	showPagesWithoutErrors=PrefsManager::instance()->appPrefs.verifierPrefs.showPagesWithoutErrors;
 	showNonPrintingLayerErrors=PrefsManager::instance()->appPrefs.verifierPrefs.showNonPrintingLayerErrors;
 
@@ -166,7 +64,6 @@
 	checkDocumentLayout->addLayout( layout1 );
 
 	reportDisplay = new QTreeWidget( this );
-// 	reportDisplay->setColumnCount(2);
 	reportDisplay->header()->setClickable( false );
 	reportDisplay->header()->setMovable( false );
 	reportDisplay->setSortingEnabled(false);
@@ -202,7 +99,7 @@
 	if (itemMap.contains(ite))
 	{
 		ScCore->primaryMainWindow()->closeActiveWindowMasterPageEditor();
-		emit selectElement(m_Doc->DocItems.at(itemMap[ite])->OwnPage, itemMap[ite]);
+		emit selectElementByItem(itemMap[ite], true);
 		return;
 	}
 	if (pageMap.contains(ite))
@@ -219,8 +116,8 @@
 	if (masterPageItemMap.contains(ite))
 	{
 		if (!m_Doc->masterPageMode())
-			emit selectMasterPage(m_Doc->MasterItems.at(masterPageItemMap[ite])->OnMasterPage);
-		emit selectElement(-1, masterPageItemMap[ite]);
+			emit selectMasterPage(masterPageItemMap[ite]->OnMasterPage);
+		emit selectElementByItem(masterPageItemMap[ite], true);
 		return;
 	}
 }
@@ -360,8 +257,7 @@
 {
 // 	bool resultError = false;
 	m_Doc = doc;
-	disconnect(curCheckProfile, SIGNAL(activated(const QString&)),
-	           this, SLOT(newScan(const QString&)));
+	disconnect(curCheckProfile, SIGNAL(activated(const QString&)), this, SLOT(newScan(const QString&)));
 	curCheckProfile->clear();
 	clearErrorList();
 
@@ -465,16 +361,16 @@
 				masterPageMap.insert(page, doc->MasterPages.at(mPage)->pageName());
 			}
 // 			pagep = page;
-			QMap<int, errorCodes>::Iterator masterItemErrorsIt;
+			QMap<PageItem*, errorCodes>::Iterator masterItemErrorsIt;
 			for (masterItemErrorsIt = doc->masterItemErrors.begin();
 				 masterItemErrorsIt != doc->masterItemErrors.end();
 				 ++masterItemErrorsIt)
 			{
-				if (((doc->MasterItems.at(masterItemErrorsIt.key())->OwnPage == mPage)
-					|| (doc->MasterItems.at(masterItemErrorsIt.key())->OnMasterPage == doc->MasterPages.at(mPage)->pageName()))
+				if (((masterItemErrorsIt.key()->OwnPage == mPage)
+					|| (masterItemErrorsIt.key()->OnMasterPage == doc->MasterPages.at(mPage)->pageName()))
 					&&
 					((showNonPrintingLayerErrors) ||
-					(!showNonPrintingLayerErrors && doc->layerPrintable(doc->MasterItems.at(masterItemErrorsIt.key())->LayerID)))
+					(!showNonPrintingLayerErrors && doc->layerPrintable(masterItemErrorsIt.key()->LayerID)))
 					)
 				{
 					if (!showPagesWithoutErrors && page==NULL)
@@ -484,20 +380,20 @@
 					}
 					hasError = true;
 					QTreeWidgetItem * object = new QTreeWidgetItem( page);
-					masterPageItemMap.insert(object, doc->MasterItems.at(masterItemErrorsIt.key())->ItemNr);
-					object->setText(COLUMN_ITEM, doc->MasterItems.at(masterItemErrorsIt.key())->itemName());
+					masterPageItemMap.insert(object, masterItemErrorsIt.key());
+					object->setText(COLUMN_ITEM, masterItemErrorsIt.key()->itemName());
 					errorCodes::Iterator it3;
 					if (masterItemErrorsIt.value().count() == 1)
 					{
 						it3 = masterItemErrorsIt.value().begin();
-						buildItem(object, it3.key(), doc->MasterItems.at(masterItemErrorsIt.key()));
+						buildItem(object, it3.key(), masterItemErrorsIt.key());
 					}
 					else
 					{
 						for (it3 = masterItemErrorsIt.value().begin(); it3 != masterItemErrorsIt.value().end(); ++it3)
 						{
 							QTreeWidgetItem * errorText = new QTreeWidgetItem( object, 0 );
-							buildItem(errorText, it3.key(), doc->MasterItems.at(masterItemErrorsIt.key()));
+							buildItem(errorText, it3.key(), masterItemErrorsIt.key());
 						}
 						object->setExpanded( true );
 					}
@@ -541,14 +437,14 @@
 				pageMap.insert(page, aPage);
 			}
 // 			pagep = page;
-			QMap<int, errorCodes>::Iterator docItemErrorsIt;
+			QMap<PageItem*, errorCodes>::Iterator docItemErrorsIt;
 			for (docItemErrorsIt = doc->docItemErrors.begin();
 				 docItemErrorsIt != doc->docItemErrors.end();
 				 ++docItemErrorsIt)
 			{
-				if (doc->DocItems.at(docItemErrorsIt.key())->OwnPage == aPage &&
+				if (docItemErrorsIt.key()->OwnPage == aPage &&
 					((showNonPrintingLayerErrors) ||
-					(!showNonPrintingLayerErrors && doc->layerPrintable(doc->DocItems.at(docItemErrorsIt.key())->LayerID)))
+					(!showNonPrintingLayerErrors && doc->layerPrintable(docItemErrorsIt.key()->LayerID)))
 					)
 				{
 					if (!showPagesWithoutErrors && page==NULL)
@@ -559,20 +455,20 @@
 					hasError = true;
 					itemError = false;
 					QTreeWidgetItem * object = new QTreeWidgetItem(page);
-					object->setText(COLUMN_ITEM, doc->DocItems.at(docItemErrorsIt.key())->itemName());
-					itemMap.insert(object, doc->DocItems.at(docItemErrorsIt.key())->ItemNr);
+					object->setText(COLUMN_ITEM, docItemErrorsIt.key()->itemName());
+					itemMap.insert(object, docItemErrorsIt.key());
 					errorCodes::Iterator it3;
 					if (docItemErrorsIt.value().count() == 1)
 					{
 						it3 = docItemErrorsIt.value().begin();
-						buildItem(object, it3.key(), doc->DocItems.at(docItemErrorsIt.key()));
+						buildItem(object, it3.key(), docItemErrorsIt.key());
 					}
 					else
 					{
 						for (it3 = docItemErrorsIt.value().begin(); it3 != docItemErrorsIt.value().end(); ++it3)
 						{
 							QTreeWidgetItem * errorText = new QTreeWidgetItem( object);
-							buildItem(errorText, it3.key(), doc->DocItems.at(docItemErrorsIt.key()));
+							buildItem(errorText, it3.key(), docItemErrorsIt.key());
 						}
 						object->setExpanded( true );
 					}
@@ -601,13 +497,13 @@
 		// END of PAGES
 
 		// FREE ITEMS **********************************************8888
-		QMap<int, errorCodes>::Iterator freeItemsErrorsIt;
+		QMap<PageItem*, errorCodes>::Iterator freeItemsErrorsIt;
 		bool hasfreeItems = false;
 		for (freeItemsErrorsIt = doc->docItemErrors.begin();
 			 freeItemsErrorsIt != doc->docItemErrors.end();
 			 ++freeItemsErrorsIt)
 		{
-			if (doc->DocItems.at(freeItemsErrorsIt.key())->OwnPage == -1)
+			if (freeItemsErrorsIt.key()->OwnPage == -1)
 			{
 				hasfreeItems = true;
 				break;
@@ -623,24 +519,24 @@
 				 freeItemsErrorsIt != doc->docItemErrors.end();
 				 ++freeItemsErrorsIt)
 			{
-				if (doc->DocItems.at(freeItemsErrorsIt.key())->OwnPage == -1)
+				if (freeItemsErrorsIt.key()->OwnPage == -1)
 				{
 					hasError = true;
 					QTreeWidgetItem * object = new QTreeWidgetItem(freeItem);
-					object->setText(0, doc->DocItems.at(freeItemsErrorsIt.key())->itemName());
-					itemMap.insert(object, doc->DocItems.at(freeItemsErrorsIt.key())->ItemNr);
+					object->setText(0, freeItemsErrorsIt.key()->itemName());
+					itemMap.insert(object, freeItemsErrorsIt.key());
 					errorCodes::Iterator it3;
 					if (freeItemsErrorsIt.value().count() == 1)
 					{
 						it3 = freeItemsErrorsIt.value().begin();
-						buildItem(object, it3.key(), doc->DocItems.at(freeItemsErrorsIt.key()));
+						buildItem(object, it3.key(), freeItemsErrorsIt.key());
 					}
 					else
 					{
 						for (it3 = freeItemsErrorsIt.value().begin(); it3 != freeItemsErrorsIt.value().end(); ++it3)
 						{
 							QTreeWidgetItem * errorText = new QTreeWidgetItem( object);
-							buildItem(errorText, it3.key(), doc->DocItems.at(freeItemsErrorsIt.key()));
+							buildItem(errorText, it3.key(), freeItemsErrorsIt.key());
 						}
 						object->setExpanded( true );
 					}

Modified: trunk/Scribus/scribus/ui/checkDocument.h
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/ui/checkDocument.h
==============================================================================
--- trunk/Scribus/scribus/ui/checkDocument.h (original)
+++ trunk/Scribus/scribus/ui/checkDocument.h Mon Dec 20 19:34:48 2010
@@ -78,7 +78,8 @@
 signals:
 	//void rescan();
 	//! \brief Signal emitted when user selects any page item in error list.
-	void selectElement(int, int);
+//	void selectElement(int, int);
+	void selectElementByItem(PageItem *, bool);
 	//! \brief Signal emitted when user selects any page in error list.
 	void selectPage(int);
 	//! \brief Signal emitted when user selects any master page in error list.
@@ -99,13 +100,13 @@
 	QHBoxLayout* layout1;
 	QHBoxLayout* layout2;
 	//! \brief Mappping Page Item - item nr.
-	QMap<QTreeWidgetItem*, int> itemMap;
+	QMap<QTreeWidgetItem*, PageItem*> itemMap;
 	//! \brief Mappping Page - page nr.
 	QMap<QTreeWidgetItem*, int> pageMap;
 	//! \brief Mappping Master Page - MP nr.
 	QMap<QTreeWidgetItem*, QString> masterPageMap;
 	//! \brief Mappping MP Item - MP item nr.
-	QMap<QTreeWidgetItem*, int> masterPageItemMap;
+	QMap<QTreeWidgetItem*, PageItem*> masterPageItemMap;
 
 	//! \brief a reference to the current document
 	ScribusDoc* m_Doc;

Modified: trunk/Scribus/scribus/ui/outlinepalette.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/ui/outlinepalette.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/outlinepalette.cpp (original)
+++ trunk/Scribus/scribus/ui/outlinepalette.cpp Mon Dec 20 19:34:48 2010
@@ -615,10 +615,11 @@
 				emit selectElement(-1, item->PageItemObject->ItemNr, false);
 			else
 			{
+				pgItem = item->PageItemObject;
 				if (item->PageItemObject->isGroup())
 					emit selectElement(-1, item->PageItemObject->ItemNr, false);
 				else
-					emit selectElement(-1, item->PageItemObject->ItemNr, true);
+					emit selectElementByItem(pgItem, true);
 			}
 			break;
 		case 2:
@@ -637,7 +638,7 @@
 				if (pgItem->isGroup())
 					emit selectElement(pgItem->OwnPage, pgItem->ItemNr, false);
 				else
-					emit selectElement(pgItem->OwnPage, pgItem->ItemNr, true);
+					emit selectElementByItem(pgItem, true);
 			}
 			break;
 		default:

Modified: trunk/Scribus/scribus/ui/outlinepalette.h
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/ui/outlinepalette.h
==============================================================================
--- trunk/Scribus/scribus/ui/outlinepalette.h (original)
+++ trunk/Scribus/scribus/ui/outlinepalette.h Mon Dec 20 19:34:48 2010
@@ -77,6 +77,7 @@
 signals:
 	void ToggleAllPalettes();
 	void selectElement(int, int, bool);
+	void selectElementByItem(PageItem *, bool);
 	void selectPage(int);
 	void selectMasterPage(QString);
 

Modified: trunk/Scribus/scribus/ui/propertiespalette.cpp
URL: http://scribus.info/websvn/diff.php?repname=Scribus&rev=16122&path=/trunk/Scribus/scribus/ui/propertiespalette.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/propertiespalette.cpp (original)
+++ trunk/Scribus/scribus/ui/propertiespalette.cpp Mon Dec 20 19:34:48 2010
@@ -2997,7 +2997,7 @@
 				w = sqrt(pow(w-x,2)+pow(h-y,2));
 				CurItem->setXYPos(x, CurItem->yPos(), true);
 				CurItem->setRotation(r, true);
-				doc->SizeItem(w, CurItem->height(), CurItem->ItemNr, true);
+				doc->SizeItem(w, CurItem->height(), CurItem, true);
 			}
 			else
 			{
@@ -3077,8 +3077,8 @@
 			doc->MoveItem(0, y - CurItem->yPos(), CurItem, true);
 			CurItem->setXYPos(CurItem->xPos(), y, true);
 			CurItem->setRotation(r, true);
-			doc->SizeItem(w, CurItem->height(), CurItem->ItemNr, true);
-			doc->RotateItem(r, CurItem->ItemNr);
+			doc->SizeItem(w, CurItem->height(), CurItem, true);
+			doc->RotateItem(r, CurItem);
 		}
 		else
 		{
@@ -3147,7 +3147,7 @@
 				CurItem->setRotation(r, true);
 				w = sqrt(pow(w-x,2)+pow(h-y,2));
 			}
-			doc->SizeItem(w, CurItem->height(), CurItem->ItemNr, true, true, false);
+			doc->SizeItem(w, CurItem->height(), CurItem, true, true, false);
 		}
 		else
 		{
@@ -3171,7 +3171,7 @@
 						doc->MoveRotated(bb2->RightLink, FPoint(dist, 0), true);
 						bb2 = bb2->RightLink;
 					}
-					doc->MoveSizeItem(FPoint(0, 0), FPoint(-dist, 0), bb->ItemNr, true);
+					doc->MoveSizeItem(FPoint(0, 0), FPoint(-dist, 0), bb, true);
 					bb = bb->BottomLink;
 				}
 				bb2 = bb;
@@ -3180,7 +3180,7 @@
 					doc->MoveRotated(bb2->RightLink, FPoint(dist, 0), true);
 					bb2 = bb2->RightLink;
 				}
-				doc->MoveSizeItem(FPoint(0, 0), FPoint(-dist, 0), bb->ItemNr, true);
+				doc->MoveSizeItem(FPoint(0, 0), FPoint(-dist, 0), bb, true);
 				doc->RotMode ( rmo );
 				if (keepFrameWHRatioButton->isChecked())
 				{
@@ -3195,10 +3195,10 @@
 				if (keepFrameWHRatioButton->isChecked())
 				{
 					setBH(w, (w / oldW) * CurItem->height());
-					doc->SizeItem(w, (w / oldW) * CurItem->height(), CurItem->ItemNr, true, true, false);
+					doc->SizeItem(w, (w / oldW) * CurItem->height(), CurItem, true, true, false);
 				}
 				else
-					doc->SizeItem(w, CurItem->height(), CurItem->ItemNr, true, true, false);
+					doc->SizeItem(w, CurItem->height(), CurItem, true, true, false);
 			}
 		}
 		CurItem->Sizing = oldS;
@@ -3253,7 +3253,7 @@
 					CurItem->setRotation(r, true);
 					w = sqrt(pow(w-x,2)+pow(h-y,2));
 				}
-				doc->SizeItem(w, CurItem->height(), CurItem->ItemNr, true, true, false);
+				doc->SizeItem(w, CurItem->height(), CurItem, true, true, false);
 			}
 			else
 			{
@@ -3277,7 +3277,7 @@
 							doc->MoveRotated(bb2->BottomLink, FPoint(0, dist), true);
 							bb2 = bb2->BottomLink;
 						}
-						doc->MoveSizeItem(FPoint(0, 0), FPoint(0, -dist), bb->ItemNr, true);
+						doc->MoveSizeItem(FPoint(0, 0), FPoint(0, -dist), bb, true);
 						bb = bb->RightLink;
 					}
 					bb2 = bb;
@@ -3286,7 +3286,7 @@
 						doc->MoveRotated(bb2->BottomLink, FPoint(0, dist), true);
 						bb2 = bb2->BottomLink;
 					}
-					doc->MoveSizeItem(FPoint(0, 0), FPoint(0, -dist), bb->ItemNr, true);
+					doc->MoveSizeItem(FPoint(0, 0), FPoint(0, -dist), bb, true);
 					doc->RotMode ( rmo );
 					if (keepFrameWHRatioButton->isChecked())
 					{
@@ -3301,10 +3301,10 @@
 					if (keepFrameWHRatioButton->isChecked())
 					{
 						setBH((h / oldH) * CurItem->width(), h);
-						doc->SizeItem((h / oldH) * CurItem->width(), h, CurItem->ItemNr, true, true, false);
+						doc->SizeItem((h / oldH) * CurItem->width(), h, CurItem, true, true, false);
 					}
 					else
-						doc->SizeItem(CurItem->width(), h, CurItem->ItemNr, true, true, false);
+						doc->SizeItem(CurItem->width(), h, CurItem, true, true, false);
 				}
 			}
 			CurItem->Sizing = oldS;
@@ -3330,7 +3330,7 @@
 			setXY(gx, gy);
 		}
 		else
-			doc->RotateItem(Rotation->value()*(-1), CurItem->ItemNr);
+			doc->RotateItem(Rotation->value()*(-1), CurItem);
 		if (!_userActionOn)
 		{
 			for (int i = 0; i < doc->m_Selection->count(); ++i)




More information about the scribus-commit mailing list