MCPcopy Create free account
hub / github.com/antvis/F2Native / OnTouchEvent

Method OnTouchEvent

core/graphics/XChart.cpp:353–376  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

351}
352
353bool XChart::OnTouchEvent(const std::string &json) {
354 if(!canvasContext_ || !canvasContext_->IsValid()) {
355 return false;
356 }
357 nlohmann::json cfg = xg::json::ParseString(json);
358 if(!cfg.is_object() || !cfg.contains("eventType") || !cfg.contains("points"))
359 return false;
360 event::Event event;
361 event.eventType = cfg["eventType"];
362 nlohmann::json &_points = cfg["points"];
363 if(!_points.is_array() || _points.empty()) {
364 return false;
365 }
366
367 for(std::size_t i = 0; i < _points.size(); ++i) {
368 nlohmann::json &_point = _points[i];
369 util::Point point{_point["x"], _point["y"]};
370 event.points.push_back(std::move(point));
371 }
372 event.devicePixelRatio = ratio_;
373 event.timeStamp = xg::CurrentTimestampAtMM();
374// this->logTracer_->trace("#onTouchEvent: %s", json.data());
375 return this->eventController_->OnTouchEvent(event);
376}
377
378const std::string XChart::OnTapEvent(const std::string &json) {
379 if(!canvasContext_ || !canvasContext_->IsValid()) {

Callers 2

SendChartTouchEventFunction · 0.45

Calls 6

ParseStringFunction · 0.85
CurrentTimestampAtMMFunction · 0.85
push_backMethod · 0.80
IsValidMethod · 0.45
emptyMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected