summaryrefslogtreecommitdiffstats
path: root/clients/tde/src/part/scope/part.h
diff options
context:
space:
mode:
Diffstat (limited to 'clients/tde/src/part/scope/part.h')
-rw-r--r--clients/tde/src/part/scope/part.h45
1 files changed, 44 insertions, 1 deletions
diff --git a/clients/tde/src/part/scope/part.h b/clients/tde/src/part/scope/part.h
index 1e342da..24e2c84 100644
--- a/clients/tde/src/part/scope/part.h
+++ b/clients/tde/src/part/scope/part.h
@@ -20,10 +20,44 @@ class TQSocket;
class TQTimer;
class TQMutex;
class TQRectF;
+class TQGridLayout;
+class TQCheckBox;
+class TQGroupBox;
class ScopeBase;
namespace RemoteLab
{
+ class TraceControlWidget : public TQWidget
+ {
+ Q_OBJECT
+
+ public:
+ TraceControlWidget(TQWidget *parent=0, const char *name=0);
+ ~TraceControlWidget();
+
+ public:
+ void setVoltsPerDivList(TQDoubleList list);
+ void setSelectedVoltsPerDiv(double vdiv);
+ void setTraceEnabled(bool enabled);
+ void setTraceName(TQString name);
+
+ signals:
+ void enableChanged(bool enabled);
+ void voltsPerDivChanged(double vdiv);
+
+ private slots:
+ void enableClicked();
+ void vdivChanged(int index);
+
+ private:
+ TQGroupBox* m_groupBox;
+ TQGridLayout* m_primaryLayout;
+ TQComboBox* m_voltsDivComboBox;
+ TQCheckBox* m_channelEnabledCheckBox;
+
+ TQDoubleList m_voltsDivList;
+ };
+
class ScopePart : public KParts::RemoteInstrumentPart
{
Q_OBJECT
@@ -51,13 +85,17 @@ namespace RemoteLab
void mainEventLoop();
void startDAQ();
void stopDAQ();
+ void updateTraceControlWidgets();
+ void traceControlEnableChanged(bool enabled);
+ void traceControlVDivChanged(double vdiv);
+ void cursorLevelChanged(uint cursor, double level);
void saveWaveforms();
void recallWaveforms();
virtual void postProcessTrace();
- void saRefLevelChanged(double);
private:
TraceWidget* m_traceWidget;
+ TQGridLayout* m_traceControlWidgetGrid;
int m_commHandlerState;
int m_commHandlerMode;
int m_commHandlerCommandState;
@@ -77,6 +115,11 @@ namespace RemoteLab
bool m_channelActive[MAXTRACES+1];
double m_voltsDiv[MAXTRACES+1];
double m_secsDiv[MAXTRACES+1];
+ TraceControlWidget* m_traceControlWidgetList[MAXTRACES];
+ bool m_triggerLevelSet;
+ bool m_voltsDivSet[MAXTRACES+1];
+ bool m_channelActiveSet[MAXTRACES+1];
+ bool m_lastChangesRequireFullUpdate;
ScopeBase* m_base;
TQMutex* m_instrumentMutex;
bool stopTraceUpdate;