Skip to content
Snippets Groups Projects
Commit d2d7e3d8 authored by Mikhail Svechnikov's avatar Mikhail Svechnikov
Browse files

JobMessagePanel: size is stored

parent 80f17e0c
No related branches found
No related tags found
1 merge request!1025GUI: remember docks sizes and tabs indices
......@@ -13,8 +13,10 @@
// ************************************************************************************************
#include "GUI/View/Fit/JobMessagePanel.h"
#include "GUI/View/Tool/mainwindow_constants.h"
#include <QScrollBar>
#include <QTextEdit>
#include <QSettings>
namespace {
......@@ -43,15 +45,48 @@ QColor color(FitLogLevel level)
JobMessagePanel::JobMessagePanel(QWidget* parent)
: QTextEdit(parent)
, m_log(nullptr)
, m_panelSize(80, 400)
{
setWindowTitle("Message Panel");
setReadOnly(true);
setFont(QFont("Courier"));
readSettings();
setMinimumSize(10,10);
}
JobMessagePanel::~JobMessagePanel()
{
writeSettings();
}
void JobMessagePanel::readSettings()
{
QSettings settings;
if (settings.childGroups().contains(GUI::Constants::S_JOBMESSAGEPANEL)) {
settings.beginGroup(GUI::Constants::S_JOBMESSAGEPANEL);
m_panelSize = settings.value(GUI::Constants::S_JOBMESSAGEPANEL_SIZE).toSize();
settings.endGroup();
}
}
void JobMessagePanel::writeSettings()
{
QSettings settings;
settings.beginGroup(GUI::Constants::S_JOBMESSAGEPANEL);
settings.setValue(GUI::Constants::S_JOBMESSAGEPANEL_SIZE, size());
settings.endGroup();
settings.sync();
}
QSize JobMessagePanel::sizeHint() const
{
return QSize(m_panelSize);
}
QSize JobMessagePanel::minimumSizeHint() const
{
return QSize(80, 300);
return sizeHint();
}
void JobMessagePanel::appendMessage(const FitLog::Message& message)
......
......@@ -26,14 +26,20 @@ class JobMessagePanel : public QTextEdit {
Q_OBJECT
public:
JobMessagePanel(QWidget* parent = nullptr);
~JobMessagePanel();
void appendMessage(const FitLog::Message& message);
void setLog(FitLog* log);
QSize sizeHint() const override;
QSize minimumSizeHint() const override;
private:
FitLog* m_log;
void readSettings();
void writeSettings();
FitLog* m_log;
QSize m_panelSize;
};
#endif // BORNAGAIN_GUI_VIEW_FIT_JOBMESSAGEPANEL_H
......@@ -33,7 +33,7 @@ JobResultsPresenter::JobResultsPresenter(QWidget* parent)
registerWidget("Reflectometry", create_new<SpecularDataWidget>);
setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);
setMinimumSize(600, 600);
setMinimumSize(220, 200);
}
QString JobResultsPresenter::itemPresentation() const
......
......@@ -21,6 +21,7 @@ namespace GUI::Constants {
// Settings groups
const char S_MAINWINDOW[] = "MainWindow";
const char S_JOBMESSAGEPANEL[] = "JobMessagePanel";
const char S_MASKEDITOR[] = "MaskEditor";
const char S_MATERIALEDITOR[] = "MaterialEditor";
const char S_SESSIONMODELVIEW[] = "SessionModelView";
......@@ -31,6 +32,8 @@ const char S_WINDOWPOSITION[] = "pos";
const char S_SPLITTERSIZE[] = "SplitterSize";
const char S_VIEWISACTIVE[] = "ViewIsActive";
const char S_JOBMESSAGEPANEL_SIZE[] = "size";
const int MAX_RECENT_PROJECTS = 10;
const char MIME_JOBQUEUE[] = "application/org.bornagainproject.jobqueue";
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment