RSS Git Download  Clone
Raw Blame History
/*
* Title:	ControlDataWin.h
* Author:	M.Thomas BEAM Ltd
* Date:		2007-02-13
*
* Contents:	Configuration Data entry and control window
*
* Mod Rec:
*
*/


#ifndef CONTROLDATAWIN_H
#define CONTROLDATAWIN_H

#include <BString.h>
#include <qhbox.h>
#include <Control.h>
#include <qspinbox.h>
#include <qcheckbox.h>
#include <qlineedit.h>
#include <BQComboBox.h>
#include <TmsLib.h>
#include <BQwtPlot.h>
#include <qtimer.h>
#include <qscrollbar.h>

/*! Configure System and setup user interface window. 
*
*/
class ControlDataWin : public QHBox {
        Q_OBJECT
public:
        ControlDataWin(QWidget* w,Control& c);
	~ControlDataWin();


public slots:
	void	show();					///< Update and make the widget visible
	void	hide();
private slots:
	void	plotSyncEvents(QWheelEvent* e);

	void	refresh();
	void 	plot();
	void 	setPlotData();
	void	saveFile();
	void	updateStatus();	
	void	updateAutoCycle();	
private:
	void	printDataInfo();
	void	warningDialog(BString title, BError err);

	Control&		ocontrol;

	QTimer*			oticker;

	Tms::DataInfo		odataInfo;
	Tms::Data		odata;

	Tms::TmsCycleParams*	oavailCycleParams;

	BQwtPlot*		oplotSigma;
	BQwtPlot*		oplotDeltaX;
	BQwtPlot*		oplotDeltaY;
	
	CurveInfo		ox;
	CurveInfo		osigma;
	CurveInfo		odeltaX;
	CurveInfo		odeltaY;

	QLabel*			ocurrentCycle;
	
	BQComboBox*		ocyclePeriod;
	BQComboBox*		ofunction;
	BQComboBox*		obunchNumber;

	QLineEdit*		ocycleNumber;
	QCheckBox*		oautoCycleNumber;
	QCheckBox*		osaveFile;

	QSpinBox*		ochannel;
	QLineEdit*		ostartTime;
	QLineEdit*		oorbitNumber;
	QLineEdit*		oargument;
	QLineEdit*		onumValues;
};
#endif