Mercurial > octave-nkf
changeset 17764:811b5a562680
Format release notes as preformatted text in the GUI (bug #40367)
* libgui/src/main-window.cc (display_release_notes): Merge with
display_url_in_window. Read NEWS file into a string and wrap contents in
HTML <pre></pre> tags.
* libgui/src/main-window.h (display_url_in_window): Delete declaration.
* NEWS: Remove HTML <pre></pre> tags.
author | Mike Miller <mtmiller@ieee.org> |
---|---|
date | Sat, 26 Oct 2013 00:38:31 -0400 |
parents | 32344942ee6e |
children | 26a418799bc3 |
files | NEWS libgui/src/main-window.cc libgui/src/main-window.h |
diffstat | 3 files changed, 21 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/NEWS Wed Oct 23 19:48:30 2013 +0100 +++ b/NEWS Sat Oct 26 00:38:31 2013 -0400 @@ -1,4 +1,3 @@ -<pre> Summary of important user-visible changes for version 3.8: --------------------------------------------------------- @@ -1477,4 +1476,3 @@ spchol2inv splu See NEWS.3 for old news. -</pre>
--- a/libgui/src/main-window.cc Wed Oct 23 19:48:30 2013 +0100 +++ b/libgui/src/main-window.cc Sat Oct 26 00:38:31 2013 -0400 @@ -39,6 +39,7 @@ #include <QFileDialog> #include <QMessageBox> #include <QIcon> +#include <QTextStream> #include <utility> @@ -251,18 +252,31 @@ void main_window::display_release_notes (void) { - std::string news_file = "file://" + Voct_etc_dir + "/NEWS"; + std::string news_file = Voct_etc_dir + "/NEWS"; + + QString news; - display_url_in_window (QUrl (QString::fromStdString (news_file))); -} + QFile *file = new QFile (QString::fromStdString (news_file)); + if (file->open (QFile::ReadOnly)) + { + QTextStream *stream = new QTextStream (file); + news = stream->readAll (); + if (! news.isEmpty ()) + { + news.prepend ("<pre>"); + news.append ("</pre>"); + } + else + news = tr ("The release notes file is empty."); + } + else + news = tr ("The release notes file cannot be read."); -void -main_window::display_url_in_window (const QUrl& url) -{ + QWidget *w = new QWidget; QTextBrowser *browser = new QTextBrowser (w); - browser->setSource (url); + browser->setText (news); QVBoxLayout *vlayout = new QVBoxLayout; vlayout->addWidget (browser);
--- a/libgui/src/main-window.h Wed Oct 23 19:48:30 2013 +0100 +++ b/libgui/src/main-window.h Sat Oct 26 00:38:31 2013 -0400 @@ -222,8 +222,6 @@ void construct_tool_bar (void); - void display_url_in_window (const QUrl& url); - void establish_octave_link (void); void save_workspace_callback (const std::string& file);