From 668cb9cdcc8d4cc5fb5a41a081a48e0aba7a52fd Mon Sep 17 00:00:00 2001 From: catdog2 Date: Mon, 26 Jan 2009 13:42:09 +0000 Subject: [PATCH] daten an aus eingebaut git-svn-id: http://svn.lsim.tuxzone.org/trunk@66 4bec179b-ab65-46ed-a5f8-55b8b5c735d0 --- src/lsim.cpp | 25 +++++++++++++++++++++++++ src/simulscene.cpp | 14 ++++++++++++++ src/simulscene.h | 8 ++++++++ 3 files changed, 47 insertions(+) diff --git a/src/lsim.cpp b/src/lsim.cpp index 968c11d..0fcf304 100644 --- a/src/lsim.cpp +++ b/src/lsim.cpp @@ -694,7 +694,32 @@ void lsim::createDocks() { + + //Daten an aus box + QCheckBox *data_on_off_box = new QCheckBox(""); + data_on_off_box->setChecked(simulscene->getScenePosLablesActive()); + connect(data_on_off_box, SIGNAL(toggled(bool)),simulscene, SLOT(setScenePosLablesActive(bool))); + + //Ausgrauen bei aus + ProbePosGroupBox->setEnabled(simulscene->getScenePosLablesActive()); + ProbeSpeedGroupBox->setEnabled(simulscene->getScenePosLablesActive()); + connect(data_on_off_box, SIGNAL(toggled(bool)),ProbePosGroupBox, SLOT(setEnabled(bool))); + connect(data_on_off_box, SIGNAL(toggled(bool)),ProbeSpeedGroupBox, SLOT(setEnabled(bool))); + + + connect(simulscene, SIGNAL(scenePosLablesActiveChanged(bool)),data_on_off_box, SLOT(setChecked(bool))); + + QGridLayout *ProbeDisplayGridLayout = new QGridLayout; + ProbeDisplayGridLayout->addWidget(new QLabel("Anzeige Aktivieren"),0,0,Qt::AlignCenter); + ProbeDisplayGridLayout->addWidget(data_on_off_box,0,1,Qt::AlignCenter); + + QGroupBox *dataDisplayGroupBox = new QGroupBox(tr("")); + dataDisplayGroupBox->setLayout(ProbeDisplayGridLayout); + + + QVBoxLayout *simulDataVBoxLayout = new QVBoxLayout(); + simulDataVBoxLayout->addWidget(dataDisplayGroupBox); simulDataVBoxLayout->addWidget(ProbePosGroupBox); simulDataVBoxLayout->addWidget(ProbeSpeedGroupBox); simulDataVBoxLayout->addStretch(); diff --git a/src/simulscene.cpp b/src/simulscene.cpp index 014f2a9..e338503 100644 --- a/src/simulscene.cpp +++ b/src/simulscene.cpp @@ -125,6 +125,7 @@ void SimulScene::drawBackground ( QPainter * painter, const QRectF & rect ) { } void SimulScene::handleTimeLineValueChange(qreal value ) { + if (!getScenePosLablesActive()) return; //abbrechen, wenn deaktiviert da rechenintensiv int step = 0; QList > poslist = ani->posList(); for(int i = 1;i SimulScene::getSaveDataList() { @@ -1155,3 +1158,14 @@ void SimulScene::resetScene() { setupVars(); ellipse1->resetProbe(); } + + +bool SimulScene::getScenePosLablesActive() const { + return scenePosLablesActive; +} + + +void SimulScene::setScenePosLablesActive ( bool theValue ) { + scenePosLablesActive = theValue; + emit scenePosLablesActiveChanged(theValue); +} diff --git a/src/simulscene.h b/src/simulscene.h index e033e81..2e62c25 100644 --- a/src/simulscene.h +++ b/src/simulscene.h @@ -87,6 +87,8 @@ class SimulScene : public QGraphicsScene { QList getSaveDataList(); void setSaveDataList(QList list); void connectNewFieldItem(FieldItem* item); + bool getScenePosLablesActive() const; + public slots: void setSceneMode(SceneMode mode); @@ -115,6 +117,9 @@ class SimulScene : public QGraphicsScene { void moveSelectedFieldItemOnBottom(); void resetScene(); void handleTimeLineValueChange(qreal value); + + void setScenePosLablesActive ( bool theValue ); + private slots: void displayResizeRects(bool move = false); @@ -135,9 +140,12 @@ class SimulScene : public QGraphicsScene { void probeSpeedXChanged(QString text); void probespeedYChanged(QString text); void probeSpeedChanged(QString text); + void scenePosLablesActiveChanged(bool truefalse); private: QTimeLine *timer; + bool scenePosLablesActive; + SceneMode myMode; ///Zeit pro Step in sekunden