pspp
11 years agoMerge 'master' into 'psppsheet'. 20121202031952/pspp 20121203032039/pspp 20121204032004/pspp 20121205032030/pspp 20121206032021/pspp 20121207032036/pspp 20121208032040/pspp 20121209032019/pspp 20121210032023/pspp 20121211032038/pspp 20121212032028/pspp 20121213032029/pspp 20121214032036/pspp 20121215032028/pspp 20121216032020/pspp 20121217032038/pspp 20121218031957/pspp 20121219032034/pspp 20121220032031/pspp 20121221032037/pspp 20121222032032/pspp 20121223032002/pspp 20121225032008/pspp 20121226032016/pspp 20121227032003/pspp 20121228032058/pspp 20121229032201/pspp 20121230032128/pspp
Ben Pfaff [Sun, 2 Dec 2012 03:39:07 +0000 (19:39 -0800)]
Merge 'master' into 'psppsheet'.

11 years agoConverted crosstabs-dialog to the new way of doing things 20121202030502/pspp 20121203030504/pspp
John Darrington [Sat, 1 Dec 2012 11:15:56 +0000 (12:15 +0100)]
Converted crosstabs-dialog to the new way of doing things

11 years agomeasure.c: Use c_strtod instead of strtod 20121201030503/pspp
John Darrington [Sat, 1 Dec 2012 06:08:55 +0000 (07:08 +0100)]
measure.c: Use c_strtod instead of strtod

Since the input to these function come from hard coded strings, it is not appropriate
to interpret them in a locale dependent manner.

11 years agodata-out.c: Added assertion to avoid out of bounds memory access
John Darrington [Sat, 1 Dec 2012 06:07:13 +0000 (07:07 +0100)]
data-out.c: Added assertion to avoid out of bounds memory access

This could (has!) happened if the locale is not correctly set

11 years agoSHOW: Add JOURNAL subcommand. 20121127030504/pspp 20121128030504/pspp 20121129030503/pspp 20121130030502/pspp
Ben Pfaff [Tue, 27 Nov 2012 05:15:43 +0000 (21:15 -0800)]
SHOW: Add JOURNAL subcommand.

Bug #35665.
Requested by Harry Thijssen.

11 years agohistogram: Add missing #include.
Ben Pfaff [Tue, 27 Nov 2012 05:15:02 +0000 (21:15 -0800)]
histogram: Add missing #include.

Commit 02b9b37698eb "Disable asserts in histogram code except in
--testing-mode" added a use of settings_get_testing_mode() but didn't
include the proper header.  This fixes the problem.

11 years agoDisable asserts in histogram code except in --testing-mode
John Darrington [Mon, 26 Nov 2012 20:09:08 +0000 (21:09 +0100)]
Disable asserts in histogram code except in --testing-mode

The assertions in histogram.c are algebraically correct,
but due to floating point errors may not actually be true.
This change disables them except when in testing mode.
The tests in charts.at rely upon them being enabled.
Closes bug #36395

11 years agoDESCRIPTIVES: Make Z score calculation honor SPLIT FILE. 20121126030509/pspp
Ben Pfaff [Mon, 26 Nov 2012 07:04:50 +0000 (23:04 -0800)]
DESCRIPTIVES: Make Z score calculation honor SPLIT FILE.

Until now, DESCRIPTIVES has not supported SPLIT FILE in Z score
calculations.  That is, Z scores have been calculated on the basis of a
single group for the entire file, which doesn't make any sense.  This
commit properly implements Z score calculation on a per-split group basis.

Bug #16351.

11 years agotests: Add tests to cover corner cases in DATESUM, DATEDIFF.
Ben Pfaff [Sun, 25 Nov 2012 18:32:05 +0000 (10:32 -0800)]
tests: Add tests to cover corner cases in DATESUM, DATEDIFF.

These corner cases weren't covered by previous tests.

Bug #30708.
Reported by Daniel E WILLIAMS <Daniel.E.Williams@state.or.us>.

11 years agoRemove feature to automatically connect to GDB when debugging is enabled.
Ben Pfaff [Sun, 25 Nov 2012 17:04:54 +0000 (09:04 -0800)]
Remove feature to automatically connect to GDB when debugging is enabled.

This feature caused a few problems in "make check" on some distributions
when debugging was enabled at compile time.  It is probably possible to
find and fix those particular problems, but the feature itself is
little-used, so this commit instead removes it.

Bug #37444.
Reported by Mindaugas.

11 years agofile handle properties: Make encoding member const 20121125030503/pspp
John Darrington [Sun, 25 Nov 2012 10:07:44 +0000 (11:07 +0100)]
file handle properties: Make encoding member const

This member is never modified.  So declare it as const.  This way it
can be initialised from a static string.

