- tms-old
- tms
- tmsControlGui
- PhaseTableWin.h
This file ( 4kB ) exceeds the allowed full mode (48 kb) size.
The editor full hight is disabled, only scrolling is allowed..
If you wish to edit a file, it is recommended to use the scroll mode as some users do not like the full height
mode, although some users like it.
/*
* Title: PhaseTableWin.h
* Author: M.Thomas BEAM Ltd
* Date: 2007-04-03
*
* Contents: Pupe Simulation mode setup
*
* Mod Rec:
*
*/
#ifndef PHASETABLEWIN_H
#define PHASETABLEWIN_H
#include <BString.h>
#include <qhbox.h>
#include <Control.h>
#include <qlineedit.h>
#include <qcheckbox.h>
#include <qspinbox.h>
#include <qpushbutton.h>
#include <qtextedit.h>
#include <qlistbox.h>
#include <qtable.h>
#include <qlayout.h>
#include <qvbox.h>
#include <qgroupbox.h>
#include <qvgroupbox.h>
#include <qdialog.h>
#include <BQComboBox.h>
#include <TmsD.h>
#include <TmsC.h>
#include <TmsS.h>
#include <TmsLib.h>
#include <TmsCycleParam.h>
#include <TmsStateGui.h>
class DetailViewGui : public QDialog {
Q_OBJECT
public:
DetailViewGui();
void init(Tms::CycleParamEdit& cycleParam, int reset);
public:
TmsStateGui* ostateGui;
};
class CycleParamStateGui : public Tms::CycleParamState {
public:
BUInt32 enable;
};
/*! Configure System and setup user interface window.
*
*/
class PhaseTableWin : public QWidget {
Q_OBJECT
public:
PhaseTableWin(QWidget* w,Control& c);
~PhaseTableWin();
public slots:
void show();
private slots:
void update(); ///< update Gui element to reflect current data
BError updateCycleTypes(); ///< Updates known Server cycle types list
void updateCycleInfo(); ///< Updates GUI to reflect selected cycle type
void updateCycleParamState(); ///< Update GUI to reflect Cycle Param data
void loadFromFile(); ///< Load cycle info from file
void loadFromTms(); ///< Load cycle info from the server
void saveFile(); ///< Save cycle defs file on file system
void saveTms(); ///< Save cycle defs on remote TMS server
void deleteTms(); ///< Delete cycle defs from remote TMS server
void updateDetails(); ///< Updates the details
void viewDetails(); ///< Save cycle defs file on file system
void addOffsets(); ///< Add offest to all items in the phase delay table
void loadDefaults(); ///< Load defaults for phase delays
void enableStateEdit();
void setCyclePhaseParams();
void selectFile(); ///< Invoke dialog to select a cycle definition file
void cycleStateChanged();
void cycleStateChanged(int num);
void addNextState();
void delLastState();
private:
void refreshParamState(Tms::CycleParamState s);
void createGridGroupBox(QVGroupBox*& g,BString title,QWidget*& w,QGridLayout*& l);
void addEditorToGrid(QGridLayout* g,QWidget* w,BString label,QWidget* editor,int row,int col, int colEnd = 0);
void setParams();
QString uIntToStr(BUInt32 v);
QString doubleToStr(double v);
QString uIntToHexStr(BUInt32 v);
void warningDialog(BString title, BError err);
int confirmDialog(BString title, BString msg);
Control& ocontrol;
QLineEdit* ocycleType;
QLineEdit* oname;
QSpinBox* ochannel;
QSpinBox* oring;
QLineEdit* oinfo;
QLineEdit* opllCycleStartFrequency;
QLineEdit* opllInitialFrequency;
QLineEdit* opllInitialFrequencyDelay;
QLineEdit* opllFrefGain;
QLineEdit* opllGain;
QLineEdit* opllDdsMinimum;
QLineEdit* opllDdsMaximum;
QLineEdit* ostateDelay;
QSpinBox* ooffset;
QLineEdit* ofilename;
QListBox* ocycleTypes;
QPushButton* oselectFile;
QPushButton* oloadFromFile;
QPushButton* oloadFromTms;
QPushButton* oupload;
QPushButton* osaveFile;
QPushButton* odelete;
QPushButton* oupdate;
QPushButton* oviewDetails;
QTable* ophaseDelays;
QPushButton* oloadDefaults;
QPushButton* oaddOffsets;
QCheckBox* oenableModifications;
QSpinBox* ostateNum;
QComboBox* ophaseNames;
QPushButton* oaddNextState;
QPushButton* odelLastState;
QVGroupBox * ostateSetups;
QSpinBox* onextStates[6];
QLineEdit* olo1Harmonic;
QLineEdit* olo1Phase;
QLineEdit* olo2Harmonic;
QLineEdit* olo2Phase;
QCheckBox* of1Ref;
QCheckBox* of1Lo;
QCheckBox* of2Ref;
QCheckBox* of2Lo;
QCheckBox* obit6;
QCheckBox* obit7;
QCheckBox* opllF2;
QCheckBox* oacquireData;
QLineEdit* obunchMask;
QLineEdit* omean1Mask;
QLineEdit* omean2Mask;
QLineEdit* ogateWidth;
QLineEdit* ogatePhase;
QLineEdit* oblrWidth;
QLineEdit* oblrPhase;
BList<Tms::CycleParamState> ocycleStates;
Tms::CycleParamEdit oparams;
DetailViewGui* odetailViewGui;
};
#endif