Mercurial > hg > octave-nkf
view scripts/image/colormap.m @ 15137:16a6b0a6855d gui
GUI: support for octave arguments and integrate with run-octave.
* src/octave.h (octave_initialize_interpreter, octave_execute_interpreter):
New functions.
(octave_cmdline_argc, octave_cmdline_argv, octave_embedded): New variables.
* src/octave.cc (octave_cmdline_argc, octave_cmdline_argv, octave_embedded):
New variables.
(octave_initialize_interpreter, octave_execute_interpreter): New functions.
(octave_main): Rewrite using them.
* run-octave.in (octave_executable): New variable.
(-gui): New option flag.
* gui/src/octave-adapter/octave-main-thread.cc (octave_main_thread::run):
Use octave_execute_interpreter.
* gui/src/octave-gui.cc (dissociate_terminal): New function.
(main): Use it. Also use octave_initialize_interpreter.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Sun, 05 Aug 2012 16:15:58 -0400 |
parents | b9c02ee24de1 |
children | 806ea52af230 |
line wrap: on
line source
## Copyright (C) 1994-2012 John W. Eaton ## Copyright (C) 2012 Carnë Draug ## ## 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 ## <http://www.gnu.org/licenses/>. ## -*- texinfo -*- ## @deftypefn {Function File} {@var{cmap} =} colormap () ## @deftypefnx {Function File} {@var{cmap} =} colormap (@var{map}) ## @deftypefnx {Function File} {@var{cmap} =} colormap ("default") ## @deftypefnx {Function File} {@var{cmap} =} colormap ("list") ## @deftypefnx {Function File} {@var{cmap} =} colormap ("register", "name") ## @deftypefnx {Function File} {@var{cmap} =} colormap ("unregister", "name") ## Query or set the current colormap. ## ## @code{colormap (@var{map})} sets the current colormap to @var{map}. The ## colormap should be an @var{n} row by 3 column matrix. The columns ## contain red, green, and blue intensities respectively. All entries ## must be between 0 and 1 inclusive. The new colormap is returned. ## ## @code{colormap ("default")} restores the default colormap (the ## @code{jet} map with 64 entries). The default colormap is returned. ## ## @code{colormap ("list")} returns a cell array with all the available ## colormaps. The options `register' and `unregister' will add or remove the ## colormap @var{name} to it. ## ## With no arguments, @code{colormap} returns the current color map. ## @seealso{jet} ## @end deftypefn ## Author: Tony Richardson <arichard@stark.cc.oh.us> ## Created: July 1994 ## Adapted-By: jwe function cmap = colormap (map, name) if (nargin > 2) print_usage (); endif persistent map_list = cell (); if (nargin == 1) if (ischar (map)) if (strcmp (map, "default")) map = jet (64); elseif (strcmp (map, "list")) cmap = map_list; return; else map = feval (map); endif endif if (! isempty (map)) if (columns (map) != 3) error ("colormap: MAP must have 3 columns: [R,G,B]"); endif if (min (min (map)) < 0 || max (max (map)) > 1) error ("colormap: MAP must have values in [0,1]"); endif ## Set the new color map set (gcf (), "colormap", map); endif elseif (nargin == 2) if (! ischar (map) || all (! strcmp (map, {"register", "unregister"}))) print_usage (); elseif (! ischar (name)) error ("colormap: to register/unregister a colormap, NAME must be a string"); elseif (strcmp (map, "register")) map_list{end+1} = name; elseif (strcmp (map, "unregister")) map_list(strcmp (name, map_list)) = []; endif endif ## Return current color map. if (nargout > 0 || (nargout == 0 && nargin == 0)) cmap = get (gcf (), "colormap"); endif endfunction