r22132 by jghali -
scribus-commit
scribus-commit at lists.scribus.net
Thu Aug 10 00:03:56 UTC 2017
Author: jghali
Date: Thu Aug 10 00:03:56 2017
New Revision: 22132
URL: http://scribus.net/websvn/listing.php?repname=Scribus&sc=1&rev=22132
Log:
#14940: Ungrouping items on a new master page move the objects to Normal rather than keeping on the same page
Modified:
trunk/Scribus/scribus/ui/pagepalette_masterpages.cpp
Modified: trunk/Scribus/scribus/ui/pagepalette_masterpages.cpp
URL: http://scribus.net/websvn/diff.php?repname=Scribus&rev=22132&path=/trunk/Scribus/scribus/ui/pagepalette_masterpages.cpp
==============================================================================
--- trunk/Scribus/scribus/ui/pagepalette_masterpages.cpp (original)
+++ trunk/Scribus/scribus/ui/pagepalette_masterpages.cpp Thu Aug 10 00:03:56 2017
@@ -278,8 +278,9 @@
destination->initialMargins.setRight(from->initialMargins.right());
}
}
- //#8321 : incorrect selection of master page on new mp creation/duplictation
+ //#8321 : incorrect selection of master page on new mp creation/duplication
//m_doc->setCurrentPage(destination);
+ updateMasterPageList(MasterPageName);
selectMasterPage(MasterPageName);
uint oldItems = m_doc->Items->count();
uint end2 = m_doc->MasterItems.count();
@@ -314,11 +315,24 @@
PageItem *newItem = m_doc->MasterItems.at(a);
newItem->OnMasterPage = MasterPageName;
newItem->OwnPage = m_doc->MasterNames[MasterPageName];
+ if (!newItem->isGroup())
+ continue;
+
+ int masterPageIndex = m_doc->MasterNames[MasterPageName];
+ PageItem_Group* group = newItem->asGroupFrame();
+ QList<PageItem*> groupList = group->groupItemList;
+ while (!groupList.isEmpty())
+ {
+ newItem = groupList.takeFirst();
+ newItem->OnMasterPage = MasterPageName;
+ newItem->OwnPage = masterPageIndex;
+ if (newItem->isGroup())
+ groupList = newItem->asGroupFrame()->groupItemList + groupList;
+ }
}
from->guides.copy(&destination->guides);
m_doc->GroupCounter = GrMax + 1;
m_view->Deselect(true);
- updateMasterPageList(MasterPageName);
m_doc->setLoading(false);
m_view->reformPages();
m_view->DrawNew();
More information about the scribus-commit
mailing list