- for ( c = 0 ; c < casefile_get_case_cnt(cf->casefile) ; ++c )
- g_signal_emit(cf, signal[CASE_CHANGED], 0, c);
+ for ( c = 0 ; c < datasheet_get_row_cnt (cf->datasheet) ; ++c )
+ g_signal_emit (cf, signals [CASE_CHANGED], 0, c);
+}
+
+
+/* Resize the cases in the casefile, by inserting N_VALUES into every
+ one of them at the position immediately preceeding WHERE.
+*/
+gboolean
+psppire_case_file_insert_values (PsppireCaseFile *cf,
+ gint n_values, gint where)
+{
+ g_return_val_if_fail (cf, FALSE);
+ g_return_val_if_fail (cf->accessible, FALSE);
+
+ if ( n_values == 0 )
+ return FALSE;
+
+ g_assert (n_values > 0);
+
+ if ( ! cf->datasheet )
+ cf->datasheet = datasheet_create (NULL);
+
+ {
+ union value *values = xcalloc (n_values, sizeof *values);
+ datasheet_insert_columns (cf->datasheet, values, n_values, where);
+ free (values);
+ }
+
+ return TRUE;