##// END OF EJS Templates
Refactors internals...
Refactors internals * rewrite axisUpdated signal handling * create handlers for each property of axis * decouple chartdataset, presenter, theme * adds theme manager * adds axis add/remove/attach/detach handling * refactors createGraphics * add initializers (graphics,domain,theme,animations) * refactor the way the charts are constructed (decouple form presenter) * fix initialization issues with qchart * refactor domain logic to handle also geometry size for charts * delegate xyseries geometry calculation to domian * fix lazy initialization of animations * remove hadnleGeomoetryChanged * add shared pointers to handle reference count for domain * moves nice number algorithm to domain * adds applyNiceNumbers(), depreciate setNiceNumbers * refactor multiple charts handling * domain is shared object * each domain can have multiple axis for controlling * multiple charts share now the same domain

File last commit:

r2254:3e008d6a7c89
r2273:1c49aa901cb2
Show More
graphicsbutton.cpp
35 lines | 837 B | text/x-c | CppLexer
#include "graphicsbutton.h"
#include <QPainter>
#include <QProcess>
#include <QMouseEvent>
GraphicsButton::GraphicsButton(const QString& path, QDir appFolder, const QString& app, QWidget *parent) :
QWidget(parent),
m_path(path),
m_appFolder(appFolder),
m_app(app),
m_demoApp(0)
{
m_pixmap = QPixmap(path);
}
GraphicsButton::~GraphicsButton()
{
if (m_demoApp)
m_demoApp->close();
}
void GraphicsButton::mousePressEvent(QMouseEvent * event)
{
QString program = m_appFolder.absolutePath() + QDir::separator() + m_app;
m_demoApp = new QProcess(this);
m_demoApp->start(program);
event->accept();
}
void GraphicsButton::paintEvent(QPaintEvent *event)
{
QPainter painter(this);
painter.drawPixmap(0, 0, this->width(), this->height(), m_pixmap);
QWidget::paintEvent(event);
}