11 years agoAggregate Dialog: use global callback
John Darrington [Sat, 24 Nov 2012 20:33:20 +0000 (21:33 +0100)]
Aggregate Dialog: use global callback

11 years agoRuns Dialog: use global callback instead of a private one
John Darrington [Sat, 24 Nov 2012 19:56:20 +0000 (20:56 +0100)]
Runs Dialog: use global callback instead of a private one

11 years agopsppire-data-window: Only allow saving a file with at least one variable.
Ben Pfaff [Sun, 25 Nov 2012 05:41:00 +0000 (21:41 -0800)]
psppire-data-window: Only allow saving a file with at least one variable.

A data file with no variables can't be saved to a file.  Until now, this
wasn't detected until the user had already chosen a file name, and the
message used to report it was confusing: "SAVE is allowed only after the
active file has been defined."  With this commit, the menu item and toolbar
item for save operations is, instead, disabled if the file has no
variables.

Bug #30700.
Reported by eric thivant, via Harry Thijssen, with help from Michel
Boaventura.

11 years agoDATA LIST: Accept freefield format types without widths use minimum width.
Ben Pfaff [Sun, 25 Nov 2012 01:50:05 +0000 (17:50 -0800)]
DATA LIST: Accept freefield format types without widths use minimum width.

A user reported that SPSS accepts syntax such as "DATA LIST FREE/
d (DATETIME)." using a default width for the field with no specified width.
This commit makes PSPP accept this syntax too, although it does not get
the width exactly right (please let me know if you figure out how to do
that).

Bug #30690.
Reported by Andreas Lappe.

11 years agoformat-parser: Improve error message when format specifier lacks width.
Ben Pfaff [Sun, 25 Nov 2012 01:26:38 +0000 (17:26 -0800)]
format-parser: Improve error message when format specifier lacks width.

Until now, parse_format_specifier() was willing to parse, e.g. "datetime"
as a format specifier.  It would then be rejected later by e.g.
fmt_check_input() with a message like "Input format DATETIME0.0 specifies
width 0, but DATETIME requires a width between 17 and 40," which makes no
sense to the user.  This commit improves the error message.

11 years agodata-parser: Use data-file error types for data-file errors.
Ben Pfaff [Sat, 24 Nov 2012 23:51:33 +0000 (15:51 -0800)]
data-parser: Use data-file error types for data-file errors.

The SW error type that these calls to msg() used before this command
include the name of the executing command in the error message.  This can
be confusing because the executing command may not have any connection to
the command that said to read the data file.  This commit changes these
error types to DW, which is intended for errors in a data file (and omits
the command name).

Bug #26517.

11 years agoINPUT PROGRAM: Don't break out of INPUT PROGRAM on interactive error.
Ben Pfaff [Sat, 24 Nov 2012 22:14:16 +0000 (14:14 -0800)]
INPUT PROGRAM: Don't break out of INPUT PROGRAM on interactive error.

Until now, any erroneous command typed within an input program at an
interactive command prompt implicitly "broke out" of the input program,
causing confusing behavior.  This commit fixes the problem: commands
following an erroneous command within INPUT PROGRAM continue to be part of
the input program.

Bug #33419.
Reported by John Darrington.

11 years agoDATA LIST FREE: Warn when a quoted string is not followed by a delimiter.
Ben Pfaff [Sat, 24 Nov 2012 21:47:06 +0000 (13:47 -0800)]
DATA LIST FREE: Warn when a quoted string is not followed by a delimiter.

A field parsed by DATA LIST FREE (or LIST) is either quoted or unquoted.
When it is quoted, this means that the entire field has to be quoted, that
is, it is not possible to quote some initial part of the field, then leave
some part of it unquoted (then possibly quote an additional part, etc.).
That means that the quoted portion should be followed by a delimiter,
such as white space, a comma, or end of line, but PSPP didn't warn when
it was not.  This commit makes PSPP warn in this situation, which makes
errors in the input easier to find.

Bug #26522.
Reported by Pascal Barbedor <pbarbedor@gmail.com>.

11 years agooutput: Make default output file name depend on the format.
Ben Pfaff [Sat, 24 Nov 2012 20:03:42 +0000 (12:03 -0800)]
output: Make default output file name depend on the format.

Before this commit, "-O html" caused HTML output to be written to a file
named "-", which is confusing.  After this commit, it is written to a file
named "pspp.html".  Similarly for other output drivers, except that text
and CSV output are still written to stdout by default.

Bug #35030.
Reported by John Darrington.

11 years agoCROSSTABS: Use FORMAT setting to control output format.
Ben Pfaff [Sat, 24 Nov 2012 19:11:17 +0000 (11:11 -0800)]
CROSSTABS: Use FORMAT setting to control output format.

Reported by Daniel Harper.

11 years agoFrequencies dialog: Convert to new system
John Darrington [Sat, 24 Nov 2012 15:29:39 +0000 (16:29 +0100)]
Frequencies dialog: Convert to new system

11 years agoFixed bug in NPAR BINOMIAL 20121124030501/pspp
John Darrington [Sat, 24 Nov 2012 08:06:54 +0000 (09:06 +0100)]
Fixed bug in NPAR BINOMIAL

This bug would crash when an incorrect syntax was encountered.

11 years agoBinomial test dialog: Convert to new style of action objects.
John Darrington [Sat, 24 Nov 2012 07:46:15 +0000 (08:46 +0100)]
Binomial test dialog:  Convert to new style of action objects.

11 years agoFix compiler warning
John Darrington [Fri, 23 Nov 2012 18:59:42 +0000 (19:59 +0100)]
Fix compiler warning

11 years agoRefactoring: common function set_sensitivity from toggle
John Darrington [Fri, 23 Nov 2012 18:49:03 +0000 (19:49 +0100)]
Refactoring: common function set_sensitivity from toggle

Many dialog boxes have a signal handler to set the sensitivity
of a widget, according to the state of a toggle button.  Until
now, they had all written their own.

11 years agoMerge remote branch 'origin/master' into psppsheet 20121201032009/pspp
John Darrington [Fri, 23 Nov 2012 14:18:42 +0000 (15:18 +0100)]
Merge remote branch 'origin/master' into psppsheet

11 years agoLogistic Regression: Ignore cases with missing dependent variables. 20121123030503/pspp
John Darrington [Fri, 23 Nov 2012 08:01:36 +0000 (09:01 +0100)]
Logistic Regression: Ignore cases with missing dependent variables.

Prior to this change, cases with missing values in the predictor
variables were ignored, but cases with missing values only in the
dependent variable would provoke an error.  Subsequent to this change
such cases are also ignored.  This seems to be the behaviour of other
software, despite what their documentation may suggest.

11 years agoLogistic Regression: Added options dialog box
John Darrington [Thu, 22 Nov 2012 19:15:44 +0000 (20:15 +0100)]
Logistic Regression: Added options dialog box

11 years agoLogistic Regression: Added a test to check the confidence interval display
John Darrington [Thu, 22 Nov 2012 15:25:06 +0000 (16:25 +0100)]
Logistic Regression: Added a test to check the confidence interval display

11 years agoLogistic Regression: Fix bug where some confidence intervals were not reported.
John Darrington [Thu, 22 Nov 2012 14:39:48 +0000 (15:39 +0100)]
Logistic Regression: Fix bug where some confidence intervals were not reported.

11 years agoLogistic Regression: Calculate the logs of the likelihood instead of the raw value. 20121122030503/pspp
John Darrington [Wed, 21 Nov 2012 21:13:27 +0000 (22:13 +0100)]
Logistic Regression: Calculate the logs of the likelihood instead of the raw value.

The likelihood values can become extremely large which can result in
lost precision in a double.  This change therefore calculates the
logarithms of the likelihoods instead of their actual value.

11 years agoLogistic Regression Dialog: Added missing shortcut target.
John Darrington [Wed, 21 Nov 2012 18:13:20 +0000 (19:13 +0100)]
Logistic Regression Dialog: Added missing shortcut target.

11 years agoChanged the labels of the Regression menu to keep them shorter.
John Darrington [Wed, 21 Nov 2012 18:10:06 +0000 (19:10 +0100)]
Changed the labels of the Regression menu to keep them shorter.

11 years agoAdded rudimentary version of the Logistic Regression Dialog 20121121030502/pspp
John Darrington [Tue, 20 Nov 2012 18:04:00 +0000 (19:04 +0100)]
Added rudimentary version of the Logistic Regression Dialog

11 years agoAnalyze Menu: New submenu for Regression
John Darrington [Tue, 20 Nov 2012 17:05:07 +0000 (18:05 +0100)]
Analyze Menu: New submenu for Regression

Move the Linear Regression menuitem into a new submenu Regression.
This is in preparation for a new menuitem for Logistic Regression

11 years agoFix (again) problems displaying a GtkSourceView widget on Cygwin
John Darrington [Tue, 20 Nov 2012 11:32:34 +0000 (12:32 +0100)]
Fix (again) problems displaying a GtkSourceView widget on Cygwin

Under certain compiler options, the effect of the gtk_*get_type
function call was optimised away.  This change fixes that.  It
seems that both static and volatile are necessary, in order to
avoid the compiler from complaining and/or optimising the call
away.

11 years agoLogistic Regression: Optimise the classification calculations. 20121120030502/pspp
John Darrington [Tue, 20 Nov 2012 09:32:14 +0000 (10:32 +0100)]
Logistic Regression: Optimise the classification calculations.

Instead of calculating the logit of the prediction for each case,
pre-calculate the inverse logit of the threshold before the process
starts.  This should give a small performance gain..

11 years agoFixed Texinfo problems which arise under Texinfo 4.13.90
John Darrington [Mon, 19 Nov 2012 18:45:14 +0000 (19:45 +0100)]
Fixed Texinfo problems which arise under Texinfo 4.13.90

11 years agoLogistic Regression: Added the Classification Table
John Darrington [Mon, 19 Nov 2012 14:35:43 +0000 (15:35 +0100)]
Logistic Regression: Added the Classification Table

Added a table to logistic regression to show how the predicted values
would be classified by the calculated coefficients.

11 years agologistic.c: minor refactoring
John Darrington [Thu, 15 Nov 2012 14:23:37 +0000 (15:23 +0100)]
logistic.c: minor refactoring

11 years agoFix possible memory corruption when creating dialogs with selectors. 20121119030501/pspp
John Darrington [Mon, 19 Nov 2012 10:15:49 +0000 (11:15 +0100)]
Fix possible memory corruption when creating dialogs with selectors.

The PsppireSelector widget's class structure contains a map of selectors
indexed by the source widget with which they are associated.  Until now, that
map was never depopulated.   This could have caused problems if newly created
widgets happened to use the same address as old, destroyed ones.  This change
removes selectors from the map upon destruction.

11 years agoLogistic Regression: Handle missing categoricals 20121115030502/pspp 20121116030503/pspp 20121117030502/pspp 20121118030503/pspp
John Darrington [Wed, 14 Nov 2012 16:05:01 +0000 (17:05 +0100)]
Logistic Regression: Handle missing categoricals

Ensure that missing values on categorical predictors are handled properly.

11 years agoLogistic Regression: Fix crash if categorical variable has no distinct values 20121114030503/pspp
John Darrington [Wed, 14 Nov 2012 10:47:09 +0000 (11:47 +0100)]
Logistic Regression: Fix crash if categorical variable has no distinct values

11 years agoRemove empty _finalize function
John Darrington [Tue, 13 Nov 2012 18:49:07 +0000 (19:49 +0100)]
Remove empty _finalize function

11 years agoFind dialog: Don't crash when searching for a non-existant label.
John Darrington [Tue, 13 Nov 2012 18:42:34 +0000 (19:42 +0100)]
Find dialog: Don't crash when searching for a non-existant label.

11 years agoSmall refactoring and cleanup of psppire-selector.c
John Darrington [Tue, 13 Nov 2012 18:37:07 +0000 (19:37 +0100)]
Small refactoring and cleanup of psppire-selector.c

Made explicit variables from some expressions.  This provides
the opportinutiy to test if they are valid.

11 years agoRemove _base_init and base_finalize functions from psppire-selector
John Darrington [Tue, 13 Nov 2012 18:00:38 +0000 (19:00 +0100)]
Remove _base_init and base_finalize functions from psppire-selector

Gtk+ documentation recommends these are avoided in modern code.
They differ only from class_init in the case where the class has subclasses,
which PsppireSelector does not.

11 years agoMerge 'master' into 'psppsheet'. 20121113032021/pspp 20121114032001/pspp 20121115031953/pspp 20121116032036/pspp 20121117032022/pspp 20121118032021/pspp 20121119031957/pspp 20121120031954/pspp 20121121031958/pspp 20121122032007/pspp 20121123032005/pspp 20121124032004/pspp 20121125032007/pspp 20121126032010/pspp 20121127031956/pspp 20121128032039/pspp 20121129032043/pspp 20121130032031/pspp
Ben Pfaff [Mon, 12 Nov 2012 16:57:34 +0000 (08:57 -0800)]
Merge 'master' into 'psppsheet'.

11 years agoLogistic Regression: Added categorical variable support 20121112030504/pspp 20121113030502/pspp
John Darrington [Sun, 11 Nov 2012 13:19:05 +0000 (14:19 +0100)]
Logistic Regression: Added categorical variable support

With this commit Logistic Regression now supports the /CATEGORICALS
subcommand, allowing a dependent variable to be regressed against one
or more categorical predictor variables.

11 years agopspp-sheet-view: Make Home and End go to left and right of sheet. 20121111031848/pspp 20121112032014/pspp
Ben Pfaff [Sat, 10 Nov 2012 22:12:49 +0000 (14:12 -0800)]
pspp-sheet-view: Make Home and End go to left and right of sheet.

Requested by rocko mazuki <rockorocko@gmail.com>.

11 years agopspp-sheet-view: Enable Home and End in sheet.
Ben Pfaff [Sat, 10 Nov 2012 22:11:55 +0000 (14:11 -0800)]
pspp-sheet-view: Enable Home and End in sheet.

