Spreadsheetreader: new function create_cell_ref and rename existing function with...
authorJohn Darrington <john@darrington.wattle.id.au>
Tue, 7 May 2013 13:52:44 +0000 (15:52 +0200)
committerJohn Darrington <john@darrington.wattle.id.au>
Thu, 9 May 2013 07:06:42 +0000 (09:06 +0200)
Rename convert_cell_ref to convert_cell_range which is a more accurate
description of the function, and add a new function, with the original
name of the function we've just renamed.

The new function (create_cell_ref) does just that.

src/data/gnumeric-reader.c
src/data/ods-reader.c
src/data/spreadsheet-reader.c
src/data/spreadsheet-reader.h

index 27ba9d4cd21811c76bb0c2340d269dea018063bd..e85a4cf92d07c4a01a5277efd9842f528b9d7c5d 100644 (file)
@@ -203,7 +203,7 @@ gnumeric_get_sheet_range (struct spreadsheet *s, int n)
       process_node (gr, &gr->msd);
     }
 
-  return create_cell_ref (
+  return create_cell_range (
                          gr->sheets[n].start_col,
                          gr->sheets[n].start_row,
                          gr->sheets[n].stop_col,
index 39e82e5caea953dbe35e491e70098513a7e2494b..553babd19f2e587c28125686aa239c7d684f0da8 100644 (file)
@@ -241,7 +241,7 @@ ods_get_sheet_range (struct spreadsheet *s, int n)
       process_node (r, or);
     }
 
-  return create_cell_ref (
+  return create_cell_range (
                          r->sheets[n].start_col,
                          r->sheets[n].start_row,
                          r->sheets[n].stop_col,
index fc1dfa8dd5dde8d4b980ef784bf2ebc2f507f023..02e5c2d3c04b18e3cc38dcce5359ac9fbbada59d 100644 (file)
@@ -169,25 +169,34 @@ int_to_ps26 (int i)
   return ret;
 }
 
+
 char *
-create_cell_ref (int col0, int row0, int coli, int rowi)
+create_cell_ref (int col0, int row0)
 {
   char *cs0 ;
-  char *csi ;
   char *s ;
 
   if ( col0 < 0) return NULL;
-  if ( rowi < 0) return NULL;
-  if ( coli < 0) return NULL;
   if ( row0 < 0) return NULL;
 
   cs0 =  int_to_ps26 (col0);
-  csi =  int_to_ps26 (coli);
-  s =  c_xasprintf ("%s%d:%s%d",
-                        cs0, row0 + 1,
-                        csi, rowi + 1);
+  s =  c_xasprintf ("%s%d", cs0, row0 + 1);
+
   free (cs0);
-  free (csi);
+
+  return s;
+}
+
+char *
+create_cell_range (int col0, int row0, int coli, int rowi)
+{
+  char *s0 = create_cell_ref (col0, row0);
+  char *si = create_cell_ref (coli, rowi);
+
+  char *s =  c_xasprintf ("%s:%s", s0, si);
+
+  free (s0);
+  free (si);
 
   return s;
 }
index 9a46b35e9eb6a255e78403e9cfa242f6c133a754..e9656ab12d2751818abf4abf0ae2d483106b210d 100644 (file)
@@ -77,7 +77,8 @@ const char * spreadsheet_get_sheet_name (struct spreadsheet *s, int n);
 char * spreadsheet_get_sheet_range (struct spreadsheet *s, int n);
 
 
-char *create_cell_ref (int col0, int row0, int coli, int rowi);
+char * create_cell_ref (int col0, int row0);
+char *create_cell_range (int col0, int row0, int coli, int rowi);
 
 void spreadsheet_destroy (struct spreadsheet *);