projects
/
pspp
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Introduce Arg class.
[pspp]
/
src
/
ui
/
gui
/
psppire-dialog-action-factor.c
diff --git
a/src/ui/gui/psppire-dialog-action-factor.c
b/src/ui/gui/psppire-dialog-action-factor.c
index 8ec9e22849e4e6d001da13fca253a31a4d417e55..48f72ffbd62f7c38fce19235126a120cb6e3a390 100644
(file)
--- a/
src/ui/gui/psppire-dialog-action-factor.c
+++ b/
src/ui/gui/psppire-dialog-action-factor.c
@@
-38,7
+38,7
@@
static void psppire_dialog_action_factor_class_init (PsppireDialogActionFac
G_DEFINE_TYPE (PsppireDialogActionFactor, psppire_dialog_action_factor, PSPPIRE_TYPE_DIALOG_ACTION);
G_DEFINE_TYPE (PsppireDialogActionFactor, psppire_dialog_action_factor, PSPPIRE_TYPE_DIALOG_ACTION);
-static const char *rot_method_syntax[] =
+static const char *rot_method_syntax[] =
{
"NOROTATE",
"VARIMAX",
{
"NOROTATE",
"VARIMAX",
@@
-56,7
+56,7
@@
on_extract_toggle (GtkToggleButton *button, PsppireDialogActionFactor *f)
}
static char *
}
static char *
-generate_syntax (PsppireDialogAction *act)
+generate_syntax (
const
PsppireDialogAction *act)
{
PsppireDialogActionFactor *rd = PSPPIRE_DIALOG_ACTION_FACTOR (act);
{
PsppireDialogActionFactor *rd = PSPPIRE_DIALOG_ACTION_FACTOR (act);
@@
-70,7
+70,7
@@
generate_syntax (PsppireDialogAction *act)
ds_put_cstr (&str, "\n\t/CRITERIA = ");
ds_put_cstr (&str, "\n\t/CRITERIA = ");
- if (
rd->extraction.explicit_nfactors
)
+ if (
rd->extraction.explicit_nfactors
)
ds_put_c_format (&str, "FACTORS (%d)", rd->extraction.n_factors);
else
ds_put_c_format (&str, "MINEIGEN (%.*g)",
ds_put_c_format (&str, "FACTORS (%d)", rd->extraction.n_factors);
else
ds_put_c_format (&str, "MINEIGEN (%.*g)",
@@
-84,19
+84,19
@@
generate_syntax (PsppireDialogAction *act)
ds_put_cstr (&str, "\n\t/EXTRACTION =");
ds_put_cstr (&str, "\n\t/EXTRACTION =");
- if (
rd->extraction.paf)
+ if (rd->extraction.paf)
ds_put_cstr (&str, "PAF");
else
ds_put_cstr (&str, "PC");
ds_put_cstr (&str, "\n\t/METHOD = ");
ds_put_cstr (&str, "PAF");
else
ds_put_cstr (&str, "PC");
ds_put_cstr (&str, "\n\t/METHOD = ");
- if (
rd->extraction.covariance
)
+ if (
rd->extraction.covariance
)
ds_put_cstr (&str, "COVARIANCE");
else
ds_put_cstr (&str, "CORRELATION");
ds_put_cstr (&str, "COVARIANCE");
else
ds_put_cstr (&str, "CORRELATION");
- if (
rd->extraction.scree
)
+ if (
rd->extraction.scree
)
{
ds_put_cstr (&str, "\n\t/PLOT = ");
ds_put_cstr (&str, "EIGEN");
{
ds_put_cstr (&str, "\n\t/PLOT = ");
ds_put_cstr (&str, "EIGEN");
@@
-105,17
+105,17
@@
generate_syntax (PsppireDialogAction *act)
ds_put_cstr (&str, "\n\t/PRINT = ");
ds_put_cstr (&str, "INITIAL ");
ds_put_cstr (&str, "\n\t/PRINT = ");
ds_put_cstr (&str, "INITIAL ");
- if (
rd->extraction.unrotated )
+ if (
rd->extraction.unrotated)
ds_put_cstr (&str, "EXTRACTION ");
ds_put_cstr (&str, "EXTRACTION ");
- if (
rd->rotation.rotated_solution
)
+ if (
rd->rotation.rotated_solution
)
ds_put_cstr (&str, "ROTATION");
/* The CRITERIA = ITERATE subcommand is overloaded.
It applies to the next /ROTATION and/or EXTRACTION command whatever comes first.
*/
ds_put_cstr (&str, "ROTATION");
/* The CRITERIA = ITERATE subcommand is overloaded.
It applies to the next /ROTATION and/or EXTRACTION command whatever comes first.
*/
- ds_put_c_format (&str, "\n\t/CRITERIA = ITERATE (%d)", rd->rotation.iterations
);
+ ds_put_c_format (&str, "\n\t/CRITERIA = ITERATE (%d)", rd->rotation.iterations);
ds_put_cstr (&str, "\n\t/ROTATION = ");
ds_put_cstr (&str, rot_method_syntax[rd->rotation.method]);
ds_put_cstr (&str, "\n\t/ROTATION = ");
ds_put_cstr (&str, rot_method_syntax[rd->rotation.method]);
@@
-133,7
+133,7
@@
load_rotation_parameters (PsppireDialogActionFactor *fd, const struct rotation_p
{
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (fd->display_rotated_solution),
p->rotated_solution);
{
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (fd->display_rotated_solution),
p->rotated_solution);
-
+
gtk_spin_button_set_value (GTK_SPIN_BUTTON (fd->rotate_iterations),
p->iterations);
gtk_spin_button_set_value (GTK_SPIN_BUTTON (fd->rotate_iterations),
p->iterations);
@@
-180,11
+180,11
@@
load_extraction_parameters (PsppireDialogActionFactor *fd, const struct extracti
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (fd->scree_button), p->scree);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (fd->unrotated_button), p->unrotated);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (fd->scree_button), p->scree);
gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (fd->unrotated_button), p->unrotated);
- if (
p->paf
)
+ if (
p->paf
)
gtk_combo_box_set_active (GTK_COMBO_BOX (fd->extraction_combo), 1);
else
gtk_combo_box_set_active (GTK_COMBO_BOX (fd->extraction_combo), 0);
gtk_combo_box_set_active (GTK_COMBO_BOX (fd->extraction_combo), 1);
else
gtk_combo_box_set_active (GTK_COMBO_BOX (fd->extraction_combo), 0);
-
+
}
static gboolean
}
static gboolean
@@
-225,16
+225,16
@@
set_rotation_parameters (PsppireDialogActionFactor *act, struct rotation_paramet
p->rotated_solution = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->display_rotated_solution));
p->rotated_solution = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->display_rotated_solution));
- if (
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->rotation_none)))
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->rotation_none)))
p->method = ROT_NONE;
p->method = ROT_NONE;
- if (
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->rotation_varimax)))
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->rotation_varimax)))
p->method = ROT_VARIMAX;
if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->rotation_quartimax)))
p->method = ROT_QUARTIMAX;
p->method = ROT_VARIMAX;
if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->rotation_quartimax)))
p->method = ROT_QUARTIMAX;
- if (
gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->rotation_equimax)))
+ if (gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (act->rotation_equimax)))
p->method = ROT_EQUIMAX;
}
p->method = ROT_EQUIMAX;
}
@@
-262,7
+262,7
@@
run_extractions_subdialog (PsppireDialogActionFactor *act)
gint response = psppire_dialog_run (PSPPIRE_DIALOG (act->extraction_dialog));
gint response = psppire_dialog_run (PSPPIRE_DIALOG (act->extraction_dialog));
- if (
response == PSPPIRE_RESPONSE_CONTINUE
)
+ if (
response == PSPPIRE_RESPONSE_CONTINUE
)
{
/* Set the parameters from their respective widgets */
set_extraction_parameters (act, ex);
{
/* Set the parameters from their respective widgets */
set_extraction_parameters (act, ex);
@@
-281,7
+281,7
@@
run_rotations_subdialog (PsppireDialogActionFactor *act)
gint response = psppire_dialog_run (PSPPIRE_DIALOG (act->rotation_dialog));
gint response = psppire_dialog_run (PSPPIRE_DIALOG (act->rotation_dialog));
- if (
response == PSPPIRE_RESPONSE_CONTINUE
)
+ if (
response == PSPPIRE_RESPONSE_CONTINUE
)
{
/* Set the parameters from their respective widgets */
set_rotation_parameters (act, rot);
{
/* Set the parameters from their respective widgets */
set_rotation_parameters (act, rot);
@@
-293,21
+293,15
@@
run_rotations_subdialog (PsppireDialogActionFactor *act)
}
}
}
}
-static
void
-psppire_dialog_action_factor_activate (
GtkAction *a
)
+static
GtkBuilder *
+psppire_dialog_action_factor_activate (
PsppireDialogAction *a, GVariant *param
)
{
PsppireDialogAction *pda = PSPPIRE_DIALOG_ACTION (a);
PsppireDialogActionFactor *act = PSPPIRE_DIALOG_ACTION_FACTOR (a);
GtkWidget *extraction_button ;
GtkWidget *rotation_button ;
{
PsppireDialogAction *pda = PSPPIRE_DIALOG_ACTION (a);
PsppireDialogActionFactor *act = PSPPIRE_DIALOG_ACTION_FACTOR (a);
GtkWidget *extraction_button ;
GtkWidget *rotation_button ;
- GHashTable *thing = psppire_dialog_action_get_pointer (pda);
- GtkBuilder *xml = g_hash_table_lookup (thing, a);
- if (!xml)
- {
- xml = builder_new ("factor.ui");
- g_hash_table_insert (thing, a, xml);
- }
+ GtkBuilder *xml = builder_new ("factor.ui");
pda->dialog = get_widget_assert (xml, "factor-dialog");
pda->source = get_widget_assert (xml, "dict-view");
pda->dialog = get_widget_assert (xml, "factor-dialog");
pda->source = get_widget_assert (xml, "dict-view");
@@
-365,17
+359,16
@@
psppire_dialog_action_factor_activate (GtkAction *a)
G_CALLBACK (run_extractions_subdialog), act);
g_signal_connect_swapped (rotation_button, "clicked", G_CALLBACK (run_rotations_subdialog), act);
G_CALLBACK (run_extractions_subdialog), act);
g_signal_connect_swapped (rotation_button, "clicked", G_CALLBACK (run_rotations_subdialog), act);
-
psppire_dialog_action_set_valid_predicate (pda, (void *) dialog_state_valid);
psppire_dialog_action_set_refresh (pda, dialog_refresh);
psppire_dialog_action_set_valid_predicate (pda, (void *) dialog_state_valid);
psppire_dialog_action_set_refresh (pda, dialog_refresh);
-
PSPPIRE_DIALOG_ACTION_CLASS (psppire_dialog_action_factor_parent_class)->activate (pda)
;
+
return xml
;
}
static void
psppire_dialog_action_factor_class_init (PsppireDialogActionFactorClass *class)
{
}
static void
psppire_dialog_action_factor_class_init (PsppireDialogActionFactorClass *class)
{
-
psppire_dialog_action_set_activation (class, psppire_dialog_action_factor_activate)
;
+
PSPPIRE_DIALOG_ACTION_CLASS (class)->initial_activate = psppire_dialog_action_factor_activate
;
PSPPIRE_DIALOG_ACTION_CLASS (class)->generate_syntax = generate_syntax;
}
PSPPIRE_DIALOG_ACTION_CLASS (class)->generate_syntax = generate_syntax;
}