However, they go to the top and bottom.

11 years agopspp-sheet-view: Refactor pspp_sheet_view_event().
Ben Pfaff [Sat, 10 Nov 2012 22:09:21 +0000 (14:09 -0800)]
pspp-sheet-view: Refactor pspp_sheet_view_event().

This form seems easier to extend to new key combinations that include
Cnotrol or Shift or Alt.

11 years agogui: Rename psppire_data_sheet_show_variable(). 20121109031952/pspp 20121110032021/pspp
Ben Pfaff [Fri, 9 Nov 2012 06:51:52 +0000 (22:51 -0800)]
gui: Rename psppire_data_sheet_show_variable().

psppire_data_sheet_goto_variable() is a more accurate name for the revised
behavior of this function.

11 years agopsppire-data-sheet: Set cursor on row in psppire_data_sheet_show_variable().
Ben Pfaff [Fri, 9 Nov 2012 06:51:08 +0000 (22:51 -0800)]
psppire-data-sheet: Set cursor on row in psppire_data_sheet_show_variable().

psppire_data_sheet_show_variable() only ensured that the variable in
question was visible in the data sheet.  This commit makes it also put
the cursor on the variable's column.  This affects the function's two
callers: the Find Dialog now selects a cell instead of an entire row,
and double-clicking a row number in the variable sheet now does likewise.

This solves a problem reported by John Darrington, who reported that
double-clicking on a row number in the variable sheet did not change
the selected cell but only switched to the data sheet.

11 years agopsppire-button-editable: Fix infinite recursion in button-release-event.
Ben Pfaff [Fri, 9 Nov 2012 06:10:58 +0000 (22:10 -0800)]
psppire-button-editable: Fix infinite recursion in button-release-event.

"release" and "button-release-event" are different.  Before commit
8f843c3a5e905c (Avoid deprecated function: gtk_button_released),
psppire_button_editable_button_release() invoked the former.  That commit
changed it to invoke the latter, which is the same signal that the
function itself implements, hence causing infinite recursion.  This commit
changes it to invoke the former.

Without this commit, the following instructions reliably crash for me:

1. Load a data file, click over to variables tab.
2. Click on a ... button in the Type column.
3. Click on Cancel button in Type dialog.
4. Click on the same ... button as before.

With this commit, those instructions don't crash (the Type dialog pops
back up after step 4, as it should).

Reported by John Darrington.

11 years agoCategoricals.c: Ensure that categories are processed order of their categorical varia... 20121109030502/pspp 20121110030502/pspp 20121111030502/pspp
John Darrington [Thu, 8 Nov 2012 13:33:51 +0000 (14:33 +0100)]
Categoricals.c: Ensure that categories are processed order of their categorical variable(s).

Some procedures require that categoricals are processed in a particular order.
Mathematically, the order is irrelevant, however for reporting purposes it is
sometimes required.  This change adds a level of indirection, so that the codes
are allocated in ascending order of the categorical variable.

11 years agoCategoricals: Provide separate functions for effects and dummy coding. 20121107030502/pspp 20121108030503/pspp
John Darrington [Tue, 6 Nov 2012 19:50:33 +0000 (20:50 +0100)]
Categoricals: Provide separate functions for effects and dummy coding.

Until now, the function categoricals_get_code_for_case returned the
"effects" coding (ie, a bipolar code).  Some uses require "dummy" coding
(a binary coding).  This change provides seperate functions to return
whatever is desired.

Conflicts:

src/language/stats/logistic.c

11 years agoFixed some compiler warnings, which arose from recent commits. 20121105030504/pspp 20121106030502/pspp
John Darrington [Sun, 4 Nov 2012 16:14:13 +0000 (17:14 +0100)]
Fixed some compiler warnings, which arose from recent commits.

11 years agoAdded mnemonics to rank types dialog 20121104030502/pspp
John Darrington [Sat, 3 Nov 2012 10:19:13 +0000 (11:19 +0100)]
Added mnemonics to rank types dialog

11 years agoAdded markup to GUI elements where necessary 20121103030503/pspp
John Darrington [Fri, 2 Nov 2012 15:33:06 +0000 (16:33 +0100)]
Added markup to GUI elements where necessary

11 years agoFix bug in parse_design_interaction.
John Darrington [Fri, 2 Nov 2012 14:36:00 +0000 (15:36 +0100)]
Fix bug in parse_design_interaction.

Previously this function would crash if it failed to succesfully parse
an interaction. This change fixes that.

11 years agoCategoricals: Accept null pointer as subject.
John Darrington [Fri, 2 Nov 2012 14:31:45 +0000 (15:31 +0100)]
Categoricals: Accept null pointer as subject.

