From 6d1fe0d5bcc85edff4975b4f5a85c2bdda0d5904 Mon Sep 17 00:00:00 2001 From: Progfou Date: Wed, 3 Feb 2016 00:36:19 -0500 Subject: [PATCH] auf-libreoffice-extension 1404.2 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit * calc2moin : gestion complète des cellules fusionnées (horiz+vert) --- .gitignore | 7 +++++++ auf-libreoffice-extension/debian/changelog | 7 +++++++ auf-libreoffice-extension/extension/calc2moin.py | 9 +++++++++ auf-libreoffice-extension/extension/description.xml | 2 +- 4 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..c95bebf --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +/*/.tmp* +/*_*.deb +/*_*.dsc +/*_*.tar.gz +/*_*.build +/*_*.upload +/*_*.changes diff --git a/auf-libreoffice-extension/debian/changelog b/auf-libreoffice-extension/debian/changelog index e88243d..9ff995b 100644 --- a/auf-libreoffice-extension/debian/changelog +++ b/auf-libreoffice-extension/debian/changelog @@ -1,3 +1,10 @@ +auf-libreoffice-extension (1404.2) trusty; urgency=medium + + * calc2moin : + - gestion complète des cellules fusionnées (horizontal+vertical) + + -- Progfou Wed, 03 Feb 2016 00:29:54 -0500 + auf-libreoffice-extension (1404.1) trusty; urgency=medium * adaptations pour Trusty qui impose Python 3 diff --git a/auf-libreoffice-extension/extension/calc2moin.py b/auf-libreoffice-extension/extension/calc2moin.py index 11921a7..f3944e7 100644 --- a/auf-libreoffice-extension/extension/calc2moin.py +++ b/auf-libreoffice-extension/extension/calc2moin.py @@ -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 diff --git a/auf-libreoffice-extension/extension/description.xml b/auf-libreoffice-extension/extension/description.xml index 88be025..1b1a370 100644 --- a/auf-libreoffice-extension/extension/description.xml +++ b/auf-libreoffice-extension/extension/description.xml @@ -2,7 +2,7 @@ - + -- 1.7.10.4