annotate scripts/plot/util/__gnuplot_drawnow__.m @ 20602:af5591ef9790 stable

__gnuplot_drawnow__.m: Use "screenpixelsperinch" instead of constant value (bug #46122).
author ederag <edera@gmx.fr>
date Tue, 06 Oct 2015 11:07:10 +0200
parents 9fc020886ae9
children 5fc798a9b32c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19731
4197fc428c7d maint: Update copyright notices for 2015.
John W. Eaton <jwe@octave.org>
parents: 19630
diff changeset
1 ## Copyright (C) 2005-2015 John W. Eaton
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
2 ##
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
3 ## This file is part of Octave.
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
4 ##
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
5 ## Octave is free software; you can redistribute it and/or modify it
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
6 ## under the terms of the GNU General Public License as published by
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
7 ## the Free Software Foundation; either version 3 of the License, or (at
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
8 ## your option) any later version.
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
9 ##
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
10 ## Octave is distributed in the hope that it will be useful, but
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
13 ## General Public License for more details.
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
14 ##
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
15 ## You should have received a copy of the GNU General Public License
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
16 ## along with Octave; see the file COPYING. If not, see
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
17 ## <http://www.gnu.org/licenses/>.
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
18
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
19 ## -*- texinfo -*-
12221
a91037b36b4c rename gnuplot_drawnow to __gnuplot_drawnow__
John W. Eaton <jwe@octave.org>
parents: 11589
diff changeset
20 ## @deftypefn {Function File} {} __gnuplot_drawnow__ (@var{h}, @var{term}, @var{file}, @var{mono}, @var{debug_file})
a91037b36b4c rename gnuplot_drawnow to __gnuplot_drawnow__
John W. Eaton <jwe@octave.org>
parents: 11589
diff changeset
21 ## Undocumented internal function.
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
22 ## @end deftypefn
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
23
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
24 ## Author: jwe
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
25
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
26 function __gnuplot_drawnow__ (h, term, file, mono = false, debug_file)
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
27
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
28 if (nargin < 1 || nargin > 5 || nargin == 2)
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
29 print_usage ();
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
30 endif
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
31
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
32 if (nargin >= 3 && nargin <= 5)
8624
ff7d90d92db8 gnuplot_drawnow.m: style fixes.
Ben Abbott <bpabbott@mac.com>
parents: 8610
diff changeset
33 ## Produce various output formats, or redirect gnuplot stream to a
ff7d90d92db8 gnuplot_drawnow.m: style fixes.
Ben Abbott <bpabbott@mac.com>
parents: 8610
diff changeset
34 ## debug file.
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
35 plot_stream = [];
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
36 fid = [];
9055
8651fcc89556 gnuplot_drawnow.m: Always set figure property "__plot_stream__" to the active gnuplot steam.
Ben Abbott <bpabbott@mac.com>
parents: 9011
diff changeset
37 default_plot_stream = get (h, "__plot_stream__");
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
38 unwind_protect
9113
4bb94a71913b __gnuplot_open_stream__.m: New function and its application.
Ben Abbott <bpabbott@mac.com>
parents: 9107
diff changeset
39 plot_stream = __gnuplot_open_stream__ (2, h);
10968
f5c863803e29 gnuplot_drawnow.m: Use new function __gnuplot_has_terminal__().
Ben Abbott <bpabbott@mac.com>
parents: 10913
diff changeset
40 gnuplot_supports_term = __gnuplot_has_terminal__ (term, plot_stream);
9008
7a7cf569528d gnuplot_drawnow.m: Check that gnuplot has internal variable "GPVAL_TERMINALS".
Ben Abbott <bpabbott@mac.com>
parents: 9002
diff changeset
41 if (gnuplot_supports_term)
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
42 enhanced = gnuplot_set_term (plot_stream(1), true, h, term, file);
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
43 __go_draw_figure__ (h, plot_stream(1), enhanced, mono);
9002
5cc15e4b4e5c gnuplot_drawnow.m: Verify the gnuplot terminal is supported.
Ben Abbott <bpabbott@mac.com>
parents: 8920
diff changeset
44 if (nargin == 5)
5cc15e4b4e5c gnuplot_drawnow.m: Verify the gnuplot terminal is supported.
Ben Abbott <bpabbott@mac.com>
parents: 8920
diff changeset
45 fid = fopen (debug_file, "wb");
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
46 enhanced = gnuplot_set_term (fid, true, h, term, file);
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
47 __go_draw_figure__ (h, fid, enhanced, mono);
9002
5cc15e4b4e5c gnuplot_drawnow.m: Verify the gnuplot terminal is supported.
Ben Abbott <bpabbott@mac.com>
parents: 8920
diff changeset
48 endif
5cc15e4b4e5c gnuplot_drawnow.m: Verify the gnuplot terminal is supported.
Ben Abbott <bpabbott@mac.com>
parents: 8920
diff changeset
49 else
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
50 error ('__gnuplot_drawnow__: the gnuplot terminal, "%s", is not available',
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11588
diff changeset
51 gnuplot_trim_term (term));
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
52 endif
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
53 unwind_protect_cleanup
9055
8651fcc89556 gnuplot_drawnow.m: Always set figure property "__plot_stream__" to the active gnuplot steam.
Ben Abbott <bpabbott@mac.com>
parents: 9011
diff changeset
54 set (h, "__plot_stream__", default_plot_stream);
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
55 if (! isempty (plot_stream))
9011
dd5725531732 gnuplot_drawnow.m: When printing, pass scalar plot_stream to __gnuplot_draw_figure__, and close all plot streams when done.
Ben Abbott <bpabbott@mac.com>
parents: 9008
diff changeset
56 pclose (plot_stream(1));
9561
c60a9e1a0372 try to avoid gnuplot zombies
John W. Eaton <jwe@octave.org>
parents: 9478
diff changeset
57 if (numel (plot_stream) > 1)
9011
dd5725531732 gnuplot_drawnow.m: When printing, pass scalar plot_stream to __gnuplot_draw_figure__, and close all plot streams when done.
Ben Abbott <bpabbott@mac.com>
parents: 9008
diff changeset
58 pclose (plot_stream(2));
dd5725531732 gnuplot_drawnow.m: When printing, pass scalar plot_stream to __gnuplot_draw_figure__, and close all plot streams when done.
Ben Abbott <bpabbott@mac.com>
parents: 9008
diff changeset
59 endif
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10211
diff changeset
60 if (numel (plot_stream) > 2)
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10211
diff changeset
61 waitpid (plot_stream(3));
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10211
diff changeset
62 endif
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
63 endif
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
64 if (! isempty (fid))
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
65 fclose (fid);
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
66 endif
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
67 end_unwind_protect
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
68 else # nargin == 1
8624
ff7d90d92db8 gnuplot_drawnow.m: style fixes.
Ben Abbott <bpabbott@mac.com>
parents: 8610
diff changeset
69 ## Graphics terminal for display.
8249
1f429086565c [mq]: hidden-children
John W. Eaton <jwe@octave.org>
parents: 7680
diff changeset
70 plot_stream = get (h, "__plot_stream__");
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
71 if (isempty (plot_stream))
9113
4bb94a71913b __gnuplot_open_stream__.m: New function and its application.
Ben Abbott <bpabbott@mac.com>
parents: 9107
diff changeset
72 plot_stream = __gnuplot_open_stream__ (2, h);
8789
d9bff42fec43 gnuplot_drawnow.m: Only close the gnuplot window and send position/size info when the figure's position property has changed.
Ben Abbott <bpabbott@mac.com>
parents: 8762
diff changeset
73 new_stream = true;
d9bff42fec43 gnuplot_drawnow.m: Only close the gnuplot window and send position/size info when the figure's position property has changed.
Ben Abbott <bpabbott@mac.com>
parents: 8762
diff changeset
74 else
d9bff42fec43 gnuplot_drawnow.m: Only close the gnuplot window and send position/size info when the figure's position property has changed.
Ben Abbott <bpabbott@mac.com>
parents: 8762
diff changeset
75 new_stream = false;
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
76 endif
15376
860b4edb0bea Set Qt as the default gnuplot terminal if using the GUI.
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 14594
diff changeset
77 term = gnuplot_default_term (plot_stream);
9785
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
78 if (strcmp (term, "dumb"))
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
79 ## popen2 eats stdout of gnuplot, use temporary file instead
19312
6ca096827123 Use tempname() rather than tmpnam() in core Octave.
Rik <rik@octave.org>
parents: 17744
diff changeset
80 dumb_tmp_file = tempname ();
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
81 enhanced = gnuplot_set_term (plot_stream(1), new_stream, h,
9785
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
82 term, dumb_tmp_file);
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
83 else
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
84 enhanced = gnuplot_set_term (plot_stream(1), new_stream, h, term);
11113
a8ac114ec9ab Stylefixes, replace end by endif.
Thorsten Meyer <thorsten.meyier@gmx.de>
parents: 10968
diff changeset
85 endif
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
86 __go_draw_figure__ (h, plot_stream(1), enhanced, mono);
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
87 fflush (plot_stream(1));
9785
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
88 if (strcmp (term, "dumb"))
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
89 fid = -1;
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
90 while (fid < 0)
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
91 pause (0.1);
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
92 fid = fopen (dumb_tmp_file, 'r');
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
93 endwhile
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
94 ## reprint the plot on screen
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
95 [a, count] = fscanf (fid, '%c', Inf);
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
96 fclose (fid);
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
97 if (count > 0)
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
98 if (a(1) == 12)
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
99 a = a(2:end); # avoid ^L at the beginning
11113
a8ac114ec9ab Stylefixes, replace end by endif.
Thorsten Meyer <thorsten.meyier@gmx.de>
parents: 10968
diff changeset
100 endif
9945
b4661b498a7e gnuplot_drawnow.m: Prunec prompt lines from dumb terminal output.
Ben Abbott <bpabbott@mac.com>
parents: 9785
diff changeset
101 puts (a);
11113
a8ac114ec9ab Stylefixes, replace end by endif.
Thorsten Meyer <thorsten.meyier@gmx.de>
parents: 10968
diff changeset
102 endif
9785
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
103 unlink (dumb_tmp_file);
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
104 endif
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
105 endif
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
106
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
107 endfunction
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
108
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
109 function enhanced = gnuplot_set_term (plot_stream, new_stream, h, term, file)
9393
d6c99b2ee941 print.m: reimplement options -landscape and -portrait.
Ben Abbott <bpabbott@mac.com>
parents: 9334
diff changeset
110 ## Generate the gnuplot "set terminal <term> ..." command.
d6c99b2ee941 print.m: reimplement options -landscape and -portrait.
Ben Abbott <bpabbott@mac.com>
parents: 9334
diff changeset
111 ## When "term" originates from print.m, it may include other options.
8793
4c989d52f35c gnuplot_drawnow.m (gnuplot_set_term): adjust nargin checks for new signature
John W. Eaton <jwe@octave.org>
parents: 8789
diff changeset
112 if (nargin < 4)
11576
8ac9687dbe9f rename backend to graphics_toolkit
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
113 ## This supports the gnuplot graphics toolkit.
15376
860b4edb0bea Set Qt as the default gnuplot terminal if using the GUI.
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 14594
diff changeset
114 term = gnuplot_default_term (plot_stream);
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
115 opts_str = "";
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
116 else
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
117 ## Get the one word terminal id and save the remaining as options to be
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
118 ## passed on to gnuplot. The terminal may respect the graphics toolkit.
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
119 [term, opts_str] = gnuplot_trim_term (term);
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
120 term = lower (term);
14225
f0d903879eaa Replace unnecessary strcmpi calls with strcmp.
Rik <octave@nomad.inbox5.com>
parents: 14222
diff changeset
121 if (strcmp (term, "lua"))
f0d903879eaa Replace unnecessary strcmpi calls with strcmp.
Rik <octave@nomad.inbox5.com>
parents: 14222
diff changeset
122 ## Replace "lua tikz" with just "tikz"
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
123 term = "tikz";
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
124 opts_str = strrep (opts_str, "tikz", "");
8889
665b264b6a50 Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents: 8813
diff changeset
125 endif
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
126 endif
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
127
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
128 if (strfind (opts_str, "noenhanced"))
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
129 enhanced = false;
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
130 else
15376
860b4edb0bea Set Qt as the default gnuplot terminal if using the GUI.
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 14594
diff changeset
131 enhanced = gnuplot_is_enhanced_term (plot_stream, term);
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
132 endif
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
133
8624
ff7d90d92db8 gnuplot_drawnow.m: style fixes.
Ben Abbott <bpabbott@mac.com>
parents: 8610
diff changeset
134 ## Set the terminal.
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
135 if (! isempty (term))
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
136
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
137 if (enhanced)
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
138 enh_str = "enhanced";
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
139 else
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
140 enh_str = "";
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
141 endif
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
142
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
143 if (! isempty (h) && isfigure (h))
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
144
11576
8ac9687dbe9f rename backend to graphics_toolkit
John W. Eaton <jwe@octave.org>
parents: 11523
diff changeset
145 ## Generate gnuplot title string for plot windows.
14222
190952239c2c Use '!' for not operation in preference to '~'.
Rik <octave@nomad.inbox5.com>
parents: 14206
diff changeset
146 if (output_to_screen (term) && ! strcmp (term, "dumb"))
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
147 fig.numbertitle = get (h, "numbertitle");
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
148 fig.name = strrep (get (h, "name"), '"', '\"');
14225
f0d903879eaa Replace unnecessary strcmpi calls with strcmp.
Rik <octave@nomad.inbox5.com>
parents: 14222
diff changeset
149 if (strcmp (get (h, "numbertitle"), "on"))
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
150 title_str = sprintf ("Figure %d", h);
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
151 else
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
152 title_str = "";
8610
85c9906abfd1 use endif and endfor instead of end
John W. Eaton <jwe@octave.org>
parents: 8530
diff changeset
153 endif
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
154 if (! isempty (fig.name) && ! isempty (title_str))
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
155 title_str = sprintf ("%s: %s", title_str, fig.name);
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
156 elseif (! isempty (fig.name) && isempty (title_str))
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
157 title_str = fig.name;
8610
85c9906abfd1 use endif and endfor instead of end
John W. Eaton <jwe@octave.org>
parents: 8530
diff changeset
158 endif
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
159 if (! isempty (title_str))
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
160 title_str = sprintf ('title "%s"', title_str);
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
161 endif
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
162 if (strcmp (term, "aqua"))
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
163 ## Adjust axes-label and tick-label spacing.
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
164 opts_str = sprintf ('%s font "%s,%d"', opts_str,
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
165 get (0, "defaultaxesfontname"),
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
166 get (0, "defaultaxesfontsize") / 1.5);
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
167 endif
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
168 else
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
169 title_str = "";
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
170 endif
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
171
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11576
diff changeset
172 if (! (any (strfind (opts_str, " size ") > 0)
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10211
diff changeset
173 || any (strfind (opts_str, "size ") == 1)))
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
174 ## Get figure size in pixels. Rely on listener to handle coversion.
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
175 units = get (h, "units");
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
176 unwind_protect
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
177 set (h, "units", "pixels");
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
178 position_in_pixels = get (h, "position");
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
179 unwind_protect_cleanup
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
180 set (h, "units", units);
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
181 end_unwind_protect
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
182 gnuplot_pos = position_in_pixels(1:2);
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
183 gnuplot_size = position_in_pixels(3:4);
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
184 if (! (output_to_screen (term)
14235
921b15c13adc Fix support for gnuplot's canvas (html5) terminal. Bug # 35332.
Ben Abbott <bpabbott@mac.com>
parents: 14225
diff changeset
185 || any (strcmp (term, {"canvas", "emf", "gif", "jpeg", ...
921b15c13adc Fix support for gnuplot's canvas (html5) terminal. Bug # 35332.
Ben Abbott <bpabbott@mac.com>
parents: 14225
diff changeset
186 "pbm", "png", "pngcairo", "svg"}))))
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
187 ## Convert to inches
20602
af5591ef9790 __gnuplot_drawnow__.m: Use "screenpixelsperinch" instead of constant value (bug #46122).
ederag <edera@gmx.fr>
parents: 19867
diff changeset
188 gnuplot_pos = gnuplot_pos / get (0, "screenpixelsperinch");
af5591ef9790 __gnuplot_drawnow__.m: Use "screenpixelsperinch" instead of constant value (bug #46122).
ederag <edera@gmx.fr>
parents: 19867
diff changeset
189 gnuplot_size = gnuplot_size / get (0, "screenpixelsperinch");
10549
95c3e38098bf Untabify .m scripts
Rik <code@nomad.inbox5.com>
parents: 10211
diff changeset
190 endif
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
191 if (all (gnuplot_size > 0))
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
192 terminals_with_size = {"canvas", "emf", "epslatex", "fig", ...
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
193 "gif", "jpeg", "latex", "pbm", "pdf", ...
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
194 "pdfcairo", "postscript", "png", ...
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
195 "pngcairo", "pstex", "pslatex", "svg", "tikz"};
14417
12d13534265c Add support for figure positioning for gnuplot Windows terminals.
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
196 if (__gnuplot_has_feature__ ("windows_figure_position"))
12d13534265c Add support for figure positioning for gnuplot Windows terminals.
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
197 terminals_with_size{end+1} = "windows";
12d13534265c Add support for figure positioning for gnuplot Windows terminals.
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
198 endif
8889
665b264b6a50 Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents: 8813
diff changeset
199 if (__gnuplot_has_feature__ ("x11_figure_position"))
8638
20e93feaa7f8 gnuplot_drawnow.m: gnuplot_drawnow.m: respect x11 figure position property
Ben Abbott <bpabbott@mac.com>
parents: 8624
diff changeset
200 terminals_with_size{end+1} = "x11";
9398
684312a5291c Add feature 'wxt_has_size' to __gnuplot_has_feature__.m & apply in gnuplot_drawnow.m.
Ben Abbott <bpabbott@mac.com>
parents: 9393
diff changeset
201 endif
684312a5291c Add feature 'wxt_has_size' to __gnuplot_has_feature__.m & apply in gnuplot_drawnow.m.
Ben Abbott <bpabbott@mac.com>
parents: 9393
diff changeset
202 if (__gnuplot_has_feature__ ("wxt_figure_size"))
9161
406ed43c0233 gnuplot_drawnow.m: For figure size/position treat 'wxt' as 'x11'.
Ben Abbott <bpabbott@mac.com>
parents: 9113
diff changeset
203 terminals_with_size{end+1} = "wxt";
8638
20e93feaa7f8 gnuplot_drawnow.m: gnuplot_drawnow.m: respect x11 figure position property
Ben Abbott <bpabbott@mac.com>
parents: 8624
diff changeset
204 endif
11120
a44f979a35ce style fixes for some .m files
John W. Eaton <jwe@octave.org>
parents: 11113
diff changeset
205 switch (term)
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
206 case terminals_with_size
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
207 size_str = sprintf ("size %.12g,%.12g", gnuplot_size);
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
208 case "tikz"
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
209 size_str = sprintf ("size %gin,%gin", gnuplot_size);
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
210 case "dumb"
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
211 new_stream = 1;
19867
9fc020886ae9 maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents: 19731
diff changeset
212 if (! isempty (getenv ("COLUMNS"))
9fc020886ae9 maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents: 19731
diff changeset
213 && ! isempty (getenv ("LINES")))
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
214 ## Let dumb use full text screen size (minus prompt lines).
19867
9fc020886ae9 maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents: 19731
diff changeset
215 n = sprintf ("%i",
9fc020886ae9 maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents: 19731
diff changeset
216 -2 - length (find (sprintf ("%s", PS1) == "\n")));
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
217 ## n = the number of times \n appears in PS1
17174
c3c1ebfaa7dc maint: Use common indentation for switch statement.
Rik <rik@octave.org>
parents: 16161
diff changeset
218 size_str = ["size " getenv("COLUMNS") "," getenv("LINES") n];
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
219 else
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
220 ## Use the gnuplot default.
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
221 size_str = "";
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
222 endif
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
223 case {"aqua", "fig", "corel"}
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
224 size_str = sprintf ("size %g %g", gnuplot_size);
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
225 case "dxf"
9785
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
226 size_str = "";
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
227 otherwise
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
228 size_str = "";
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
229 endswitch
17405
3f0ed69d21c6 Replace unnecessary instances of strncmp with strcmp.
Rik <rik@octave.org>
parents: 17306
diff changeset
230 if ((strcmp (term, "x11")
14417
12d13534265c Add support for figure positioning for gnuplot Windows terminals.
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
231 && __gnuplot_has_feature__ ("x11_figure_position"))
12d13534265c Add support for figure positioning for gnuplot Windows terminals.
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
232 || (strcmpi (term, "windows")
12d13534265c Add support for figure positioning for gnuplot Windows terminals.
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
233 && __gnuplot_has_feature__ ("windows_figure_position")))
12d13534265c Add support for figure positioning for gnuplot Windows terminals.
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
234 ## X11/Windows allows the window to be positioned as well.
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
235 units = get (0, "units");
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
236 unwind_protect
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
237 set (0, "units", "pixels");
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
238 screen_size = get (0, "screensize")(3:4);
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
239 unwind_protect_cleanup
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
240 set (0, "units", units);
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
241 end_unwind_protect
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
242 if (all (screen_size > 0))
14417
12d13534265c Add support for figure positioning for gnuplot Windows terminals.
Ben Abbott <bpabbott@mac.com>
parents: 14363
diff changeset
243 ## For X11/Windows, set the figure positon as well as the size
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
244 ## gnuplot position is UL, Octave's is LL (same for screen/window)
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
245 gnuplot_pos(2) = screen_size(2) - gnuplot_pos(2) - gnuplot_size(2);
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
246 gnuplot_pos = max (gnuplot_pos, 1);
11587
c792872f8942 all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents: 11576
diff changeset
247 size_str = sprintf ("%s position %d,%d", size_str,
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
248 gnuplot_pos(1), gnuplot_pos(2));
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
249 endif
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
250 endif
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
251 else
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
252 size_str = "";
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11588
diff changeset
253 warning ("gnuplot_set_term: size is zero");
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
254 endif
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
255 else
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
256 ## A specified size take priority over the figure properies.
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
257 size_str = "";
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
258 endif
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
259 else
14552
86854d032a37 maint: miscellaneous style fixes for .m files
John W. Eaton <jwe@octave.org>
parents: 14417
diff changeset
260 if (isempty (h))
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11588
diff changeset
261 disp ("gnuplot_set_term: figure handle is empty");
14552
86854d032a37 maint: miscellaneous style fixes for .m files
John W. Eaton <jwe@octave.org>
parents: 14417
diff changeset
262 elseif (! isfigure (h))
11589
b0084095098e missing semicolons in script files
John W. Eaton <jwe@octave.org>
parents: 11588
diff changeset
263 disp ("gnuplot_set_term: not a figure handle");
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
264 endif
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
265 title_str = "";
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
266 size_str = "";
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
267 endif
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
268
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
269 ## Set the gnuplot terminal (type, enhanced, title, options & size).
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
270 term_str = ["set terminal " term];
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
271 if (! isempty (enh_str))
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
272 term_str = [term_str " " enh_str];
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
273 endif
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
274 if (! isempty (title_str))
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
275 term_str = [term_str " " title_str];
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
276 endif
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
277 if (isempty (strfind (term, "corel")))
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
278 if (! isempty (size_str) && new_stream)
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
279 ## size_str comes after other options to permit specification of
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
280 ## the canvas size for terminals cdr/corel.
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
281 term_str = [term_str " " size_str];
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
282 endif
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
283 if (nargin > 3 && ischar (opts_str))
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
284 ## Options must go last.
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
285 term_str = [term_str " " opts_str];
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
286 endif
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
287 else
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
288 if (nargin > 3 && ischar (opts_str))
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
289 ## Options must go last.
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
290 term_str = [term_str " " opts_str];
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
291 endif
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
292 if (! isempty (size_str) && new_stream)
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
293 ## size_str comes after other options to permit specification of
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
294 ## the canvas size for terminals cdr/corel.
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
295 term_str = [term_str " " size_str];
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
296 endif
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
297 endif
16095
1339c964b527 Fix warning when using "termoption dashed" with gnuplot 4.2.X (bug #38370)
Rik <rik@octave.org>
parents: 15845
diff changeset
298 if (! __gnuplot_has_feature__ ("has_termoption_dashed"))
1339c964b527 Fix warning when using "termoption dashed" with gnuplot 4.2.X (bug #38370)
Rik <rik@octave.org>
parents: 15845
diff changeset
299 ## If "set termoption dashed" isn't available add "dashed" option
1339c964b527 Fix warning when using "termoption dashed" with gnuplot 4.2.X (bug #38370)
Rik <rik@octave.org>
parents: 15845
diff changeset
300 ## to the "set terminal ..." command, if it is supported.
17245
7babcdb9bc13 Use ... instead of \ for line continuation marker.
Stefan Mahr <dac922@gmx.de>
parents: 17174
diff changeset
301 if (any (strcmp (term, {"aqua", "cgm", "eepic", "emf", "epslatex", ...
19867
9fc020886ae9 maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents: 19731
diff changeset
302 "fig", "pcl5", "mp", "next", "openstep", ...
9fc020886ae9 maint: Clean up m-files to follow Octave coding conventions.
Rik <rik@octave.org>
parents: 19731
diff changeset
303 "pdf", "pdfcairo", "pngcairo", "postscript", ...
16161
b672afbb7c3c Increase gnuplot linestyle dash lengths.
Ben Abbott <bpabbott@mac.com>
parents: 16108
diff changeset
304 "pslatex", "pstext", "svg", "tgif", "x11"})))
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
305 term_str = [term_str " dashed"];
16095
1339c964b527 Fix warning when using "termoption dashed" with gnuplot 4.2.X (bug #38370)
Rik <rik@octave.org>
parents: 15845
diff changeset
306 endif
17306
09543e9c8f40 Use explicit form of end (endif, endfor, etc.) in core m-files.
Rik <rik@octave.org>
parents: 17245
diff changeset
307 endif
16161
b672afbb7c3c Increase gnuplot linestyle dash lengths.
Ben Abbott <bpabbott@mac.com>
parents: 16108
diff changeset
308 if (any (strcmp (term, {"aqua", "wxt"})))
b672afbb7c3c Increase gnuplot linestyle dash lengths.
Ben Abbott <bpabbott@mac.com>
parents: 16108
diff changeset
309 term_str = [term_str, " ", "dashlength 1"];
b672afbb7c3c Increase gnuplot linestyle dash lengths.
Ben Abbott <bpabbott@mac.com>
parents: 16108
diff changeset
310 elseif (any (strcmp (term, {"epslatex", "postscript", "pslatex"})))
b672afbb7c3c Increase gnuplot linestyle dash lengths.
Ben Abbott <bpabbott@mac.com>
parents: 16108
diff changeset
311 term_str = [term_str, " ", "dashlength 2"];
b672afbb7c3c Increase gnuplot linestyle dash lengths.
Ben Abbott <bpabbott@mac.com>
parents: 16108
diff changeset
312 endif
10913
dd6b90f44ae5 Unify gnuplot printing with the fltk backend.
Ben Abbott <bpabbott@mac.com>
parents: 10635
diff changeset
313
9632
40acd13920e3 gnuplot_drawnow.m: Avoid flickering plot windows.
Ben Abbott <bpabbott@mac.com>
parents: 9561
diff changeset
314 ## Work around the gnuplot feature of growing the x11 window and
40acd13920e3 gnuplot_drawnow.m: Avoid flickering plot windows.
Ben Abbott <bpabbott@mac.com>
parents: 9561
diff changeset
315 ## flickering window (x11, windows, & wxt) when the mouse and
40acd13920e3 gnuplot_drawnow.m: Avoid flickering plot windows.
Ben Abbott <bpabbott@mac.com>
parents: 9561
diff changeset
316 ## multiplot are set in gnuplot.
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
317 fputs (plot_stream, "unset multiplot;\n");
9785
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
318 flickering_terms = {"x11", "windows", "wxt", "dumb"};
9632
40acd13920e3 gnuplot_drawnow.m: Avoid flickering plot windows.
Ben Abbott <bpabbott@mac.com>
parents: 9561
diff changeset
319 if (! any (strcmp (term, flickering_terms))
11246
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
320 || have_non_legend_axes (h)
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
321 || numel (findall (h, "type", "image")) > 0)
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
322 fprintf (plot_stream, "%s\n", term_str);
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
323 if (nargin == 5)
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
324 if (! isempty (file))
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
325 fprintf (plot_stream, "set output '%s';\n", file);
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
326 endif
8610
85c9906abfd1 use endif and endfor instead of end
John W. Eaton <jwe@octave.org>
parents: 8530
diff changeset
327 endif
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
328 fputs (plot_stream, "set multiplot;\n");
9632
40acd13920e3 gnuplot_drawnow.m: Avoid flickering plot windows.
Ben Abbott <bpabbott@mac.com>
parents: 9561
diff changeset
329 elseif (any (strcmp (term, flickering_terms)))
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
330 fprintf (plot_stream, "%s\n", term_str);
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
331 if (nargin == 5)
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
332 if (! isempty (file))
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
333 fprintf (plot_stream, "set output '%s';\n", file);
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
334 endif
9107
d0d507cbd123 Improvements to printing functionality.
Ben Abbott <bpabbott@mac.com>
parents: 9055
diff changeset
335 endif
8610
85c9906abfd1 use endif and endfor instead of end
John W. Eaton <jwe@octave.org>
parents: 8530
diff changeset
336 endif
16095
1339c964b527 Fix warning when using "termoption dashed" with gnuplot 4.2.X (bug #38370)
Rik <rik@octave.org>
parents: 15845
diff changeset
337 if (__gnuplot_has_feature__ ("has_termoption_dashed"))
1339c964b527 Fix warning when using "termoption dashed" with gnuplot 4.2.X (bug #38370)
Rik <rik@octave.org>
parents: 15845
diff changeset
338 fprintf (plot_stream, "set termoption dashed\n")
1339c964b527 Fix warning when using "termoption dashed" with gnuplot 4.2.X (bug #38370)
Rik <rik@octave.org>
parents: 15845
diff changeset
339 endif
9478
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
340 else
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
341 ## gnuplot will pick up the GNUTERM environment variable itself
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
342 ## so no need to set the terminal type if not also setting the
7e1e90837fef Avoid the flickering x11 window seen with rapid gnuplot updates.
Ben Abbott <bpabbott@mac.com>
parents: 9468
diff changeset
343 ## figure title, enhanced mode, or position.
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
344 endif
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
345
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
346 endfunction
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
347
15376
860b4edb0bea Set Qt as the default gnuplot terminal if using the GUI.
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 14594
diff changeset
348 function term = gnuplot_default_term (plot_stream)
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
349 term = lower (getenv ("GNUTERM"));
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
350 ## If not specified, guess the terminal type.
15376
860b4edb0bea Set Qt as the default gnuplot terminal if using the GUI.
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 14594
diff changeset
351 if (isempty (term) || ! __gnuplot_has_terminal__ (term, plot_stream))
15708
916ef285522a Use the Qt gnuplot terminal only if available when using the GUI
Mike Miller <mtmiller@ieee.org>
parents: 15376
diff changeset
352 if (isguirunning () && __gnuplot_has_terminal__ ("qt", plot_stream))
916ef285522a Use the Qt gnuplot terminal only if available when using the GUI
Mike Miller <mtmiller@ieee.org>
parents: 15376
diff changeset
353 term = "qt";
916ef285522a Use the Qt gnuplot terminal only if available when using the GUI
Mike Miller <mtmiller@ieee.org>
parents: 15376
diff changeset
354 elseif (ismac ())
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
355 term = "aqua";
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
356 elseif (! isunix ())
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
357 term = "windows";
9771
4634a0e9ea1b gnuplot_drawnow.m (gnuplot_default_term): don't set term to x11 unless DISPLAY is set
Stefan Hepp <stefan@stefant.org>
parents: 9632
diff changeset
358 elseif (! isempty (getenv ("DISPLAY")))
4634a0e9ea1b gnuplot_drawnow.m (gnuplot_default_term): don't set term to x11 unless DISPLAY is set
Stefan Hepp <stefan@stefant.org>
parents: 9632
diff changeset
359 term = "x11";
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
360 else
9785
ccad98db781b gnuplot_drawnow.m: Support gnuplot's dumb terminal.
Ben Abbott <bpabbott@mac.com>
parents: 9771
diff changeset
361 term = "dumb";
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
362 endif
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
363 endif
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
364 endfunction
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
365
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
366 function [term, opts] = gnuplot_trim_term (string)
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
367 ## Extract the terminal type and terminal options (from print.m)
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
368 string = strtrim (string);
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
369 [term, opts] = strtok (string, ' ');
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
370 if (! isempty (opts))
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
371 opts(1) = ""; # trim extra space from strtok
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
372 endif
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
373 endfunction
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
374
15376
860b4edb0bea Set Qt as the default gnuplot terminal if using the GUI.
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 14594
diff changeset
375 function have_enhanced = gnuplot_is_enhanced_term (plot_stream, term)
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
376 ## Don't include pstex, pslatex or epslatex here as the TeX commands
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
377 ## should not be interpreted in that case.
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
378 persistent enhanced_terminals = {"aqua", "canvas", "dumb", "emf", "gif", ...
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
379 "jpeg", "pdf", "pdfcairo", "pm", "png", ...
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
380 "pngcairo", "postscript", "qt", "svg", ...
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
381 "windows", "wxt", "x11"};
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
382
15376
860b4edb0bea Set Qt as the default gnuplot terminal if using the GUI.
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 14594
diff changeset
383 if (nargin < 2)
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
384 ## Determine the default gnuplot terminal.
15376
860b4edb0bea Set Qt as the default gnuplot terminal if using the GUI.
Daniel J Sebald <daniel.sebald@ieee.org>
parents: 14594
diff changeset
385 term = gnuplot_default_term (plot_stream);
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
386 endif
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
387 have_enhanced = any (strcmp (term, enhanced_terminals));
7408
246f905cb984 [project @ 2008-01-22 19:42:47 by jwe]
jwe
parents:
diff changeset
388 endfunction
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
389
8889
665b264b6a50 Compatible support of figure paper properties and resolution for the gnuplot backend.
Ben Abbott <bpabbott@mac.com>
parents: 8813
diff changeset
390 function ret = output_to_screen (term)
19627
446c46af4b42 strip trailing whitespace from most source files
John W. Eaton <jwe@octave.org>
parents: 17744
diff changeset
391 ret = any (strcmpi (term,
16108
3cce6b4e0f7c Update gnuplot plotting scripts for faster or more modern synta
Rik <rik@octave.org>
parents: 16095
diff changeset
392 {"aqua", "dumb", "pm", "qt", "windows", "wxt", "x11"}));
8356
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
393 endfunction
d750feaefa8e gnuplot_drawnow.m: Add support of properites to gp backend.
Ben Abbott <bpabbott@mac.com>
parents: 8249
diff changeset
394
11246
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
395 function retval = have_non_legend_axes (h)
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
396 retval = false;
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
397 all_axes = findall (h, "type", "axes");
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
398 if (! isempty (all_axes))
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
399 n_all_axes = numel (all_axes);
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
400 all_axes_tags = get (all_axes, "tag");
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
401 legend_axes = strcmp (all_axes_tags, "legend");
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
402 if (! isempty (legend_axes))
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
403 n_legend_axes = sum (legend_axes);
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
404 retval = (n_all_axes - n_legend_axes) > 1;
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
405 endif
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
406 endif
c463aed850b0 allow legend and gcf to work when no figure is present
John W. Eaton <jwe@octave.org>
parents: 11198
diff changeset
407 endfunction
13044
a04e32272ecb codesprint: Turn off test warning for various internal helper functions
Rik <octave@nomad.inbox5.com>
parents: 12857
diff changeset
408
a04e32272ecb codesprint: Turn off test warning for various internal helper functions
Rik <octave@nomad.inbox5.com>
parents: 12857
diff changeset
409
a04e32272ecb codesprint: Turn off test warning for various internal helper functions
Rik <octave@nomad.inbox5.com>
parents: 12857
diff changeset
410 ## No test needed for internal helper function.
a04e32272ecb codesprint: Turn off test warning for various internal helper functions
Rik <octave@nomad.inbox5.com>
parents: 12857
diff changeset
411 %!assert (1)
14363
f3d52523cde1 Use Octave coding conventions in all m-file %!test blocks
Rik <octave@nomad.inbox5.com>
parents: 14235
diff changeset
412