r16741 by jghali - merge trunk revisions up to r16740

scribus-commit scribus-commit at lists.scribus.net
Sun Jul 31 19:08:11 UTC 2011


Author: jghali
Date: Sun Jul 31 19:08:11 2011
New Revision: 16741

URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=16741
Log:
merge trunk revisions up to r16740

Modified:
    branches/ScribusOIF/scribus/canvas.cpp
    branches/ScribusOIF/scribus/documentchecker.cpp
    branches/ScribusOIF/scribus/fileloader.cpp
    branches/ScribusOIF/scribus/fonts/scfontmetrics.cpp
    branches/ScribusOIF/scribus/guidemanagercore.cpp
    branches/ScribusOIF/scribus/nftrcreader.cpp
    branches/ScribusOIF/scribus/pageitem.cpp
    branches/ScribusOIF/scribus/pageitem_arc.cpp
    branches/ScribusOIF/scribus/pageitem_group.cpp
    branches/ScribusOIF/scribus/pageitem_imageframe.cpp
    branches/ScribusOIF/scribus/pageitem_line.cpp
    branches/ScribusOIF/scribus/pageitem_pathtext.cpp
    branches/ScribusOIF/scribus/pageitem_polygon.cpp
    branches/ScribusOIF/scribus/pageitem_polyline.cpp
    branches/ScribusOIF/scribus/pageitem_regularpolygon.cpp
    branches/ScribusOIF/scribus/pageitem_spiral.cpp
    branches/ScribusOIF/scribus/pageitem_symbol.cpp
    branches/ScribusOIF/scribus/pageitem_textframe.cpp
    branches/ScribusOIF/scribus/pdflib_core.cpp
    branches/ScribusOIF/scribus/plugins/import/ai/importaiplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/cgm/importcgmplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/cvg/importcvgplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/drw/importdrwplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/pct/importpctplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/pdf/importpdf.cpp
    branches/ScribusOIF/scribus/plugins/import/pdf/importpdfplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.cpp
    branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.h
    branches/ScribusOIF/scribus/plugins/import/ps/importpsplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/shape/importshapeplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/sml/importsmlplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/wpg/importwpgplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/xar/importxarplugin.cpp
    branches/ScribusOIF/scribus/plugins/import/xfig/importxfigplugin.cpp
    branches/ScribusOIF/scribus/plugins/scriptplugin/cmdpage.cpp
    branches/ScribusOIF/scribus/plugins/scriptplugin/cmdutil.cpp
    branches/ScribusOIF/scribus/plugins/scriptplugin/objimageexport.cpp
    branches/ScribusOIF/scribus/plugins/short-words/parse.cpp
    branches/ScribusOIF/scribus/plugins/short-words/shortwords.cpp
    branches/ScribusOIF/scribus/plugins/svgexplugin/svgexplugin.cpp
    branches/ScribusOIF/scribus/scdocoutput.h
    branches/ScribusOIF/scribus/scdocoutput_ps2.cpp
    branches/ScribusOIF/scribus/scpage.cpp
    branches/ScribusOIF/scribus/scpageoutput.cpp
    branches/ScribusOIF/scribus/scpageoutput_ps2.cpp
    branches/ScribusOIF/scribus/scpainter.cpp
    branches/ScribusOIF/scribus/scprintengine_gdi.cpp
    branches/ScribusOIF/scribus/scribus.cpp
    branches/ScribusOIF/scribus/scribusXml.cpp
    branches/ScribusOIF/scribus/scribusdoc.cpp
    branches/ScribusOIF/scribus/scribusdoc.h
    branches/ScribusOIF/scribus/scribusview.cpp
    branches/ScribusOIF/scribus/tocgenerator.cpp
    branches/ScribusOIF/scribus/ui/about.cpp
    branches/ScribusOIF/scribus/ui/aligndistribute.cpp
    branches/ScribusOIF/scribus/ui/applytemplatedialog.cpp
    branches/ScribusOIF/scribus/ui/checkDocument.cpp
    branches/ScribusOIF/scribus/ui/cpalette.cpp
    branches/ScribusOIF/scribus/ui/dcolor.cpp
    branches/ScribusOIF/scribus/ui/effectsdialog.cpp
    branches/ScribusOIF/scribus/ui/fontcombo.cpp
    branches/ScribusOIF/scribus/ui/guidemanager.cpp
    branches/ScribusOIF/scribus/ui/hruler.cpp
    branches/ScribusOIF/scribus/ui/inspage.cpp
    branches/ScribusOIF/scribus/ui/javadocs.cpp
    branches/ScribusOIF/scribus/ui/margindialog.cpp
    branches/ScribusOIF/scribus/ui/masterpagepalette.cpp
    branches/ScribusOIF/scribus/ui/missing.cpp
    branches/ScribusOIF/scribus/ui/newtemp.cpp
    branches/ScribusOIF/scribus/ui/nodeeditpalette.cpp
    branches/ScribusOIF/scribus/ui/outlinepalette.cpp
    branches/ScribusOIF/scribus/ui/pagepalette.cpp
    branches/ScribusOIF/scribus/ui/propertiespalette.h
    branches/ScribusOIF/scribus/ui/propertiespalette_utils.h
    branches/ScribusOIF/scribus/ui/propertywidget_color.cpp
    branches/ScribusOIF/scribus/ui/propertywidget_transparency.cpp
    branches/ScribusOIF/scribus/ui/propertywidget_transparency.ui
    branches/ScribusOIF/scribus/ui/search.cpp
    branches/ScribusOIF/scribus/ui/transparencypalette.cpp
    branches/ScribusOIF/scribus/ui/transparencypalette.ui
    branches/ScribusOIF/scribus/ui/vruler.cpp

Modified: branches/ScribusOIF/scribus/canvas.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/canvas.cpp
==============================================================================
--- branches/ScribusOIF/scribus/canvas.cpp (original)
+++ branches/ScribusOIF/scribus/canvas.cpp Sun Jul 31 19:08:11 2011
@@ -23,12 +23,12 @@
 
 #include "canvas.h"
 #include "canvasmode.h"
-#include "scpage.h"
 #include "pageitem_textframe.h"
 #include "pageitem_group.h"
 #include "prefsmanager.h"
+#include "scpage.h"
+#include "scpainter.h"
 #include "scribusdoc.h"
-#include "scpainter.h"
 #include "scribusview.h"
 #include "selection.h"
 #include "ui/hruler.h"

Modified: branches/ScribusOIF/scribus/documentchecker.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/documentchecker.cpp
==============================================================================
--- branches/ScribusOIF/scribus/documentchecker.cpp (original)
+++ branches/ScribusOIF/scribus/documentchecker.cpp Sun Jul 31 19:08:11 2011
@@ -23,11 +23,11 @@
 
 #include "commonstrings.h"
 #include "documentchecker.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pdf_analyzer.h"
 #include "sccolor.h"
 #include "sclayer.h"
+#include "scpage.h"
 #include "scribusdoc.h"
 #include "scribusstructs.h"
 #include "text/nlsconfig.h"

Modified: branches/ScribusOIF/scribus/fileloader.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/fileloader.cpp
==============================================================================
--- branches/ScribusOIF/scribus/fileloader.cpp (original)
+++ branches/ScribusOIF/scribus/fileloader.cpp Sun Jul 31 19:08:11 2011
@@ -21,24 +21,28 @@
 #include <cmath>
 #include <QTextStream>
 
+#include "scconfig.h"
+
 #include "commonstrings.h"
 #include "fileloader.h"
-#include "ui/fontreplacedialog.h"
 #include "hyphenator.h"
-#include "ui/missing.h"
+#include "loadsaveplugin.h"
+#include "pagestructs.h"
+#include "pluginmanager.h"
+#include "prefsmanager.h"
+#include "resourcecollection.h"
+#include "scclocale.h"
 #include "scpage.h"
-#include "pluginmanager.h"
-#include "plugins/formatidlist.h"
-#include "pagestructs.h"
-#include "resourcecollection.h"
-#include "scconfig.h"
-#include "scclocale.h"
 #include "scribuscore.h"
 #include "scribusXml.h"
 #include "units.h"
-#include "loadsaveplugin.h"
+#include "util.h"
+
+#include "plugins/formatidlist.h"
+#include "text/nlsconfig.h"
 #include "ui/guidemanager.h"
-#include "text/nlsconfig.h"
+#include "ui/fontreplacedialog.h"
+#include "ui/missing.h"
 
 // We need to include the headers for the plugins we support until we start
 // using LoadSavePlugin to pick them for us. We only use these headers to
@@ -46,10 +50,7 @@
 // #include "plugins/svgimplugin/svgplugin.h"
 // #include "plugins/psimport/importpsplugin.h"
 // #include "plugins/fileloader/oodraw/oodrawimp.h"
-
 #include <zlib.h>
-#include "util.h"
-#include "prefsmanager.h"
 
 /*!
  \author Franz Schmid

Modified: branches/ScribusOIF/scribus/fonts/scfontmetrics.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/fonts/scfontmetrics.cpp
==============================================================================
--- branches/ScribusOIF/scribus/fonts/scfontmetrics.cpp (original)
+++ branches/ScribusOIF/scribus/fonts/scfontmetrics.cpp Sun Jul 31 19:08:11 2011
@@ -15,9 +15,9 @@
 
 #include "fpoint.h"
 #include "fpointarray.h"
-#include "scpage.h"
 #include "scfontmetrics.h"
 #include "scfonts.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scribusdoc.h"
 #include "style.h"

Modified: branches/ScribusOIF/scribus/guidemanagercore.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/guidemanagercore.cpp
==============================================================================
--- branches/ScribusOIF/scribus/guidemanagercore.cpp (original)
+++ branches/ScribusOIF/scribus/guidemanagercore.cpp Sun Jul 31 19:08:11 2011
@@ -7,20 +7,20 @@
 
 #include <QPen>
 #include <QTabWidget>
+
 #include "guidemanagercore.h"
+
+#include "fpoint.h"
+#include "scclocale.h"
+#include "scpage.h"
 #include "scpainter.h"
-#include "scpage.h"
-#include "fpoint.h"
-#include "undomanager.h"
-#include "undostate.h"
-#include "ui/guidemanager.h"
-#include "scclocale.h"
 #include "scribuscore.h"
 #include "scribusdoc.h"
 #include "pagestructs.h"
 #include "selection.h"
-
-
+#include "undomanager.h"
+#include "undostate.h"
+#include "ui/guidemanager.h"
 
 GuideManagerCore::GuideManagerCore():
 	undoManager(UndoManager::instance()),

Modified: branches/ScribusOIF/scribus/nftrcreader.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/nftrcreader.cpp
==============================================================================
--- branches/ScribusOIF/scribus/nftrcreader.cpp (original)
+++ branches/ScribusOIF/scribus/nftrcreader.cpp Sun Jul 31 19:08:11 2011
@@ -1,205 +1,205 @@
-/*
-For general Scribus (>=1.3.2) copyright and licensing information please refer
-to the COPYING file provided with the program. Following this notice may exist
-a copyright and/or license notice that predates the release of Scribus 1.3.2
-for which a new license (GPL+exception) is in place.
-*/
-/***************************************************************************
- *   Riku Leino, tsoots at gmail.com                                          *
- ***************************************************************************/
-
-#include "nftrcreader.h"
-
-using namespace std;
-
-nftrcreader::nftrcreader(std::vector<nfttemplate*> *tmplts,QString sourceDir)
-{
-	templates = tmplts;
-	currentDir = sourceDir;
-	setupCategories();
-}
-
-bool nftrcreader::startDocument()
-{
-	inSettings       = false;
-	inTemplate       = false;
-	inName           = false;
-	inFile           = false;
-	inTNail          = false;
-	inImg            = false;
-	inPSize          = false;
-	inColor          = false;
-	inDescr          = false;
-	inUsage          = false;
-	inScribusVersion = false;
-	inDate           = false;
-	inAuthor         = false;
-	inEmail          = false;
-	return true;
-}
-
-bool nftrcreader::startElement(const QString&, const QString&, const QString &name, const QXmlAttributes &attrs) 
-{
-	if (name == "name")
-		inName = true;
-	else if (name == "file")
-		inFile = true;
-	else if (name == "tnail")
-		inTNail = true;
-	else if (name == "img")
-		inImg = true;
-	else if (name == "psize")
-		inPSize = true;
-	else if (name == "color") 
-		inColor = true;
-	else if (name == "descr")
-		inDescr = true;
-	else if (name == "usage")
-		inUsage = true;
-	else if (name == "scribus_version")
-		inScribusVersion = true;
-	else if (name == "date")
-		inDate = true;
-	else if (name == "author")
-		inAuthor = true;
-	else if (name == "email")
-		inEmail = true;
-
-
-	if (name == "template") // new template starts here
-	{
-		inTemplate = true;
-		QString category;
-		QString enCat;
-		for (int i = 0; i < attrs.count(); i++)
-		{
-			if (attrs.localName(i) == "category")
-			{
-				category = getCategory(attrs.value(i));
-				enCat = attrs.value(i);
-			}
-		}
-		tmpTemplate = new nfttemplate(new QFile(currentFile), category); // create a new template
-		tmpTemplate->enCategory = enCat;
-	}
-
-	if (name == "settings") 
-		inSettings = true;
-
-	return true;
-}
-
-bool nftrcreader::characters(const QString &ch) 
-{
-	QString tmp(ch);
-	if (inName)
-		tmpTemplate->name = tmp;
-	else if (inFile)
-	{
-		if (tmp.left(1) == "/")
-			tmpTemplate->file = tmp;
-		else 
-			tmpTemplate->file = currentDir + "/" + tmp;
-	} else if (inTNail)
-	{
-		if (tmp.left(1) == "/")
-			tmpTemplate->tnail = tmp;
-		else
-			tmpTemplate->tnail = currentDir + "/" + tmp;
-	} else if (inImg)
-	{
-		if (tmp.left(1) == "/") 
-			tmpTemplate->img = tmp;
-		else
-			tmpTemplate->img = currentDir + "/" + tmp;
-	} else if (inPSize)
-		tmpTemplate->psize = tmp; 
-	else if (inColor)
-		tmpTemplate->color = tmp; 
-	else if (inDescr)
-		tmpTemplate->descr = tmp; 
-	else if (inUsage)
-		tmpTemplate->usage = tmp;
-	else if (inScribusVersion)
-		tmpTemplate->scribusVersion = tmp;
-	else if (inDate)
-		tmpTemplate->date = tmp;
-	else if (inAuthor)
-		tmpTemplate->author = tmp;
-	else if (inEmail)
-		tmpTemplate->email = tmp; 
-
-	return true;
-}
-
-bool nftrcreader::endElement(const QString&, const QString&, const QString &name)
-{
-	if (name == "template")
-	{ // new template starts here
-		inTemplate = false;
-		if (tmpTemplate != NULL) // If we have a template already created
-			if (tmpTemplate->isValid()) // and the template really exists push
-				templates->push_back(tmpTemplate); // it to the templates vector and start a new one
-	}
-	if (inTemplate) {
-		if (inName && name == "name")
-			inName = false;
-		else if (inFile && name == "file")
-			inFile = false;
-		else if (inTNail && name == "tnail")
-			inTNail = false;
-		else if (inImg && name == "img")
-			inImg = false;
-		else if (inPSize && name == "psize")
-			inPSize = false;
-		else if (inColor && name == "color") 
-			inColor = false;
-		else if (inDescr && name == "descr")
-			inDescr = false;
-		else if (inUsage && name == "usage")
-			inUsage = false;
-		else if (inScribusVersion && name == "scribus_version")
-			inScribusVersion = false;
-		else if (inDate && name == "date")
-			inDate = false;
-		else if (inAuthor && name == "author")
-			inAuthor = false;
-		else if (inEmail && name == "email")
-			inEmail = false;
-		else if (inTemplate && name == "template")
-			inTemplate = false;
-	}
-	
-	if (inSettings && name == "settings")
-		inSettings = false;
-
-	return true;
-}
-
-void nftrcreader::setSourceDir(QString source) 
-{
-	currentDir = source;
-}
-
-void nftrcreader::setSourceFile(QString sourceFile)
-{
-	currentFile = sourceFile;
-}
-
-QString nftrcreader::getCategory(QString cat) 
-{
-	QMap<QString, QString>::iterator it = cats.find(cat);
-	if (it==cats.end())
-		cats.insert(cat, cat);
-	if (it != cats.end())
-		return it.value();
-	return cat;
-}
-
-void nftrcreader::setupCategories()
-{
-	// en will be used in template.xml and it will be then replaced with the lang when used for users
-	// to get the categories in their language.
+/*
+For general Scribus (>=1.3.2) copyright and licensing information please refer
+to the COPYING file provided with the program. Following this notice may exist
+a copyright and/or license notice that predates the release of Scribus 1.3.2
+for which a new license (GPL+exception) is in place.
+*/
+/***************************************************************************
+ *   Riku Leino, tsoots at gmail.com                                          *
+ ***************************************************************************/
+
+#include "nftrcreader.h"
+
+using namespace std;
+
+nftrcreader::nftrcreader(std::vector<nfttemplate*> *tmplts,QString sourceDir)
+{
+	templates = tmplts;
+	currentDir = sourceDir;
+	setupCategories();
+}
+
+bool nftrcreader::startDocument()
+{
+	inSettings       = false;
+	inTemplate       = false;
+	inName           = false;
+	inFile           = false;
+	inTNail          = false;
+	inImg            = false;
+	inPSize          = false;
+	inColor          = false;
+	inDescr          = false;
+	inUsage          = false;
+	inScribusVersion = false;
+	inDate           = false;
+	inAuthor         = false;
+	inEmail          = false;
+	return true;
+}
+
+bool nftrcreader::startElement(const QString&, const QString&, const QString &name, const QXmlAttributes &attrs) 
+{
+	if (name == "name")
+		inName = true;
+	else if (name == "file")
+		inFile = true;
+	else if (name == "tnail")
+		inTNail = true;
+	else if (name == "img")
+		inImg = true;
+	else if (name == "psize")
+		inPSize = true;
+	else if (name == "color") 
+		inColor = true;
+	else if (name == "descr")
+		inDescr = true;
+	else if (name == "usage")
+		inUsage = true;
+	else if (name == "scribus_version")
+		inScribusVersion = true;
+	else if (name == "date")
+		inDate = true;
+	else if (name == "author")
+		inAuthor = true;
+	else if (name == "email")
+		inEmail = true;
+
+
+	if (name == "template") // new template starts here
+	{
+		inTemplate = true;
+		QString category;
+		QString enCat;
+		for (int i = 0; i < attrs.count(); i++)
+		{
+			if (attrs.localName(i) == "category")
+			{
+				category = getCategory(attrs.value(i));
+				enCat = attrs.value(i);
+			}
+		}
+		tmpTemplate = new nfttemplate(new QFile(currentFile), category); // create a new template
+		tmpTemplate->enCategory = enCat;
+	}
+
+	if (name == "settings") 
+		inSettings = true;
+
+	return true;
+}
+
+bool nftrcreader::characters(const QString &ch) 
+{
+	QString tmp(ch);
+	if (inName)
+		tmpTemplate->name = tmp;
+	else if (inFile)
+	{
+		if (tmp.left(1) == "/")
+			tmpTemplate->file = tmp;
+		else 
+			tmpTemplate->file = currentDir + "/" + tmp;
+	} else if (inTNail)
+	{
+		if (tmp.left(1) == "/")
+			tmpTemplate->tnail = tmp;
+		else
+			tmpTemplate->tnail = currentDir + "/" + tmp;
+	} else if (inImg)
+	{
+		if (tmp.left(1) == "/") 
+			tmpTemplate->img = tmp;
+		else
+			tmpTemplate->img = currentDir + "/" + tmp;
+	} else if (inPSize)
+		tmpTemplate->psize = tmp; 
+	else if (inColor)
+		tmpTemplate->color = tmp; 
+	else if (inDescr)
+		tmpTemplate->descr = tmp; 
+	else if (inUsage)
+		tmpTemplate->usage = tmp;
+	else if (inScribusVersion)
+		tmpTemplate->scribusVersion = tmp;
+	else if (inDate)
+		tmpTemplate->date = tmp;
+	else if (inAuthor)
+		tmpTemplate->author = tmp;
+	else if (inEmail)
+		tmpTemplate->email = tmp; 
+
+	return true;
+}
+
+bool nftrcreader::endElement(const QString&, const QString&, const QString &name)
+{
+	if (name == "template")
+	{ // new template starts here
+		inTemplate = false;
+		if (tmpTemplate != NULL) // If we have a template already created
+			if (tmpTemplate->isValid()) // and the template really exists push
+				templates->push_back(tmpTemplate); // it to the templates vector and start a new one
+	}
+	if (inTemplate) {
+		if (inName && name == "name")
+			inName = false;
+		else if (inFile && name == "file")
+			inFile = false;
+		else if (inTNail && name == "tnail")
+			inTNail = false;
+		else if (inImg && name == "img")
+			inImg = false;
+		else if (inPSize && name == "psize")
+			inPSize = false;
+		else if (inColor && name == "color") 
+			inColor = false;
+		else if (inDescr && name == "descr")
+			inDescr = false;
+		else if (inUsage && name == "usage")
+			inUsage = false;
+		else if (inScribusVersion && name == "scribus_version")
+			inScribusVersion = false;
+		else if (inDate && name == "date")
+			inDate = false;
+		else if (inAuthor && name == "author")
+			inAuthor = false;
+		else if (inEmail && name == "email")
+			inEmail = false;
+		else if (inTemplate && name == "template")
+			inTemplate = false;
+	}
+	
+	if (inSettings && name == "settings")
+		inSettings = false;
+
+	return true;
+}
+
+void nftrcreader::setSourceDir(QString source) 
+{
+	currentDir = source;
+}
+
+void nftrcreader::setSourceFile(QString sourceFile)
+{
+	currentFile = sourceFile;
+}
+
+QString nftrcreader::getCategory(QString cat) 
+{
+	QMap<QString, QString>::iterator it = cats.find(cat);
+	if (it==cats.end())
+		cats.insert(cat, cat);
+	if (it != cats.end())
+		return it.value();
+	return cat;
+}
+
+void nftrcreader::setupCategories()
+{
+	// en will be used in template.xml and it will be then replaced with the lang when used for users
+	// to get the categories in their language.
 	cats.insert(QString("Advertisements"), QObject::tr("Advertisements"));
 	cats.insert(QString("Announcements") , QObject::tr("Announcements"));
 	cats.insert(QString("Brochures")  , QObject::tr("Brochures"));
@@ -223,5 +223,5 @@
 	cats.insert(QString("Posters")    , QObject::tr("Posters"));
 	cats.insert(QString("Programs")   , QObject::tr("Programs"));
 	cats.insert(QString("Signs")      , QObject::tr("Signs"));
-	cats.insert(QString("Text Documents"), QObject::tr("Text Documents"));
-}
+	cats.insert(QString("Text Documents"), QObject::tr("Text Documents"));
+}

