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

JobRealTimeWidget: start

parent 6b6d0379
No related branches found
No related tags found
1 merge request!1025GUI: remember docks sizes and tabs indices
......@@ -27,6 +27,7 @@ const bool reuse_widget = true;
JobRealTimeWidget::JobRealTimeWidget(JobModel* jobModel, QWidget* parent)
: QWidget(parent)
, m_stackedWidget(new ItemStackPresenter<ParameterTuningWidget>(reuse_widget))
, m_panelSize(100,100)
{
setWindowTitle(GUI::Constants::JobRealTimeWidgetName);
setObjectName("JobRealTimeWidget");
......@@ -39,6 +40,14 @@ JobRealTimeWidget::JobRealTimeWidget(JobModel* jobModel, QWidget* parent)
setLayout(mainLayout);
m_stackedWidget->setModel(jobModel);
readSettings();
setMinimumSize(10,10);
}
JobRealTimeWidget::~JobRealTimeWidget()
{
writeSettings();
}
ParameterTuningWidget* JobRealTimeWidget::parameterTuningWidget(JobItem* jobItem)
......@@ -48,12 +57,14 @@ ParameterTuningWidget* JobRealTimeWidget::parameterTuningWidget(JobItem* jobItem
QSize JobRealTimeWidget::sizeHint() const
{
return QSize(GUI::Constants::REALTIME_WIDGET_WIDTH_HINT, 480);
// return QSize(GUI::Constants::REALTIME_WIDGET_WIDTH_HINT, 480);
return m_panelSize;
}
QSize JobRealTimeWidget::minimumSizeHint() const
{
return QSize(100, 100);
// return QSize(100, 100);
return sizeHint();
}
void JobRealTimeWidget::setJobItem(JobItem* jobItem)
......@@ -71,3 +82,22 @@ bool JobRealTimeWidget::isValidJobItem(JobItem* item)
{
return item && (item->isCompleted() || item->isCanceled() || item->isFailed());
}
void JobRealTimeWidget::readSettings()
{
QSettings settings;
if (settings.childGroups().contains(GUI::Constants::S_JOB_REAL_TIME_PANEL)) {
settings.beginGroup(GUI::Constants::S_JOB_REAL_TIME_PANEL);
m_panelSize = settings.value(GUI::Constants::S_JOB_REAL_TIME_PANEL_SIZE).toSize();
settings.endGroup();
}
}
void JobRealTimeWidget::writeSettings()
{
QSettings settings;
settings.beginGroup(GUI::Constants::S_JOB_REAL_TIME_PANEL);
settings.setValue(GUI::Constants::S_JOB_REAL_TIME_PANEL_SIZE, size());
settings.endGroup();
settings.sync();
}
......@@ -28,6 +28,7 @@ class JobRealTimeWidget : public QWidget {
Q_OBJECT
public:
JobRealTimeWidget(JobModel* jobModel, QWidget* parent = nullptr);
~JobRealTimeWidget();
ParameterTuningWidget* parameterTuningWidget(JobItem* jobItem);
......@@ -38,7 +39,11 @@ public:
private:
bool isValidJobItem(JobItem* item);
void readSettings();
void writeSettings();
QSize m_panelSize;
ItemStackPresenter<ParameterTuningWidget>* m_stackedWidget;
};
......
......@@ -117,7 +117,6 @@ void JobView::createSubWindows()
m_fitActivityPanel = new FitActivityPanel(this);
m_jobMessagePanel = new JobMessagePanel(this);
// m_jobRealTimeWidget->hide();
m_docks->addWidget(JobViewFlags::JOB_LIST_DOCK, m_jobSelector, Qt::LeftDockWidgetArea);
m_docks->addWidget(JobViewFlags::REAL_TIME_DOCK, m_jobRealTimeWidget, Qt::RightDockWidgetArea);
m_docks->addWidget(JobViewFlags::FIT_PANEL_DOCK, m_fitActivityPanel, Qt::RightDockWidgetArea);
......
......@@ -24,6 +24,7 @@ const char S_MAIN_WINDOW[] = "MainWindow";
const char S_JOB_MESSAGE_PANEL[] = "JobMessagePanel";
const char S_JOB_SELECTOR_PANEL[] = "JobSelectorPanel";
const char S_FIT_ACTIVITY_PANEL[] = "FitActivityPanel";
const char S_JOB_REAL_TIME_PANEL[] = "JobRealTimePanel";
const char S_SESSION_MODEL_VIEW[] = "SessionModelView";
// Settings keys
......@@ -34,6 +35,7 @@ const char S_VIEW_IS_ACTIVE[] = "ViewIsActive";
const char S_JOB_MESSAGE_PANEL_SIZE[] = "size";
const char S_JOB_SELECTOR_PANEL_SIZE[] = "size";
const char S_FIT_ACTIVITY_PANEL_SIZE[] = "size";
const char S_JOB_REAL_TIME_PANEL_SIZE[] = "size";
const int MAX_RECENT_PROJECTS = 10;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment