auf-libreoffice-extension 1404.2
authorProgfou <jean-christophe.andre@auf.org>
Wed, 3 Feb 2016 05:36:19 +0000 (00:36 -0500)
committerProgfou <jean-christophe.andre@auf.org>
Wed, 3 Feb 2016 05:36:19 +0000 (00:36 -0500)
 * calc2moin : gestion complète des cellules fusionnées (horiz+vert)

.gitignore [new file with mode: 0644]
auf-libreoffice-extension/debian/changelog
auf-libreoffice-extension/extension/calc2moin.py
auf-libreoffice-extension/extension/description.xml

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..c95bebf
--- /dev/null
@@ -0,0 +1,7 @@
+/*/.tmp*
+/*_*.deb
+/*_*.dsc
+/*_*.tar.gz
+/*_*.build
+/*_*.upload
+/*_*.changes
index e88243d..9ff995b 100644 (file)
@@ -1,3 +1,10 @@
+auf-libreoffice-extension (1404.2) trusty; urgency=medium
+
+  * calc2moin :
+    - gestion complète des cellules fusionnées (horizontal+vertical)
+
+ -- Progfou <jean-christophe.andre@auf.org>  Wed, 03 Feb 2016 00:29:54 -0500
+
 auf-libreoffice-extension (1404.1) trusty; urgency=medium
 
   * adaptations pour Trusty qui impose Python 3
index 11921a7..f3944e7 100644 (file)
@@ -63,11 +63,18 @@ def calc2moin(ctx):
     cursor.gotoEndOfUsedArea(False)
     cursor.gotoStartOfUsedArea(True)
     columns, rows = getRangeSize(sheet, cursor)
+    column_rowspan = {}
     for row in range(rows):
         row_data = list()
         row_has_multiline_cell = False
         column = 0
         while column < columns:
+            # saut des colonnes cachées par un rowspan précédent
+            if column_rowspan.get(column, 0) > 0:
+                column_rowspan[column] -= 1
+                column += 1
+                continue
+            # récupération des infos sur la cellule courante
             cell = cursor.getCellByPosition(column, row)
             cell_type = cell.getType()
             cell_string = cell.getString()
@@ -80,6 +87,8 @@ def calc2moin(ctx):
                 cursor2 = sheet.createCursorByRange(cellRange)
                 cursor2.collapseToMergedArea()
                 cell_colspan, cell_rowspan = getRangeSize(sheet, cursor2)
+                for n in range(0, cell_colspan):
+                    column_rowspan[column + n] = cell_rowspan - 1
                 #open('/tmp/calc2moin.log','a').write('Merged(%d,%d)=[%d,%d]\n' % (column,row,cell_colspan,cell_rowspan))
             else:
                 cell_colspan, cell_rowspan = 1, 1
index 88be025..1b1a370 100644 (file)
@@ -2,7 +2,7 @@
 <description xmlns="http://openoffice.org/extensions/description/2006" xmlns:d="http://openoffice.org/extensions/description/2006" xmlns:xlink="http://www.w3.org/1999/xlink">
 
  <identifier value="org.auf.openoffice.macros" />
- <version value="1404.1" />
+ <version value="1404.2" />
  <platform value="all" />
 
  <dependencies>