[gtk+] Simple test for display-less widget creation



commit 5f04bf6429ef46d4214a404f624c6b64105b03ed
Author: Matthias Clasen <mclasen redhat com>
Date:   Fri Feb 4 22:06:25 2011 -0500

    Simple test for display-less widget creation

 tests/Makefile.am    |    5 ++++-
 tests/testnoscreen.c |   47 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 51 insertions(+), 1 deletions(-)
---
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 335e33e..397f211 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -103,7 +103,8 @@ noinst_PROGRAMS =  $(TEST_PROGS)	\
 	testswitch			\
 	styleexamples			\
 	testtreemenu			\
-	testtoplevelembed
+	testtoplevelembed		\
+	testnoscreen
 
 if USE_X11
 noinst_PROGRAMS += testerrors
@@ -199,6 +200,7 @@ testexpander_DEPENDENCIES = $(TEST_DEPS)
 testswitch_DEPENDENCIES = $(TEST_DEPS)
 styleexamples_DEPENDENCIES = $(TEST_DEPS)
 testtoplevelembed_DEPENDENCIES = $(TEST_DEPS)
+testnoscreen_DEPENDENCIES = $(TEST_DEPS)
 
 flicker_LDADD = $(LDADDS)
 simple_LDADD = $(LDADDS)
@@ -280,6 +282,7 @@ testexpander_LDADD = $(LDADDS)
 testswitch_LDADD = $(LDADDS)
 styleexamples_LDADD = $(LDADDS)
 testtoplevelembed_LDADD = $(LDADDS)
+testnoscreen_LDADD = $(LDADDS)
 
 testentrycompletion_SOURCES = 	\
 	prop-editor.c		\
diff --git a/tests/testnoscreen.c b/tests/testnoscreen.c
new file mode 100644
index 0000000..cce8a5a
--- /dev/null
+++ b/tests/testnoscreen.c
@@ -0,0 +1,47 @@
+/* testnoscreen.c
+ * Copyright (C) 2011 Red Hat, Inc.
+ * Authors: Matthias Clasen
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library 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
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public
+ * License along with this library; if not, write to the
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+ * Boston, MA 02111-1307, USA.
+ */
+
+#include <gtk/gtk.h>
+
+/* Very limited test to ensure that creating widgets works
+ * before opening a display connection
+ */
+int main (int argc, char *argv[])
+{
+  GtkWidget *window;
+  GtkWidget *button;
+  GdkDisplay *display;
+
+  gtk_parse_args (&argc, &argv);
+
+  window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
+  button = gtk_button_new ();
+  gtk_container_add (GTK_CONTAINER (window), button);
+
+  display = gdk_display_open (NULL);
+
+  gtk_window_set_screen (GTK_WINDOW (window), gdk_display_get_default_screen (display));
+
+  gtk_widget_show_all (window);
+
+  gtk_main ();
+
+  return 0;
+}



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