1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
#ifndef JobInformationDialog_h
#define JobInformationDialog_h
/******************************************************************************
*
* Copyright (C) 2002 Hugo PEREIRA <mailto: hugo.pereira@free.fr>
*
* This is free software; you can redistribute it and/or modify it under the
* terms of the GNU General Public License as published by the Free Software
* Foundation; either version 2 of the License, or (at your option) any later
* version.
*
* This software is distributed in the hope that it will be useful, but WITHOUT
* Any WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>.
*
*******************************************************************************/
#include "CustomDialog.h"
#include "Job.h"
#include "JobRecord.h"
#include "Key.h"
#include "RecordHistogram.h"
#include <QCloseEvent>
#include <QLabel>
#include <QResizeEvent>
#include <QTabWidget>
class GridLayoutItem;
class JobInformationDialog: public CustomDialog, public Base::Key
{
Q_OBJECT
public:
//* constructor
JobInformationDialog( QWidget* );
//*@name accessors
//@{
//* job
const Job& job( void ) const
{ return job_; }
//* record
const JobRecord& record( void ) const
{ return record_; }
//@}
//*@name modifiers
//@{
//* job
void setJob( const Job&, const JobRecord& );
//@}
Q_SIGNALS:
//* emitted when dialog is closed
void closed( JobRecord );
public Q_SLOTS:
//* update from job set
void update( Job::Set );
protected:
//* resize event
virtual void closeEvent( QCloseEvent* );
//* resize event
virtual void resizeEvent( QResizeEvent* );
private Q_SLOTS:
//* configuration
void _updateConfiguration( void );
private:
//* update job information
void _updateJobInformation( void );
//* update from record
void _updateHistograms( void );
//* job
Job job_;
//* record
JobRecord record_;
//* true if associate job is alive
bool alive_ = true;
//* tab widget
QTabWidget* tabWidget_ = nullptr;
//* icon label
QLabel* iconLabel_ = nullptr;
//* name
GridLayoutItem* nameLabel_ = nullptr;
//* id
GridLayoutItem* idLabel_ = nullptr;
//* parentId
GridLayoutItem* parentIdLabel_ = nullptr;
//* user
GridLayoutItem* userLabel_ = nullptr;
//* command
GridLayoutItem* commandLabel_ = nullptr;
//* start time
GridLayoutItem* startTimeLabel_ = nullptr;
//* start time
GridLayoutItem* completionTimeLabel_ = nullptr;
//* Histogram bar
RecordHistogram* cpuHistogram_ = nullptr;
//* Histogram bar
RecordHistogram* memoryHistogram_ = nullptr;
};
#endif
|