@@ -10,24 +10,25 @@
serialplot is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with serialplot. If not, see <http://www.gnu.org/licenses/>.
*/
#include <QRectF>
#include <QKeySequence>
#include <QColor>
#include "plot.h"
#include "utils.h"
Plot::Plot(QWidget* parent) :
QwtPlot(parent),
zoomer(this->canvas(), false),
sZoomer(this, &zoomer),
_showGridAction("Grid", this),
_showMinorGridAction("Minor Grid", this),
_unzoomAction("Unzoom", this),
_darkBackgroundAction("Dark Background", this)
@@ -134,36 +135,39 @@ void Plot::showMinorGrid(bool show)
grid.enableXMin(show);
grid.enableYMin(show);
replot();
}
void Plot::unzoom()
{
zoomer.zoom(0);
void Plot::darkBackground(bool enabled)
QColor gridColor;
if (enabled)
setCanvasBackground(QBrush(Qt::black));
grid.setPen(Qt::darkGray);
gridColor.setHsvF(0, 0, 0.25);
grid.setPen(gridColor);
zoomer.setRubberBandPen(QPen(Qt::white));
zoomer.setTrackerPen(QPen(Qt::white));
sZoomer.setPickerPen(QPen(Qt::white));
else
setCanvasBackground(QBrush(Qt::white));
grid.setPen(Qt::lightGray);
gridColor.setHsvF(0, 0, 0.80);
zoomer.setRubberBandPen(QPen(Qt::black));
zoomer.setTrackerPen(QPen(Qt::black));
sZoomer.setPickerPen(QPen(Qt::black));
/*
Below crude drawing demostrates how color selection occurs for
given channel index
0° <--Hue Value--> 360°
Status change: