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

List:       kde-commits
Subject:    branches/work/koffice-change-tracking/plugins/textshape
From:       Ganesh Paramasivam <ganesh () crystalfab ! com>
Date:       2010-11-16 8:39:08
Message-ID: 20101116083908.E30CDAC8A0 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1197598 by ganeshp:

Visualization of changes in tables

 M  +28 -0     TableLayout.cpp  


--- branches/work/koffice-change-tracking/plugins/textshape/TableLayout.cpp \
#1197597:1197598 @@ -30,6 +30,10 @@
 #include <KoTextDocumentLayout.h>
 #include <KoShape.h>
 
+#include <KoChangeTracker.h>
+#include <KoChangeTrackerElement.h>
+#include <KoGenChange.h>
+
 #include <QTextDocument>
 #include <QTextTable>
 #include <QTextLine>
@@ -349,6 +353,30 @@
         }
     }
 
+    // Draw a background to indicate a change-type
+    KoChangeTracker *changeTracker = \
KoTextDocument(m_table->document()).changeTracker(); +    if (changeTracker && \
changeTracker->displayChanges()) { +        for (int row = 0; row < m_table->rows(); \
++row) { +            for (int column = 0; column < m_table->columns(); ++column) {
+                QTextTableCell tableCell = m_table->cellAt(row, column);
+                KoChangeTrackerElement *changeElement = \
changeTracker->elementById(tableCell.format().property(KoCharacterStyle::ChangeTrackerId).toInt());
 +                if (changeElement && changeElement->isEnabled()) {
+                    switch(changeElement->getChangeType()) {
+                        case KoGenChange::InsertChange:
+                            painter->fillRect(cellBoundingRect(tableCell), \
changeTracker->getInsertionBgColor()); +                        break;
+                        case KoGenChange::FormatChange:
+                            painter->fillRect(cellBoundingRect(tableCell), \
changeTracker->getFormatChangeBgColor()); +                        break;
+                        case KoGenChange::DeleteChange:
+                            painter->fillRect(cellBoundingRect(tableCell), \
changeTracker->getDeletionBgColor()); +                        break;
+                    }
+                }
+            }
+        }   
+    }
+
     painter->restore();
 }
 


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

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