diff options
| author | jghali <jghali@11d20701-8431-0410-a711-e3c959e3b870> | 2012-02-25 22:16:13 +0000 |
|---|---|---|
| committer | jghali <jghali@11d20701-8431-0410-a711-e3c959e3b870> | 2012-02-25 22:16:13 +0000 |
| commit | cfdb32687678aa4bb52c547f9d3eeed668f1cd41 (patch) | |
| tree | e77d365fed365e6453993834e603eedd935999e5 | |
| parent | a1b009e0ebaf0b14889f81c40714428104d5a78f (diff) | |
| download | scribus-cfdb32687678aa4bb52c547f9d3eeed668f1cd41.tar.gz scribus-cfdb32687678aa4bb52c547f9d3eeed668f1cd41.tar.xz scribus-cfdb32687678aa4bb52c547f9d3eeed668f1cd41.zip | |
#10598 : Automatic guides which refer to margins are not loaded correctly
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17337 11d20701-8431-0410-a711-e3c959e3b870
| -rw-r--r-- | scribus/guidemanager.cpp | 2 | ||||
| -rw-r--r-- | scribus/plugins/fileloader/scribus134format/scribus134format.cpp | 2 | ||||
| -rw-r--r-- | scribus/scribus.cpp | 1 | ||||
| -rw-r--r-- | scribus/scribusdoc.cpp | 10 | ||||
| -rw-r--r-- | scribus/scribusdoc.h | 4 |
5 files changed, 17 insertions, 2 deletions
diff --git a/scribus/guidemanager.cpp b/scribus/guidemanager.cpp index 6f69460..92d5e67 100644 --- a/scribus/guidemanager.cpp +++ b/scribus/guidemanager.cpp @@ -565,7 +565,7 @@ void GuideManager::windowActivationChange(bool oldActive) Guides GuideManager::getAutoVerticals() { -GuideManagerCore guides; + GuideManagerCore guides; double gapValue = 0.0; if (horizontalAutoGapCheck->isChecked()) diff --git a/scribus/plugins/fileloader/scribus134format/scribus134format.cpp b/scribus/plugins/fileloader/scribus134format/scribus134format.cpp index 21ded1f..ce76c8a 100644 --- a/scribus/plugins/fileloader/scribus134format/scribus134format.cpp +++ b/scribus/plugins/fileloader/scribus134format/scribus134format.cpp @@ -1542,6 +1542,7 @@ bool Scribus134Format::loadFile(const QString & fileName, const FileFormat & /* m_Doc->setActiveLayer(layerToSetActive); m_Doc->setMasterPageMode(false); m_Doc->reformPages(); + m_Doc->refreshGuides(); // Some old long doc may have page owner somewhat broken m_Doc->fixItemPageOwner(); @@ -2976,7 +2977,6 @@ bool Scribus134Format::loadPage(const QString & fileName, int pageNumber, bool M Apage->guides.addHorizontals(Apage->guides.getAutoHorizontals(Apage), GuideManagerCore::Auto); Apage->guides.addVerticals(Apage->guides.getAutoVerticals(Apage), GuideManagerCore::Auto); - } if ((pg.tagName()=="PAGEOBJECT") || (pg.tagName()=="MASTEROBJECT") || (pg.tagName()=="FRAMEOBJECT")) { diff --git a/scribus/scribus.cpp b/scribus/scribus.cpp index 9875e07..baa46aa 100644 --- a/scribus/scribus.cpp +++ b/scribus/scribus.cpp @@ -4183,6 +4183,7 @@ bool ScribusMainWindow::loadDoc(QString fileName) doc->RePos = true; doc->setMasterPageMode(true); doc->reformPages(); + doc->refreshGuides(); doc->setLoading(false); for (int azz=0; azz<doc->MasterItems.count(); ++azz) { diff --git a/scribus/scribusdoc.cpp b/scribus/scribusdoc.cpp index 3d25431..71878ab 100644 --- a/scribus/scribusdoc.cpp +++ b/scribus/scribusdoc.cpp @@ -4626,6 +4626,16 @@ void ScribusDoc::reformPages(bool moveObjects) } } +void ScribusDoc::refreshGuides() +{ + for (int i = 0; i < Pages->count(); ++i) + { + Page* page = Pages->at(i); + page->guides.addHorizontals(page->guides.getAutoHorizontals(page), GuideManagerCore::Auto); + page->guides.addVerticals(page->guides.getAutoVerticals(page), GuideManagerCore::Auto); + } +} + double ScribusDoc::getXOffsetForPage(const int pageNumber) { if (Pages->at(pageNumber)!=NULL) diff --git a/scribus/scribusdoc.h b/scribus/scribusdoc.h index 48ec7b9..681f12a 100644 --- a/scribus/scribusdoc.h +++ b/scribus/scribusdoc.h @@ -697,7 +697,11 @@ public: int OnPage(double x2, double y2); int OnPage(PageItem *currItem); void GroupOnPage(PageItem *currItem); + void reformPages(bool moveObjects = true); + /** @brief Refresh automatic guides once Margin struct has been properly configure by reformPages() */ + void refreshGuides(); + /** @brief Check and fix if needed PageItem OwnPage member */ void fixItemPageOwner(); /** |
