##// END OF EJS Templates
sync...
jeandet -
r1388:0dd8127294f3
parent child
Show More
@@ -1,1 +1,1
1 Subproject commit 65c558a3025bc4ab1701c51a15427ccbf9d86cd3
1 Subproject commit 139d5f0a7d64d6d6d1d20862d922cada26ed8df3
@@ -289,7 +289,7 struct CatalogueEventsWidget::CatalogueEventsWidgetPrivate {
289 selectionZone);
289 selectionZone);
290 m_CustomGraphs << graph;
290 m_CustomGraphs << graph;
291
291
292 graph->setGraphRange(range, true);
292 graph->setGraphRange(range, true, true);
293
293
294 // Removes the graph from the graph list if it is closed manually
294 // Removes the graph from the graph list if it is closed manually
295 QObject::connect(graph, &VisualizationGraphWidget::destroyed,
295 QObject::connect(graph, &VisualizationGraphWidget::destroyed,
@@ -892,13 +892,14 void VisualizationGraphWidget::mouseMoveEvent(QMouseEvent *event)
892 }
892 }
893 else if(sqpApp->plotsInteractionMode() == SqpApplication::PlotsInteractionMode::SelectionZones)
893 else if(sqpApp->plotsInteractionMode() == SqpApplication::PlotsInteractionMode::SelectionZones)
894 {
894 {
895 if(auto item = impl->m_plot->itemAt(event->pos()))
895 auto posInPlot = this->impl->m_plot->mapFromParent(event->pos());
896 if(auto item = impl->m_plot->itemAt(posInPlot))
896 {
897 {
897 if(qobject_cast<VisualizationSelectionZoneItem*>(item))
898 if(qobject_cast<VisualizationSelectionZoneItem*>(item))
898 {
899 {
899 QMouseEvent e{QEvent::MouseMove,this->impl->m_plot->mapFromParent(event->pos()),event->button(),event->buttons(),event->modifiers()};
900 QMouseEvent e{QEvent::MouseMove, posInPlot, event->button(),event->buttons(),event->modifiers()};
900 sqpApp->sendEvent(this->impl->m_plot, &e);
901 sqpApp->sendEvent(this->impl->m_plot, &e);
901 this->impl->m_plot->replot(QCustomPlot::rpQueuedReplot);
902 this->impl->m_plot->replot(QCustomPlot::rpImmediateRefresh);
902 }
903 }
903 }
904 }
904
905
@@ -179,32 +179,17 void VisualizationZoneWidget::addGraph(VisualizationGraphWidget *graphWidget)
179 void VisualizationZoneWidget::insertGraph(int index, VisualizationGraphWidget *graphWidget)
179 void VisualizationZoneWidget::insertGraph(int index, VisualizationGraphWidget *graphWidget)
180 {
180 {
181 DEPRECATE(
181 DEPRECATE(
182 auto layout = ui->dragDropContainer->layout();
182 auto layout = ui->dragDropContainer->layout();
183 for(int i=0;i<layout->count();i++)
183 for(int i=0;i<layout->count();i++)
184 {
184 {
185 auto graph = qobject_cast<VisualizationGraphWidget *>(layout->itemAt(i)->widget());
185 auto graph = qobject_cast<VisualizationGraphWidget *>(layout->itemAt(i)->widget());
186 connect(graphWidget, &VisualizationGraphWidget::setrange_sig, graph, &VisualizationGraphWidget::setGraphRange);
186 connect(graphWidget, &VisualizationGraphWidget::setrange_sig, graph, &VisualizationGraphWidget::setGraphRange);
187 connect(graph, &VisualizationGraphWidget::setrange_sig, graphWidget, &VisualizationGraphWidget::setGraphRange);
187 connect(graph, &VisualizationGraphWidget::setrange_sig, graphWidget, &VisualizationGraphWidget::setGraphRange);
188 // connect(graphWidget, &VisualizationGraphWidget::zoom_sig, graph, &VisualizationGraphWidget::zoom);
188 }
189 // connect(graphWidget, &VisualizationGraphWidget::transform_sig, graph, &VisualizationGraphWidget::transform);
189 if(auto graph = firstGraph())
190
190 {
191 // connect(graphWidget, qOverload<double,Qt::Orientation,bool>(&VisualizationGraphWidget::move_sig),
191 graphWidget->setGraphRange(graph->graphRange(), true);
192 // graph, qOverload<double,Qt::Orientation,bool>(&VisualizationGraphWidget::move));
192 }
193 // connect(graphWidget, qOverload<double,double,bool>(&VisualizationGraphWidget::move_sig),
194 // graph, qOverload<double,double,bool>(&VisualizationGraphWidget::move));
195
196 // connect(graph, &VisualizationGraphWidget::zoom_sig, graphWidget, &VisualizationGraphWidget::zoom);
197 // connect(graph, &VisualizationGraphWidget::transform_sig, graphWidget, &VisualizationGraphWidget::transform);
198
199 // connect(graph, qOverload<double,Qt::Orientation,bool>(&VisualizationGraphWidget::move_sig),
200 // graphWidget, qOverload<double,Qt::Orientation,bool>(&VisualizationGraphWidget::move));
201 // connect(graph, qOverload<double,double,bool>(&VisualizationGraphWidget::move_sig),
202 // graphWidget, qOverload<double,double,bool>(&VisualizationGraphWidget::move));
203 }
204 if(auto graph = firstGraph())
205 {
206 graphWidget->setGraphRange(graph->graphRange(), true);
207 }
208 )
193 )
209
194
210 // Synchronize new graph with others in the zone
195 // Synchronize new graph with others in the zone
@@ -232,65 +217,65 VisualizationGraphWidget *VisualizationZoneWidget::createGraph(std::shared_ptr<V
232
217
233
218
234 // Lambda to synchronize zone widget
219 // Lambda to synchronize zone widget
235 auto synchronizeZoneWidget = [this, graphWidget](const DateTimeRange &graphRange,
220 // auto synchronizeZoneWidget = [this, graphWidget](const DateTimeRange &graphRange,
236 const DateTimeRange &oldGraphRange) {
221 // const DateTimeRange &oldGraphRange) {
237
222
238 auto zoomType = DateTimeRangeHelper::getTransformationType(oldGraphRange, graphRange);
223 // auto zoomType = DateTimeRangeHelper::getTransformationType(oldGraphRange, graphRange);
239 auto frameLayout = ui->dragDropContainer->layout();
224 // auto frameLayout = ui->dragDropContainer->layout();
240 for (auto i = 0; i < frameLayout->count(); ++i) {
225 // for (auto i = 0; i < frameLayout->count(); ++i) {
241 auto graphChild
226 // auto graphChild
242 = dynamic_cast<VisualizationGraphWidget *>(frameLayout->itemAt(i)->widget());
227 // = dynamic_cast<VisualizationGraphWidget *>(frameLayout->itemAt(i)->widget());
243 if (graphChild && (graphChild != graphWidget)) {
228 // if (graphChild && (graphChild != graphWidget)) {
244
229
245 auto graphChildRange = graphChild->graphRange();
230 // auto graphChildRange = graphChild->graphRange();
246 switch (zoomType) {
231 // switch (zoomType) {
247 case TransformationType::ZoomIn: {
232 // case TransformationType::ZoomIn: {
248 auto deltaLeft = graphRange.m_TStart - oldGraphRange.m_TStart;
233 // auto deltaLeft = graphRange.m_TStart - oldGraphRange.m_TStart;
249 auto deltaRight = oldGraphRange.m_TEnd - graphRange.m_TEnd;
234 // auto deltaRight = oldGraphRange.m_TEnd - graphRange.m_TEnd;
250 graphChildRange.m_TStart += deltaLeft;
235 // graphChildRange.m_TStart += deltaLeft;
251 graphChildRange.m_TEnd -= deltaRight;
236 // graphChildRange.m_TEnd -= deltaRight;
252 break;
237 // break;
253 }
238 // }
254
239
255 case TransformationType::ZoomOut: {
240 // case TransformationType::ZoomOut: {
256 auto deltaLeft = oldGraphRange.m_TStart - graphRange.m_TStart;
241 // auto deltaLeft = oldGraphRange.m_TStart - graphRange.m_TStart;
257 auto deltaRight = graphRange.m_TEnd - oldGraphRange.m_TEnd;
242 // auto deltaRight = graphRange.m_TEnd - oldGraphRange.m_TEnd;
258 graphChildRange.m_TStart -= deltaLeft;
243 // graphChildRange.m_TStart -= deltaLeft;
259 graphChildRange.m_TEnd += deltaRight;
244 // graphChildRange.m_TEnd += deltaRight;
260 break;
245 // break;
261 }
246 // }
262 case TransformationType::PanRight: {
247 // case TransformationType::PanRight: {
263 auto deltaLeft = graphRange.m_TStart - oldGraphRange.m_TStart;
248 // auto deltaLeft = graphRange.m_TStart - oldGraphRange.m_TStart;
264 auto deltaRight = graphRange.m_TEnd - oldGraphRange.m_TEnd;
249 // auto deltaRight = graphRange.m_TEnd - oldGraphRange.m_TEnd;
265 graphChildRange.m_TStart += deltaLeft;
250 // graphChildRange.m_TStart += deltaLeft;
266 graphChildRange.m_TEnd += deltaRight;
251 // graphChildRange.m_TEnd += deltaRight;
267 break;
252 // break;
268 }
253 // }
269 case TransformationType::PanLeft: {
254 // case TransformationType::PanLeft: {
270 auto deltaLeft = oldGraphRange.m_TStart - graphRange.m_TStart;
255 // auto deltaLeft = oldGraphRange.m_TStart - graphRange.m_TStart;
271 auto deltaRight = oldGraphRange.m_TEnd - graphRange.m_TEnd;
256 // auto deltaRight = oldGraphRange.m_TEnd - graphRange.m_TEnd;
272 graphChildRange.m_TStart -= deltaLeft;
257 // graphChildRange.m_TStart -= deltaLeft;
273 graphChildRange.m_TEnd -= deltaRight;
258 // graphChildRange.m_TEnd -= deltaRight;
274 break;
259 // break;
275 }
260 // }
276 case TransformationType::Unknown: {
261 // case TransformationType::Unknown: {
277 break;
262 // break;
278 }
263 // }
279 default:
264 // default:
280 qCCritical(LOG_VisualizationZoneWidget())
265 // qCCritical(LOG_VisualizationZoneWidget())
281 << tr("Impossible to synchronize: zoom type not take into account");
266 // << tr("Impossible to synchronize: zoom type not take into account");
282 // No action
267 // // No action
283 break;
268 // break;
284 }
269 // }
285 graphChild->setFlags(GraphFlag::DisableAll);
270 // graphChild->setFlags(GraphFlag::DisableAll);
286 graphChild->setGraphRange(graphChildRange);
271 // graphChild->setGraphRange(graphChildRange, true);
287 graphChild->setFlags(GraphFlag::EnableAll);
272 // graphChild->setFlags(GraphFlag::EnableAll);
288 }
273 // }
289 }
274 // }
290 };
275 // };
291
276
292 // connection for synchronization
277 // connection for synchronization
293 connect(graphWidget, &VisualizationGraphWidget::synchronize, synchronizeZoneWidget);
278 //connect(graphWidget, &VisualizationGraphWidget::synchronize, synchronizeZoneWidget);
294 connect(graphWidget, &VisualizationGraphWidget::variableAdded, this,
279 connect(graphWidget, &VisualizationGraphWidget::variableAdded, this,
295 &VisualizationZoneWidget::onVariableAdded);
280 &VisualizationZoneWidget::onVariableAdded);
296 connect(graphWidget, &VisualizationGraphWidget::variableAboutToBeRemoved, this,
281 connect(graphWidget, &VisualizationGraphWidget::variableAboutToBeRemoved, this,
General Comments 0
You need to be logged in to leave comments. Login now