annotate libinterp/dldfcn/__fltk_uigetfile__.cc @ 27919:1891570abac8

update Octave Project Developers copyright for the new year In files that have the "Octave Project Developers" copyright notice, update for 2020.
author John W. Eaton <jwe@octave.org>
date Mon, 06 Jan 2020 22:29:51 -0500
parents b442ec6dda5c
children bd51beb6205e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
1 /*
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
2
27919
1891570abac8 update Octave Project Developers copyright for the new year
John W. Eaton <jwe@octave.org>
parents: 27918
diff changeset
3 Copyright (C) 2010-2020 The Octave Project Developers
27918
b442ec6dda5c use centralized file for copyright info for individual contributors
John W. Eaton <jwe@octave.org>
parents: 27276
diff changeset
4
b442ec6dda5c use centralized file for copyright info for individual contributors
John W. Eaton <jwe@octave.org>
parents: 27276
diff changeset
5 See the file COPYRIGHT.md in the top-level directory of this distribution
b442ec6dda5c use centralized file for copyright info for individual contributors
John W. Eaton <jwe@octave.org>
parents: 27276
diff changeset
6 or <https://octave.org/COPYRIGHT.html/>.
b442ec6dda5c use centralized file for copyright info for individual contributors
John W. Eaton <jwe@octave.org>
parents: 27276
diff changeset
7
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
8
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
9 This file is part of Octave.
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
10
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 23220
diff changeset
11 Octave is free software: you can redistribute it and/or modify it
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22407
diff changeset
12 under the terms of the GNU General Public License as published by
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 23220
diff changeset
13 the Free Software Foundation, either version 3 of the License, or
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22407
diff changeset
14 (at your option) any later version.
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
15
22755
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22407
diff changeset
16 Octave is distributed in the hope that it will be useful, but
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22407
diff changeset
17 WITHOUT ANY WARRANTY; without even the implied warranty of
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22407
diff changeset
18 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3a2b891d0b33 maint: Standardize Copyright formatting.
Rik <rik@octave.org>
parents: 22407
diff changeset
19 GNU General Public License for more details.
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
20
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
21 You should have received a copy of the GNU General Public License
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
22 along with Octave; see the file COPYING. If not, see
24534
194eb4bd202b maint: Update punctuation for GPL v3 license text.
Rik <rik@octave.org>
parents: 23220
diff changeset
23 <https://www.gnu.org/licenses/>.
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
24
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
25 */
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
26
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21691
diff changeset
27 #if defined (HAVE_CONFIG_H)
21301
40de9f8f23a6 Use '#include "config.h"' rather than <config.h>.
Rik <rik@octave.org>
parents: 21200
diff changeset
28 # include "config.h"
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
29 #endif
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
30
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21691
diff changeset
31 #if defined (HAVE_FLTK)
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
32
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21691
diff changeset
33 #if defined (WIN32)
21200
fcac5dbbf9ed maint: Indent #ifdef blocks in libinterp.
Rik <rik@octave.org>
parents: 21126
diff changeset
34 # define WIN32_LEAN_AND_MEAN
13721
ca90a6d59ab6 Prevent auto-inclusion of winsock.h in WIN32.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 12805
diff changeset
35 #endif
ca90a6d59ab6 Prevent auto-inclusion of winsock.h in WIN32.
Michael Goffioul <michael.goffioul@gmail.com>
parents: 12805
diff changeset
36
23024
a6a7b054e4ba Rationalize #includes in libinterp/dldfcn directory.
Rik <rik@octave.org>
parents: 22755
diff changeset
37 #include <string>
a6a7b054e4ba Rationalize #includes in libinterp/dldfcn directory.
Rik <rik@octave.org>
parents: 22755
diff changeset
38
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
39 #include <FL/Fl.H>
12565
0f71b9639207 Correct typo in #include path for FLTK header files (bug #32972).
Rik <octave@nomad.inbox5.com>
parents: 12466
diff changeset
40 #include <FL/Fl_File_Chooser.H>
12205
be90f9e4548e #undef Complex after including FLTK headers
John W. Eaton <jwe@octave.org>
parents: 12193
diff changeset
41
be90f9e4548e #undef Complex after including FLTK headers
John W. Eaton <jwe@octave.org>
parents: 12193
diff changeset
42 // FLTK headers may include X11/X.h which defines Complex, and that
be90f9e4548e #undef Complex after including FLTK headers
John W. Eaton <jwe@octave.org>
parents: 12193
diff changeset
43 // conflicts with Octave's Complex typedef. We don't need the X11
be90f9e4548e #undef Complex after including FLTK headers
John W. Eaton <jwe@octave.org>
parents: 12193
diff changeset
44 // Complex definition in this file, so remove it before including Octave
be90f9e4548e #undef Complex after including FLTK headers
John W. Eaton <jwe@octave.org>
parents: 12193
diff changeset
45 // headers which may require Octave's Complex typedef.
be90f9e4548e #undef Complex after including FLTK headers
John W. Eaton <jwe@octave.org>
parents: 12193
diff changeset
46 #undef Complex
be90f9e4548e #undef Complex after including FLTK headers
John W. Eaton <jwe@octave.org>
parents: 12193
diff changeset
47
15507
b9b9795a7cd9 build: Build FLTK-associated DOCSTRINGS even when HAVE_FLTK is 0 (bug #37541).
Rik <rik@octave.org>
parents: 15195
diff changeset
48 #endif
b9b9795a7cd9 build: Build FLTK-associated DOCSTRINGS even when HAVE_FLTK is 0 (bug #37541).
Rik <rik@octave.org>
parents: 15195
diff changeset
49
23024
a6a7b054e4ba Rationalize #includes in libinterp/dldfcn directory.
Rik <rik@octave.org>
parents: 22755
diff changeset
50 #include "dMatrix.h"
a6a7b054e4ba Rationalize #includes in libinterp/dldfcn directory.
Rik <rik@octave.org>
parents: 22755
diff changeset
51 #include "file-ops.h"
a6a7b054e4ba Rationalize #includes in libinterp/dldfcn directory.
Rik <rik@octave.org>
parents: 22755
diff changeset
52
a6a7b054e4ba Rationalize #includes in libinterp/dldfcn directory.
Rik <rik@octave.org>
parents: 22755
diff changeset
53 #include "Cell.h"
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
54 #include "defun-dld.h"
21126
ba0a4b4f021d include errwarn.h in files that use err_disabled_feature conditionally
John W. Eaton <jwe@octave.org>
parents: 21109
diff changeset
55 #include "errwarn.h"
23024
a6a7b054e4ba Rationalize #includes in libinterp/dldfcn directory.
Rik <rik@octave.org>
parents: 22755
diff changeset
56 #include "ov.h"
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
57
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
58 DEFUN_DLD (__fltk_uigetfile__, args, ,
21966
112b20240c87 move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents: 21733
diff changeset
59 doc: /* -*- texinfo -*-
112b20240c87 move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents: 21733
diff changeset
60 @deftypefn {} {} __fltk_uigetfile__ (@dots{})
112b20240c87 move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents: 21733
diff changeset
61 Undocumented internal function.
112b20240c87 move docstrings in C++ files out of C strings and into comments
John W. Eaton <jwe@octave.org>
parents: 21733
diff changeset
62 @end deftypefn */)
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
63 {
21724
aba2e6293dd8 use "#if ..." consistently instead of "#ifdef" and "#ifndef"
John W. Eaton <jwe@octave.org>
parents: 21691
diff changeset
64 #if defined (HAVE_FLTK)
21691
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21301
diff changeset
65
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
66 // Expected argument list:
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
67 //
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
68 // args(0) ... FileFilter in fltk format
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
69 // args(1) ... Title
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
70 // args(2) ... Default Filename
20843
f9a0bf346ec1 __fltk_uigetfile__.cc:codesprint: Remove class of fcn and return after error
Andreas Weber <andy.weber.aw@gmail.com>
parents: 20825
diff changeset
71 // args(3) ... PositionValue [x,y]
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
72 // args(4) ... SelectValue "on"/"off"/"dir"/"create"
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
73
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
74 octave_value_list retval (3, octave_value (0));
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
75
14846
460a3c6d8bf1 maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents: 14501
diff changeset
76 std::string file_filter = args(0).string_value ();
460a3c6d8bf1 maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents: 14501
diff changeset
77 std::string title = args(1).string_value ();
460a3c6d8bf1 maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents: 14501
diff changeset
78 std::string default_name = args(2).string_value ();
460a3c6d8bf1 maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents: 14501
diff changeset
79 Matrix pos = args(3).matrix_value ();
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
80
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
81 int multi_type = Fl_File_Chooser::SINGLE;
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
82 std::string flabel = "Filename:";
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
83
14846
460a3c6d8bf1 maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents: 14501
diff changeset
84 std::string multi = args(4).string_value ();
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
85 if (multi == "on")
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
86 multi_type = Fl_File_Chooser::MULTI;
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
87 else if (multi == "dir")
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
88 {
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
89 multi_type = Fl_File_Chooser::DIRECTORY;
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
90 flabel = "Directory:";
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
91 }
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
92 else if (multi == "create")
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
93 multi_type = Fl_File_Chooser::CREATE;
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
94
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
95 Fl_File_Chooser::filename_label = flabel.c_str ();
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
96
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
97 Fl_File_Chooser fc (default_name.c_str (), file_filter.c_str (),
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
98 multi_type, title.c_str ());
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
99
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
100 fc.preview (0);
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
101
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
102 if (multi_type == Fl_File_Chooser::CREATE)
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
103 fc.ok_label ("Save");
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
104
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
105 fc.show ();
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
106
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
107 while (fc.shown ())
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
108 Fl::wait ();
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
109
14846
460a3c6d8bf1 maint: Use Octave coding convention for cuddled parenthis in function calls with empty argument lists.
Rik <octave@nomad.inbox5.com>
parents: 14501
diff changeset
110 if (fc.value ())
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
111 {
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
112 int file_count = fc.count ();
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
113 std::string fname;
12466
67f98480b181 Use / for fltk path processing only
Kai Habel <kai.habel@gmx.de>
parents: 12206
diff changeset
114
23024
a6a7b054e4ba Rationalize #includes in libinterp/dldfcn directory.
Rik <rik@octave.org>
parents: 22755
diff changeset
115 // FLTK uses forward slash even for Windows
12466
67f98480b181 Use / for fltk path processing only
Kai Habel <kai.habel@gmx.de>
parents: 12206
diff changeset
116 std::string sep = "/";
19872
d575cd1e0da7 Replace std::size_t with bare size_t for conformity to rest of code.
Rik <rik@octave.org>
parents: 19861
diff changeset
117 size_t idx;
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
118
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
119 if (file_count == 1 && multi_type != Fl_File_Chooser::DIRECTORY)
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
120 {
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
121 fname = fc.value ();
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
122 idx = fname.find_last_of (sep);
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
123 retval(0) = fname.substr (idx + 1);
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
124 }
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
125 else
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
126 {
14854
5ae9f0f77635 maint: Use Octave coding conventions for coddling parenthis is DLD-FUNCTIONS directory
Rik <octave@nomad.inbox5.com>
parents: 14846
diff changeset
127 Cell file_cell = Cell (file_count, 1);
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
128 for (octave_idx_type n = 1; n <= file_count; n++)
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
129 {
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
130 fname = fc.value (n);
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
131 idx = fname.find_last_of (sep);
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
132 file_cell(n - 1) = fname.substr (idx + 1);
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
133 }
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
134 retval(0) = file_cell;
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
135 }
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
136
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
137 if (multi_type == Fl_File_Chooser::DIRECTORY)
27276
7455523fdf01 style fixes: avoid breaking lines immediately after '('
John W. Eaton <jwe@octave.org>
parents: 26376
diff changeset
138 retval(0) = octave::sys::file_ops::native_separator_path (std::string (fc.value ()));
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
139 else
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
140 {
27276
7455523fdf01 style fixes: avoid breaking lines immediately after '('
John W. Eaton <jwe@octave.org>
parents: 26376
diff changeset
141 retval(1) = octave::sys::file_ops::native_separator_path (std::string (fc.directory ()) + sep);
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
142 retval(2) = fc.filter_value () + 1;
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
143 }
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
144 }
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
145
12206
6212f303243e __fltk_uigetfile__.cc: style fixes
John W. Eaton <jwe@octave.org>
parents: 12205
diff changeset
146 fc.hide ();
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
147 Fl::flush ();
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
148
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
149 return retval;
20825
66cd994d1b79 eliminate return statements after calls to error
John W. Eaton <jwe@octave.org>
parents: 19872
diff changeset
150
15507
b9b9795a7cd9 build: Build FLTK-associated DOCSTRINGS even when HAVE_FLTK is 0 (bug #37541).
Rik <rik@octave.org>
parents: 15195
diff changeset
151 #else
21691
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21301
diff changeset
152
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21301
diff changeset
153 octave_unused_parameter (args);
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21301
diff changeset
154
21109
bd1752782e56 Use err_disabled_feature, warn_disabled_feature throughout code base.
Rik <rik@octave.org>
parents: 20843
diff changeset
155 err_disabled_feature ("__fltk_uigetfile__", "OpenGL and FLTK");
21691
263d18409fdf Eliminate unused variable warnings for conditionally compiled code.
John W. Eaton <jwe@octave.org>
parents: 21301
diff changeset
156
15507
b9b9795a7cd9 build: Build FLTK-associated DOCSTRINGS even when HAVE_FLTK is 0 (bug #37541).
Rik <rik@octave.org>
parents: 15195
diff changeset
157 #endif
12183
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
158 }
b4d26c65e7e6 Allow ui file function to work if gnuplot is the selected toolkit and fltk is available
Kai Habel <kai.habel@gmx.de>
parents:
diff changeset
159
12805
3641167e5b75 codesprint: *.cc helper functions do not need tests
Rik <octave@nomad.inbox5.com>
parents: 12565
diff changeset
160 /*
3641167e5b75 codesprint: *.cc helper functions do not need tests
Rik <octave@nomad.inbox5.com>
parents: 12565
diff changeset
161 ## No test needed for internal helper function.
3641167e5b75 codesprint: *.cc helper functions do not need tests
Rik <octave@nomad.inbox5.com>
parents: 12565
diff changeset
162 %!assert (1)
3641167e5b75 codesprint: *.cc helper functions do not need tests
Rik <octave@nomad.inbox5.com>
parents: 12565
diff changeset
163 */