[gnumeric] ODF import: put all objects without z-index at the top.



commit 0bf91ac7624e1663322925da9f84be50284d16d9
Author: Andreas J. Guelzow <aguelzow pyrshep ca>
Date:   Sat Feb 7 13:09:09 2015 -0700

    ODF import: put all objects without z-index at the top.
    
    2015-02-07  Andreas J. Guelzow <aguelzow pyrshep ca>
    
        * openoffice-read.c (oo_table_end): put all objects without z-index at the top.

 plugins/openoffice/ChangeLog         |    4 ++++
 plugins/openoffice/openoffice-read.c |   11 +++++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)
---
diff --git a/plugins/openoffice/ChangeLog b/plugins/openoffice/ChangeLog
index 815ca71..ccc92b3 100644
--- a/plugins/openoffice/ChangeLog
+++ b/plugins/openoffice/ChangeLog
@@ -1,5 +1,9 @@
 2015-02-07  Andreas J. Guelzow <aguelzow pyrshep ca>
 
+       * openoffice-read.c (oo_table_end): put all objects without z-index at the top.
+
+2015-02-07  Andreas J. Guelzow <aguelzow pyrshep ca>
+
        * openoffice-read.c (oo_plot_assign_dim): add argument to handle
        general expressions. Change all callers.
        (oo_plot_series): handle new gnm:values-cell-range-expression attribute
diff --git a/plugins/openoffice/openoffice-read.c b/plugins/openoffice/openoffice-read.c
index a9340c4..0147c25 100644
--- a/plugins/openoffice/openoffice-read.c
+++ b/plugins/openoffice/openoffice-read.c
@@ -3141,11 +3141,18 @@ oo_table_end (GsfXMLIn *xin, G_GNUC_UNUSED GsfXMLBlob *blob)
 
        for (l = state->chart_list; l != NULL; l = l->next) {
                object_offset_t *ob_off = l->data;
+               if (top_z < ob_off->z_index)
+                       top_z = ob_off->z_index;
+       }
+
+       for (l = state->chart_list; l != NULL; l = l->next) {
+               object_offset_t *ob_off = l->data;
                if (ob_off->z_index < 0) {
                        top_z++;
                        ob_off->z_index = top_z;
-               } else if (top_z < ob_off->z_index)
-                       top_z = ob_off->z_index;
+                       if (state->debug)
+                               g_print ("Object Ordering: Object without z-index encountered.\n");
+               }
        }
 
        state->chart_list = g_slist_sort (state->chart_list,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]