/*Copyright © 2017 Hasan Yavuz ÖzderyaThis file is part of serialplot.serialplot is free software: you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation, either version 3 of the License, or(at your option) any later version.serialplot is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with serialplot. If not, see <http://www.gnu.org/licenses/>.*/#include "barplot.h"#include "barscaledraw.h"#include "utils.h"BarPlot::BarPlot(ChannelManager* channelMan, PlotMenu* menu, QWidget* parent) :QwtPlot(parent), _menu(menu), barChart(channelMan){_channelMan = channelMan;barChart.attach(this);setAxisMaxMinor(QwtPlot::xBottom, 0);setAxisScaleDraw(QwtPlot::xBottom, new BarScaleDraw(channelMan));update();connect(_channelMan, &ChannelManager::dataAdded, this, &BarPlot::update);connect(_channelMan, &ChannelManager::numOfChannelsChanged, this, &BarPlot::update);// connect to menuconnect(&menu->darkBackgroundAction, SELECT<bool>::OVERLOAD_OF(&QAction::toggled),this, &BarPlot::darkBackground);darkBackground(menu->darkBackgroundAction.isChecked());}void BarPlot::update(){// Note: -0.99 is used instead of -1 to handle the case of `numOfChannels==1`setAxisScale(QwtPlot::xBottom, 0, _channelMan->numOfChannels()-0.99, 1);barChart.resample();replot();}void BarPlot::setYAxis(bool autoScaled, double yMin, double yMax){if (autoScaled){setAxisAutoScale(QwtPlot::yLeft);}else{setAxisScale(QwtPlot::yLeft, yMin, yMax);}}void BarPlot::darkBackground(bool enabled){if (enabled){setCanvasBackground(QBrush(Qt::black));}else{setCanvasBackground(QBrush(Qt::white));}replot();}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。