gui: Move null_if_empty_param() from psppire-window to helper.
authorBen Pfaff <blp@cs.stanford.edu>
Thu, 12 May 2011 05:27:00 +0000 (22:27 -0700)
committerBen Pfaff <blp@cs.stanford.edu>
Thu, 12 May 2011 05:38:11 +0000 (22:38 -0700)
An upcoming commit will introduce a new user of this function in a
different source file, so it seems best to have this defined in a
common header file.

src/ui/gui/helper.h
src/ui/gui/psppire-window.c

index f7660dc43b8332f674e664202dfe76fdc198e418..e7fb62572d1c20baa11038a38979276aef6f04ad 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPPIRE - a graphical user interface for PSPP.
-   Copyright (C) 2004, 2009, 2010  Free Software Foundation
+   Copyright (C) 2004, 2009, 2010, 2011  Free Software Foundation
 
    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
@@ -33,6 +33,20 @@ gchar *paste_syntax_to_window (gchar *syntax);
 
 struct fmt_spec;
 
+/* Returns a new GParamSpec for a string.  An attempt to store the empty string
+   in the parameter will be silently translated into storing a null pointer. */
+static inline GParamSpec *
+null_if_empty_param (const gchar *name, const gchar *nick,
+                     const gchar *blurb, const gchar *default_value,
+                     GParamFlags flags)
+{
+  GParamSpec *param;
+
+  param = g_param_spec_string (name, nick, blurb, default_value, flags);
+  ((GParamSpecString *) param)->null_fold_if_empty = TRUE;
+  return param;
+}
+
 
 /* Formats a value according to FORMAT
    The returned string must be freed when no longer required */
index 6612a5d53d3fa1b303f3a8837ae7a8a3d6ed7c69..fbb91a78cc0f4edd45cacb5c83a56f3fe2de2343 100644 (file)
@@ -271,18 +271,6 @@ psppire_window_finalize (GObject *object)
     G_OBJECT_CLASS (parent_class)->finalize (object);
 }
 
-static GParamSpec *
-null_if_empty_param (const gchar *name, const gchar *nick,
-                     const gchar *blurb, const gchar *default_value,
-                     GParamFlags flags)
-{
-  GParamSpec *param;
-
-  param = g_param_spec_string (name, nick, blurb, default_value, flags);
-  ((GParamSpecString *) param)->null_fold_if_empty = TRUE;
-  return param;
-}
-
 static void
 psppire_window_class_init (PsppireWindowClass *class)
 {