changeset 24600:d9d6729bce40

desktop.m: Deprecate function. * scripts/deprecated/desktop.m: Moved from scripts/miscellaneous. Added deprecation warning and deprecation note to docstring. * NEWS: Announce deprecation and replacement. * scripts/deprecated/module.mk, scripts/miscellaneous/module.mk: Update build system for new location of desktop.m
author Rik <rik@octave.org>
date Sun, 14 Jan 2018 17:39:48 -0800
parents fdfb026486a8
children 3d66e5dbb5ad
files NEWS scripts/deprecated/desktop.m scripts/deprecated/module.mk scripts/miscellaneous/desktop.m scripts/miscellaneous/module.mk
diffstat 5 files changed, 64 insertions(+), 50 deletions(-) [+]
line wrap: on
line diff
--- a/NEWS	Sun Jan 14 17:17:58 2018 -0800
+++ b/NEWS	Sun Jan 14 17:39:48 2018 -0800
@@ -258,6 +258,7 @@
       Function             | Replacement
       ---------------------|------------------
       chop                 | sprintf for visual results
+      desktop              | isguirunning
 
  ** The following functions were deprecated in Octave 4.0 and have been
     removed from Octave 4.4.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scripts/deprecated/desktop.m	Sun Jan 14 17:39:48 2018 -0800
@@ -0,0 +1,62 @@
+## Copyright (C) 2013-2017 John W. Eaton
+##
+## This file is part of Octave.
+##
+## Octave 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 3 of the License, or
+## (at your option) any later version.
+##
+## Octave 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 Octave; see the file COPYING.  If not, see
+## <https://www.gnu.org/licenses/>.
+
+## -*- texinfo -*-
+## @deftypefn {} {@var{used} =} desktop ("-inuse")
+##
+## @code{desktop} is deprecated and will be removed in Octave version 4.8.
+## Use @code{isguirunning} for the equivalent functionality.
+##
+## Return true if the desktop (GUI) is currently in use.
+## @seealso{isguirunning}
+## @end deftypefn
+
+## Deprecated in version 4.4
+
+function retval = desktop (arg)
+
+  persistent warned = false;
+  if (! warned)
+    warned = true;
+    warning ("Octave:deprecated-function",
+             "desktop is obsolete and will be removed from a future version of Octave, please use isguirunning instead");
+  endif
+
+  if (nargin == 0)
+    if (isguirunning ())
+      return;  # desktop() is a NOP when GUI running
+    else
+      print_usage ();
+    endif
+  elseif (nargin > 1)
+    error ('desktop: only one argument, "-inuse", is allowed');
+  endif
+
+  switch (tolower (arg))
+    case "-inuse"
+      retval = isguirunning ();
+    otherwise
+      print_usage ();
+  endswitch
+
+endfunction
+
+
+## Test input validation
+%!error <only one argument, "-inuse", is allowed> desktop (1,2)
+%!error desktop ("-invalid_option")
--- a/scripts/deprecated/module.mk	Sun Jan 14 17:17:58 2018 -0800
+++ b/scripts/deprecated/module.mk	Sun Jan 14 17:39:48 2018 -0800
@@ -4,6 +4,7 @@
   %reldir%/bitmax.m \
   %reldir%/chop.m \
   %reldir%/comma.m \
+  %reldir%/desktop.m \
   %reldir%/isstr.m \
   %reldir%/mahalanobis.m \
   %reldir%/md5sum.m \
--- a/scripts/miscellaneous/desktop.m	Sun Jan 14 17:17:58 2018 -0800
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,49 +0,0 @@
-## Copyright (C) 2013-2017 John W. Eaton
-##
-## This file is part of Octave.
-##
-## Octave 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 3 of the License, or
-## (at your option) any later version.
-##
-## Octave 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 Octave; see the file COPYING.  If not, see
-## <https://www.gnu.org/licenses/>.
-
-## -*- texinfo -*-
-## @deftypefn {} {@var{used} =} desktop ("-inuse")
-## Return true if the desktop (GUI) is currently in use.
-## @seealso{isguirunning}
-## @end deftypefn
-
-function retval = desktop (arg)
-
-  if (nargin == 0)
-    if (isguirunning ())
-      return;  # desktop() is a NOP when GUI running
-    else
-      print_usage ();
-    endif
-  elseif (nargin > 1)
-    error ('desktop: only one argument, "-inuse", is allowed');
-  endif
-
-  switch (tolower (arg))
-    case "-inuse"
-      retval = isguirunning ();
-    otherwise
-      print_usage ();
-  endswitch
-
-endfunction
-
-
-## Test input validation
-%!error <only one argument, "-inuse", is allowed> desktop (1,2)
-%!error desktop ("-invalid_option")
--- a/scripts/miscellaneous/module.mk	Sun Jan 14 17:17:58 2018 -0800
+++ b/scripts/miscellaneous/module.mk	Sun Jan 14 17:39:48 2018 -0800
@@ -17,7 +17,6 @@
   %reldir%/computer.m \
   %reldir%/copyfile.m \
   %reldir%/delete.m \
-  %reldir%/desktop.m \
   %reldir%/dir.m \
   %reldir%/dos.m \
   %reldir%/edit.m \