Modified: branches/ScribusOIF/scribus/pageitem.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem.cpp Sun Jul 31 19:08:11 2011
@@ -40,16 +40,17 @@
 #include "cmsettings.h"
 #include "colorblind.h"
 #include "commonstrings.h"
-#include "ui/guidemanager.h"
-#include "scpage.h"
+
 #include "pageitem_textframe.h"
 #include "pageitem_latexframe.h"
 #include "prefsmanager.h"
-#include "ui/propertiespalette.h"
+
 #include "resourcecollection.h"
 #include "scclocale.h"
 #include "sccolorengine.h"
 #include "scimagecacheproxy.h"
+#include "sclimits.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scpaths.h"
 #include "scpattern.h"
@@ -61,17 +62,19 @@
 #include "scribuswin.h"
 #include "sctextstream.h"
 #include "selection.h"
-#include "sclimits.h"
 #include "text/nlsconfig.h"
 #include "text/storytext.h"
 #include "undomanager.h"
 #include "undostate.h"
 #include "util.h"
+#include "util_file.h"
 #include "util_formats.h"
+#include "util_icon.h"
 #include "util_math.h"
 #include "util_text.h"
-#include "util_file.h"
-#include "util_icon.h"
+
+#include "ui/guidemanager.h"
+#include "ui/propertiespalette.h"
 
 #include <cairo.h>
 
@@ -1554,7 +1557,7 @@
 				else
 					p->setGradientMask(VGradient::radial, FPoint(GrMaskStartX, GrMaskStartY), FPoint(GrMaskEndX, GrMaskEndY), FPoint(GrMaskFocalX, GrMaskFocalY), GrMaskScale, GrMaskSkew);
 			}
-			else if ((GrMask == 3) || (GrMask == 6))
+			else if ((GrMask == 3) || (GrMask == 6) || (GrMask == 7) || (GrMask == 8))
 			{
 				if ((patternMaskVal.isEmpty()) || (!m_Doc->docPatterns.contains(patternMaskVal)))
 					p->setMaskMode(0);
@@ -1563,8 +1566,12 @@
 					p->setPatternMask(&m_Doc->docPatterns[patternMaskVal], patternMaskScaleX, patternMaskScaleY, patternMaskOffsetX, patternMaskOffsetY, patternMaskRotation, patternMaskSkewX, patternMaskSkewY, patternMaskMirrorX, patternMaskMirrorY);
 					if (GrMask == 3)
 						p->setMaskMode(2);
+					else if (GrMask == 6)
+						p->setMaskMode(4);
+					else if (GrMask == 7)
+						p->setMaskMode(5);
 					else
-						p->setMaskMode(4);
+						p->setMaskMode(6);
 				}
 			}
 			else
@@ -2044,6 +2051,8 @@
 
 QImage PageItem::DrawObj_toImage(QList<PageItem*> &emG, double scaling)
 {
+	bool savedFlag = m_Doc->guidesPrefs().framesShown;
+	m_Doc->guidesPrefs().framesShown = false;
 	QImage retImg = QImage(qRound(gWidth * scaling), qRound(gHeight * scaling), QImage::Format_ARGB32_Premultiplied);
 	retImg.fill( qRgba(0, 0, 0, 0) );
 	ScPainter *painter = new ScPainter(&retImg, retImg.width(), retImg.height(), 1, 0);
@@ -2091,6 +2100,7 @@
 	}
 	painter->end();
 	delete painter;
+	m_Doc->guidesPrefs().framesShown = savedFlag;
 	return retImg;
 }
 

Modified: branches/ScribusOIF/scribus/pageitem_arc.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_arc.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_arc.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_arc.cpp Sun Jul 31 19:08:11 2011
@@ -27,21 +27,20 @@
 #include <cmath>
 #include <cassert>
 
-#include "scpage.h"
+#include "scconfig.h"
+
 #include "pageitem.h"
 #include "pageitem_arc.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scpaths.h"
 #include "scraction.h"
 #include "scribus.h"
 #include "scribusstructs.h"
 #include "scribusdoc.h"
-
 #include "undomanager.h"
 #include "undostate.h"
-#include "scconfig.h"
-
 #include "util.h"
 #include "util_math.h"
 

Modified: branches/ScribusOIF/scribus/pageitem_group.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_group.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_group.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_group.cpp Sun Jul 31 19:08:11 2011
@@ -27,10 +27,10 @@
 #include <QApplication>
 
 #include "commonstrings.h"
-#include "scpage.h"
 #include "pageitem_group.h"
 #include "prefsmanager.h"
 #include "scpainter.h"
+#include "scpage.h"
 #include "scpaths.h"
 #include "scraction.h"
 #include "scribus.h"
@@ -133,7 +133,7 @@
 				else
 					p->setGradientMask(VGradient::radial, FPoint(GrMaskStartX, GrMaskStartY), FPoint(GrMaskEndX, GrMaskEndY), FPoint(GrMaskFocalX, GrMaskFocalY), GrMaskScale, GrMaskSkew);
 			}
-			else if ((maskType() == 3) || (maskType() == 6))
+			else if ((maskType() == 3) || (maskType() == 6) || (maskType() == 7) || (maskType() == 8))
 			{
 				if ((patternMask().isEmpty()) || (!m_Doc->docPatterns.contains(patternMask())))
 					p->setMaskMode(0);
@@ -144,8 +144,12 @@
 					p->setPatternMask(&m_Doc->docPatterns[patternMask()], patternMaskScaleX * scw, patternMaskScaleY * sch, patternMaskOffsetX, patternMaskOffsetY, patternMaskRotation, patternMaskSkewX, patternMaskSkewY, patternMaskMirrorX, patternMaskMirrorY);
 					if (maskType() == 3)
 						p->setMaskMode(2);
+					else if (maskType() == 6)
+						p->setMaskMode(4);
+					else if (maskType() == 7)
+						p->setMaskMode(5);
 					else
-						p->setMaskMode(4);
+						p->setMaskMode(6);
 				}
 			}
 			else

Modified: branches/ScribusOIF/scribus/pageitem_imageframe.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_imageframe.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_imageframe.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_imageframe.cpp Sun Jul 31 19:08:11 2011
@@ -30,11 +30,11 @@
 #include <cassert>
 
 #include "filewatcher.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pageitem_imageframe.h"
 #include "prefsmanager.h"
 #include "scraction.h"
+#include "scpage.h"
 #include "scpaths.h"
 #include "scpainter.h"
 #include "scribus.h"
@@ -181,7 +181,7 @@
 						else
 							p->setGradientMask(VGradient::radial, FPoint(GrMaskStartX * mscalex, GrMaskStartY * mscaley), FPoint(GrMaskEndX * mscalex, GrMaskEndY * mscaley), FPoint(GrMaskFocalX * mscalex, GrMaskFocalY * mscaley), GrMaskScale, GrMaskSkew);
 					}
-					else if ((GrMask == 3) || (GrMask == 6))
+					else if ((GrMask == 3) || (GrMask == 6) || (GrMask == 7) || (GrMask == 8))
 					{
 						if ((patternMaskVal.isEmpty()) || (!m_Doc->docPatterns.contains(patternMaskVal)))
 							p->setMaskMode(0);
@@ -190,8 +190,12 @@
 							p->setPatternMask(&m_Doc->docPatterns[patternMaskVal], patternMaskScaleX * mscalex, patternMaskScaleY * mscaley, patternMaskOffsetX, patternMaskOffsetY, patternMaskRotation, patternMaskSkewX, patternMaskSkewY, patternMaskMirrorX, patternMaskMirrorY);
 							if (GrMask == 3)
 								p->setMaskMode(2);
+							else if (GrMask == 6)
+								p->setMaskMode(4);
+							else if (GrMask == 7)
+								p->setMaskMode(5);
 							else
-								p->setMaskMode(4);
+								p->setMaskMode(6);
 						}
 					}
 					else

Modified: branches/ScribusOIF/scribus/pageitem_line.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_line.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_line.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_line.cpp Sun Jul 31 19:08:11 2011
@@ -24,21 +24,20 @@
 #include <cmath>
 #include <cassert>
 
-#include "scpage.h"
+#include "scconfig.h"
+
+#include "commonstrings.h"
 #include "pageitem.h"
 #include "pageitem_line.h"
 #include "prefsmanager.h"
+#include "scpage.h"
+#include "scpainter.h"
 #include "scpaths.h"
-#include "scpainter.h"
 #include "scribus.h"
 #include "scribusstructs.h"
 #include "scribusdoc.h"
-#include "commonstrings.h"
-
 #include "undomanager.h"
 #include "undostate.h"
-#include "scconfig.h"
-
 #include "util.h"
 
 using namespace std;

Modified: branches/ScribusOIF/scribus/pageitem_pathtext.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_pathtext.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_pathtext.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_pathtext.cpp Sun Jul 31 19:08:11 2011
@@ -29,20 +29,20 @@
 
 #include <cassert>
 
-#include "scpage.h"
+#include "scconfig.h"
+
+#include "commonstrings.h"
 #include "pageitem.h"
 #include "prefsmanager.h"
+#include "scpage.h"
+#include "scpainter.h"
 #include "scpaths.h"
-#include "scpainter.h"
 #include "scraction.h"
 #include "scribus.h"
 #include "scribusstructs.h"
 #include "scribusdoc.h"
-#include "commonstrings.h"
 #include "undomanager.h"
 #include "undostate.h"
-#include "scconfig.h"
-
 #include "util.h"
 #include "util_math.h"
 

Modified: branches/ScribusOIF/scribus/pageitem_polygon.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_polygon.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_polygon.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_polygon.cpp Sun Jul 31 19:08:11 2011
@@ -21,24 +21,24 @@
  *                                                                         *
  ***************************************************************************/
 
+#include "pageitem_polygon.h"
+
 #include <cmath>
 #include <cassert>
 
+#include "scconfig.h"
+
+#include "pageitem.h"
+#include "prefsmanager.h"
 #include "scpage.h"
-#include "pageitem.h"
-#include "pageitem_polygon.h"
-#include "prefsmanager.h"
 #include "scpainter.h"
 #include "scpaths.h"
 #include "scraction.h"
 #include "scribus.h"
 #include "scribusstructs.h"
 #include "scribusdoc.h"
-
 #include "undomanager.h"
 #include "undostate.h"
-#include "scconfig.h"
-
 #include "util.h"
 
 using namespace std;

Modified: branches/ScribusOIF/scribus/pageitem_polyline.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_polyline.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_polyline.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_polyline.cpp Sun Jul 31 19:08:11 2011
@@ -27,20 +27,20 @@
 #include <cmath>
 #include <cassert>
 
-#include "scpage.h"
+#include "scconfig.h"
+
+#include "commonstrings.h"
 #include "pageitem.h"
 #include "pageitem_polyline.h"
 #include "prefsmanager.h"
 #include "scpainter.h"
+#include "scpage.h"
 #include "scpaths.h"
 #include "scribus.h"
 #include "scribusstructs.h"
 #include "scribusdoc.h"
-#include "commonstrings.h"
 #include "undomanager.h"
 #include "undostate.h"
-#include "scconfig.h"
-
 #include "util.h"
 
 using namespace std;

Modified: branches/ScribusOIF/scribus/pageitem_regularpolygon.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_regularpolygon.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_regularpolygon.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_regularpolygon.cpp Sun Jul 31 19:08:11 2011
@@ -27,10 +27,10 @@
 #include <cmath>
 #include <cassert>
 
-#include "scpage.h"
 #include "pageitem.h"
 #include "pageitem_regularpolygon.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scpaths.h"
 #include "scraction.h"

Modified: branches/ScribusOIF/scribus/pageitem_spiral.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_spiral.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_spiral.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_spiral.cpp Sun Jul 31 19:08:11 2011
@@ -27,22 +27,21 @@
 #include <cmath>
 #include <cassert>
 
+#include "scconfig.h"
+
 #include "commonstrings.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pageitem_spiral.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scpaths.h"
 #include "scraction.h"
 #include "scribus.h"
+#include "scribusdoc.h"
 #include "scribusstructs.h"
-#include "scribusdoc.h"
-
 #include "undomanager.h"
 #include "undostate.h"
-#include "scconfig.h"
-
 #include "util.h"
 #include "util_math.h"
 

Modified: branches/ScribusOIF/scribus/pageitem_symbol.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_symbol.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_symbol.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_symbol.cpp Sun Jul 31 19:08:11 2011
@@ -27,10 +27,10 @@
 #include <QApplication>
 
 #include "commonstrings.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pageitem_symbol.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scpaths.h"
 #include "scraction.h"
@@ -84,7 +84,7 @@
 				else
 					p->setGradientMask(VGradient::radial, FPoint(GrMaskStartX, GrMaskStartY), FPoint(GrMaskEndX, GrMaskEndY), FPoint(GrMaskFocalX, GrMaskFocalY), GrMaskScale, GrMaskSkew);
 			}
