Mercurial > hg > octave-jordi
changeset 18024:989ff97a7e8c stable
provide warning about experimental GUI
* main-window.h, main-window.cc (main_window::construct_warning_bar):
New function.
(main_window::construct): Call it.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Tue, 26 Nov 2013 21:51:17 -0500 |
parents | 4138a7f80779 |
children | 7c0f59b688fc |
files | libgui/src/main-window.cc libgui/src/main-window.h |
diffstat | 2 files changed, 52 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/libgui/src/main-window.cc +++ b/libgui/src/main-window.cc @@ -1150,6 +1150,8 @@ construct_tool_bar (); + construct_warning_bar (); + connect (qApp, SIGNAL (aboutToQuit ()), this, SLOT (prepare_to_exit ())); @@ -1771,6 +1773,55 @@ } void +main_window::construct_warning_bar (void) +{ + QDockWidget *warning_bar = new QDockWidget (this); + + QFrame *box = new QFrame (warning_bar); + + QLabel *icon = new QLabel (box); + QIcon warning_icon = QIcon::fromTheme ("dialog-warning"); + QPixmap icon_pixmap = warning_icon.pixmap (QSize (32, 32)); + icon->setPixmap (icon_pixmap); + + QTextBrowser *msg = new QTextBrowser (box); + msg->setOpenExternalLinks (true); + msg->setText + (tr ("<strong>You are using Octave's experimental GUI.</strong> " + "It is under continuous improvement and will be the default " + "interface for the 4.0 release. For more information, select " + "the \"Release Notes\" item in the \"Help\" menu of the GUI, " + "or visit <a href=\"http://octave.org\">http://octave.org</a>.")); + msg->setStyleSheet ("background-color: #ffd97f; color: black; margin 4px;"); + msg->setMinimumWidth (100); + msg->setMinimumHeight (48); + msg->setMaximumHeight (64); + msg->setSizePolicy (QSizePolicy (QSizePolicy::Expanding, + QSizePolicy::Minimum)); + + QHBoxLayout *icon_and_message = new QHBoxLayout; + + icon_and_message->addWidget (icon); + icon_and_message->addSpacing (10); + icon_and_message->addWidget (msg); + + box->setFrameStyle (QFrame::Box); + box->setLineWidth (2); + box->setMaximumWidth (1000); + box->adjustSize (); + box->setLayout (icon_and_message); + + warning_bar->setFeatures (QDockWidget::NoDockWidgetFeatures); + warning_bar->setObjectName ("WarningToolBar"); + warning_bar->setWidget (box); + + addDockWidget (Qt::TopDockWidgetArea, warning_bar); + + setCorner (Qt::TopLeftCorner, Qt::TopDockWidgetArea); + setCorner (Qt::TopRightCorner, Qt::TopDockWidgetArea); +}; + +void main_window::construct_tool_bar (void) { _main_tool_bar = addToolBar ("Main");