[gnome-control-center/wip/add-account: 7/15] user-accounts: Add test tool frob-account-dialog



commit 0a2fe6e075a7d44e3ac76e45306e1c22aa372ba8
Author: Stef Walter <stefw gnome org>
Date:   Wed Jun 6 23:08:22 2012 +0200

    user-accounts: Add test tool frob-account-dialog
    
    A simple tool to show the add account dialog for quick
    iterations testing of the 'enterprise login' functionality.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=677548

 panels/user-accounts/Makefile.am           |   20 +++++++++
 panels/user-accounts/frob-account-dialog.c |   61 ++++++++++++++++++++++++++++
 2 files changed, 81 insertions(+), 0 deletions(-)
---
diff --git a/panels/user-accounts/Makefile.am b/panels/user-accounts/Makefile.am
index 4325987..83d1a07 100644
--- a/panels/user-accounts/Makefile.am
+++ b/panels/user-accounts/Makefile.am
@@ -69,6 +69,26 @@ endif
 
 libuser_accounts_la_LDFLAGS = $(PANEL_LDFLAGS)
 
+noinst_PROGRAMS = frob-account-dialog
+
+frob_account_dialog_SOURCES = \
+	frob-account-dialog.c \
+	um-account-dialog.h \
+	um-account-dialog.c \
+	um-user.h \
+	um-user.c \
+	um-user-manager.c \
+	um-user-manager.h \
+	um-utils.h \
+	um-utils.c
+
+frob_account_dialog_LDADD = \
+	$(libuser_accounts_la_LIBADD)
+
+frob_account_dialog_CFLAGS = \
+	$(AM_CFLAGS) \
+	-DUIDIR=\""$(pkgdatadir)/ui/user-accounts"\"
+
 CLEANFILES =				\
 	$(BUILT_SOURCES)		\
 	$(NULL)
diff --git a/panels/user-accounts/frob-account-dialog.c b/panels/user-accounts/frob-account-dialog.c
new file mode 100644
index 0000000..619b53c
--- /dev/null
+++ b/panels/user-accounts/frob-account-dialog.c
@@ -0,0 +1,61 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*-
+  *
+  * Copyright (C) 2012 Red Hat, Inc.
+  *
+  * This program is free software; you can redistribute it and/or modify
+  * it under the terms of the GNU General Public License as published by
+  * the Free Software Foundation; either version 2 of the License, or
+  * (at your option) any later version.
+  *
+  * This program is distributed in the hope that it will be useful,
+  * but WITHOUT ANY WARRANTY; without even the implied warranty of
+  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  * GNU General Public License for more details.
+  *
+  * You should have received a copy of the GNU General Public License
+  * along with this program; if not, write to the Free Software
+  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+  */
+
+#include "um-account-dialog.h"
+
+#include <gtk/gtk.h>
+
+static void
+on_dialog_complete (GObject *object,
+                    GAsyncResult *result,
+                    gpointer user_data)
+{
+	GMainLoop *loop = user_data;
+	UmUser *user;
+
+	user = um_account_dialog_finish (UM_ACCOUNT_DIALOG (object), result);
+	if (user == NULL) {
+		g_printerr ("No user created\n");
+	} else {
+		g_printerr ("User created: %s\n", um_user_get_user_name (user));
+		g_object_unref (user);
+	}
+
+	g_main_loop_quit (loop);
+}
+
+int
+main (int argc,
+      char *argv[])
+{
+	UmAccountDialog *dialog;
+	GMainLoop *loop;
+
+	gtk_init (&argc, &argv);
+
+	dialog = um_account_dialog_new ();
+	loop = g_main_loop_new (NULL, FALSE);
+
+	um_account_dialog_perform (dialog, NULL, on_dialog_complete, loop);
+
+	g_main_loop_run (loop);
+	g_main_loop_unref (loop);
+
+	return 0;
+}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]