-			else if ((maskType() == 3) || (maskType() == 6))
+			else if ((maskType() == 3) || (maskType() == 6) || (maskType() == 7) || (maskType() == 8))
 			{
 				if ((patternMask().isEmpty()) || (!m_Doc->docPatterns.contains(patternMask())))
 					p->setMaskMode(0);
@@ -95,8 +95,12 @@
 					p->setPatternMask(&m_Doc->docPatterns[patternMask()], patternMaskScaleX * scw, patternMaskScaleY * sch, patternMaskOffsetX, patternMaskOffsetY, patternMaskRotation, patternMaskSkewX, patternMaskSkewY, patternMaskMirrorX, patternMaskMirrorY);
 					if (maskType() == 3)
 						p->setMaskMode(2);
+					else if (maskType() == 6)
+						p->setMaskMode(4);
+					else if (maskType() == 7)
+						p->setMaskMode(5);
 					else
-						p->setMaskMode(4);
+						p->setMaskMode(6);
 				}
 			}
 			else

Modified: branches/ScribusOIF/scribus/pageitem_textframe.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pageitem_textframe.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pageitem_textframe.cpp (original)
+++ branches/ScribusOIF/scribus/pageitem_textframe.cpp Sun Jul 31 19:08:11 2011
@@ -30,16 +30,15 @@
 #include <QRegion>
 #include <cassert>
 
+#include "scconfig.h"
 
 #include "canvas.h"
 #include "commonstrings.h"
-#include "ui/guidemanager.h"
 #include "hyphenator.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pageitem_textframe.h"
 #include "prefsmanager.h"
-#include "scconfig.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scpaths.h"
 #include "scraction.h"
@@ -55,6 +54,9 @@
 #include "undostate.h"
 #include "util.h"
 #include "util_math.h"
+
+#include "ui/guidemanager.h"
+
 #include <cairo.h>
 
 using namespace std;
@@ -1489,49 +1491,30 @@
 
 void PageItem_TextFrame::drawOverflowMarker(ScPainter *p)
 {
-	/*CB Old large corner indicator.
-	double scp1 = 1.0/qMax(ScMW->view->getScale(), 1);
-	double scp16 = 16.0*scp1;
-	double scp14 = 14.0*scp1;
-	double scp3 = 3.0*scp1;
-	double scm_lineWidth16 = Width - scp16;
-	double scpheight16 = Height - scp16;
-	double scm_lineWidth3 = Width - scp3;
-	double scpheight3 = Height - scp3;
-	p->setPen(Qt::black, scp1, Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin);
-	p->setBrush(white);
-	p->drawRect(scm_lineWidth16, scpheight16, scp14, scp14);
-	p->drawLine(FPoint(scm_lineWidth16, scpheight16), FPoint(scm_lineWidth3, scpheight3));
-	p->drawLine(FPoint(scm_lineWidth16, scpheight3), FPoint(scm_lineWidth3, scpheight16));
-	*/
-	//TODO: CB clean
-	double scp1 = p->zoomFactor() ;// / ScMW->view->scale();
-	double ofwh = 8 * scp1;
-	//CB moved down while locked marker disabled
-	//double ofx = Width - ofwh/2;
-	//double ofy = Height - ofwh*3.0;
-	double ofx = Width - ofwh/2;
-	double ofy = Height - ofwh*1.5;
-	double lx1= ofx;
-	double ly1= ofy;
-	double lx2= ofx+ofwh;
-	double ly2= ofy+ofwh;
-	p->setPen(PrefsManager::instance()->appPrefs.displayPrefs.frameNormColor, 0.5 / p->zoomFactor(), Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin);
+	qreal sideLength = 10 / qMax(p->zoomFactor(), 1.0);
+	qreal left  = Width  - sideLength / 2;
+	qreal right = left   + sideLength;
+	qreal top   = Height - sideLength * 1.5;
+	qreal bottom = top   + sideLength;
+
+	QColor color(PrefsManager::instance()->appPrefs.displayPrefs.frameNormColor);
 	if ((isBookmark) || (m_isAnnotation))
-		p->setPen(PrefsManager::instance()->appPrefs.displayPrefs.frameAnnotationColor, 0.5 / p->zoomFactor(), Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin);
+		color = PrefsManager::instance()->appPrefs.displayPrefs.frameAnnotationColor;
 	if ((BackBox != 0) || (NextBox != 0))
-		p->setPen(PrefsManager::instance()->appPrefs.displayPrefs.frameLinkColor, 0.5 / p->zoomFactor(), Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin);
+		color = PrefsManager::instance()->appPrefs.displayPrefs.frameLinkColor;
 	if (m_Locked)
-		p->setPen(PrefsManager::instance()->appPrefs.displayPrefs.frameLockColor, 0.5 / p->zoomFactor(), Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin);
+		color = PrefsManager::instance()->appPrefs.displayPrefs.frameLockColor;
 	if (m_Doc->m_Selection->containsItem(this))
-		p->setPen(Qt::red, 0.5 / p->zoomFactor(), Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin);
+		color = Qt::red;
+
+	p->setPen(color, 0.5 / p->zoomFactor(), Qt::SolidLine, Qt::FlatCap, Qt::MiterJoin);
 	p->setPenOpacity(1.0);
 	p->setBrush(Qt::white);
 	p->setBrushOpacity(1.0);
 	p->setFillMode(ScPainter::Solid);
-	p->drawRect(ofx, ofy, ofwh, ofwh);
-	p->drawLine(FPoint(lx1, ly1), FPoint(lx2, ly2));
-	p->drawLine(FPoint(lx1, ly2), FPoint(lx2, ly1));
+	p->drawRect(left, top, sideLength, sideLength);
+	p->drawLine(FPoint(left, top), FPoint(right, bottom));
+	p->drawLine(FPoint(left, bottom), FPoint(right, top));
 }
 
 void PageItem_TextFrame::drawColumnBorders(ScPainter *p)

Modified: branches/ScribusOIF/scribus/pdflib_core.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/pdflib_core.cpp
==============================================================================
--- branches/ScribusOIF/scribus/pdflib_core.cpp (original)
+++ branches/ScribusOIF/scribus/pdflib_core.cpp Sun Jul 31 19:08:11 2011
@@ -57,13 +57,8 @@
 #include <QtXml>
 #include <QUuid>
 
-
-#include "ui/bookmwin.h"
-#include "ui/bookmarkpalette.h"
 #include "cmsettings.h"
 #include "commonstrings.h"
-#include "ui/multiprogressdialog.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pageitem_textframe.h"
 #include "pageitem_group.h"
@@ -73,6 +68,7 @@
 #include "sccolor.h"
 #include "sccolorengine.h"
 #include "scfonts.h"
+#include "scpage.h"
 #include "scpaths.h"
 #include "scpattern.h"
 #include "scribus.h"
@@ -86,9 +82,14 @@
 #include "util_formats.h"
 #include "util_math.h"
 #include "util_ghostscript.h"
+
 #ifdef HAVE_OSG
 	#include "third_party/prc/exportPRC.h"
 #endif
+
+#include "ui/bookmwin.h"
+#include "ui/bookmarkpalette.h"
+#include "ui/multiprogressdialog.h"
 
 using namespace std;
 
@@ -3383,6 +3384,51 @@
 	else
 		PutDoc("/BBox [ "+FToStr(-bleedLeft)+" "+FToStr(-Options.bleeds.Bottom)+" "+FToStr(maxBoxX)+" "+FToStr(maxBoxY)+" ]\n");
 	PutDoc("/Group "+QString::number(Gobj)+" 0 R\n");
+	PutDoc("/Resources << /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]\n");
+	if ((Seite.ImgObjects.count() != 0) || (Seite.XObjects.count() != 0))
+	{
+		PutDoc("/XObject <<\n");
+		QMap<QString,int>::Iterator it;
+		for (it = Seite.ImgObjects.begin(); it != Seite.ImgObjects.end(); ++it)
+			PutDoc("/"+it.key()+" "+QString::number(it.value())+" 0 R\n");
+		QMap<QString,int>::Iterator iti;
+		for (iti = Seite.XObjects.begin(); iti != Seite.XObjects.end(); ++iti)
+			PutDoc("/"+iti.key()+" "+QString::number(iti.value())+" 0 R\n");
+		PutDoc(">>\n");
+	}
+	if (Seite.FObjects.count() != 0)
+	{
+		PutDoc("/Font << \n");
+		QMap<QString,int>::Iterator it2;
+		for (it2 = Seite.FObjects.begin(); it2 != Seite.FObjects.end(); ++it2)
+			PutDoc("/"+it2.key()+" "+QString::number(it2.value())+" 0 R\n");
+		PutDoc(">>\n");
+	}
+	if (Shadings.count() != 0)
+	{
+		PutDoc("/Shading << \n");
+		QMap<QString,int>::Iterator it3;
+		for (it3 = Shadings.begin(); it3 != Shadings.end(); ++it3)
+			PutDoc("/"+it3.key()+" "+QString::number(it3.value())+" 0 R\n");
+		PutDoc(">>\n");
+	}
+	if (Patterns.count() != 0)
+	{
+		PutDoc("/Pattern << \n");
+		QMap<QString,int>::Iterator it3p;
+		for (it3p = Patterns.begin(); it3p != Patterns.end(); ++it3p)
+			PutDoc("/"+it3p.key()+" "+QString::number(it3p.value())+" 0 R\n");
+		PutDoc(">>\n");
+	}
+	if (Transpar.count() != 0)
+	{
+		PutDoc("/ExtGState << \n");
+		QMap<QString,int>::Iterator it3t;
+		for (it3t = Transpar.begin(); it3t != Transpar.end(); ++it3t)
+			PutDoc("/"+it3t.key()+" "+QString::number(it3t.value())+" 0 R\n");
+		PutDoc(">>\n");
+	}
+	PutDoc(">>\n");
 	if (Options.Compress)
 		data = CompressStr(&data);
 	PutDoc("/Length "+QString::number(data.length()+1));
@@ -6003,7 +6049,7 @@
 		Transpar[GXName] = writeGState("/SMask << /S /Luminosity /G "+QString::number(formObject)+" 0 R >>\n/AIS false\n/BM /" + blendMode(currItem->fillBlendmode()) + "\n");
 		tmp = "/"+GXName+" gs\n";
 	}
-	else if ((currItem->GrMask == 3) || (currItem->GrMask == 6))
+	else if ((currItem->GrMask == 3) || (currItem->GrMask == 6) || (currItem->GrMask == 7) || (currItem->GrMask == 8))
 	{
 		QString tmpOut = "";
 		PDF_PatternFillStroke(tmpOut, currItem, 2);
@@ -6040,19 +6086,24 @@
 				PutDoc("/"+it3p.key()+" "+QString::number(it3p.value())+" 0 R\n");
 			PutDoc(">>\n");
 		}
+		if ((Seite.ImgObjects.count() != 0) || (Seite.XObjects.count() != 0))
+		{
+			PutDoc("/XObject <<\n");
+			QMap<QString,int>::Iterator it;
+			for (it = Seite.ImgObjects.begin(); it != Seite.ImgObjects.end(); ++it)
+				PutDoc("/"+it.key()+" "+QString::number(it.value())+" 0 R\n");
+			QMap<QString,int>::Iterator iti;
+			for (iti = Seite.XObjects.begin(); iti != Seite.XObjects.end(); ++iti)
+				PutDoc("/"+iti.key()+" "+QString::number(iti.value())+" 0 R\n");
+			PutDoc(">>\n");
+		}
 		PutDoc(">>\n");
 		QString stre = "q\n";
-		if (currItem->isGroup())
-		{
-			QTransform mpa;
-			mpa.translate(currItem->xPos() - ActPageP->xOffset(), ActPageP->height() - (currItem->yPos() - ActPageP->yOffset()));
-			mpa.rotate(-currItem->rotation());
-			stre += FToStr(mpa.m11())+" "+FToStr(mpa.m12())+" "+FToStr(mpa.m21())+" "+FToStr(mpa.m22())+" "+FToStr(mpa.dx())+" "+FToStr(mpa.dy())+" cm\n";
-		}
-		else if (currItem->itemType() == PageItem::Symbol)
+		if ((currItem->isGroup()) || (currItem->itemType() == PageItem::Symbol))
 		{
 			QTransform mpa;
 			mpa.translate(0, currItem->height() * scaleY);
+			mpa.rotate(-currItem->rotation());
 			mpa.scale(scaleX, scaleY);
 			stre += FToStr(mpa.m11())+" "+FToStr(mpa.m12())+" "+FToStr(mpa.m21())+" "+FToStr(mpa.m22())+" "+FToStr(mpa.dx())+" "+FToStr(mpa.dy())+" cm\n";
 		}
@@ -6072,8 +6123,12 @@
 		ResCount++;
 		if (currItem->GrMask == 6)
 			Transpar[GXName] = writeGState("/SMask << /S /Luminosity /G "+QString::number(formObject)+" 0 R >>\n/BM /" + blendMode(currItem->fillBlendmode()) + "\n");
-		else
+		else if (currItem->GrMask == 7)
+			Transpar[GXName] = writeGState("/SMask << /S /Luminosity /G "+QString::number(formObject)+" 0 R /BC [ 1 1 1 ] /TR << /FunctionType 2 /Domain [ 0 1 ] /Range [ 0 1 ] /C0 [ 1 ] /C1 [ 0 ] /N 1 >> >>\n/BM /" + blendMode(currItem->fillBlendmode()) + "\n/AIS true\n");
+		else if (currItem->GrMask == 3)
 			Transpar[GXName] = writeGState("/SMask << /S /Alpha /G "+QString::number(formObject)+" 0 R >>\n/BM /" + blendMode(currItem->fillBlendmode()) + "\n");
+		else if (currItem->GrMask == 8)
+			Transpar[GXName] = writeGState("/SMask << /S /Alpha /G "+QString::number(formObject)+" 0 R /BC [ 1 1 1 ] /TR << /FunctionType 2 /Domain [ 0 1 ] /Range [ 0 1 ] /C0 [ 1 ] /C1 [ 0 ] /N 1 >> >>\n/BM /" + blendMode(currItem->fillBlendmode()) + "\n");
 		tmp = "/"+GXName+" gs\n";
 	}
 	else
@@ -6257,12 +6312,7 @@
 	}
 	else if (kind == 2)
 	{
-		if (currItem->isGroup())
-		{
-			mpa.translate(currItem->xPos() - ActPageP->xOffset(), ActPageP->height() - (currItem->yPos() - ActPageP->yOffset()));
-			mpa.rotate(-currItem->rotation());
-		}
-		else if (currItem->itemType() == PageItem::Symbol)
+		if ((currItem->isGroup()) || (currItem->itemType() == PageItem::Symbol))
 		{
 			mpa.translate(0, currItem->height() * scaleY);
 			mpa.scale(scaleX, scaleY);

Modified: branches/ScribusOIF/scribus/plugins/import/ai/importaiplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/ai/importaiplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/ai/importaiplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/ai/importaiplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,20 +5,24 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importai.h"
 #include "importaiplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
+
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
 #include "scconfig.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
+
+#include <QApplication>
 #include <QMessageBox>
 
 int importai_getPluginAPIVersion()
@@ -164,6 +168,7 @@
 			fT.close();
 			if (tempBuf.startsWith("%PDF"))
 			{
+				qApp->changeOverrideCursor(QCursor(Qt::ArrowCursor));
 				QMessageBox msgBox(ScCore->primaryMainWindow());
 				msgBox.setText( tr("This file contains 2 versions of the data."));
 				msgBox.setInformativeText( tr("Choose which one should be imported"));
@@ -181,6 +186,7 @@
 						QMessageBox::warning(ScCore->primaryMainWindow(), CommonStrings::trWarning, tr("The PDF Import plugin could not be found"), 1, 0, 0);
 						return false;
 					}
+					qApp->changeOverrideCursor(QCursor(Qt::WaitCursor));
 					bool success = fmt->loadFile(fileName, flags);
 					if (activeTransaction)
 					{
@@ -194,6 +200,7 @@
 						QMessageBox::warning(ScCore->primaryMainWindow(), CommonStrings::trWarning, tr("The file could not be imported"), 1, 0, 0);
 					return success;
 				}
+				qApp->changeOverrideCursor(QCursor(Qt::WaitCursor));
 			}
 		}
 	}

Modified: branches/ScribusOIF/scribus/plugins/import/cgm/importcgmplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/cgm/importcgmplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/cgm/importcgmplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/cgm/importcgmplugin.cpp Sun Jul 31 19:08:11 2011
@@ -12,19 +12,20 @@
     email                : Franz.Schmid at altmuehlnet.de
  ***************************************************************************/
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importcgm.h"
 #include "importcgmplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importcgm_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/cvg/importcvgplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/cvg/importcvgplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/cvg/importcvgplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/cvg/importcvgplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,19 +5,20 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importcvg.h"
 #include "importcvgplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importcvg_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/drw/importdrwplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/drw/importdrwplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/drw/importdrwplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/drw/importdrwplugin.cpp Sun Jul 31 19:08:11 2011
@@ -12,19 +12,20 @@
     email                : Franz.Schmid at altmuehlnet.de
  ***************************************************************************/
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importdrw.h"
 #include "importdrwplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importdrw_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/pct/importpctplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/pct/importpctplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/pct/importpctplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/pct/importpctplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,19 +5,20 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importpct.h"
 #include "importpctplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importpct_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/pdf/importpdf.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/pdf/importpdf.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/pdf/importpdf.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/pdf/importpdf.cpp Sun Jul 31 19:08:11 2011
@@ -331,25 +331,25 @@
 							Object obj;
 							GooString *s1;
 							Dict *infoDict = info.getDict();
-							if (infoDict->lookup("Title", &obj )->isString())
+							if (infoDict->lookup((char*)"Title", &obj )->isString())
 							{
 								s1 = obj.getString();
 								m_Doc->documentInfo().setTitle(UnicodeParsedString(obj.getString()));
 								obj.free();
 							}
-							if (infoDict->lookup("Author", &obj )->isString())
+							if (infoDict->lookup((char*)"Author", &obj )->isString())
 							{
 								s1 = obj.getString();
 								m_Doc->documentInfo().setAuthor(UnicodeParsedString(obj.getString()));
 								obj.free();
 							}
-							if (infoDict->lookup("Subject", &obj )->isString())
+							if (infoDict->lookup((char*)"Subject", &obj )->isString())
 							{
 								s1 = obj.getString();
 								m_Doc->documentInfo().setSubject(UnicodeParsedString(obj.getString()));
 								obj.free();
 							}
-							if (infoDict->lookup("Keywords", &obj )->isString())
+							if (infoDict->lookup((char*)"Keywords", &obj )->isString())
 							{
 								s1 = obj.getString();
 								m_Doc->documentInfo().setKeywords(UnicodeParsedString(obj.getString()));

Modified: branches/ScribusOIF/scribus/plugins/import/pdf/importpdfplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/pdf/importpdfplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/pdf/importpdfplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/pdf/importpdfplugin.cpp Sun Jul 31 19:08:11 2011
@@ -4,23 +4,26 @@
 a copyright and/or license notice that predates the release of Scribus 1.3.2
 for which a new license (GPL+exception) is in place.
 */
+#include <QApplication>
+#include <QMessageBox>
+
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importpdf.h"
 #include "importpdfplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
-#include "scpaths.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
+#include "scpaths.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 #include "util.h"
-#include <QMessageBox>
-
+
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importpdf_getPluginAPIVersion()
 {
@@ -207,7 +210,9 @@
 		}
 		else
 		{
+			qApp->changeOverrideCursor(QCursor(Qt::ArrowCursor));
 			QMessageBox::warning(ScCore->primaryMainWindow(), CommonStrings::trWarning, tr("The Import plugin cannot handle Postscript files"), 1, 0, 0);
+			qApp->changeOverrideCursor(QCursor(Qt::WaitCursor));
 			return false;
 		}
 	}

Modified: branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.cpp Sun Jul 31 19:08:11 2011
@@ -13,11 +13,7 @@
 	m_doc = doc;
 	m_Elements = Elements;
 	m_groupStack.clear();
-	groupEntry gElements;
-	gElements.forSoftMask = gFalse;
-	gElements.alpha = gFalse;
-	gElements.maskName = "";
-	m_groupStack.push(gElements);
+	pushGroup();
 	m_clipStack.clear();
 	m_currentMask = "";
 	m_importedColors = importedColors;
@@ -139,11 +135,7 @@
 void SlaOutputDev::beginTransparencyGroup(GfxState *state, double *bbox, GfxColorSpace * /*blendingColorSpace*/, GBool /*isolated*/, GBool /*knockout*/, GBool forSoftMask)
 {
 //	qDebug() << "Start Group";
-	groupEntry gElements;
-	gElements.forSoftMask = forSoftMask;
-	gElements.alpha = gFalse;
-	gElements.maskName = "";
-	m_groupStack.push(gElements);
+	pushGroup("", forSoftMask);
 }
 
 void SlaOutputDev::endTransparencyGroup(GfxState *state)
@@ -190,16 +182,7 @@
 				}
 			}
 			if (m_groupStack.count() != 0)
-			{
-				if (!m_groupStack.top().maskName.isEmpty())
-				{
-					ite->setPatternMask(m_groupStack.top().maskName);
-					if (m_groupStack.top().alpha)
-						ite->setMaskType(3);
-					else
-						ite->setMaskType(6);
-				}
-			}
+				applyMask(ite);
 		}
 		if (m_groupStack.count() != 0)
 		{
@@ -212,10 +195,21 @@
 	}
 }
 
-void SlaOutputDev::setSoftMask(GfxState * /*state*/, double * /*bbox*/, GBool alpha, Function * /*transferFunc*/, GfxColor * /*backdropColor*/)
+void SlaOutputDev::setSoftMask(GfxState * /*state*/, double * /*bbox*/, GBool alpha, Function *transferFunc, GfxColor * /*backdropColor*/)
 {
 	if (m_groupStack.count() != 0)
 	{
+		double lum = 0;
+		double lum2 = 0;
+		if (transferFunc)
+			transferFunc->transform(&lum, &lum2);
+		else
+			lum2 = lum;
+		if (lum == lum2)
+			m_groupStack.top().inverted = false;
+		else
+			m_groupStack.top().inverted = true;
+//		qDebug() << "Inverted Softmask" << m_groupStack.top().inverted;
 		m_groupStack.top().maskName = m_currentMask;
 		m_groupStack.top().alpha = alpha;
 	}
@@ -258,14 +252,7 @@
 	if (m_groupStack.count() != 0)
 	{
 		m_groupStack.top().Items.append(ite);
-		if (!m_groupStack.top().maskName.isEmpty())
-		{
-			ite->setPatternMask(m_groupStack.top().maskName);
-			if (m_groupStack.top().alpha)
-				ite->setMaskType(3);
-			else
-				ite->setMaskType(6);
-		}
+		applyMask(ite);
 	}
 	clipEntry clp;
 	clp.ClipCoords = out.copy();
@@ -273,11 +260,7 @@
 	clp.grStackDepth = grStackDepth;
 	m_clipStack.push(clp);
 	m_doc->GroupCounter++;
-	groupEntry gElements;
-	gElements.forSoftMask = gFalse;
-	gElements.alpha = gFalse;
-	gElements.maskName = "";
-	m_groupStack.push(gElements);
+	pushGroup();
 }
 
 void SlaOutputDev::eoClip(GfxState *state)
@@ -309,14 +292,7 @@
 	if (m_groupStack.count() != 0)
 	{
 		m_groupStack.top().Items.append(ite);
-		if (!m_groupStack.top().maskName.isEmpty())
-		{
-			ite->setPatternMask(m_groupStack.top().maskName);
-			if (m_groupStack.top().alpha)
-				ite->setMaskType(3);
-			else
-				ite->setMaskType(6);
-		}
+		applyMask(ite);
 	}
 	clipEntry clp;
 	clp.ClipCoords = out.copy();
@@ -324,11 +300,7 @@
 	clp.grStackDepth = grStackDepth;
 	m_clipStack.push(clp);
 	m_doc->GroupCounter++;
-	groupEntry gElements;
-	gElements.forSoftMask = gFalse;
-	gElements.alpha = gFalse;
-	gElements.maskName = "";
-	m_groupStack.push(gElements);
+	pushGroup();
 }
 
 void SlaOutputDev::stroke(GfxState *state)
@@ -417,9 +389,7 @@
 		ite->setLineShade(100);
 		ite->setFillEvenOdd(false);
 		ite->setFillTransparency(1.0 - state->getFillOpacity());
-		ite->setLineTransparency(1.0 - state->getStrokeOpacity());
 		ite->setFillBlendmode(getBlendMode(state));
-		ite->setLineBlendmode(getBlendMode(state));
 		ite->setLineEnd(PLineEnd);
 		ite->setLineJoin(PLineJoin);
 		ite->setWidthHeight(wh.x(),wh.y());
@@ -429,14 +399,7 @@
 		if (m_groupStack.count() != 0)
 		{
 			m_groupStack.top().Items.append(ite);
-			if (!m_groupStack.top().maskName.isEmpty())
-			{
-				ite->setPatternMask(m_groupStack.top().maskName);
-				if (m_groupStack.top().alpha)
-					ite->setMaskType(3);
-				else
-					ite->setMaskType(6);
-			}
+			applyMask(ite);
 		}
 	}
 }
@@ -471,9 +434,7 @@
 		ite->setLineShade(100);
 		ite->setFillEvenOdd(true);
 		ite->setFillTransparency(1.0 - state->getFillOpacity());
-		ite->setLineTransparency(1.0 - state->getStrokeOpacity());
 		ite->setFillBlendmode(getBlendMode(state));
-		ite->setLineBlendmode(getBlendMode(state));
 		ite->setLineEnd(PLineEnd);
 		ite->setLineJoin(PLineJoin);
 		ite->setWidthHeight(wh.x(),wh.y());
@@ -483,14 +444,7 @@
 		if (m_groupStack.count() != 0)
 		{
 			m_groupStack.top().Items.append(ite);
-			if (!m_groupStack.top().maskName.isEmpty())
-			{
-				ite->setPatternMask(m_groupStack.top().maskName);
-				if (m_groupStack.top().alpha)
-					ite->setMaskType(3);
-				else
-					ite->setMaskType(6);
-			}
+			applyMask(ite);
 		}
 	}
 }
@@ -576,9 +530,7 @@
 	ite->setLineShade(100);
 	ite->setFillEvenOdd(false);
 	ite->setFillTransparency(1.0 - state->getFillOpacity());
-	ite->setLineTransparency(1.0 - state->getStrokeOpacity());
 	ite->setFillBlendmode(getBlendMode(state));
-	ite->setLineBlendmode(getBlendMode(state));
 	ite->setLineEnd(PLineEnd);
 	ite->setLineJoin(PLineJoin);
 	ite->setTextFlowMode(PageItem::TextFlowDisabled);
@@ -590,14 +542,7 @@
 	if (m_groupStack.count() != 0)
 	{
 		m_groupStack.top().Items.append(ite);
-		if (!m_groupStack.top().maskName.isEmpty())
-		{
-			ite->setPatternMask(m_groupStack.top().maskName);
-			if (m_groupStack.top().alpha)
-				ite->setMaskType(3);
-			else
-				ite->setMaskType(6);
-		}
+		applyMask(ite);
 	}
 	return gTrue;
 }
@@ -691,9 +636,7 @@
 	ite->setLineShade(100);
 	ite->setFillEvenOdd(false);
 	ite->setFillTransparency(1.0 - state->getFillOpacity());
-	ite->setLineTransparency(1.0 - state->getStrokeOpacity());
 	ite->setFillBlendmode(getBlendMode(state));
-	ite->setLineBlendmode(getBlendMode(state));
 	ite->setLineEnd(PLineEnd);
 	ite->setLineJoin(PLineJoin);
 	ite->setTextFlowMode(PageItem::TextFlowDisabled);
@@ -705,14 +648,7 @@
 	if (m_groupStack.count() != 0)
 	{
 		m_groupStack.top().Items.append(ite);
-		if (!m_groupStack.top().maskName.isEmpty())
-		{
-			ite->setPatternMask(m_groupStack.top().maskName);
-			if (m_groupStack.top().alpha)
-				ite->setMaskType(3);
-			else
-				ite->setMaskType(6);
-		}
+		applyMask(ite);
 	}
 	return gTrue;
 }
@@ -747,9 +683,7 @@
 	ite->setLineShade(100);
 	ite->setFillEvenOdd(false);
 	ite->setFillTransparency(1.0 - state->getFillOpacity());
-	ite->setLineTransparency(1.0 - state->getStrokeOpacity());
 	ite->setFillBlendmode(getBlendMode(state));
-	ite->setLineBlendmode(getBlendMode(state));
 	ite->setLineEnd(PLineEnd);
 	ite->setLineJoin(PLineJoin);
 	ite->setTextFlowMode(PageItem::TextFlowDisabled);
@@ -758,14 +692,7 @@
 	if (m_groupStack.count() != 0)
 	{
 		m_groupStack.top().Items.append(ite);
-		if (!m_groupStack.top().maskName.isEmpty())
-		{
-			ite->setPatternMask(m_groupStack.top().maskName);
-			if (m_groupStack.top().alpha)
-				ite->setMaskType(3);
-			else
-				ite->setMaskType(6);
-		}
+		applyMask(ite);
 	}
 //	qDebug() << "Mesh of" << shading->getNPatches() << "Patches";
 	for (int i = 0; i < shading->getNPatches(); i++)
@@ -889,6 +816,7 @@
 	groupEntry gElements;
 	gElements.forSoftMask = gFalse;
 	gElements.alpha = gFalse;
+	gElements.inverted = false;
 	gElements.maskName = "";
 	gElements.Items.clear();
 	m_groupStack.push(gElements);
@@ -906,11 +834,6 @@
 	m_ctm = QTransform(ctm[0], ctm[1], ctm[2], ctm[3], ctm[4], ctm[5]);
 	QTransform mm = QTransform(mat[0], mat[1], mat[2], mat[3], mat[4], mat[5]);
 	QTransform mmx = mm * m_ctm;
-//	qDebug() << "Pattern Fill";
-//	qDebug() << "mat" << mat[0] << mat[1] << mat[2] << mat[3] << mat[4] << mat[5];
-//	qDebug() << "pmat" << pmat[0] << pmat[1] << pmat[2] << pmat[3] << pmat[4] << pmat[5];
-//	qDebug() << "ctm" << ctm[0] << ctm[1] << ctm[2] << ctm[3] << ctm[4] << ctm[5];
-//	qDebug() << "cumulated ctm" << mmx;
 	gfx = new Gfx(xref, this, resDict, catalog, &box, NULL);
 	gfx->display(str);
 	gElements = m_groupStack.pop();
@@ -955,8 +878,6 @@
 	state->getClipBBox(&xmin, &ymin, &xmax, &ymax);
 	QRectF crect = QRectF(QPointF(xmin, ymin), QPointF(xmax, ymax));
 	crect = crect.normalized();
-//	qDebug() << "Crect" << crect;
-//	qDebug() << "Xoffs" << crect.x() - (pmat[4] / fabs(pmat[0])) << "Yoffs" << crect.y() - (m_doc->currentPage()->height() - (pmat[5] / fabs(pmat[3])));
 	QString output = QString("M %1 %2").arg(0.0).arg(0.0);
 	output += QString("L %1 %2").arg(crect.width()).arg(0.0);
 	output += QString("L %1 %2").arg(crect.width()).arg(crect.height());
@@ -973,29 +894,19 @@
 	ite->setLineShade(100);
 	ite->setFillEvenOdd(false);
 	ite->setFillTransparency(1.0 - state->getFillOpacity());
-	ite->setLineTransparency(1.0 - state->getStrokeOpacity());
 	ite->setFillBlendmode(getBlendMode(state));
-	ite->setLineBlendmode(getBlendMode(state));
 	ite->setLineEnd(PLineEnd);
 	ite->setLineJoin(PLineJoin);
 	ite->setTextFlowMode(PageItem::TextFlowDisabled);
 	ite->GrType = 8;
 	ite->setPattern(id);
 	ite->setPatternTransform(fabs(pmat[0]) * 100, fabs(pmat[3]) * 100, mmx.dx() - ctm[4], mmx.dy() - ctm[5], 0, -1 * pmat[1], pmat[2]);
-//	ite->setPatternTransform(fabs(pmat[0]) * 100, fabs(pmat[3]) * 100, pmat[4], -1 * pmat[5], 0, -1 * pmat[1], pmat[2]);
 	m_doc->AdjustItemSize(ite);
 	m_Elements->append(ite);
 	if (m_groupStack.count() != 0)
 	{
 		m_groupStack.top().Items.append(ite);
-		if (!m_groupStack.top().maskName.isEmpty())
-		{
-			ite->setPatternMask(m_groupStack.top().maskName);
-			if (m_groupStack.top().alpha)
-				ite->setMaskType(3);
-			else
-				ite->setMaskType(6);
-		}
+		applyMask(ite);
 	}
 	delete gfx;
 	return gTrue;
@@ -1074,7 +985,7 @@
 		yCoor = yCoor + ctm[5] - (fabs(sy) * height);
 	else
 		yCoor = yCoor + ctm[5];
-	int z = m_doc->itemAdd(PageItem::ImageFrame, PageItem::Unspecified, xCoor , yCoor, fabs(sx) * width, fabs(sy) * height, 0, CurrColorFill, CurrColorStroke, true);
+	int z = m_doc->itemAdd(PageItem::ImageFrame, PageItem::Unspecified, xCoor , yCoor, fabs(sx) * width, fabs(sy) * height, 0, CommonStrings::None, CommonStrings::None, true);
 	PageItem* ite = m_doc->Items->at(z);
 	ite->SetRectFrame();
 	m_doc->setRedrawBounding(ite);
@@ -1084,9 +995,7 @@
 	ite->setLineShade(100);
 	ite->setFillEvenOdd(false);
 	ite->setFillTransparency(1.0 - state->getFillOpacity());
-	ite->setLineTransparency(1.0 - state->getStrokeOpacity());
 	ite->setFillBlendmode(getBlendMode(state));
-	ite->setLineBlendmode(getBlendMode(state));
 	ite->tempImageFile = new QTemporaryFile(QDir::tempPath() + "/scribus_temp_pdf_XXXXXX.png");
 	ite->tempImageFile->open();
 	QString fileName = getLongPathName(ite->tempImageFile->fileName());
@@ -1104,14 +1013,7 @@
 	if (m_groupStack.count() != 0)
 	{
 		m_groupStack.top().Items.append(ite);
-		if (!m_groupStack.top().maskName.isEmpty())
-		{
-			ite->setPatternMask(m_groupStack.top().maskName);
-			if (m_groupStack.top().alpha)
-				ite->setMaskType(3);
-			else
-				ite->setMaskType(6);
-		}
+		applyMask(ite);
 	}
 	delete imgStr;
 	delete[] buffer;
@@ -1182,7 +1084,7 @@
 		yCoor = yCoor + ctm[5] - (fabs(sy) * height);
 	else
 		yCoor = yCoor + ctm[5];
-	int z = m_doc->itemAdd(PageItem::ImageFrame, PageItem::Unspecified, xCoor , yCoor, fabs(sx) * width, fabs(sy) * height, 0, CurrColorFill, CurrColorStroke, true);
+	int z = m_doc->itemAdd(PageItem::ImageFrame, PageItem::Unspecified, xCoor , yCoor, fabs(sx) * width, fabs(sy) * height, 0, CommonStrings::None, CommonStrings::None, true);
 	PageItem* ite = m_doc->Items->at(z);
 	ite->SetRectFrame();
 	m_doc->setRedrawBounding(ite);
@@ -1192,9 +1094,7 @@
 	ite->setLineShade(100);
 	ite->setFillEvenOdd(false);
 	ite->setFillTransparency(1.0 - state->getFillOpacity());
-	ite->setLineTransparency(1.0 - state->getStrokeOpacity());
 	ite->setFillBlendmode(getBlendMode(state));
-	ite->setLineBlendmode(getBlendMode(state));
 	ite->tempImageFile = new QTemporaryFile(QDir::tempPath() + "/scribus_temp_pdf_XXXXXX.png");
 	ite->tempImageFile->open();
 	QString fileName = getLongPathName(ite->tempImageFile->fileName());
@@ -1212,14 +1112,7 @@
 	if (m_groupStack.count() != 0)
 	{
 		m_groupStack.top().Items.append(ite);
-		if (!m_groupStack.top().maskName.isEmpty())
-		{
-			ite->setPatternMask(m_groupStack.top().maskName);
-			if (m_groupStack.top().alpha)
-				ite->setMaskType(3);
-			else
-				ite->setMaskType(6);
-		}
+		applyMask(ite);
 	}
 	delete imgStr;
 	delete[] buffer;
@@ -1581,14 +1474,7 @@
 				if (m_groupStack.count() != 0)
 				{
 					m_groupStack.top().Items.append(ite);
-					if (!m_groupStack.top().maskName.isEmpty())
-					{
-						ite->setPatternMask(m_groupStack.top().maskName);
-						if (m_groupStack.top().alpha)
-							ite->setMaskType(3);
-						else
-							ite->setMaskType(6);
-					}
+					applyMask(ite);
 				}
 				delete fontPath;
 			}
@@ -1599,11 +1485,7 @@
 void SlaOutputDev::beginTextObject(GfxState *state)
 {
 //	qDebug() << "Begin Text Object";
-	groupEntry gElements;
-	gElements.forSoftMask = gFalse;
-	gElements.alpha = gFalse;
-	gElements.maskName = "";
-	m_groupStack.push(gElements);
+	pushGroup();
 }
 
 void SlaOutputDev::endTextObject(GfxState *state)
@@ -1628,16 +1510,7 @@
 				m_Elements->append(tmpSel->itemAt(as));
 			}
 			if (m_groupStack.count() != 0)
-			{
-				if (!m_groupStack.top().maskName.isEmpty())
-				{
-					ite->setPatternMask(m_groupStack.top().maskName);
-					if (m_groupStack.top().alpha)
-						ite->setMaskType(3);
-					else
-						ite->setMaskType(6);
-				}
-			}
+				applyMask(ite);
 		}
 		if (m_groupStack.count() != 0)
 		{
@@ -1851,3 +1724,37 @@
 	return mode;
 }
 
+void SlaOutputDev::applyMask(PageItem *ite)
+{
+	if (m_groupStack.count() != 0)
+	{
+		if (!m_groupStack.top().maskName.isEmpty())
+		{
+			ite->setPatternMask(m_groupStack.top().maskName);
+			if (m_groupStack.top().alpha)
+			{
+				if (m_groupStack.top().inverted)
+					ite->setMaskType(8);
+				else
+					ite->setMaskType(3);
+			}
+			else
+			{
+				if (m_groupStack.top().inverted)
+					ite->setMaskType(7);
+				else
+					ite->setMaskType(6);
+			}
+		}
+	}
+}
+
+void SlaOutputDev::pushGroup(QString maskName, GBool forSoftMask, GBool alpha, bool inverted)
+{
+	groupEntry gElements;
+	gElements.forSoftMask = forSoftMask;
+	gElements.alpha = alpha;
+	gElements.inverted = inverted;
+	gElements.maskName = maskName;
+	m_groupStack.push(gElements);
+}

Modified: branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.h
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.h (original)
+++ branches/ScribusOIF/scribus/plugins/import/pdf/slaoutput.h Sun Jul 31 19:08:11 2011
@@ -162,6 +162,8 @@
 	QString getColor(GfxColorSpace *color_space, GfxColor *color);
 	QString convertPath(GfxPath *path);
 	int getBlendMode(GfxState *state);
+	void applyMask(PageItem *ite);
+	void pushGroup(QString maskName = "", GBool forSoftMask = gFalse, GBool alpha = gFalse, bool inverted = false);
 	bool pathIsClosed;
 	bool firstLayer;
 	QString CurrColorFill;
@@ -184,6 +186,7 @@
 		GBool forSoftMask;
 		GBool alpha;
 		QString maskName;
+		bool inverted;
 	};
 	QStack<groupEntry> m_groupStack;
 	QString m_currentMask;

Modified: branches/ScribusOIF/scribus/plugins/import/ps/importpsplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/ps/importpsplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/ps/importpsplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/ps/importpsplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,19 +5,22 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importps.h"
 #include "importpsplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
+
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
 #include "scconfig.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
+
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importps_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/shape/importshapeplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/shape/importshapeplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/shape/importshapeplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/shape/importshapeplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,19 +5,20 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importshape.h"
 #include "importshapeplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importshape_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/sml/importsmlplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/sml/importsmlplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/sml/importsmlplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/sml/importsmlplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,19 +5,20 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importsml.h"
 #include "importsmlplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importsml_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/wpg/importwpgplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/wpg/importwpgplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/wpg/importwpgplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/wpg/importwpgplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,19 +5,20 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importwpg.h"
 #include "importwpgplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importwpg_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/xar/importxarplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/xar/importxarplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/xar/importxarplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/xar/importxarplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,19 +5,20 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importxar.h"
 #include "importxarplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importxar_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/import/xfig/importxfigplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/import/xfig/importxfigplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/import/xfig/importxfigplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/import/xfig/importxfigplugin.cpp Sun Jul 31 19:08:11 2011
@@ -5,19 +5,20 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "commonstrings.h"
-#include "ui/customfdialog.h"
+
 #include "importxfig.h"
 #include "importxfigplugin.h"
-#include "ui/scmwmenumanager.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scraction.h"
 #include "scribuscore.h"
 #include "undomanager.h"
 #include "util_formats.h"
 
+#include "ui/customfdialog.h"
+#include "ui/scmwmenumanager.h"
 
 int importxfig_getPluginAPIVersion()
 {

Modified: branches/ScribusOIF/scribus/plugins/scriptplugin/cmdpage.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/scriptplugin/cmdpage.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/scriptplugin/cmdpage.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/scriptplugin/cmdpage.cpp Sun Jul 31 19:08:11 2011
@@ -6,9 +6,9 @@
 */
 #include "cmdpage.h"
 #include "cmdutil.h"
+#include "commonstrings.h"
 #include "scpage.h"
 #include "scribuscore.h"
-#include "commonstrings.h"
 #include "scribusdoc.h"
 
 #include <QApplication>

Modified: branches/ScribusOIF/scribus/plugins/scriptplugin/cmdutil.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/scriptplugin/cmdutil.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/scriptplugin/cmdutil.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/scriptplugin/cmdutil.cpp Sun Jul 31 19:08:11 2011
@@ -5,11 +5,11 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "cmdutil.h"
-#include "units.h"
 #include "scpage.h"
 #include "scribuscore.h"
 #include "scribusdoc.h"
 #include "selection.h"
+#include "units.h"
 
 ScribusMainWindow* Carrier;
 ScribusDoc* doc;

Modified: branches/ScribusOIF/scribus/plugins/scriptplugin/objimageexport.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/scriptplugin/objimageexport.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/scriptplugin/objimageexport.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/scriptplugin/objimageexport.cpp Sun Jul 31 19:08:11 2011
@@ -5,13 +5,14 @@
 for which a new license (GPL+exception) is in place.
 */
 #include "objimageexport.h"
-#include "cmdutil.h"
-#include "scpage.h"
 
 #include <QImageWriter>
 #include <structmember.h>
 #include <QFileInfo>
 #include <vector>
+
+#include "cmdutil.h"
+#include "scpage.h"
 #include "scribuscore.h"
 #include "scribusdoc.h"
 

Modified: branches/ScribusOIF/scribus/plugins/short-words/parse.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/short-words/parse.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/short-words/parse.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/short-words/parse.cpp Sun Jul 31 19:08:11 2011
@@ -24,12 +24,12 @@
 #include "version.h"
 #include "configuration.h"
 
+#include "langmgr.h"
+#include "pageitem.h"
 #include "scribus.h"
 #include "scribusdoc.h"
 #include "scpage.h"
-#include "pageitem.h"
 #include "selection.h"
-#include "langmgr.h"
 
 SWParse::SWParse()
 {

Modified: branches/ScribusOIF/scribus/plugins/short-words/shortwords.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/short-words/shortwords.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/short-words/shortwords.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/short-words/shortwords.cpp Sun Jul 31 19:08:11 2011
@@ -25,13 +25,15 @@
 #include <QPixmap>
 
 #include "shortwords.h"
-#include "version.h"
-#include "swdialog.h"
+
 #include "configuration.h"
 #include "parse.h"
+#include "prefs_shortwords.h"
+#include "swdialog.h"
+#include "swprefsgui.h"
+#include "version.h"
+
 #include "scpage.h"
-#include "swprefsgui.h"
-#include "prefs_shortwords.h"
 #include "scpaths.h"
 #include "scribus.h"
 #include "scribusdoc.h"

Modified: branches/ScribusOIF/scribus/plugins/svgexplugin/svgexplugin.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/plugins/svgexplugin/svgexplugin.cpp
==============================================================================
--- branches/ScribusOIF/scribus/plugins/svgexplugin/svgexplugin.cpp (original)
+++ branches/ScribusOIF/scribus/plugins/svgexplugin/svgexplugin.cpp Sun Jul 31 19:08:11 2011
@@ -36,11 +36,11 @@
 #include "canvas.h"
 #include "cmsettings.h"
 #include "commonstrings.h"
-#include "scpage.h"
 #include "prefsmanager.h"
 #include "prefsfile.h"
 #include "prefscontext.h"
 #include "scgzfile.h"
+#include "scpage.h"
 #include "scpattern.h"
 #include "scribuscore.h"
 #include "sctextstruct.h"

Modified: branches/ScribusOIF/scribus/scdocoutput.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scdocoutput.h
==============================================================================
--- branches/ScribusOIF/scribus/scdocoutput.h (original)
+++ branches/ScribusOIF/scribus/scdocoutput.h Sun Jul 31 19:08:11 2011
@@ -12,8 +12,8 @@
 #include "scribusapi.h"
 #include "scribusdoc.h"
 #include "scpage.h"
+#include "scpageoutput.h"
 #include "scpainterexbase.h"
-#include "scpageoutput.h"
 
 class SCRIBUS_API ScDocOutput
 {

Modified: branches/ScribusOIF/scribus/scdocoutput_ps2.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scdocoutput_ps2.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scdocoutput_ps2.cpp (original)
+++ branches/ScribusOIF/scribus/scdocoutput_ps2.cpp Sun Jul 31 19:08:11 2011
@@ -6,11 +6,12 @@
 */
 
 #include "scdocoutput_ps2.h"
+
+#include "commonstrings.h"
+#include "scpage.h"
 #include "scpageoutput_ps2.h"
 #include "scribuscore.h"
-#include "commonstrings.h"
 #include "scribusdoc.h"
-#include "scpage.h"
 
 using namespace std;
 

Modified: branches/ScribusOIF/scribus/scpage.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scpage.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scpage.cpp (original)
+++ branches/ScribusOIF/scribus/scpage.cpp Sun Jul 31 19:08:11 2011
@@ -24,14 +24,15 @@
 #include <QDebug>
 #include <QPixmap>
 
-#include "ui/guidemanager.h"
-#include "ui/nodeeditpalette.h"
 #include "scpage.h"
 #include "scribus.h"
 #include "selection.h"
 #include "undomanager.h"
 #include "undostate.h"
 #include "util_icon.h"
+
+#include "ui/guidemanager.h"
+#include "ui/nodeeditpalette.h"
 
 ScPage::ScPage(const double x, const double y, const double b, const double h) :
 	UndoObject(QObject::tr("Page")),

Modified: branches/ScribusOIF/scribus/scpageoutput.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scpageoutput.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scpageoutput.cpp (original)
+++ branches/ScribusOIF/scribus/scpageoutput.cpp Sun Jul 31 19:08:11 2011
@@ -13,7 +13,6 @@
 
 #include "cmsettings.h"
 #include "commonstrings.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pageitem_imageframe.h"
 #include "pageitem_line.h"
@@ -24,6 +23,7 @@
 #include "prefsmanager.h"
 #include "scfonts.h"
 #include "scimage.h"
+#include "scpage.h"
 #include "scpattern.h"
 #include "scribus.h"
 #include "scribusdoc.h"

Modified: branches/ScribusOIF/scribus/scpageoutput_ps2.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scpageoutput_ps2.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scpageoutput_ps2.cpp (original)
+++ branches/ScribusOIF/scribus/scpageoutput_ps2.cpp Sun Jul 31 19:08:11 2011
@@ -9,9 +9,9 @@
 
 #include "commonstrings.h"
 #include "fonts/scfontmetrics.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "scimage.h"
+#include "scpage.h"
 #include "scpageoutput_ps2.h"
 #include "scpainterex_ps2.h"
 #include "scribus.h"

Modified: branches/ScribusOIF/scribus/scpainter.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scpainter.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scpainter.cpp (original)
+++ branches/ScribusOIF/scribus/scpainter.cpp Sun Jul 31 19:08:11 2011
@@ -13,6 +13,7 @@
 #include <cairo.h>
 
 #include <math.h>
+#include <QDebug>
 
 ScPainter::ScPainter( QImage *target, unsigned int w, unsigned int h, double transparency, int blendmode )
 {
@@ -132,7 +133,7 @@
 			cairo_pattern_t *patM = getMaskPattern();
 			setRasterOp(m_blendMode);
 			cairo_mask(m_cr, patM);
-			if ((maskMode == 2) || (maskMode == 4))
+			if ((maskMode == 2) || (maskMode == 4) || (maskMode == 5) || (maskMode == 6))
 				cairo_surface_destroy(imageMask);
 			cairo_pattern_destroy(patM);
 		}
@@ -370,7 +371,7 @@
 			{
 				cairo_pattern_t *patM = getMaskPattern();
 				cairo_mask(m_cr, patM);
-				if ((maskMode == 2) || (maskMode == 4))
+				if ((maskMode == 2) || (maskMode == 4) || (maskMode == 5) || (maskMode == 6))
 					cairo_surface_destroy(imageMask);
 				cairo_pattern_destroy(patM);
 			}
@@ -383,7 +384,7 @@
 			{
 				cairo_pattern_t *patM = getMaskPattern();
 				cairo_mask(m_cr, patM);
-				if ((maskMode == 2) || (maskMode == 4))
+				if ((maskMode == 2) || (maskMode == 4) || (maskMode == 5) || (maskMode == 6))
 					cairo_surface_destroy(imageMask);
 				cairo_pattern_destroy(patM);
 			}
@@ -858,9 +859,11 @@
 	}
 	else
 	{
-		if (maskMode == 4)
+		if ((maskMode == 4) || (maskMode == 5))
 		{
 			imageQ = m_maskPattern->pattern.copy();
+			if (maskMode == 5)
+				imageQ.invertPixels();
 			int h = imageQ.height();
 			int w = imageQ.width();
 			int k;
@@ -883,7 +886,12 @@
 			imageMask = cairo_image_surface_create_for_data ((uchar*)imageQ.bits(), CAIRO_FORMAT_ARGB32, w, h, w*4);
 		}
 		else
-			imageMask = cairo_image_surface_create_for_data ((uchar*)m_maskPattern->getPattern()->bits(), CAIRO_FORMAT_ARGB32, m_maskPattern->getPattern()->width(), m_maskPattern->getPattern()->height(), m_maskPattern->getPattern()->width()*4);
+		{
+			imageQ = m_maskPattern->pattern.copy();
+			if (maskMode == 6)
+				imageQ.invertPixels(QImage::InvertRgba);
+			imageMask = cairo_image_surface_create_for_data ((uchar*)imageQ.bits(), CAIRO_FORMAT_ARGB32, m_maskPattern->getPattern()->width(), m_maskPattern->getPattern()->height(), m_maskPattern->getPattern()->width()*4);
+		}
 		pat = cairo_pattern_create_for_surface(imageMask);
 		cairo_pattern_set_extend(pat, CAIRO_EXTEND_REPEAT);
 		cairo_pattern_set_filter(pat, CAIRO_FILTER_GOOD);
@@ -929,7 +937,7 @@
 #endif
 				cairo_clip_preserve(m_cr);
 				cairo_mask(m_cr, pat);
-				if ((maskMode == 2) || (maskMode == 4))
+				if ((maskMode == 2) || (maskMode == 4) || (maskMode == 5) || (maskMode == 6))
 					cairo_surface_destroy(imageMask);
 				cairo_pattern_destroy(pat);
 			}
@@ -1486,7 +1494,7 @@
 				setRasterOp(m_blendModeFill);
 #endif
 				cairo_mask(m_cr, patM);
-				if ((maskMode == 2) || (maskMode == 4))
+				if ((maskMode == 2) || (maskMode == 4) || (maskMode == 5) || (maskMode == 6))
 					cairo_surface_destroy(imageMask);
 				cairo_pattern_destroy (patM);
 			}
@@ -1544,7 +1552,7 @@
 				setRasterOp(m_blendModeFill);
 #endif
 				cairo_mask(m_cr, patM);
-				if ((maskMode == 2) || (maskMode == 4))
+				if ((maskMode == 2) || (maskMode == 4) || (maskMode == 5) || (maskMode == 6))
 					cairo_surface_destroy(imageMask);
 				cairo_pattern_destroy (patM);
 			}
@@ -1734,7 +1742,7 @@
 	{
 		cairo_pattern_t *patM = getMaskPattern();
 		cairo_mask(m_cr, patM);
-		if ((maskMode == 2) || (maskMode == 4))
+		if ((maskMode == 2) || (maskMode == 4) || (maskMode == 5) || (maskMode == 6))
 			cairo_surface_destroy(imageMask);
 		cairo_pattern_destroy(patM);
 	}

Modified: branches/ScribusOIF/scribus/scprintengine_gdi.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scprintengine_gdi.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scprintengine_gdi.cpp (original)
+++ branches/ScribusOIF/scribus/scprintengine_gdi.cpp Sun Jul 31 19:08:11 2011
@@ -29,16 +29,16 @@
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
-#include "scprintengine_gdi.h"
-#include "scpainterex_cairo.h"
+#include "pslib.h"
 #include "scpage.h"
 #include "scpageoutput.h"
 #include "scpaths.h"
-#include "pslib.h"
-#include "scribusview.h"
+#include "scpainterex_cairo.h"
+#include "scprintengine_gdi.h"
+#include "scribus.h"
 #include "scribusapp.h"
 #include "scribuscore.h"
-#include "scribus.h"
+#include "scribusview.h"
 #include "util.h"
 #include "util_ghostscript.h"
 #include "ui/customfdialog.h"

Modified: branches/ScribusOIF/scribus/scribus.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scribus.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scribus.cpp (original)
+++ branches/ScribusOIF/scribus/scribus.cpp Sun Jul 31 19:08:11 2011
@@ -99,7 +99,6 @@
 #include "gtgettext.h"
 #include "hyphenator.h"
 #include "langmgr.h"
-#include "scpage.h"
 #include "pageitem_imageframe.h"
 #include "pageitem_latexframe.h"
 #include "pageitem_textframe.h"
@@ -117,6 +116,7 @@
 #include "sccolorengine.h"
 #include "scgtplugin.h"
 #include "scmimedata.h"
+#include "scpage.h"
 #include "scpaths.h"
 #include "scprintengine_ps.h"
 #include "scraction.h"
@@ -7438,8 +7438,11 @@
 		view->requestMode(submodeEndNodeEdit);
 	activateWindow();
 	view->Deselect(true);
-	if ((ite->OwnPage != -1) && (ite->OwnPage != static_cast<int>(doc->currentPage()->pageNr())))
-		view->GotoPage(ite->OwnPage);
+	if (!doc->symbolEditMode())
+	{
+		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();
@@ -8528,6 +8531,7 @@
 		scrActions["toolsPDFAnnot3D"]->setEnabled(false);
 #endif
 		pagePalette->enablePalette(false);
+		layerPalette->setEnabled(false);
 		patternsDependingOnThis.clear();
 		QStringList mainPatterns = doc->docPatterns.keys();
 		for (int a = 0; a < mainPatterns.count(); a++)
@@ -8544,6 +8548,8 @@
 		symbolPalette->editingStart(patternsDependingOnThis);
 		propertiesPalette->Cpal->hideEditedPatterns(patternsDependingOnThis);
 		propertiesPalette->Tpal->hideEditedPatterns(patternsDependingOnThis);
+		if (outlinePalette->isVisible())
+			outlinePalette->BuildTree(false);
 		updateActiveWindowCaption( tr("Editing Symbol: %1").arg(temp));
 	}
 }
@@ -8596,6 +8602,9 @@
 	pagePalette->Rebuild();
 	propertiesPalette->updateColorList();
 	symbolPalette->editingFinished();
+	layerPalette->setEnabled(true);
+	if (outlinePalette->isVisible())
+		outlinePalette->BuildTree(false);
 	updateActiveWindowCaption(doc->DocName);
 }
 
@@ -9973,6 +9982,7 @@
 	doc->Items->replace(d, groupItem);
 	propertiesPalette->updateColorList();
 	symbolPalette->updateSymbolList();
+	emit UpdateRequest(reqColorsUpdate);
 	if (outlinePalette->isVisible())
 		outlinePalette->BuildTree();
 	doc->m_Selection->delaySignalsOff();

Modified: branches/ScribusOIF/scribus/scribusXml.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scribusXml.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scribusXml.cpp (original)
+++ branches/ScribusOIF/scribus/scribusXml.cpp Sun Jul 31 19:08:11 2011
@@ -31,7 +31,6 @@
 #include <cstdlib>
 
 #include "commonstrings.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pageitem_latexframe.h"
 #ifdef HAVE_OSG
@@ -39,6 +38,7 @@
 #endif
 #include "prefsmanager.h"
 #include "scclocale.h"
+#include "scpage.h"
 #include "scribusdoc.h"
 #include "selection.h"
 #include "text/nlsconfig.h"

Modified: branches/ScribusOIF/scribus/scribusdoc.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scribusdoc.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scribusdoc.cpp (original)
+++ branches/ScribusOIF/scribus/scribusdoc.cpp Sun Jul 31 19:08:11 2011
@@ -66,13 +66,11 @@
 #include "prefsfile.h"
 #include "prefsmanager.h"
 #include "resourcecollection.h"
+#include "scclocale.h"
+#include "sclimits.h"
 #include "sccolorengine.h"
-#include "ui/scmessagebox.h"
-#include "colormgmt/sccolormgmtenginefactory.h"
-#include "scclocale.h"
+#include "scpage.h"
 #include "scpainter.h"
-#include "sclimits.h"
-#include "scpage.h"
 #include "scraction.h"
 #include "scribus.h"
 #include "scribusXml.h"
@@ -82,9 +80,6 @@
 #include "scribuswin.h"
 #include "selection.h"
 #include "serializer.h"
-#include "ui/hruler.h"
-#include "ui/layers.h"
-#include "ui/storyeditor.h"
 #include "text/nlsconfig.h"
 #include "undomanager.h"
 #include "units.h"
@@ -92,6 +87,11 @@
 #include "util_icon.h"
 #include "util_math.h"
 
+#include "colormgmt/sccolormgmtenginefactory.h"
+#include "ui/hruler.h"
+#include "ui/layers.h"
+#include "ui/scmessagebox.h"
+#include "ui/storyeditor.h"
 
 // static const bool FRAMESELECTION_EDITS_DEFAULTSTYLE = false;
 
@@ -2961,6 +2961,12 @@
 		name += "("+tmp.setNum(docPatterns.count())+")";
 //		name = tr("Copy_of_")+name;
 	docPatterns.insert(name, pattern);
+	QList<PageItem*> allItems = getAllItems(pattern.items);
+	for (int ii = 0; ii < allItems.count(); ii++)
+	{
+		PageItem* currItem = allItems.at(ii);
+		currItem->setLayer(0);
+	}
 	return true;
 }
 
@@ -5364,6 +5370,12 @@
 	m_symbolEditMode = mode;
 	if (mode)
 	{
+		m_storedLayerID = activeLayer();
+		m_storedLayerLock = layerLocked(0);
+		m_storedLayerVis = layerVisible(0);
+		setActiveLayer(0);
+		setLayerVisible(0, true);
+		setLayerLocked(0, false);
 		ScPattern pa = docPatterns[symbolName];
 		currentEditedSymbol = symbolName;
 		ScPage* addedPage = new ScPage(docPrefsData.displayPrefs.scratch.Left, docPrefsData.displayPrefs.scratch.Top, pa.width, pa.height);
@@ -5391,8 +5403,11 @@
 		}
 		QRectF sR = m_Selection->getGroupRect();
 		moveGroup(-sR.x() + addedPage->xOffset(), -sR.y() + addedPage->yOffset());
+		if (Items->at(0)->isGroup())
+			Items->at(0)->asGroupFrame()->adjustXYPosition();
 		m_Selection->clear();
 		m_Selection->delaySignalsOff();
+		m_ScMW->changeLayer(0);
 		changed();
 	}
 	else
@@ -5405,6 +5420,7 @@
 			{
 				itemAdd(PageItem::Group, PageItem::Rectangle, addedPage->xOffset(), addedPage->yOffset(), 10, 10, 0, CommonStrings::None, CommonStrings::None, true);
 				PageItem *groupItem = Items->takeLast();
+				groupItem->setLayer(0);
 				Items->insert(0, groupItem);
 				double minx =  std::numeric_limits<double>::max();
 				double miny =  std::numeric_limits<double>::max();
@@ -5421,6 +5437,8 @@
 					maxx = qMax(maxx, x2);
 					maxy = qMax(maxy, y2);
 				}
+				Items->clear();
+				Items->append(groupItem);
 				for (int em = 0; em < groupItem->groupItemList.count(); ++em)
 				{
 					PageItem* currItem = groupItem->groupItemList.at(em);
@@ -5433,6 +5451,8 @@
 				groupItem->setWidthHeight(maxx - minx, maxy - miny, true);
 				groupItem->groupWidth = maxx - minx;
 				groupItem->groupHeight = maxy - miny;
+				groupItem->gWidth = maxx - minx;
+				groupItem->gHeight = maxy - miny;
 				groupItem->SetRectFrame();
 				groupItem->ClipEdited = true;
 				groupItem->FrameType = 3;
@@ -5440,6 +5460,7 @@
 				groupItem->AutoName = false;
 				groupItem->setFillTransparency(0);
 				groupItem->setLineTransparency(0);
+				groupItem->asGroupFrame()->adjustXYPosition();
 				GroupCounter++;
 				renumberItemsInListOrder();
 			}
@@ -5469,6 +5490,10 @@
 			Items = &DocItems;
 		}
 		delete addedPage;
+		setActiveLayer(m_storedLayerID);
+		setLayerVisible(0, m_storedLayerVis);
+		setLayerLocked(0, m_storedLayerLock);
+		m_ScMW->changeLayer(m_storedLayerID);
 	}
 }
 
@@ -6559,7 +6584,7 @@
 		{
 			currItem = m_Selection->itemAt(a);
 			currItem->GrMask = typ;
-			if ((typ > 0) && (typ < 7))
+			if ((typ > 0) && (typ < 9))
 				currItem->updateGradientVectors();
 			currItem->update();
 		}
@@ -12259,6 +12284,7 @@
 		int d = Items->indexOf(currItem);
 		groupItem->groupItemList.append(Items->takeAt(d));
 	}
+	groupItem->asGroupFrame()->adjustXYPosition();
 	renumberItemsInListOrder();
 	itemSelection->clear();
 	itemSelection->addItem(groupItem);
@@ -12314,6 +12340,7 @@
 		currItem->gHeight = maxy - miny;
 	}
 	renumberItemsInListOrder();
+	groupItem->asGroupFrame()->adjustXYPosition();
 	GroupCounter++;
 	itemList.clear();
 	itemList.append(groupItem);
@@ -12354,6 +12381,7 @@
 	}
 	renumberItemsInListOrder();
 	GroupCounter++;
+	groupItem->asGroupFrame()->adjustXYPosition();
 	itemList.clear();
 	itemList.append(groupItem);
 }
@@ -12425,7 +12453,7 @@
 		miny = qMin(miny, y1);
 		maxx = qMax(maxx, x2);
 		maxy = qMax(maxy, y2);
-		}
+	}
 	double gx = minx;
 	double gy = miny;
 	double gw = maxx - minx;
@@ -12448,6 +12476,7 @@
 		groupItem->groupItemList.append(Items->takeAt(d));
 	}
 	renumberItemsInListOrder();
+	groupItem->asGroupFrame()->adjustXYPosition();
 	itemSelection->clear();
 	itemSelection->addItem(groupItem);
 	selectedItemCount = itemSelection->count();

Modified: branches/ScribusOIF/scribus/scribusdoc.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scribusdoc.h
==============================================================================
--- branches/ScribusOIF/scribus/scribusdoc.h (original)
+++ branches/ScribusOIF/scribus/scribusdoc.h Sun Jul 31 19:08:11 2011
@@ -41,11 +41,11 @@
 #include "colormgmt/sccolormgmtengine.h"
 #include "documentinformation.h"
 #include "observable.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pagestructs.h"
 #include "prefsstructs.h"
 #include "scguardedptr.h"
+#include "scpage.h"
 #include "sclayer.h"
 #include "styles/styleset.h"
 #include "undoobject.h"
@@ -833,6 +833,9 @@
 	/*** Is the document in symbol edit mode? */
 	bool symbolEditMode() const { return m_symbolEditMode; }
 	
+	/*** get the name of the symbol currently in editing */
+	QString getEditedSymbol() const { return currentEditedSymbol; }
+
 	/**
 	 * @brief Add a section to the document sections list
 	 * Set number to -1 to add in the default section if the map is empty
@@ -1051,6 +1054,9 @@
 	bool automaticTextFrames; // Flag for automatic Textframes
 	bool m_masterPageMode;
 	bool m_symbolEditMode;
+	int  m_storedLayerID;
+	bool m_storedLayerLock;
+	bool m_storedLayerVis;
 	QMap<QString, double> m_constants;
 	ScribusMainWindow* m_ScMW;
 	ScribusView* m_View;

Modified: branches/ScribusOIF/scribus/scribusview.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/scribusview.cpp
==============================================================================
--- branches/ScribusOIF/scribus/scribusview.cpp (original)
+++ branches/ScribusOIF/scribus/scribusview.cpp Sun Jul 31 19:08:11 2011
@@ -79,7 +79,6 @@
 #include "commonstrings.h"
 #include "filewatcher.h"
 #include "hyphenator.h"
-#include "scpage.h"
 #include "pageitem_imageframe.h"
 #include "pageitem_line.h"
 #include "pageitem_pathtext.h"
@@ -92,6 +91,7 @@
 #include "prefsmanager.h"
 #include "scclocale.h"
 #include "scmimedata.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scpaths.h"
 #include "scribuscore.h"
@@ -1587,19 +1587,19 @@
 			// #9592 : layout must be valid here, or screenToPosition() may crash
 			if (!currItem->textLayout->isValid())
 				currItem->layout();
-			if(currItem->reversed())
-			{ //handle Right to Left writing
-				FPoint point(currItem->width()-(pf.x() - currItem->xPos()), pf.y() - currItem->yPos());
-				currItem->itemText.setCursorPosition( currItem->itemText.length() == 0 ? 0 :
-					/*currItem->itemText.screenToPosition(point)*/ currItem->textLayout->screenToPosition(point) );
+
+			QTransform transform = currItem->getTransform();
+			FPoint point(pf.x() - currItem->xPos(), pf.y() - currItem->yPos());
+			if (transform.isInvertible() && currItem->itemText.length() > 0)
+			{
+				double tx = 0, ty = 0;
+				transform.inverted().map(pf.x(), pf.y(), &tx, &ty);
+				point.setXY(tx, ty);
 			}
-			else
-			{
-				FPoint point(pf.x() - currItem->xPos(), pf.y() - currItem->yPos());
-				int screenToPos(currItem->textLayout->screenToPosition(point));
-				currItem->itemText.setCursorPosition( currItem->itemText.length() == 0 ? 0 :
-										    (screenToPos < 0 ? currItem->itemText.length() : screenToPos) );
-			}
+			if (currItem->reversed())
+				point.setX(currItem->width() - point.x());
+			currItem->itemText.setCursorPosition( currItem->itemText.length() == 0 ? 0 :
+				currItem->textLayout->screenToPosition(point) );
 
 			if (currItem->itemText.length() > 0)
 			{
@@ -2725,6 +2725,7 @@
 	Doc->setSymbolEditMode(true, symbolName);
 	Doc->setCurrentPage(Doc->Pages->at(0));
 	pageSelector->setEnabled(false);
+	layerMenu->setEnabled(false);
 	updateOn = false;
 	zoom();
 	oldX = qRound(Doc->currentPage()->xOffset()- 10);
@@ -2744,6 +2745,7 @@
 	updatesOn(true);
 	Doc->setCurrentPage(Doc->Pages->at(0));
 	pageSelector->setEnabled(true);
+	layerMenu->setEnabled(true);
 	resizeContents(qRound((Doc->maxCanvasCoordinate.x() - Doc->minCanvasCoordinate.x()) * m_canvas->scale()), qRound((Doc->maxCanvasCoordinate.y() - Doc->minCanvasCoordinate.y()) * m_canvas->scale()));
 }
 

Modified: branches/ScribusOIF/scribus/tocgenerator.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/tocgenerator.cpp
==============================================================================
--- branches/ScribusOIF/scribus/tocgenerator.cpp (original)
+++ branches/ScribusOIF/scribus/tocgenerator.cpp Sun Jul 31 19:08:11 2011
@@ -26,9 +26,9 @@
 #include "gtframestyle.h"
 #include "gtparagraphstyle.h"
 #include "gtwriter.h"
-#include "scpage.h"
 #include "pageitem.h"
 #include "pagestructs.h"
+#include "scpage.h"
 #include "scribusdoc.h"
 
 TOCGenerator::TOCGenerator(QObject *parent, ScribusDoc *doc) : QObject(parent)

Modified: branches/ScribusOIF/scribus/ui/about.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/about.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/about.cpp (original)
+++ branches/ScribusOIF/scribus/ui/about.cpp Sun Jul 31 19:08:11 2011
@@ -112,7 +112,7 @@
 	buildID = new QLabel( tab );
 	buildID->setAlignment(Qt::AlignCenter);
 	buildID->setTextInteractionFlags(Qt::TextSelectableByMouse);
-	QString BUILD_DAY = "07";
+	QString BUILD_DAY = "30";
 	QString BUILD_MONTH = CommonStrings::july;
 	QString BUILD_YEAR = "2011";
 	QString BUILD_TIME = "";

Modified: branches/ScribusOIF/scribus/ui/aligndistribute.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/aligndistribute.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/aligndistribute.cpp (original)
+++ branches/ScribusOIF/scribus/ui/aligndistribute.cpp Sun Jul 31 19:08:11 2011
@@ -35,15 +35,17 @@
 #include <QVariant>
 
 #include "commonstrings.h"
-#include "scpage.h"
-#include "ui/scmessagebox.h"
+
+
 #include "scribusdoc.h"
-#include "ui/scrspinbox.h"
 #include "selection.h"
 #include "undomanager.h"
+#include "scpage.h"
+#include "scribusstructs.h"
 #include "units.h"
 #include "util_icon.h"
-#include "scribusstructs.h"
+#include "ui/scmessagebox.h"
+#include "ui/scrspinbox.h"
 
 //TODO Distribute with 
 

Modified: branches/ScribusOIF/scribus/ui/applytemplatedialog.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/applytemplatedialog.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/applytemplatedialog.cpp (original)
+++ branches/ScribusOIF/scribus/ui/applytemplatedialog.cpp Sun Jul 31 19:08:11 2011
@@ -28,8 +28,8 @@
 #include <QVBoxLayout>
 
 #include "commonstrings.h"
+#include "scpage.h"
 #include "scribusdoc.h"
