Mercurial > hg > octave-max
changeset 5594:f2c058edda40
[project @ 2006-01-13 19:25:43 by jwe]
author | jwe |
---|---|
date | Fri, 13 Jan 2006 19:25:43 +0000 |
parents | edaf21425386 |
children | 83df01a26136 |
files | src/ChangeLog src/DLD-FUNCTIONS/__gnuplot_raw__.l src/help.cc |
diffstat | 3 files changed, 45 insertions(+), 24 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,16 @@ +2006-01-13 John W. Eaton <jwe@octave.org> + + * help.cc (display_help_text): Use warning() to print raw Texinfo + source. Don't redirect error output for makeinfo process. + + * DLD-FUNCTIONS/__gnuplot_raw__.l (F__gnuplot_init__): Delete + function and PKG_ADD directive. + (gnuplot::gnuplot): Call do_init here. + (gnuplot::init): Delete static function. + (gnuplot::close_all): New static function. + (class gnuplot_X): New class. + (gnpulot_X::X): New static instance. + 2006-01-12 David Bateman <dbateman@free.fr> * help.cc (make_name_list): Add autoload functions to list of
--- a/src/DLD-FUNCTIONS/__gnuplot_raw__.l +++ b/src/DLD-FUNCTIONS/__gnuplot_raw__.l @@ -32,8 +32,6 @@ // PKG_ADD: mark_as_command ("__gnuplot_show__"); -// PKG_ADD: __gnuplot_init__ (); - // PKG_ADD: atexit ("closeplot"); #ifdef HAVE_CONFIG_H @@ -696,7 +694,7 @@ use_title_option (Vgnuplot_use_title_option), gnuplot_exe (Vgnuplot_binary), gnuplot_terminal_type (), plot_stream () - { } + { do_init (); } public: @@ -712,13 +710,9 @@ static void close (void); - static bool plot_stream_event_handler (pid_t pid, int status); + static void close_all (void); - static void init (void) - { - if (ensure_instance ()) - instance->do_init (); - } + static bool plot_stream_event_handler (pid_t pid, int status); static void send (const std::string& cmd) { @@ -895,6 +889,19 @@ } } +void +gnuplot::close_all (void) +{ + for (std::map<int, gnuplot *>::const_iterator p = instance_map.begin (); + p != instance_map.end (); + p++) + { + gnuplot *elt = p->second; + + elt->do_close (); + } +} + pid_t gnuplot::pid (void) const { @@ -1454,6 +1461,19 @@ return retstr; } +// The static instance of this class is here so that +// gnuplot::close_all will be called when the .oct file is unloaded. + +class +gnuplot_X +{ +public: + gnuplot_X (void) { } + ~gnuplot_X (void) { gnuplot::close_all (); } +}; + +static gnuplot_X X; + static int automatic_replot (void) { @@ -1662,16 +1682,6 @@ // User-callable functions // ----------------------- -DEFUN_DLD (__gnuplot_init__, , , - "-*- texinfo -*-\n\ -@deftypefn {Loadable Function} __gnuplot_init__ ()\n\ -@end deftypefn") -{ - gnuplot::init (); - - return octave_value_list (); -} - DEFUN_DLD (clearplot, , , "-*- texinfo -*-\n\ @deftypefn {Built-in Function} {} clearplot\n\
--- a/src/help.cc +++ b/src/help.cc @@ -661,6 +661,8 @@ if (looks_like_texinfo (msg, pos)) { + os.flush (); + std::string tmp_file_name = file_ops::tempnam ("", ""); int cols = command_editor::terminal_cols (); @@ -687,9 +689,6 @@ << " --no-headers" << " --force" << " --output \"" << tmp_file_name << "\"" -#if !defined (__MINGW32__) - << " > /dev/null 2>&1" -#endif << OSSTREAM_ENDS; oprocstream filter (OSSTREAM_STR (buf)); @@ -722,8 +721,7 @@ { warning ("help: Texinfo formatting filter exited abnormally"); warning ("help: raw Texinfo source of help text follows..."); - - os << "\n" << msg; + warning ("help:\n\n%s\n\n", msg.c_str ()); } file_ops::unlink (tmp_file_name);