Previously, certain functions would crash, or behave badly if their
argument was NULL.  This change makes them do nothing, or return
default values, as appropriate.  This saves callers having to always
test for NULL.

11 years agocateoricals.c categoricals.h clean up.
John Darrington [Fri, 2 Nov 2012 14:24:12 +0000 (15:24 +0100)]
cateoricals.c categoricals.h clean up.

Removed a prototype whose implementation no longer exists.
Added a few comments.
Whitespace changes.

11 years agoAdded mnemonic to t-test options dialog 20121102030504/pspp
John Darrington [Thu, 1 Nov 2012 21:30:53 +0000 (22:30 +0100)]
Added mnemonic to t-test options dialog

11 years agoAdded Mnemonics to the value chooser widget and to the recode dialog.
John Darrington [Thu, 1 Nov 2012 17:44:17 +0000 (18:44 +0100)]
Added Mnemonics to the value chooser widget and to the recode dialog.

11 years agoAdded markup to the spilt-file dialog 20121101030507/pspp
John Darrington [Thu, 1 Nov 2012 06:14:41 +0000 (07:14 +0100)]
Added markup to the spilt-file dialog

11 years agoCompute Dialog: Add mnemonics and focus widgets on activation. 20121031030502/pspp
John Darrington [Tue, 30 Oct 2012 18:22:47 +0000 (19:22 +0100)]
Compute Dialog: Add mnemonics and focus widgets on activation.

11 years agologistic.c: Fix read from uninitialised memory. 20121030030503/pspp
John Darrington [Tue, 30 Oct 2012 05:54:09 +0000 (06:54 +0100)]
logistic.c: Fix read from uninitialised memory.

Found-by valgrind.

11 years agopspp-sheet-view: Fix warning using arrow keys to navigate column buttons. 20121029032029/pspp 20121030031955/pspp 20121031031956/pspp 20121101032031/pspp 20121102032007/pspp 20121103032004/pspp 20121104032009/pspp 20121105032017/pspp 20121106032209/pspp 20121107031955/pspp 20121108032020/pspp
Ben Pfaff [Sun, 28 Oct 2012 20:22:33 +0000 (13:22 -0700)]
pspp-sheet-view: Fix warning using arrow keys to navigate column buttons.

Before this commit, clicking on a column head button in the data sheet,
then holding down the right arrow key until the data sheet began to scroll
right would often produce a warning of the form:

** (psppire:16451): WARNING **: Internal button not found

because nothing caused the underlying GtkButton to be instantiated in this
scenario.  This commit fixes the problem.

11 years agoMerge 'master' into 'psppsheet'.
Ben Pfaff [Sun, 28 Oct 2012 20:02:13 +0000 (13:02 -0700)]
Merge 'master' into 'psppsheet'.

11 years agopspp-sheet-view: Make Shift+Tab select only one cell when switching rows.
Ben Pfaff [Sun, 28 Oct 2012 20:01:47 +0000 (13:01 -0700)]
pspp-sheet-view: Make Shift+Tab select only one cell when switching rows.

Before this commit, Shift+Tab at the start of a row in the data sheet would
select both the new cell and the cell below it.  After this commit, only
the new cell is selected, as one would expect.

Reported by John Darrington.

11 years agoMove function parse_design_interaction into variable-parser.c
John Darrington [Sun, 28 Oct 2012 09:16:01 +0000 (10:16 +0100)]
Move function parse_design_interaction into variable-parser.c

This function is (or will be) used by several procedures, so
make it public.

11 years agoglm.c: (lex_match_variable and parse_design_interaction) remove dependence on struct glm
John Darrington [Sun, 28 Oct 2012 08:36:35 +0000 (09:36 +0100)]
glm.c: (lex_match_variable and parse_design_interaction) remove dependence on struct glm

Made these functions independent of struct glm, so that they can potentially be reused
for other procedures.

11 years agoAnova Dialog: Fix widget associations 20121027030509/pspp 20121028030503/pspp 20121029030502/pspp
John Darrington [Sat, 27 Oct 2012 08:42:28 +0000 (10:42 +0200)]
Anova Dialog: Fix widget associations

11 years agologistic.c : Avoid compiler warnings
John Darrington [Sat, 27 Oct 2012 05:34:20 +0000 (07:34 +0200)]
logistic.c  : Avoid compiler warnings

11 years agoGUI: Added Mnemonic keys to Examine dialog
John Darrington [Sat, 27 Oct 2012 05:21:05 +0000 (07:21 +0200)]
GUI: Added Mnemonic keys to Examine dialog

11 years agogui: Make Tab, Shift+Tab skip row head and new-var columns in data sheet. 20121025032015/pspp 20121026032030/pspp 20121027032008/pspp 20121028032032/pspp
Ben Pfaff [Thu, 25 Oct 2012 06:24:25 +0000 (23:24 -0700)]
gui: Make Tab, Shift+Tab skip row head and new-var columns in data sheet.