-#include "scpage.h"
 #include "util_icon.h"
 
 enum {

Modified: branches/ScribusOIF/scribus/ui/checkDocument.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/checkDocument.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/checkDocument.cpp (original)
+++ branches/ScribusOIF/scribus/ui/checkDocument.cpp Sun Jul 31 19:08:11 2011
@@ -19,13 +19,12 @@
 #include <QTreeWidgetItem>
 #include <QVBoxLayout>
 
-
+#include "documentchecker.h"
+#include "prefsmanager.h"
 #include "sccombobox.h"
+#include "scpage.h"
 #include "scribuscore.h"
 #include "scribusdoc.h"
-#include "scpage.h"
-#include "prefsmanager.h"
-#include "documentchecker.h"
 #include "util_icon.h"
 #include "util.h"
 

Modified: branches/ScribusOIF/scribus/ui/cpalette.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/cpalette.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/cpalette.cpp (original)
+++ branches/ScribusOIF/scribus/ui/cpalette.cpp Sun Jul 31 19:08:11 2011
@@ -45,22 +45,22 @@
 #include <QDebug>
 
 #include "colorlistbox.h"
+#include "commonstrings.h"
 #include "sccombobox.h"
 #include "scribusdoc.h"
 #include "scrspinbox.h"
 #include "gradienteditor.h"
 #include "insertTable.h"
-#include "units.h"
-#include "scpage.h"
 #include "pageitem.h"
-#include "util_icon.h"
-#include "commonstrings.h"
 #include "sccolorengine.h"
 #include "sclistwidgetdelegate.h"
+#include "scpage.h"
 #include "scpainter.h"
 #include "scpattern.h"
 #include "scribus.h"
 #include "selection.h"
+#include "units.h"
+#include "util_icon.h"
 #include "util.h"
 #include "util_math.h"
 

Modified: branches/ScribusOIF/scribus/ui/dcolor.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/dcolor.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/dcolor.cpp (original)
+++ branches/ScribusOIF/scribus/ui/dcolor.cpp Sun Jul 31 19:08:11 2011
@@ -14,12 +14,11 @@
 #include <QPushButton>
 
 #include "commonstrings.h"
+#include "colorcombo.h"
+#include "dcolor.h"
+#include "prefsmanager.h"
+#include "scpage.h"
 #include "scribusdoc.h"
-#include "scpage.h"
-#include "colorcombo.h"
-#include "prefsmanager.h"
-
-#include "dcolor.h"
 #include "util_icon.h"
 
 DelColor::DelColor( QWidget* parent, ColorList colorList, QString colorName, bool haveDoc) : QDialog( parent )

Modified: branches/ScribusOIF/scribus/ui/effectsdialog.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/effectsdialog.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/effectsdialog.cpp (original)
+++ branches/ScribusOIF/scribus/ui/effectsdialog.cpp Sun Jul 31 19:08:11 2011
@@ -27,9 +27,9 @@
 #include "cmsettings.h"
 #include "colorcombo.h"
 #include "curvewidget.h"
-#include "scpage.h"
 #include "sccombobox.h"
 #include "scclocale.h"
+#include "scpage.h"
 #include "scribusdoc.h"
 #include "scrspinbox.h"
 #include "sctextstream.h"

Modified: branches/ScribusOIF/scribus/ui/fontcombo.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/fontcombo.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/fontcombo.cpp (original)
+++ branches/ScribusOIF/scribus/ui/fontcombo.cpp Sun Jul 31 19:08:11 2011
@@ -29,12 +29,11 @@
 #include <QPixmap>
 #include <QStringList>
 
+#include "fontcombo.h"
+#include "prefsmanager.h"
 #include "sccombobox.h"
-
+#include "scpage.h"
 #include "scribusdoc.h"
-#include "fontcombo.h"
-#include "scpage.h"
-#include "prefsmanager.h"
 #include "util_icon.h"
 #include "util.h"
 

Modified: branches/ScribusOIF/scribus/ui/guidemanager.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/guidemanager.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/guidemanager.cpp (original)
+++ branches/ScribusOIF/scribus/ui/guidemanager.cpp Sun Jul 31 19:08:11 2011
@@ -23,17 +23,18 @@
  ***************************************************************************/
 
 #include "guidemanager.h"
+
 #include "commonstrings.h"
+#include "guidesdelegate.h"
+#include "guidesmodel.h"
+#include "scinputdialog.h"
 #include "scpage.h"
-#include "scinputdialog.h"
 #include "scribuscore.h"
 #include "scribusdoc.h"
 #include "selection.h"
 #include "undomanager.h"
 #include "units.h"
 #include "util.h"
-#include "guidesmodel.h"
-#include "guidesdelegate.h"
 
 
 GuideManager::GuideManager(QWidget* parent) :

Modified: branches/ScribusOIF/scribus/ui/hruler.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/hruler.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/hruler.cpp (original)
+++ branches/ScribusOIF/scribus/ui/hruler.cpp Sun Jul 31 19:08:11 2011
@@ -35,8 +35,8 @@
 
 #include "canvasgesture_rulermove.h"
 #include "hruler.h"
+#include "prefsmanager.h"
 #include "scpage.h"
-#include "prefsmanager.h"
 #include "scribus.h"
 #include "scribusdoc.h"
 #include "scribusview.h"

Modified: branches/ScribusOIF/scribus/ui/inspage.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/inspage.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/inspage.cpp (original)
+++ branches/ScribusOIF/scribus/ui/inspage.cpp Sun Jul 31 19:08:11 2011
@@ -13,12 +13,13 @@
 #include <QGroupBox>
 #include <QCheckBox>
 #include <QPushButton>
+
+#include "commonstrings.h"
+#include "scpage.h"
 #include "scribusdoc.h"
-#include "scpage.h"
-#include "units.h"
 #include "scrspinbox.h"
 #include "pagesize.h"
-#include "commonstrings.h"
+#include "units.h"
 #include "util_icon.h"
 #include "util.h"
 

Modified: branches/ScribusOIF/scribus/ui/javadocs.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/javadocs.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/javadocs.cpp (original)
+++ branches/ScribusOIF/scribus/ui/javadocs.cpp Sun Jul 31 19:08:11 2011
@@ -13,13 +13,15 @@
 #include <QPushButton>
 #include <QRegExp>
 #include <QToolTip>
+
+#include "commonstrings.h"
 #include "editor.h"
+#include "query.h"
+#include "scpage.h"
+#include "scribusdoc.h"
 #include "ui/scmessagebox.h"
-#include "scribusdoc.h"
-#include "scpage.h"
-#include "commonstrings.h"
-#include "query.h"
 #include "util_icon.h"
+
 
 JavaDocs::JavaDocs(QWidget* parent, ScribusDoc *doc, ScribusView* vie) : QDialog( parent )
 {

Modified: branches/ScribusOIF/scribus/ui/margindialog.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/margindialog.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/margindialog.cpp (original)
+++ branches/ScribusOIF/scribus/ui/margindialog.cpp Sun Jul 31 19:08:11 2011
@@ -14,15 +14,15 @@
 #include <QComboBox>
 #include <QCheckBox>
 
+#include "commonstrings.h"
 #include "margindialog.h"
 #include "marginwidget.h"
+#include "pagesize.h"
 #include "pagestructs.h"
 #include "scpage.h"
 #include "scribusdoc.h"
+#include "scrspinbox.h"
 #include "units.h"
-#include "scrspinbox.h"
-#include "pagesize.h"
-#include "commonstrings.h"
 #include "util_icon.h"
 
 MarginDialog::MarginDialog( QWidget* parent, ScribusDoc* doc ) : QDialog( parent)

Modified: branches/ScribusOIF/scribus/ui/masterpagepalette.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/masterpagepalette.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/masterpagepalette.cpp (original)
+++ branches/ScribusOIF/scribus/ui/masterpagepalette.cpp Sun Jul 31 19:08:11 2011
@@ -23,14 +23,14 @@
 #include "commonstrings.h"
 #include "mergedoc.h"
 #include "newtemp.h"
+#include "pagestructs.h"
+#include "prefsmanager.h"
 #include "scpage.h"
-#include "pagestructs.h"
-#include "selection.h"
-#include "prefsmanager.h"
 #include "scribus.h"
-#include "scribusXml.h"
 #include "scribusdoc.h"
 #include "scribusview.h"
+#include "scribusXml.h"
+#include "selection.h"
 #include "util_icon.h"
 
 MasterPagesPalette::MasterPagesPalette( QWidget* parent, ScribusDoc *pCurrentDoc, ScribusView *pCurrentView, QString masterPageName)

Modified: branches/ScribusOIF/scribus/ui/missing.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/missing.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/missing.cpp (original)
+++ branches/ScribusOIF/scribus/ui/missing.cpp Sun Jul 31 19:08:11 2011
@@ -13,13 +13,13 @@
 #include <QImage>
 #include <QPixmap>
 
+#include "commonstrings.h"
 #include "fontcombo.h"
+#include "prefsmanager.h"
+#include "scpage.h"
 #include "scribusdoc.h"
-#include "scpage.h"
-#include "prefsmanager.h"
-#include "commonstrings.h"
+#include "util.h"
 #include "util_icon.h"
-#include "util.h"
 
 static const char* const image100_data[] =
     {

Modified: branches/ScribusOIF/scribus/ui/newtemp.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/newtemp.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/newtemp.cpp (original)
+++ branches/ScribusOIF/scribus/ui/newtemp.cpp Sun Jul 31 19:08:11 2011
@@ -15,10 +15,10 @@
 #include <QLabel>
 #include <QPushButton>
 
+#include "commonstrings.h"
+#include "pagestructs.h"
 #include "scpage.h"
-#include "pagestructs.h"
 #include "scribusdoc.h"
-#include "commonstrings.h"
 #include "util_icon.h"
 
 NewTm::NewTm( QWidget* parent, QString text, QString titel, ScribusDoc *doc, const QString& answerText)

Modified: branches/ScribusOIF/scribus/ui/nodeeditpalette.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/nodeeditpalette.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/nodeeditpalette.cpp (original)
+++ branches/ScribusOIF/scribus/ui/nodeeditpalette.cpp Sun Jul 31 19:08:11 2011
@@ -8,8 +8,8 @@
 #include <QEvent>
 
 #include "nodeeditpalette.h"
+#include "pageitem.h"
 #include "scpage.h"
-#include "pageitem.h"
 #include "scribusview.h"
 #include "selection.h"
 #include "undomanager.h"

Modified: branches/ScribusOIF/scribus/ui/outlinepalette.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/outlinepalette.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/outlinepalette.cpp (original)
+++ branches/ScribusOIF/scribus/ui/outlinepalette.cpp Sun Jul 31 19:08:11 2011
@@ -25,8 +25,8 @@
 #include "commonstrings.h"
 #include "contextmenu.h"
 #include "outlinepalette.h"
+#include "propertiespalette.h"
 #include "scpage.h"
-#include "propertiespalette.h"
 #include "scribus.h"
 #include "selection.h"
 #include "undomanager.h"
@@ -637,9 +637,12 @@
 				emit selectElementByItem(pgItem, true);
 			break;
 		case 2:
-			pg = item->PageObject->pageNr();
-			m_MainWindow->closeActiveWindowMasterPageEditor();
-			emit selectPage(pg);
+			if (!currDoc->symbolEditMode())
+			{
+				pg = item->PageObject->pageNr();
+				m_MainWindow->closeActiveWindowMasterPageEditor();
+				emit selectPage(pg);
+			}
 			break;
 		case 3:
 		case 4:
@@ -678,117 +681,151 @@
 	freeObjects = 0;
 	PageItem* pgItem;
 	QString tmp;
-	for (int a = 0; a < static_cast<int>(currDoc->MasterPages.count()); ++a)
+	if (currDoc->symbolEditMode())
 	{
 		OutlineTreeItem *page = new OutlineTreeItem( item, pagep );
-		page->PageObject = currDoc->MasterPages.at(a);
-		page->type = 0;
-		QString pageNam = currDoc->MasterPages.at(a)->pageName();
-		pagep = page;
-		for (int b = 0; b < currDoc->MasterItems.count(); ++b)
-		{
-			pgItem = currDoc->MasterItems.at(b);
-			if (((pgItem->OwnPage == a) || (pgItem->OnMasterPage == pageNam)))
-			{
-				if (!pgItem->isGroup())
-				{
-					OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
-					object->PageItemObject = pgItem;
-					object->type = 1;
-					object->setText(0, pgItem->itemName());
-					setItemIcon(object, pgItem);
-					object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
-				}
-				else
-				{
-					OutlineTreeItem * object = new OutlineTreeItem( page, 0 );
-					object->PageItemObject = pgItem;
-					object->type = 1;
-					object->setText(0, pgItem->itemName());
-					object->setIcon( 0, groupIcon );
-					object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
-					parseSubGroup(object, &pgItem->groupItemList, 1);
-				}
-			}
-		}
-		page->setText(0, currDoc->MasterPages.at(a)->pageName());
-	}
-	for (int a = 0; a < static_cast<int>(currDoc->DocPages.count()); ++a)
-	{
-		OutlineTreeItem *page = new OutlineTreeItem( item, pagep );
-		page->PageObject = currDoc->DocPages.at(a);
+		page->PageObject = currDoc->Pages->at(0);
 		page->type = 2;
 		pagep = page;
+		for (int b = 0; b < currDoc->Items->count(); ++b)
+		{
+			pgItem = currDoc->Items->at(b);
+			if (!pgItem->isGroup())
+			{
+				OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
+				object->PageItemObject = pgItem;
+				object->type = 3;
+				object->setText(0, pgItem->itemName());
+				setItemIcon(object, pgItem);
+				object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+			}
+			else
+			{
+				OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
+				object->PageItemObject = pgItem;
+				object->type = 3;
+				object->setText(0, pgItem->itemName());
+				object->setIcon( 0, groupIcon );
+				object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+				parseSubGroup(object, &pgItem->groupItemList, 3);
+			}
+		}
+		page->setText(0, currDoc->getEditedSymbol());
+	}
+	else
+	{
+		for (int a = 0; a < static_cast<int>(currDoc->MasterPages.count()); ++a)
+		{
+			OutlineTreeItem *page = new OutlineTreeItem( item, pagep );
+			page->PageObject = currDoc->MasterPages.at(a);
+			page->type = 0;
+			QString pageNam = currDoc->MasterPages.at(a)->pageName();
+			pagep = page;
+			for (int b = 0; b < currDoc->MasterItems.count(); ++b)
+			{
+				pgItem = currDoc->MasterItems.at(b);
+				if (((pgItem->OwnPage == a) || (pgItem->OnMasterPage == pageNam)))
+				{
+					if (!pgItem->isGroup())
+					{
+						OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
+						object->PageItemObject = pgItem;
+						object->type = 1;
+						object->setText(0, pgItem->itemName());
+						setItemIcon(object, pgItem);
+						object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+					}
+					else
+					{
+						OutlineTreeItem * object = new OutlineTreeItem( page, 0 );
+						object->PageItemObject = pgItem;
+						object->type = 1;
+						object->setText(0, pgItem->itemName());
+						object->setIcon( 0, groupIcon );
+						object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+						parseSubGroup(object, &pgItem->groupItemList, 1);
+					}
+				}
+			}
+			page->setText(0, currDoc->MasterPages.at(a)->pageName());
+		}
+		for (int a = 0; a < static_cast<int>(currDoc->DocPages.count()); ++a)
+		{
+			OutlineTreeItem *page = new OutlineTreeItem( item, pagep );
+			page->PageObject = currDoc->DocPages.at(a);
+			page->type = 2;
+			pagep = page;
+			for (int b = 0; b < currDoc->DocItems.count(); ++b)
+			{
+				pgItem = currDoc->DocItems.at(b);
+				if (pgItem->OwnPage == a)
+				{
+					if (!pgItem->isGroup())
+					{
+						OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
+						object->PageItemObject = pgItem;
+						object->type = 3;
+						object->setText(0, pgItem->itemName());
+						setItemIcon(object, pgItem);
+						object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+					}
+					else
+					{
+						OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
+						object->PageItemObject = pgItem;
+						object->type = 3;
+						object->setText(0, pgItem->itemName());
+						object->setIcon( 0, groupIcon );
+						object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+						parseSubGroup(object, &pgItem->groupItemList, 3);
+					}
+				}
+			}
+			page->setText(0, tr("Page ")+tmp.setNum(a+1));
+		}
+		bool hasfreeItems = false;
 		for (int b = 0; b < currDoc->DocItems.count(); ++b)
 		{
-			pgItem = currDoc->DocItems.at(b);
-			if (pgItem->OwnPage == a)
-			{
-				if (!pgItem->isGroup())
+			if (currDoc->DocItems.at(b)->OwnPage == -1)
+			{
+				hasfreeItems = true;
+				break;
+			}
+		}
+		if (hasfreeItems)
+		{
+			OutlineTreeItem *page = new OutlineTreeItem( item, pagep );
+			pagep = page;
+			freeObjects = page;
+			page->type = -3;
+			for (int b = 0; b < currDoc->DocItems.count(); ++b)
+			{
+				pgItem = currDoc->DocItems.at(b);
+				if (pgItem->OwnPage == -1)
 				{
-					OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
-					object->PageItemObject = pgItem;
-					object->type = 3;
-					object->setText(0, pgItem->itemName());
-					setItemIcon(object, pgItem);
-					object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
-				}
-				else
-				{
-					OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
-					object->PageItemObject = pgItem;
-					object->type = 3;
-					object->setText(0, pgItem->itemName());
-					object->setIcon( 0, groupIcon );
-					object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
-					parseSubGroup(object, &pgItem->groupItemList, 3);
-				}
-			}
-		}
-		page->setText(0, tr("Page ")+tmp.setNum(a+1));
-	}
-	bool hasfreeItems = false;
-	for (int b = 0; b < currDoc->DocItems.count(); ++b)
-	{
-		if (currDoc->DocItems.at(b)->OwnPage == -1)
-		{
-			hasfreeItems = true;
-			break;
-		}
-	}
-	if (hasfreeItems)
-	{
-		OutlineTreeItem *page = new OutlineTreeItem( item, pagep );
-		pagep = page;
-		freeObjects = page;
-		page->type = -3;
-		for (int b = 0; b < currDoc->DocItems.count(); ++b)
-		{
-			pgItem = currDoc->DocItems.at(b);
-			if (pgItem->OwnPage == -1)
-			{
-				if (!pgItem->isGroup())
-				{
-					OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
-					object->PageItemObject = pgItem;
-					object->type = 4;
-					object->setText(0, pgItem->itemName());
-					setItemIcon(object, pgItem);
-					object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
-				}
-				else
-				{
-					OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
-					object->PageItemObject = pgItem;
-					object->type = 4;
-					object->setText(0, pgItem->itemName());
-					object->setIcon( 0, groupIcon );
-					object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
-					parseSubGroup(object, &pgItem->groupItemList, 4);
-				}
-			}
-		}
-		page->setText(0, tr("Free Objects"));
+					if (!pgItem->isGroup())
+					{
+						OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
+						object->PageItemObject = pgItem;
+						object->type = 4;
+						object->setText(0, pgItem->itemName());
+						setItemIcon(object, pgItem);
+						object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+					}
+					else
+					{
+						OutlineTreeItem *object = new OutlineTreeItem( page, 0 );
+						object->PageItemObject = pgItem;
+						object->type = 4;
+						object->setText(0, pgItem->itemName());
+						object->setIcon( 0, groupIcon );
+						object->setFlags(Qt::ItemIsEditable | Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
+						parseSubGroup(object, &pgItem->groupItemList, 4);
+					}
+				}
+			}
+			page->setText(0, tr("Free Objects"));
+		}
 	}
 	if (storeVals)
 		reopenTree();

Modified: branches/ScribusOIF/scribus/ui/pagepalette.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/pagepalette.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/pagepalette.cpp (original)
+++ branches/ScribusOIF/scribus/ui/pagepalette.cpp Sun Jul 31 19:08:11 2011
@@ -20,14 +20,13 @@
 #include <QPainter>
 
 #include "commonstrings.h"
-#include "scpage.h"
 #include "pagelayout.h"
 #include "pagepalette.h"
 #include "sccombobox.h"
+#include "scpage.h"
 #include "scribus.h"
 #include "scribusview.h"
 #include "util_icon.h"
-
 
 /* IconItems Code */
 SeItem::SeItem(QString text, uint nr, const QPixmap& Pix) : QTableWidgetItem(QIcon(Pix), "", 1002)

Modified: branches/ScribusOIF/scribus/ui/propertiespalette.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/propertiespalette.h
==============================================================================
--- branches/ScribusOIF/scribus/ui/propertiespalette.h (original)
+++ branches/ScribusOIF/scribus/ui/propertiespalette.h Sun Jul 31 19:08:11 2011
@@ -22,12 +22,12 @@
 #include "scguardedptr.h"
 #include "scrspinbox.h"
 #include "pageitem.h"
-#include "scpage.h"
 #include "linkbutton.h"
 #include "linecombo.h"
+#include "scguardedptr.h"
+#include "sclistboxpixmap.h"
+#include "scpage.h"
 #include "spalette.h"
-#include "sclistboxpixmap.h"
-#include "scguardedptr.h"
 #include "sctreewidget.h"
 
 class ColorCombo;

Modified: branches/ScribusOIF/scribus/ui/propertiespalette_utils.h
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/propertiespalette_utils.h
==============================================================================
--- branches/ScribusOIF/scribus/ui/propertiespalette_utils.h (original)
+++ branches/ScribusOIF/scribus/ui/propertiespalette_utils.h Sun Jul 31 19:08:11 2011
@@ -33,10 +33,10 @@
 #include "scribusapi.h"
 #include "scrspinbox.h"
 #include "pageitem.h"
-#include "scpage.h"
 #include "linkbutton.h"
 #include "linecombo.h"
 #include "sclistboxpixmap.h"
+#include "scpage.h"
 #include "sctreewidget.h"
 
 class ScribusDoc;

Modified: branches/ScribusOIF/scribus/ui/propertywidget_color.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/propertywidget_color.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/propertywidget_color.cpp (original)
+++ branches/ScribusOIF/scribus/ui/propertywidget_color.cpp Sun Jul 31 19:08:11 2011
@@ -112,6 +112,7 @@
 	connect(editPatternProps, SIGNAL(clicked()) , this, SLOT(changePatternProps()));
 	connect(namedGradient   , SIGNAL(activated(const QString &)), this, SLOT(setNamedGradient(const QString &)));
 	connect(overPrintCombo  , SIGNAL(activated(int)), this, SIGNAL(NewOverprint(int)));
+	connect(patternBox      , SIGNAL(itemClicked(QListWidgetItem*)), this, SLOT(selectPattern(QListWidgetItem*)));
 	connect(patternBoxStroke, SIGNAL(itemClicked(QListWidgetItem*)), this, SLOT(selectPatternS(QListWidgetItem*)));
 	connect(strokeModeCombo , SIGNAL(currentIndexChanged(int)), this, SLOT(slotGradStroke(int)));
 	connect(editPatternPropsStroke, SIGNAL(clicked()), this, SLOT(changePatternPropsStroke()));
@@ -167,6 +168,7 @@
 	disconnect(editPatternProps, SIGNAL(clicked()) , this, SLOT(changePatternProps()));
 	disconnect(namedGradient   , SIGNAL(activated(const QString &)), this, SLOT(setNamedGradient(const QString &)));
 	disconnect(overPrintCombo  , SIGNAL(activated(int)), this, SIGNAL(NewOverprint(int)));
+	disconnect(patternBox      , SIGNAL(itemClicked(QListWidgetItem*)), this, SLOT(selectPattern(QListWidgetItem*)));
 	disconnect(patternBoxStroke, SIGNAL(itemClicked(QListWidgetItem*)), this, SLOT(selectPatternS(QListWidgetItem*)));
 	disconnect(strokeModeCombo , SIGNAL(currentIndexChanged(int)), this, SLOT(slotGradStroke(int)));
 	disconnect(editPatternPropsStroke, SIGNAL(clicked()), this, SLOT(changePatternPropsStroke()));

Modified: branches/ScribusOIF/scribus/ui/propertywidget_transparency.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/propertywidget_transparency.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/propertywidget_transparency.cpp (original)
+++ branches/ScribusOIF/scribus/ui/propertywidget_transparency.cpp Sun Jul 31 19:08:11 2011
@@ -67,6 +67,7 @@
 	connect(editPatternProps, SIGNAL(clicked())         , this, SLOT(changePatternProps()));
 	connect(transpCalcGradient, SIGNAL(clicked())       , this, SLOT(switchGradientMode()));
 	connect(transpCalcPattern , SIGNAL(clicked())       , this, SLOT(switchPatternMode()));
+	connect(usePatternInverted, SIGNAL(clicked()       ), this, SLOT(switchPatternMode()));
 
 	connect(this, SIGNAL(NewTrans(double))   , m_doc, SLOT(itemSelection_SetItemFillTransparency(double)));
 	connect(this, SIGNAL(NewTransS(double))  , m_doc, SLOT(itemSelection_SetItemLineTransparency(double)));
@@ -94,6 +95,7 @@
 	disconnect(editPatternProps, SIGNAL(clicked())         , this, SLOT(changePatternProps()));
 	disconnect(transpCalcGradient, SIGNAL(clicked())       , this, SLOT(switchGradientMode()));
 	disconnect(transpCalcPattern , SIGNAL(clicked())       , this, SLOT(switchPatternMode()));
+	disconnect(usePatternInverted, SIGNAL(clicked()       ), this, SLOT(switchPatternMode()));
 
 	disconnect(this, SIGNAL(NewTrans(double))   , m_doc, SLOT(itemSelection_SetItemFillTransparency(double)));
 	disconnect(this, SIGNAL(NewTransS(double))  , m_doc, SLOT(itemSelection_SetItemLineTransparency(double)));
@@ -214,10 +216,13 @@
 	enablePatterns(patternList->count() != 0);
 	transpCalcGradient->setChecked(false);
 	transpCalcPattern->setChecked(false);
+	usePatternInverted->setChecked(false);
 	if ((m_item->GrMask == 4) || (m_item->GrMask == 5))
 		transpCalcGradient->setChecked(true);
-	if (m_item->GrMask == 6)
+	if ((m_item->GrMask == 6) || (m_item->GrMask == 7))
 		transpCalcPattern->setChecked(true);
+	if ((m_item->GrMask == 7) || (m_item->GrMask == 8))
+		usePatternInverted->setChecked(true);
 	if ((m_item->GrMask == 1) || (m_item->GrMask == 4))
 		gradientType->setCurrentIndex(0);
 	else if ((m_item->GrMask == 2) || (m_item->GrMask == 5))
@@ -330,9 +335,19 @@
 	else if (number == 2)
 	{
 		if (transpCalcPattern->isChecked())
-			emit NewGradient(6);
-		else
-			emit NewGradient(3);
+		{
+			if (usePatternInverted->isChecked())
+				emit NewGradient(7);
+			else
+				emit NewGradient(6);
+		}
+		else
+		{
+			if (usePatternInverted->isChecked())
+				emit NewGradient(8);
+			else
+				emit NewGradient(3);
+		}
 	}
 	else
 		emit NewGradient(0);
@@ -407,10 +422,19 @@
 void PropertyWidget_Transparency::switchPatternMode()
 {
 	if (transpCalcPattern->isChecked())
-		emit NewGradient(6);
-	else
-		emit NewGradient(3);
-
+	{
+		if (usePatternInverted->isChecked())
+			emit NewGradient(7);
+		else
+			emit NewGradient(6);
+	}
+	else
+	{
+		if (usePatternInverted->isChecked())
+			emit NewGradient(8);
+		else
+			emit NewGradient(3);
+	}
 }
 
 void PropertyWidget_Transparency::editGradientVector()

Modified: branches/ScribusOIF/scribus/ui/propertywidget_transparency.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/propertywidget_transparency.ui
==============================================================================
--- branches/ScribusOIF/scribus/ui/propertywidget_transparency.ui (original)
+++ branches/ScribusOIF/scribus/ui/propertywidget_transparency.ui Sun Jul 31 19:08:11 2011
@@ -7,7 +7,7 @@
     <x>0</x>
     <y>0</y>
     <width>229</width>
-    <height>333</height>
+    <height>353</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -340,7 +340,7 @@
          <property name="currentIndex">
           <number>0</number>
          </property>
-         <widget class="QWidget" name="stackedWidgetPage1" native="true">
+         <widget class="QWidget" name="stackedWidgetPage1">
           <layout class="QVBoxLayout" name="verticalLayout_2">
            <property name="spacing">
             <number>2</number>
@@ -393,7 +393,7 @@
            </item>
           </layout>
          </widget>
-         <widget class="QWidget" name="stackedWidgetPage2" native="true">
+         <widget class="QWidget" name="stackedWidgetPage2">
           <layout class="QVBoxLayout" name="verticalLayout_4">
            <property name="spacing">
             <number>2</number>
@@ -466,7 +466,7 @@
            </item>
           </layout>
          </widget>
-         <widget class="QWidget" name="stackedWidgetPage3" native="true">
+         <widget class="QWidget" name="stackedWidgetPage3">
           <layout class="QVBoxLayout" name="verticalLayout">
            <property name="spacing">
             <number>2</number>
@@ -527,6 +527,13 @@
             <widget class="QCheckBox" name="transpCalcPattern">
              <property name="text">
               <string>Use Luminosity as Alpha</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QCheckBox" name="usePatternInverted">
+             <property name="text">
+              <string>Use inverted Pattern</string>
              </property>
             </widget>
            </item>

Modified: branches/ScribusOIF/scribus/ui/search.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/search.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/search.cpp (original)
+++ branches/ScribusOIF/scribus/ui/search.cpp Sun Jul 31 19:08:11 2011
@@ -19,19 +19,19 @@
 #include <QPixmap>
 #include <QMessageBox>
 
+#include "colorcombo.h"
 #include "colorlistbox.h"
 #include "commonstrings.h"
-#include "colorcombo.h"
 #include "fontcombo.h"
-#include "scrspinbox.h"
-#include "scpage.h"
 #include "prefscontext.h"
 #include "prefsfile.h"
 #include "prefsmanager.h"
+#include "scpage.h"
 #include "scribus.h"
+#include "scrspinbox.h"
 #include "shadebutton.h"
+#include "styleselect.h"
 #include "ui/storyeditor.h"
-#include "styleselect.h"
 #include "util.h"
 #include "util_icon.h"
 #include "util_text.h"

Modified: branches/ScribusOIF/scribus/ui/transparencypalette.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/transparencypalette.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/transparencypalette.cpp (original)
+++ branches/ScribusOIF/scribus/ui/transparencypalette.cpp Sun Jul 31 19:08:11 2011
@@ -59,6 +59,7 @@
 	connect(editPatternProps, SIGNAL(clicked()), this, SLOT(changePatternProps()));
 	connect(transpCalcGradient, SIGNAL(clicked()), this, SLOT(switchGradientMode()));
 	connect(transpCalcPattern, SIGNAL(clicked()), this, SLOT(switchPatternMode()));
+	connect(usePatternInverted, SIGNAL(clicked()), this, SLOT(switchPatternMode()));
 }
 
 void Tpalette::setCurrentItem(PageItem* item)
@@ -139,6 +140,7 @@
 	disconnect(gradientType, SIGNAL(activated(int)), this, SLOT(slotGradType(int)));
 	disconnect(transpCalcGradient, SIGNAL(clicked()), this, SLOT(switchGradientMode()));
 	disconnect(transpCalcPattern, SIGNAL(clicked()), this, SLOT(switchPatternMode()));
+	disconnect(usePatternInverted, SIGNAL(clicked()), this, SLOT(switchPatternMode()));
 	gradEdit->setGradient(currentItem->mask_gradient);
 	if (!currentItem->gradientMask().isEmpty())
 	{
@@ -162,10 +164,13 @@
 		tabWidget->setTabEnabled(2, true);
 	transpCalcGradient->setChecked(false);
 	transpCalcPattern->setChecked(false);
+	usePatternInverted->setChecked(false);
 	if ((currentItem->GrMask == 4) || (currentItem->GrMask == 5))
 		transpCalcGradient->setChecked(true);
-	if (currentItem->GrMask == 6)
+	if ((currentItem->GrMask == 6) || (currentItem->GrMask == 7))
 		transpCalcPattern->setChecked(true);
+	if ((currentItem->GrMask == 7) || (currentItem->GrMask == 8))
+		usePatternInverted->setChecked(true);
 	if ((currentItem->GrMask == 1) || (currentItem->GrMask == 4))
 		gradientType->setCurrentIndex(0);
 	else if ((currentItem->GrMask == 2) || (currentItem->GrMask == 5))
@@ -183,6 +188,7 @@
 	connect(gradientType, SIGNAL(activated(int)), this, SLOT(slotGradType(int)));
 	connect(transpCalcGradient, SIGNAL(clicked()), this, SLOT(switchGradientMode()));
 	connect(transpCalcPattern, SIGNAL(clicked()), this, SLOT(switchPatternMode()));
+	connect(usePatternInverted, SIGNAL(clicked()), this, SLOT(switchPatternMode()));
 }
 
 void Tpalette::updateCList()
@@ -269,9 +275,19 @@
 	else if (number == 2)
 	{
 		if (transpCalcPattern->isChecked())
-			emit NewGradient(6);
-		else
-			emit NewGradient(3);
+		{
+			if (usePatternInverted->isChecked())
+				emit NewGradient(7);
+			else
+				emit NewGradient(6);
+		}
+		else
+		{
+			if (usePatternInverted->isChecked())
+				emit NewGradient(8);
+			else
+				emit NewGradient(3);
+		}
 	}
 	else
 		emit NewGradient(0);
@@ -346,10 +362,19 @@
 void Tpalette::switchPatternMode()
 {
 	if (transpCalcPattern->isChecked())
-		emit NewGradient(6);
-	else
-		emit NewGradient(3);
-
+	{
+		if (usePatternInverted->isChecked())
+			emit NewGradient(7);
+		else
+			emit NewGradient(6);
+	}
+	else
+	{
+		if (usePatternInverted->isChecked())
+			emit NewGradient(8);
+		else
+			emit NewGradient(3);
+	}
 }
 
 void Tpalette::editGradientVector()

Modified: branches/ScribusOIF/scribus/ui/transparencypalette.ui
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/transparencypalette.ui
==============================================================================
--- branches/ScribusOIF/scribus/ui/transparencypalette.ui (original)
+++ branches/ScribusOIF/scribus/ui/transparencypalette.ui Sun Jul 31 19:08:11 2011
@@ -7,7 +7,7 @@
     <x>0</x>
     <y>0</y>
     <width>236</width>
-    <height>363</height>
+    <height>373</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -362,12 +362,6 @@
            <string>Pattern</string>
           </attribute>
           <layout class="QVBoxLayout" name="verticalLayout">
-           <property name="spacing">
-            <number>2</number>
-           </property>
-           <property name="margin">
-            <number>5</number>
-           </property>
            <item>
             <widget class="QListWidget" name="patternBox">
              <property name="movement">
@@ -421,6 +415,13 @@
             <widget class="QCheckBox" name="transpCalcPattern">
              <property name="text">
               <string>Use Luminosity as Alpha</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QCheckBox" name="usePatternInverted">
+             <property name="text">
+              <string>Use inverted Pattern</string>
              </property>
             </widget>
            </item>

Modified: branches/ScribusOIF/scribus/ui/vruler.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=16741&path=/branches/ScribusOIF/scribus/ui/vruler.cpp
==============================================================================
--- branches/ScribusOIF/scribus/ui/vruler.cpp (original)
+++ branches/ScribusOIF/scribus/ui/vruler.cpp Sun Jul 31 19:08:11 2011
@@ -34,8 +34,8 @@
 #include <cmath>
 
 #include "canvasgesture_rulermove.h"
+#include "prefsmanager.h"
 #include "scpage.h"
-#include "prefsmanager.h"
 #include "scribus.h"
 #include "scribusdoc.h"
 #include "units.h"




More information about the scribus-commit mailing list