John Darrington [Sat, 10 Jan 2009 00:11:53 +0000 (09:11 +0900)]
Merge commit 'origin/master'; commit 'savannah/master'
John Darrington [Fri, 9 Jan 2009 23:49:32 +0000 (08:49 +0900)]
Move .ui files to build directory
The .ui files had been inadvertently put in the src directory.
This change moves them to the build directory, since they're
(currently) generated from the .glade files.
John Darrington [Fri, 9 Jan 2009 21:43:34 +0000 (06:43 +0900)]
Replaced call to g_strcmp0 with strcmp, since the former
is available only in glib 2.16+.
Thanks to unknown-1 for reporting this.
John Darrington [Fri, 9 Jan 2009 08:37:10 +0000 (17:37 +0900)]
Link the perl module against the shared library instead of the static one
Ben Pfaff [Fri, 9 Jan 2009 05:36:23 +0000 (21:36 -0800)]
Fix assertion in case_copy().
This is an apparent cut-and-paste error.
John Darrington [Thu, 8 Jan 2009 08:23:53 +0000 (17:23 +0900)]
Ensure that perl module tests work before pspp has been installed
John Darrington [Thu, 8 Jan 2009 03:08:44 +0000 (12:08 +0900)]
Added method to get the custom variable attributes
John Darrington [Wed, 7 Jan 2009 22:57:12 +0000 (07:57 +0900)]
Update module to reflect new case API
John Darrington [Wed, 7 Jan 2009 22:20:47 +0000 (07:20 +0900)]
Merge commit 'savannah/master'
John Darrington [Wed, 7 Jan 2009 22:16:58 +0000 (07:16 +0900)]
Merge branch 'master' of /home/john/Development/pspp-bare
Ben Pfaff [Wed, 7 Jan 2009 07:17:32 +0000 (23:17 -0800)]
Make cases simpler, faster, and easier to understand.
Cases (struct ccase) is reference-counted to avoid copying more
data than necessary. But the existing implementation that uses
separate structures for references to cases (struct ccase) and
the cases themselves (struct case_data) has a number of issues:
- The semantics of struct ccase are tricky to remember; one
has to remember to treat struct ccase as essentially a
pointer type. I get confused sometimes myself.
(One of the symptoms of this was the existence of
the case_nullify and case_is_null functions, which are
exactly analogous to setting a pointer to null and comparing
one against null, respectively.)
- Every reference to data in a case involves two levels of
indirection, which is one more than actually necessary.
- The implementation is somewhat complicated.
This commit simplifies things, by dropping a level of indirection.
Now, a case is just a pointer to a struct ccase, which contains
the actual data. Reference counting is still present, but it is
simplified. The only thing that must be remembered is that, before
modifying a case that may be shared, it must be passed through
case_unshare() to make a new unshared copy if necessary.
John Darrington [Wed, 7 Jan 2009 01:16:03 +0000 (10:16 +0900)]
Ensure that dict survives sysfile
Make sure that the dict of a sysfile survives for the
lifetime of that sysfile. Thanks to Rob Messer for
reporting this bug.
John Darrington [Sun, 4 Jan 2009 07:39:49 +0000 (16:39 +0900)]
Remove inappropriate include directives
John Darrington [Sun, 4 Jan 2009 07:04:38 +0000 (16:04 +0900)]
Remove invalid property
John Darrington [Sun, 4 Jan 2009 07:00:04 +0000 (16:00 +0900)]
Fix pointer types as appropriate
John Darrington [Sun, 4 Jan 2009 06:48:59 +0000 (15:48 +0900)]
Convert psppire.glade to psppire.ui
John Darrington [Sun, 4 Jan 2009 06:03:02 +0000 (15:03 +0900)]
Converted T-Test dialogs to GtkBuilder
John Darrington [Sun, 4 Jan 2009 05:32:36 +0000 (14:32 +0900)]
Add *.ui to .gitignore
John Darrington [Sun, 4 Jan 2009 05:31:45 +0000 (14:31 +0900)]
Convert Regression dialog to GtkBuilder
John Darrington [Sun, 4 Jan 2009 05:26:11 +0000 (14:26 +0900)]
Convert MessageDialog to GtkBuilder
John Darrington [Sun, 4 Jan 2009 05:19:07 +0000 (14:19 +0900)]
Convert Crosstabs dialog to GtkBuilder
John Darrington [Sun, 4 Jan 2009 05:09:30 +0000 (14:09 +0900)]
Convert Examine dialog to GtkBuilder
John Darrington [Sun, 4 Jan 2009 04:59:50 +0000 (13:59 +0900)]
Convert Frequencies dialog to GtkBuilder
John Darrington [Sat, 3 Jan 2009 12:45:47 +0000 (21:45 +0900)]
Migrated rank and recode dialogs to GtkBuilder
John Darrington [Sat, 3 Jan 2009 12:20:28 +0000 (21:20 +0900)]
Added infrastructure for GtkBuilder and change oneway-dialog to use it.
John Darrington [Thu, 25 Dec 2008 03:16:35 +0000 (12:16 +0900)]
New subroutine PSPP::Dict::get_var_by_name
John Darrington [Thu, 25 Dec 2008 02:53:27 +0000 (11:53 +0900)]
Merge branch 'master' of /home/john/Development/pspp-bare
John Darrington [Thu, 25 Dec 2008 02:52:57 +0000 (11:52 +0900)]
Automatically detect src dir from build dir
John Darrington [Thu, 25 Dec 2008 00:27:25 +0000 (09:27 +0900)]
Update abstract
John Darrington [Wed, 24 Dec 2008 08:00:54 +0000 (17:00 +0900)]
correct documentation
John Darrington [Wed, 24 Dec 2008 07:57:39 +0000 (16:57 +0900)]
Update documentation of perl module
John Darrington [Wed, 24 Dec 2008 06:34:59 +0000 (15:34 +0900)]
Ensure that module version agrees with pspp version
John Darrington [Wed, 24 Dec 2008 03:00:14 +0000 (12:00 +0900)]
Added functions to enable reading data files from perl
Extended the perl module so that existing data files
can be read using the perl bindings.
John Darrington [Mon, 22 Dec 2008 09:17:40 +0000 (18:17 +0900)]
Read version header from source
John Darrington [Mon, 22 Dec 2008 06:43:57 +0000 (15:43 +0900)]
Change the perl module's distname to be more distinct from that of the main distribution
John Darrington [Sun, 21 Dec 2008 07:53:09 +0000 (16:53 +0900)]
Integrated the perl module into the pspp build system.
John Darrington [Sat, 20 Dec 2008 06:53:50 +0000 (15:53 +0900)]
Add perl parseable line to src/libpspp/version.c
Cause a line of the form $VERSION='x.y.z' to be added
to the file src/libpspp/version.c so that recent versions
of Perl's MakeMaker recognises it.
John Darrington [Mon, 15 Dec 2008 06:06:07 +0000 (15:06 +0900)]
Rename lib/gtksheet to lib/gtk-contrib
John Darrington [Mon, 15 Dec 2008 05:30:41 +0000 (14:30 +0900)]
Created new directory src/ui/gui/sheet
Moved files from lib/gtksheet to src/ui/gui/sheet except those whose
copyright is not FSF owned.
John Darrington [Sun, 14 Dec 2008 22:21:38 +0000 (07:21 +0900)]
Adjusted packing properties as appropriatate
John Darrington [Sun, 14 Dec 2008 22:03:05 +0000 (07:03 +0900)]
Remove expand property from inappropriate widget
John Darrington [Sun, 14 Dec 2008 06:58:03 +0000 (15:58 +0900)]
Readd lost files
John Darrington [Sun, 14 Dec 2008 06:45:58 +0000 (15:45 +0900)]
Moved marshallers to src/ui/gui
John Darrington [Sun, 14 Dec 2008 04:56:01 +0000 (13:56 +0900)]
Rename GtkSheet to PsppireSheet
John Darrington [Sun, 14 Dec 2008 03:20:25 +0000 (12:20 +0900)]
Rename gsheetmodel to psppiresheetmodel
John Darrington [Sun, 14 Dec 2008 02:08:37 +0000 (11:08 +0900)]
Merge commit 'HEAD'; branch 'rewrite-sheet'
John Darrington [Sat, 13 Dec 2008 07:34:34 +0000 (16:34 +0900)]
Fix warning
John Darrington [Sat, 13 Dec 2008 03:46:35 +0000 (12:46 +0900)]
Re-enabled display of global sheet button
John Darrington [Fri, 12 Dec 2008 13:13:20 +0000 (22:13 +0900)]
More runtime warnings fixed
John Darrington [Fri, 12 Dec 2008 11:34:41 +0000 (20:34 +0900)]
Fix some runtime warnings
John Darrington [Fri, 12 Dec 2008 10:26:08 +0000 (19:26 +0900)]
Don't set row/column to zero when selecting
John Darrington [Fri, 12 Dec 2008 07:34:44 +0000 (16:34 +0900)]
Fix compiler warning
John Darrington [Fri, 12 Dec 2008 07:24:57 +0000 (16:24 +0900)]
Fixed bug which manifested itself in the text import dialog
John Darrington [Thu, 11 Dec 2008 09:14:05 +0000 (18:14 +0900)]
Redraw cells when a row/column is resize
John Darrington [Wed, 10 Dec 2008 11:58:05 +0000 (20:58 +0900)]
Prevent updates to the model from feeding back to the current sheet
John Darrington [Wed, 10 Dec 2008 10:28:44 +0000 (19:28 +0900)]
Fix problem where entry strings got mangled
John Darrington [Wed, 10 Dec 2008 08:36:06 +0000 (17:36 +0900)]
Fix some warnings
John Darrington [Wed, 10 Dec 2008 05:33:10 +0000 (14:33 +0900)]
Improve reliability of active cell border rendering
John Darrington [Wed, 10 Dec 2008 02:05:29 +0000 (11:05 +0900)]
Fixed a problem redrawing the active cell.
Disabled double buffering on the sheet body since this
seemed to interfere with things.
John Darrington [Wed, 10 Dec 2008 01:12:04 +0000 (10:12 +0900)]
Simplify expose callback
John Darrington [Wed, 10 Dec 2008 00:32:52 +0000 (09:32 +0900)]
Merge commit 'HEAD'; branch 'master' into rewrite-sheet
John Darrington [Wed, 10 Dec 2008 00:30:15 +0000 (09:30 +0900)]
Fix up include path for generated source file
John Darrington [Tue, 9 Dec 2008 05:30:55 +0000 (14:30 +0900)]
Added a chapter to the developers' manual about i18n.
John Darrington [Tue, 9 Dec 2008 01:33:09 +0000 (10:33 +0900)]
Removed that rather kludgy idle callback
John Darrington [Tue, 9 Dec 2008 01:20:48 +0000 (10:20 +0900)]
Fix bug resizing rows/columns
John Darrington [Mon, 8 Dec 2008 11:26:56 +0000 (20:26 +0900)]
Don't crash when resizing columns with no associated variable
John Darrington [Mon, 8 Dec 2008 11:23:06 +0000 (20:23 +0900)]
Draw the boundary line when resizing rows/columns
John Darrington [Mon, 8 Dec 2008 09:58:05 +0000 (18:58 +0900)]
Prevent widths less than 1
John Darrington [Sun, 7 Dec 2008 13:08:41 +0000 (22:08 +0900)]
Free the elements from the pool
John Darrington [Sun, 7 Dec 2008 11:43:55 +0000 (20:43 +0900)]
Make the axes members of the data editor object
John Darrington [Sun, 7 Dec 2008 05:50:14 +0000 (14:50 +0900)]
Written a proper implementation of psppire_axis_impl_delete
John Darrington [Sun, 7 Dec 2008 02:31:05 +0000 (11:31 +0900)]
Trap some bad usage
John Darrington [Sun, 7 Dec 2008 02:14:16 +0000 (11:14 +0900)]
Set variable display width when datasheet's columns are resized.
John Darrington [Sun, 7 Dec 2008 00:12:32 +0000 (09:12 +0900)]
Add a resize method to the axis
Ben Pfaff [Sat, 6 Dec 2008 22:28:10 +0000 (14:28 -0800)]
Remove unused match-files.c.
This has been supplanted by combine-files.c, but I forgot to delete
it when I added that file.
Thanks to John Darrington for pointing out the problem.
John Darrington [Sat, 6 Dec 2008 07:13:20 +0000 (16:13 +0900)]
Improved robustness of axis implementation
John Darrington [Sat, 6 Dec 2008 03:42:58 +0000 (12:42 +0900)]
Make the axis implementation more tolerant of boundary conditions
John Darrington [Sat, 6 Dec 2008 03:21:57 +0000 (12:21 +0900)]
Canonicalise identifier names
John Darrington [Sat, 6 Dec 2008 02:23:31 +0000 (11:23 +0900)]
Made the datasheets share axes
John Darrington [Sat, 6 Dec 2008 02:05:38 +0000 (11:05 +0900)]
(re)enabled dragging of row boundaries
John Darrington [Sat, 6 Dec 2008 00:07:42 +0000 (09:07 +0900)]
Replaced implementation of psppire-axis.
Deleted psppire-axis-hetero.* and psppire-axis-uniform.* and
replaced with psppire-axis-impl.[ch] which combines the benefits
of both.
John Darrington [Thu, 4 Dec 2008 12:49:50 +0000 (21:49 +0900)]
Improve rendering of active cell border
John Darrington [Thu, 4 Dec 2008 12:30:02 +0000 (21:30 +0900)]
Improve reliability of active cell border display
John Darrington [Thu, 4 Dec 2008 02:38:08 +0000 (11:38 +0900)]
Allow variables to be entered beyond the end of sheet.
Several changes to fix the problem where variables beyond
the vertical size of the var sheet couldn't be added.
1. Undo the effect of commit
8c9fae384585163197685e684e62e49a6b922f0c
since it seems to cause problems and need to be rethought.
2. On the traverse callback, don't clamp the range of the requested
destination cell. Clamp it only after the signal returns.
3. Add one more row than there are variables.
John Darrington [Thu, 4 Dec 2008 00:21:55 +0000 (09:21 +0900)]
Remove {rows,columns}_resizeable function
John Darrington [Thu, 4 Dec 2008 00:14:35 +0000 (09:14 +0900)]
Merge branch 'master' into rewrite-sheet
Conflicts:
src/ui/gui/psppire-case-file.c
src/ui/gui/psppire-case-file.h
John Darrington [Wed, 3 Dec 2008 23:46:36 +0000 (08:46 +0900)]
Use value_compare_3way instead of compare_values_short in find dialog
John Darrington [Wed, 3 Dec 2008 23:31:22 +0000 (08:31 +0900)]
Remove unused sheetmodel function
Ben Pfaff [Tue, 18 Nov 2008 05:36:41 +0000 (21:36 -0800)]
Implement ADD FILES and UPDATE.
Ben Pfaff [Sun, 30 Nov 2008 23:23:20 +0000 (15:23 -0800)]
Replace case_ordering with subcase.
The case_ordering data structure was useful for comparing cases,
but that is all that it did. In fact, the same data structure
can be used, at least, for extracting data from cases into arrays
of values, stuffing values back into cases, and for more general
comparisons than case_ordering anticipated.
This commit adds those abilities to case_ordering. It also renames
it to "subcase", because it is useful for more than just sorting
cases, which is all that case_ordering was designed for.
This commit also changes the allocation pattern for subcase from
having the implementation allocate all of the memory, to having
the subcase client allocate "struct subcase". This saves a
memory allocation without making life harder for anyone.
- Naming: the "case_ordering" name implied that it was
only useful for ordering (comparing cases).
- Interface: the interface
Ben Pfaff [Sun, 12 Oct 2008 22:04:09 +0000 (15:04 -0700)]
Break get.c up into multiple files in a logical fashion.
get.c implemented GET, IMPORT, SAVE, XSAVE, EXPORT, XEXPORT,
and MATCH FILES, which seems like too much for one file.
Ben Pfaff [Wed, 29 Oct 2008 13:33:56 +0000 (06:33 -0700)]
Allow MATCH FILES before an active file has been defined.
Except when it has the active file as an input, MATCH FILES does
not require an active file, and produces an active file, so it
makes sense to allow it anywhere.
Thanks to John Darrington for pointing out the bug.
Ben Pfaff [Sun, 30 Nov 2008 23:26:43 +0000 (15:26 -0800)]
Rename compare_values, hash_values with "_short" suffix.
The compare_values and hash_values functions do not compare an
entire value. Rather, they compare only the short string prefix
of long string values. I have a feeling that this misnaming was
confusing people (it certainly confused me) so this commit renames
them.
It also adds a new function value_compare_3way() that does what
one what expect such a function to do.
John Darrington [Wed, 3 Dec 2008 01:27:34 +0000 (10:27 +0900)]
Keep adjustment values in their relative positions on resizing sheet
John Darrington [Tue, 2 Dec 2008 23:48:55 +0000 (08:48 +0900)]
Only grab the focus when appropriate
John Darrington [Tue, 2 Dec 2008 11:07:43 +0000 (20:07 +0900)]
Whitespace change
John Darrington [Tue, 2 Dec 2008 10:03:12 +0000 (19:03 +0900)]
Remove extraneous code moving sheet adjustments on updates
John Darrington [Tue, 2 Dec 2008 09:40:30 +0000 (18:40 +0900)]
Add range_changed callbacks as appropriate
John Darrington [Tue, 2 Dec 2008 04:42:06 +0000 (13:42 +0900)]
Update model on inserting/deleting cases
John Darrington [Tue, 2 Dec 2008 04:10:09 +0000 (13:10 +0900)]
Added static qualifier