Salome HOME
89e86cbdc0d46423282ad2478a96e7812e851ee1
[modules/jobmanager.git] / src / genericgui / BL_JobTab.hxx
1 // Copyright (C) 2009-2015  CEA/DEN, EDF R&D
2 //
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License, or (at your option) any later version.
7 //
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 // Lesser General Public License for more details.
12 //
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 //
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19
20 #ifndef _BL_JOBTAB_HXX_
21 #define _BL_JOBTAB_HXX_
22
23 #include <QtGlobal>
24 #include <QtGui>
25 #if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
26 #include <QtWidgets>
27 #endif
28
29 #include "BL_JobsManager_QT.hxx"
30
31 namespace BL
32 {
33   class JobTab: public QTabWidget
34   {
35     Q_OBJECT
36
37     public:
38       JobTab(QWidget *parent, BL::JobsManager_QT * jobs_manager);
39       virtual ~JobTab();
40
41       void setModel(QStandardItemModel * model);
42
43       void createJobSummaryTab();
44       void createJobFilesTab();
45       void job_selected(const QModelIndex & index);
46
47     public slots:
48       void itemChanged(QStandardItem * item);
49       void reset(QString job_name);
50
51     protected:
52       QWidget* _parent;
53       QStandardItemModel * _model;
54       BL::JobsManager_QT * _jobs_manager;
55
56       QWidget * _summary_tab;
57       QWidget * _files_tab;
58
59       // Main Values
60       QFormLayout * _main_values_form;
61       QLabel * _job_name_label_value;
62       QLabel * _job_type_label_value;
63       QLabel * _job_state_label_value;
64       QLabel * _job_launcher_label_value;
65       QLabel * _job_resource_label_value;
66       QLabel * _job_jobfile_label_value;
67       QLabel * _job_envfile_label_value;
68
69       // Run Values
70       QFormLayout * _run_values_form;
71       QFormLayout * _other_run_values_form;
72       QLabel * _job_nif_label_value;
73       QLabel * _job_nof_label_value;
74       QLabel * _job_bd_label_value;
75       QLabel * _job_rd_label_value;
76       QLabel * _job_mdt_label_value;
77       QLabel * _job_req_mem_label_value;
78       QLabel * _job_nop_label_value;
79       QLabel * _job_excl_label_value;
80
81       // Specific Values
82       QLabel * _yacs_dump_state_label;
83       QLabel * _yacs_dump_state_value;
84       QLabel * _batch_queue_label;
85       QLabel * _batch_queue_value;
86       QLabel * _ll_jobtype_label;
87       QLabel * _ll_jobtype_value;
88
89       QListWidget * _input_files_list;
90       QListWidget * _output_files_list;
91
92           // Parameters for COORM
93       QLabel * _job_lf_label_value;
94       QLabel * _job_la_label_value;
95   };
96 }
97
98 #endif
99