[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    =?utf-8?q?=5Bcalligra=5D_words/part=3A_Cleanup?=
From:       Sebastian Sauer <sebastian.sauer () kdab ! com>
Date:       2011-04-30 17:40:18
Message-ID: 20110430174018.8E94BA60A6 () git ! kde ! org
[Download RAW message or body]

Git commit 5901d49e98a122fd5e7cd930690311abcdc3baa9 by Sebastian Sauer.
Committed on 30/04/2011 at 19:39.
Pushed by sebsauer into branch 'master'.

Cleanup

M  +0    -1    words/part/KWDLoader.cpp     
M  +0    -2    words/part/KWOdfLoader.cpp     
M  +0    -1    words/part/KWOdfSharedLoadingData.cpp     
M  +1    -186  words/part/frames/KWTextFrameSet.cpp     
M  +0    -60   words/part/frames/KWTextFrameSet.h     

http://commits.kde.org/calligra/5901d49e98a122fd5e7cd930690311abcdc3baa9

diff --git a/words/part/KWDLoader.cpp b/words/part/KWDLoader.cpp
index a4c2ee6..db4ed1d 100644
--- a/words/part/KWDLoader.cpp
+++ b/words/part/KWDLoader.cpp
@@ -439,7 +439,6 @@ void KWDLoader::loadFrameSet(const KoXmlElement &framesetElem)
                 type = KWord::OtherTextFrameSet; break;
             }
             KWTextFrameSet *fs = new KWTextFrameSet(m_document, type);
-            fs->setAllowLayout(false);
             fs->setName(fsname);
             fs->setPageStyle(styleForFS);
             fill(fs, framesetElem);
diff --git a/words/part/KWOdfLoader.cpp b/words/part/KWOdfLoader.cpp
index 9780a9f..96bb775 100644
--- a/words/part/KWOdfLoader.cpp
+++ b/words/part/KWOdfLoader.cpp
@@ -211,7 +211,6 @@ bool KWOdfLoader::load(KoOdfReadStore &odfStore)
     KoTextShapeData textShapeData;
     if (hasMainText) {
         KWTextFrameSet *mainFs = new KWTextFrameSet(m_document, \
                KWord::MainTextFrameSet);
-        mainFs->setAllowLayout(false);
         mainFs->setPageStyle(m_document->pageManager()->pageStyle("Standard"));
         m_document->addFrameSet(mainFs);
         textShapeData.setDocument(mainFs->document(), false);
@@ -313,7 +312,6 @@ void KWOdfLoader::loadHeaderFooterFrame(KoOdfLoadingContext \
&context, const KWPa  {
     KWTextFrameSet *fs = new KWTextFrameSet(m_document, fsType);
     fs->setPageStyle(pageStyle);
-    fs->setAllowLayout(false);
     m_document->addFrameSet(fs);
 
     kDebug(32001) << "KWOdfLoader::loadHeaderFooterFrame localName=" << \
                elem.localName() << " type=" << fs->name();
diff --git a/words/part/KWOdfSharedLoadingData.cpp \
b/words/part/KWOdfSharedLoadingData.cpp index 0ee8284..40a5066 100644
--- a/words/part/KWOdfSharedLoadingData.cpp
+++ b/words/part/KWOdfSharedLoadingData.cpp
@@ -77,7 +77,6 @@ void KWOdfSharedLoadingData::shapeInserted(KoShape *shape, const \
KoXmlElement &e  fs = dynamic_cast<KWTextFrameSet*>(previous->frameSet());
         if (fs == 0) {
             fs = new KWTextFrameSet(m_loader->document());
-            fs->setAllowLayout(false);
             fs->setName(m_loader->document()->uniqueFrameSetName(shape->name()));
             m_loader->document()->addFrameSet(fs);
         }
diff --git a/words/part/frames/KWTextFrameSet.cpp \
b/words/part/frames/KWTextFrameSet.cpp index e1b0162..1596e5b 100644
--- a/words/part/frames/KWTextFrameSet.cpp
+++ b/words/part/frames/KWTextFrameSet.cpp
@@ -48,13 +48,9 @@
 KWTextFrameSet::KWTextFrameSet(KWDocument *kwordDocument, KWord::TextFrameSetType \
type)  : KWFrameSet(KWord::TextFrameSet)
     , m_document(new QTextDocument())
-    , m_layoutTriggered(false)
-    , m_allowLayoutRequests(true)
-    , m_frameOrderDirty(true)
     , m_textFrameSetType(type)
     , m_pageManager(kwordDocument->pageManager())
     , m_kwordDocument(kwordDocument)
-    , m_requestedUpdateTextLayout(false)
     , m_rootAreaProvider(new KWRootAreaProvider(this))
 {
     Q_ASSERT(m_kwordDocument);
@@ -185,166 +181,6 @@ void KWTextFrameSet::setupFrame(KWFrame *frame)
 #endif
 }
 
-void KWTextFrameSet::updateTextLayout()
-{
-    kDebug(32001);
-#if 0
-    if (! m_allowLayoutRequests) {
-        m_requestedUpdateTextLayout = true;
-        return;
-    }
-    KWTextDocumentLayout *lay = \
                dynamic_cast<KWTextDocumentLayout*>(m_document->documentLayout());
-    if (lay) {
-        // Don't schedule the layout what would wait with the layout till the \
                eventloop kicks
-        // in what sucks performance-wise. So, start the layouting right away.
-        lay->scheduleLayout();
-        //lay->relayout();
-    }
-#else
-    Q_ASSERT(false);
-#endif
-}
-
-void KWTextFrameSet::requestMoreFrames(qreal textHeight)
-{
-#if 0
-    if (frameCount() == 0)
-        return; // there is no way we can get more frames anyway.
-    KWFrame *lastFrame = frames()[frameCount()-1];
-
-    if (KWord::isHeaderFooter(this)) {
-        KWFrame *frame = frames().first();
-        frame->setMinimumFrameHeight(frame->minimumFrameHeight() + textHeight + \
                1E-6);
-        //kDebug(32001)<<"Header/Footer \
frameSet="<<this<<"lastFrame="<<lastFrame<<"allowLayout="<<allowLayout()<<"textHeight="<<textHeight;
                
-        if (allowLayout())
-            emit decorationFrameResize(this);
-    } else if (textHeight == 0.0 || lastFrame->frameBehavior() == \
                KWord::AutoCreateNewFrameBehavior) { // textHeight==0 means a \
                new-page-request
-        //kDebug(32001)<<"AutoCreateNewFrameBehavior \
frameSet="<<this<<"lastFrame="<<lastFrame<<"ReconnectNewFrame="<<(lastFrame->newFrameBehavior() \
                == KWord::ReconnectNewFrame)<<"textHeight="<<textHeight;
-        if (lastFrame->newFrameBehavior() == KWord::ReconnectNewFrame)
-            emit moreFramesNeeded(this);
-    } else if (lastFrame->frameBehavior() == KWord::AutoExtendFrameBehavior
-            && lastFrame->canAutoGrow() && qAbs(textHeight) > 2) {
-        // enlarge last shape
-        KoShape *shape = lastFrame->shape();
-        if (shape->isGeometryProtected()) { // don't alter a locked shape.
-            requestMoreFrames(0);
-            return;
-        }
-
-        QSizeF size = shape->size();
-        QPointF orig = shape->absolutePosition(KoFlake::TopLeftCorner);
-        shape->setSize(QSizeF(size.width(), size.height() + textHeight + 1E-6));
-        shape->setAbsolutePosition(orig, KoFlake::TopLeftCorner);
-        shape->update(QRectF(0.0, size.height(), size.width(), textHeight + 1E-6));
-        lastFrame->allowToGrow();
-        
-        //kDebug(32001)<<"AutoExtendFrameBehavior \
frameSet="<<this<<"lastFrame="<<lastFrame<<"size="<<size<<"orig="<<orig<<"textHeight="<<textHeight;;
                
-    }
-#else
-    Q_ASSERT(false);
-#endif
-}
-
-void KWTextFrameSet::spaceLeft(qreal excessHeight)
-{
-#if 0
-    Q_ASSERT(excessHeight >= 0);
-    if (m_frames.count() == 0)
-        return;
-    if (KWord::isHeaderFooter(this)) {
-        KWFrame *frame = frames().first();
-        kDebug(32001) <<"KWTextFrameSet::spaceLeft" << frame->minimumFrameHeight() \
                << excessHeight;
-        frame->setMinimumFrameHeight(frame->minimumFrameHeight() - excessHeight);
-        emit  decorationFrameResize(this);
-        return;
-    }
-    //kDebug(32001) <<"KWTextFrameSet::spaceLeft" << excessHeight;
-    QList<KWFrame*>::Iterator iter = --m_frames.end();
-    do {
-        KWFrame *tf = *iter;
-        if (tf) {
-            if (tf && tf->frameBehavior() == KWord::AutoExtendFrameBehavior) {
-                tf->autoShrink(tf->shape()->size().height() - excessHeight);
-                tf->allowToGrow();
-            }
-            return;
-        }
-        --iter;
-    } while (iter != m_frames.begin());
-#else
-    Q_ASSERT(false);
-#endif
-}
-
-void KWTextFrameSet::framesEmpty(int emptyFrames)
-{
-#if 0
-    //kDebug(32001) <<"KWTextFrameSet::framesEmpty" << emptyFrames;
-    if (m_pageManager == 0) // be lazy; just refuse to delete frames if we don't \
                know which are on which page
-        return;
-    if (KWord::isHeaderFooter(this)) // then we are deleted by the frameManager
-        return;
-    QList<KWFrame*> myFrames = m_frames; // make a copy so we can do a removeFrame \
                without worries
-    QList<KWFrame*>::Iterator deleteFrom = myFrames.end();
-    QList<KWFrame*>::Iterator iter = --myFrames.end();
-    KWPage page;
-    bool deleteSome = false;
-    do {
-        if ((*iter)->isCopy())
-            continue;
-        KWPage pageForFrame = m_pageManager->page((*iter)->shape());
-        if (!page.isValid()) { // first loop
-            page = pageForFrame;
-        } else if (page != pageForFrame) { // all frames on the page (of this FS) \
                are empty.
-            deleteFrom = iter;
-            ++deleteFrom;
-            page = pageForFrame;
-            deleteSome = true;
-        }
-        if (--emptyFrames < 0)
-            break;
-    } while (iter-- != myFrames.begin());
-
-    if (!deleteSome)
-        return;
-
-    iter = --myFrames.end();
-    do { // remove all frames from end till last empty page
-        if (*iter == *m_frames.begin())
-            break;
-        removeFrame(*iter);
-        delete(*iter)->shape();
-    } while (iter-- != deleteFrom);
-#else
-    Q_ASSERT(false);
-#endif
-}
-
-void KWTextFrameSet::setAllowLayout(bool allow)
-{
-    kDebug(32001) << "allow=" << allow << "m_allowLayoutRequests=" << \
                m_allowLayoutRequests;
-    if (allow == m_allowLayoutRequests)
-        return;
-    m_allowLayoutRequests = allow;
-    if (m_allowLayoutRequests && m_requestedUpdateTextLayout) {
-        m_requestedUpdateTextLayout = false;
-#if 0
-        KWTextDocumentLayout *lay = \
                dynamic_cast<KWTextDocumentLayout*>(m_document->documentLayout());
-        if (lay)
-            lay->scheduleLayout();
-#else
-    #ifdef __GNUC__
-        #warning FIXME: port to textlayout-rework
-    #endif
-#endif
-    }
-}
-
-bool KWTextFrameSet::allowLayout() const
-{
-    return m_allowLayoutRequests;
-}
-
 void KWTextFrameSet::setPageStyle(const KWPageStyle &style)
 {
     kDebug () << "frameSet=" << this << "frameSetType=" << \
KWord::frameSetTypeName(textFrameSetType()) << "pageStyleName=" << style.name() << \
"pageStyleIsValid=" << style.isValid(); @@ -363,29 +199,10 @@ const KWPageStyle& \
KWTextFrameSet::pageStyle() const  return m_pageStyle;
 }
 
-void KWTextFrameSet::sortFrames()
-{
 #if 0
-     // optimize to not sort more than needed
-    if (!m_frames.isEmpty() && (m_frameOrderDirty || m_textFrameSetType == \
                KWord::OtherTextFrameSet)) {
-        KWFrame *first = m_frames.first();
-        qSort(m_frames.begin(), m_frames.end(), sortTextFrames);
-        if (m_frames[0] != first) { // that means it needs to be re-layouted
-            KoTextShapeData *tsd = \
                qobject_cast<KoTextShapeData*>(m_frames[0]->shape()->userData());
-            if (tsd)
-                tsd->foul();
-        }
-    }
-    m_frameOrderDirty = false;
-#else
-    Q_ASSERT(false);
-#endif
-}
-
 // static   returns true if frame1 comes before frame2
 bool KWTextFrameSet::sortTextFrames(const KWFrame *f1, const KWFrame *f2)
 {
-#if 0
     if (!f1 && f2) // copy always come after textframe
         return false;
     if (f1 && !f2) // copy always come after textframe
@@ -455,8 +272,6 @@ bool KWTextFrameSet::sortTextFrames(const KWFrame *f1, const \
KWFrame *f2)  if (frame1->shape()->boundingRect().top() > boundsF2.top())
         return false;
 #endif
-#else
-    Q_ASSERT(false);
-#endif
     return true;
 }
+#endif
diff --git a/words/part/frames/KWTextFrameSet.h b/words/part/frames/KWTextFrameSet.h
index a92bff8..bd462ac 100644
--- a/words/part/frames/KWTextFrameSet.h
+++ b/words/part/frames/KWTextFrameSet.h
@@ -38,7 +38,6 @@ class KWTextFrame;
  */
 class KWORD_EXPORT KWTextFrameSet : public KWFrameSet
 {
-    Q_OBJECT
 public:
     /**
      * Constructor with a type of text specified
@@ -63,24 +62,6 @@ public:
         return m_rootAreaProvider;
     }
 
-    /**
-     * Sets the flag if this frameset is allowed to automaticall do layout of the \
                textdata.
-     * A text will do layouting of the text when the content changes, but also when \
                frames
-     * are moved.
-     * When lots of changes are made it may be faster to disable layouts for a \
                little while.
-     * @param allow if false; text will no longer be layouted until enabled again.  \
                If true,
-     *  schedule a layout.
-     * @see allowLayout
-     */
-    void setAllowLayout(bool allow);
-
-    /**
-     * Returns if we are allowed to layout the text in this frame.
-     * @return if we are allowed to layout the text in this frame.
-     * @see setAllowLayout()
-     */
-    bool allowLayout() const;
-
     /// return the pageManager for this frameSet
     KWPageManager* pageManager() {
         return m_pageManager;
@@ -93,60 +74,19 @@ public:
     void setPageStyle(const KWPageStyle &style);
     const KWPageStyle& pageStyle() const;
 
-signals:
-#if 0
-    /**
-     * Emitted when the frameset finished layout and found that there is more
-     * text than will fit in the frameset.
-     * Signal will be emitted only when the policy of the last frame allows it.
-     */
-    void moreFramesNeeded(KWTextFrameSet *fs);
-    /// emitted when a decorating frame, like a header or a footer, wants to be \
                resized.
-    void decorationFrameResize(KWTextFrameSet *fs);
-    /// emitted when all the text is fully layouted
-    void layoutDone();
-#endif
-
 protected:
     friend class TestTextFrameSorting;
     friend class TestTextFrameManagement;
 
     void setupFrame(KWFrame *frame);
-    /**
-     * Call this to make it known that the text we want to layout needs more space \
                to be shown fully.
-     * This will resize the frame, or emit a moreFramesNeeded signal based on the \
                settings.
-     * @param textHeight the height of the text we could not fit.
-     */
-    void requestMoreFrames(qreal textHeight);
-
-    /// called by the KWTextDocumentLayout to mark that the frame is bigger then the \
                text in it.
-    void spaceLeft(qreal excessHeight);
-    /// called by the KWTextDocumentLayout to mark that there are frames not in use \
                because the text is too short.
-    void framesEmpty(int emptyFrames);
-    /**
-     * Schedules a followup schedule run.
-     * This method is used to 'chunk' layout runs. It will followup where the last \
                stopped.
-     * Calling this multiple times will make sure the relayout() is only called \
                ones.
-     */
-    void scheduleLayout();
-
-    void sortFrames();
-
-private slots:
-    void updateTextLayout();
 
 private:
     QTextDocument *m_document;
-    bool m_layoutTriggered, m_allowLayoutRequests, m_frameOrderDirty;
     KWord::TextFrameSetType m_textFrameSetType;
     KWPageManager *m_pageManager;
     KWDocument *m_kwordDocument;
     KWPageStyle m_pageStyle; // the page Style this frameset is associated with.
-    bool m_requestedUpdateTextLayout;
     KWRootAreaProvider *m_rootAreaProvider;
-
-    // return true if frame1 is sorted before frame2
-    static bool sortTextFrames(const KWFrame *frame1, const KWFrame *frame2);
 };
 
 #endif


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic