[gnumeric] Fix chart name roundtrip through ODF. [#477]
- From: Andreas J. Guelzow <guelzow src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnumeric] Fix chart name roundtrip through ODF. [#477]
- Date: Mon, 27 Apr 2020 06:14:59 +0000 (UTC)
commit d36774689904bfa2798730195ec8f0cb0a8ea73b
Author: Andreas J. Guelzow <aguelzow pyrshep ca>
Date: Mon Apr 27 00:14:20 2020 -0600
Fix chart name roundtrip through ODF. [#477]
2020-04-27 Andreas J. Guelzow <aguelzow pyrshep ca>
* openoffice-read.c (od_draw_frame_end_full): assign name to sheet object
* openoffice-write.c (odf_write_frame_size): write sheet object name
NEWS | 3 +++
plugins/openoffice/ChangeLog | 5 +++++
plugins/openoffice/openoffice-read.c | 2 ++
plugins/openoffice/openoffice-write.c | 7 +++++++
4 files changed, 17 insertions(+)
---
diff --git a/NEWS b/NEWS
index c9ecb7631..67265bd8c 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,8 @@
Gnumeric 1.12.47
+Andreas:
+ * Fix chart name roundtrip through ODF. [#477]
+
Jean:
* Fix crash when the embedded spreadsheet is invalid. [#481]
diff --git a/plugins/openoffice/ChangeLog b/plugins/openoffice/ChangeLog
index 2902cc462..d548e121b 100644
--- a/plugins/openoffice/ChangeLog
+++ b/plugins/openoffice/ChangeLog
@@ -1,3 +1,8 @@
+2020-04-27 Andreas J. Guelzow <aguelzow pyrshep ca>
+
+ * openoffice-read.c (od_draw_frame_end_full): assign name to sheet object
+ * openoffice-write.c (odf_write_frame_size): write sheet object name
+
2019-11-06 Morten Welinder <terra gnome org>
* Release 1.12.46
diff --git a/plugins/openoffice/openoffice-read.c b/plugins/openoffice/openoffice-read.c
index 841f744ce..3b7d82c77 100644
--- a/plugins/openoffice/openoffice-read.c
+++ b/plugins/openoffice/openoffice-read.c
@@ -8247,6 +8247,8 @@ od_draw_frame_end_full (GsfXMLIn *xin, gboolean absolute_distance, char const *c
ob_off->frame_offset[2] = state->chart.frame_offset[2];
ob_off->frame_offset[3] = state->chart.frame_offset[3];
state->chart_list = g_slist_prepend ( state->chart_list, ob_off);
+ if (state->chart.name)
+ sheet_object_set_name (state->chart.so, state->chart.name);
state->chart.so = NULL;
}
diff --git a/plugins/openoffice/openoffice-write.c b/plugins/openoffice/openoffice-write.c
index 15feb8426..84b794c76 100644
--- a/plugins/openoffice/openoffice-write.c
+++ b/plugins/openoffice/openoffice-write.c
@@ -2854,6 +2854,7 @@ odf_write_frame_size (GnmOOExport *state, SheetObject *so)
GnmParsePos pp;
char *formula;
Sheet *sheet;
+ char const *name = NULL;
sheet_object_anchor_to_offset_pts (anchor, state->sheet, res_pts);
@@ -2892,6 +2893,12 @@ odf_write_frame_size (GnmOOExport *state, SheetObject *so)
break;
}
+ g_object_get (G_OBJECT (so),
+ "name", &name,
+ NULL);
+ if (name)
+ gsf_xml_out_add_cstr_unchecked (state->xml, DRAW "name", name);
+
sheet = sheet_object_get_sheet (so);
if (sheet) {
int z;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]