nautilus/test/test-nautilus-preferences-change.c
Alexander Larsson 3e0d21df23 AIX port from Laurent.Vivier@bull.net (Laurent Vivier)
2003-04-23  Alexander Larsson  <alexl@redhat.com>

        AIX port from Laurent.Vivier@bull.net (Laurent Vivier)

	* configure.in:
	Look for popt and some aix headers

	* components/hardware/Nautilus_View_hardware.server.in.in:
	Fix up LIBEXECDIR reference

	* components/history/nautilus-history-view.c:
	* components/notes/nautilus-notes.c:
	* components/throbber/nautilus-throbber.c:
	* libnautilus-private/nautilus-icon-canvas-item.c:
	* libnautilus-private/nautilus-icon-container.c:
	* libnautilus-private/nautilus-icon-dnd.c:
	* libnautilus-private/nautilus-program-chooser.c:
	* libnautilus-private/nautilus-volume-monitor.h:
	* src/nautilus-applicable-views.h:
	* src/nautilus-property-browser.c:
	* src/nautilus-sidebar-title.c:
	* src/file-manager/fm-directory-view.c:
	* test/test-nautilus-preferences-change.c: (main):
	* test/test.c: (test_quit):
	Fix c++ comments and commas at end of enums.
	Move math.h includes to top.

	* data/Makefile.am:
	Remove duplicate definitions

	* libnautilus-adapter/Makefile.am:
	* libnautilus-private/Makefile.am:
	* libnautilus/Makefile.am:
	Add correct libs

	* libnautilus-private/nautilus-file-private.h:
	Bitfields can't be enums.

	* libnautilus-private/nautilus-volume-monitor.c:
	Implement AIX support.

	* src/Makefile.am:
	Add POPT_FLAGS
2003-04-23 09:50:03 +00:00

122 lines
3.7 KiB
C

#include "test.h"
#include <eel/eel-string-picker.h>
#include <libnautilus-private/nautilus-global-preferences.h>
#include <unistd.h>
static void
fruits_changed_callback (gpointer callback_data)
{
g_print ("Something underneath 'fruits' changed, dunno what\n");
}
static void
int_picker_changed_callback (EelStringPicker *string_picker,
gpointer callback_data)
{
char *selected_string;
int new_value;
g_return_if_fail (EEL_IS_STRING_PICKER (string_picker));
g_return_if_fail (callback_data != NULL);
selected_string = eel_string_picker_get_selected_string (string_picker);
new_value = eel_string_picker_get_index_for_string (string_picker, selected_string);
eel_preferences_set_integer ((const char *) callback_data, new_value);
g_free (selected_string);
}
static GtkWidget *
picker_new (const char *name,
const EelStringList *entries)
{
GtkWidget *string_picker;
g_return_val_if_fail (name != NULL, NULL);
g_return_val_if_fail (entries != NULL, NULL);
string_picker = eel_string_picker_new ();
eel_caption_set_title_label (EEL_CAPTION (string_picker), name);
g_signal_connect (string_picker, "changed",
G_CALLBACK (int_picker_changed_callback), (gpointer) name);
eel_string_picker_set_string_list (EEL_STRING_PICKER (string_picker), entries);
eel_string_picker_set_selected_string_index (EEL_STRING_PICKER (string_picker),
eel_preferences_get_integer (name));
return string_picker;
}
int
main (int argc, char *argv[])
{
GtkWidget *window;
GtkWidget *green_picker;
GtkWidget *yellow_picker;
GtkWidget *red_picker;
GtkWidget *fruits_apple_picker;
GtkWidget *fruits_orange_picker;
GtkWidget *fruits_pear_picker;
GtkWidget *vbox;
EelStringList *user_level_entries;
EelStringList *color_entries;
EelStringList *fruits_entries;
test_init (&argc, &argv);
nautilus_global_preferences_init ();
user_level_entries = eel_string_list_new_from_tokens ("Beginner,Intermediate,Advanced", ",", TRUE);
color_entries = eel_string_list_new_from_tokens ("0,1,2,3,4,5,6,7,8,9,10", ",", TRUE);
fruits_entries = eel_string_list_new_from_tokens ("0,1,2,3", ",", TRUE);
eel_preferences_set_emergency_fallback_integer ("green", 3);
eel_preferences_set_emergency_fallback_integer ("yellow", 9);
eel_preferences_set_emergency_fallback_integer ("red", 7);
eel_preferences_set_emergency_fallback_integer ("fruits/apple", 1);
eel_preferences_set_emergency_fallback_integer ("fruits/orange", 2);
eel_preferences_set_emergency_fallback_integer ("fruits/pear", 3);
/* sleep (10); */
window = test_window_new (NULL, 4);
test_window_set_title_with_pid (GTK_WINDOW (window), "Preferences Change");
vbox = gtk_vbox_new (FALSE, 2);
gtk_container_add (GTK_CONTAINER (window), vbox);
green_picker = picker_new ("green", color_entries);
yellow_picker = picker_new ("yellow", color_entries);
red_picker = picker_new ("red", color_entries);
fruits_apple_picker = picker_new ("fruits/apple", fruits_entries);
fruits_orange_picker = picker_new ("fruits/orange", fruits_entries);
fruits_pear_picker = picker_new ("fruits/pear", fruits_entries);
gtk_box_pack_start (GTK_BOX (vbox), green_picker, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), yellow_picker, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), red_picker, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (vbox), fruits_apple_picker, FALSE, FALSE, 20);
gtk_box_pack_start (GTK_BOX (vbox), fruits_orange_picker, FALSE, FALSE, 20);
gtk_box_pack_start (GTK_BOX (vbox), fruits_pear_picker, FALSE, FALSE, 20);
eel_string_list_free (user_level_entries);
eel_string_list_free (color_entries);
eel_string_list_free (fruits_entries);
eel_preferences_add_callback ("fruits", fruits_changed_callback, NULL);
gtk_widget_show_all (window);
gtk_main ();
return 0;
}