Before this commit, Tab and Shift+Tab acted just like Left and Right in
the data sheet, that is, they visit every column except the row head
column and always stay on the same row.  After this commit, Tab and
Shift+Tab skip the row head and new-variable columns.  Also, Tab at the
end of a row goes to the beginning of the next row, and Shift+Tab at the
beginning of a row goes to the end of the previous row.

Suggested by John Darrington.

11 years agoFirst attempt at a LOGISTIC REGRESSION command 20121025030511/pspp 20121026030503/pspp
John Darrington [Tue, 16 Oct 2012 18:41:44 +0000 (20:41 +0200)]
First attempt at a LOGISTIC REGRESSION command

11 years agoUpdated my entry in AUTHORS 20121018030506/pspp 20121019030515/pspp 20121020030503/pspp 20121021030504/pspp 20121022030502/pspp 20121023030502/pspp 20121024030503/pspp
John Darrington [Thu, 18 Oct 2012 09:28:44 +0000 (11:28 +0200)]
Updated my entry in AUTHORS

11 years agopsppire-data-sheet: Implement Edit|Paste. 20121015032559/pspp 20121016032601/pspp 20121017032604/pspp 20121018032547/pspp 20121019032041/pspp 20121020032030/pspp 20121021032034/pspp 20121022032020/pspp 20121023032020/pspp 20121024032018/pspp
Ben Pfaff [Mon, 15 Oct 2012 04:02:31 +0000 (21:02 -0700)]
psppire-data-sheet: Implement Edit|Paste.

This missing feature was reported by John Darrington.

11 years agopsppire-data-sheet: Implement Edit|Cut.
Ben Pfaff [Sun, 14 Oct 2012 21:32:05 +0000 (14:32 -0700)]
psppire-data-sheet: Implement Edit|Cut.

I overlooked this earlier.

Reported by John Darrington.

11 years agopsppire-var-sheet: Make clicking on Variables column select all data.
Ben Pfaff [Sun, 14 Oct 2012 18:45:36 +0000 (11:45 -0700)]
psppire-var-sheet: Make clicking on Variables column select all data.

This does what users expect in the variable sheet.

Reported by John Darrington.

11 years agopsppire-data-sheet: Make clicking on Cases column select all data.
Ben Pfaff [Sun, 14 Oct 2012 18:40:28 +0000 (11:40 -0700)]
psppire-data-sheet: Make clicking on Cases column select all data.

This does what users expect in the data sheet.

Reported by John Darrington.

11 years agopspp-sheet-view-column: Make clicking on a row head column select all data.
Ben Pfaff [Sun, 14 Oct 2012 18:36:13 +0000 (11:36 -0700)]
pspp-sheet-view-column: Make clicking on a row head column select all data.

This is what users typically expect: clicking on the upper-left of a
spreadsheet selects all of the cells in the spreadsheet.

11 years agopsppire-data-sheet: Use specific functions instead of g_object_set().
Ben Pfaff [Sun, 14 Oct 2012 18:35:06 +0000 (11:35 -0700)]
psppire-data-sheet: Use specific functions instead of g_object_set().

Using particular functions seems less error-prone, since it avoids the
possibility of misspelling a property name or getting their values' types
wrong.

11 years agopspp-sheet-view-column: Be consistent about use of !! for booleans.
Ben Pfaff [Sun, 14 Oct 2012 18:33:42 +0000 (11:33 -0700)]
pspp-sheet-view-column: Be consistent about use of !! for booleans.

When "x = !!x;" is used, there's no need to use "x?TRUE:FALSE" later,
since one knows that the value is already 0 or 1, but some code did this
anyway.

This is a cleanup only that should not change behavior.

11 years agodoc/introduction.texi: Update documentations introductory section 20121014030516/pspp 20121015030503/pspp 20121016030503/pspp 20121017030503/pspp
John Darrington [Sat, 13 Oct 2012 15:41:59 +0000 (17:41 +0200)]
doc/introduction.texi: Update documentations introductory section

11 years agodoc/automake.mk: Added a convenience rule for building all the documentation formats
John Darrington [Sat, 13 Oct 2012 14:46:22 +0000 (16:46 +0200)]
doc/automake.mk: Added a convenience rule for building all the documentation formats

11 years agodoc/automake.mk: Replace lines inadvertently removed by previous commit
John Darrington [Sat, 13 Oct 2012 13:22:38 +0000 (15:22 +0200)]
doc/automake.mk: Replace lines inadvertently removed by previous commit

11 years agodoc/automake.mk: Added further mutations to docbook xml to workaround makeinfo bugs
John Darrington [Sat, 13 Oct 2012 10:59:18 +0000 (12:59 +0200)]
doc/automake.mk: Added further mutations to docbook xml to workaround makeinfo bugs

11 years agodoc/automake.mk: New mutations to generated docbook xml to workaround makeinfo bugs
John Darrington [Sat, 13 Oct 2012 10:44:05 +0000 (12:44 +0200)]
doc/automake.mk: New mutations to generated docbook xml to workaround makeinfo bugs

11 years agoFix bug where, after double-clicking to switch sheet view, a spurious release event... 20121009032003/pspp 20121011032101/pspp 20121012032055/pspp 20121013032614/pspp 20121014032548/pspp
John Darrington [Mon, 8 Oct 2012 20:14:36 +0000 (22:14 +0200)]
Fix bug where, after double-clicking to switch sheet view, a spurious release event was processed.

From http://developer.gnome.org/gdk/2.24/gdk-Event-Structures.html#GdkEventButton

  Double and triple-clicks result in a sequence of events being received. For
  double-clicks the order of events will be:

   1.  GDK_BUTTON_PRESS
   2.  GDK_BUTTON_RELEASE
   3.  GDK_BUTTON_PRESS
   4.  GDK_2BUTTON_PRESS
   5.  GDK_BUTTON_RELEASE

So what was happening was this:  When the var-name was double-clicked, the view switched
from VarView to DataView as soon as  event 4 (GDK_2BUTTON_PRESS) occured.  Then event 5
(GDK_BUTTON_RELEASE) occured.

Now the PsppSheetView object is written such that, it decides to edit a cell, on button
release event. Hence, whichever cell the pointer happended to be in, when the user lifts
his finger after double clicking, starts to be edited.

This change ignores button release events on the object unless a corresponding button press
event was seen.

11 years agopsppire-data-editor: Keep value labels setting across Windows|Split.
Ben Pfaff [Mon, 8 Oct 2012 19:06:11 +0000 (12:06 -0700)]
psppire-data-editor: Keep value labels setting across Windows|Split.

Before this commit, Windows|Split always turned off displaying value
labels in data sheet cells.  This commit causes this setting to be
preserved across Windows|Split.

11 years agoAvoid deprecated function: gtk_button_released 20121009030508/pspp 20121011030511/pspp 20121012030514/pspp 20121013030514/pspp
John Darrington [Mon, 8 Oct 2012 17:16:02 +0000 (19:16 +0200)]
Avoid deprecated function: gtk_button_released

11 years agoconfigure.ac: Increase pango minimum version from 1.20 to 1.22 20121005030505/pspp 20121006030503/pspp 20121007030505/pspp 20121008030504/pspp
Ben Pfaff [Fri, 5 Oct 2012 04:22:42 +0000 (21:22 -0700)]
configure.ac: Increase pango minimum version from 1.20 to 1.22

Commit bd4d6e7453 (cairo: Avoid deprecated
pango_cairo_font_map_create_context().) added a dependency on pango
version 1.22 or later, but configure.ac only checked for version 1.20
or later.  This commit fixes the discrepancy.

INSTALL already documented that Pango 1.22 or later was needed.

Reported by John Darrington.

11 years agotests: Better isolate search text in test of error reporting. 20121001030503/pspp 20121002030515/pspp 20121003030503/pspp 20121004030504/pspp
Ben Pfaff [Sun, 30 Sep 2012 19:29:33 +0000 (12:29 -0700)]
tests: Better isolate search text in test of error reporting.

Some GNU/Linux distributions print additional text on a segfault,
e.g. "Cannot exec debugger: No such file or directory", which this
test was seeing in output and interpreting as a failed test.  This
commit fixes the problem by ignoring text up to the ***** line that
marks the start of the expected output.

Bug #37444.
Reported by Mindaugus.

11 years agoRemove variable assigned to but never used. 20121001031957/pspp 20121002032048/pspp 20121003032021/pspp 20121004032030/pspp 20121005032009/pspp 20121006032038/pspp 20121007032036/pspp 20121008032034/pspp
Ben Pfaff [Sun, 30 Sep 2012 18:29:46 +0000 (11:29 -0700)]
Remove variable assigned to but never used.

Found by GCC 4.7.

11 years agoMerge 'master' into 'psppsheet'.
Ben Pfaff [Sun, 30 Sep 2012 18:25:23 +0000 (11:25 -0700)]
Merge 'master' into 'psppsheet'.

11 years agoSuppress GCC 4.7 warnings by changes to code that make it less clear.
Ben Pfaff [Wed, 26 Sep 2012 04:18:32 +0000 (21:18 -0700)]
Suppress GCC 4.7 warnings by changes to code that make it less clear.

I'm not entirely happy with these changes, because they make the code
slightly less obvious.  However, it's still not really bad code, and
it's convenient to have a warning-free build.