QImage* new_QImage( const uchar * data, int width, int height, QImage::Format format )
{
QImage* image = new QImage(width, height, format);
memcpy(image->bits(), data, image->byteCount());
return image;
}
PyObject* bits(QImage* image) {
return PythonQtPrivate::wrapMemoryAsBuffer(image->bits(), image->bytesPerLine()* image->height());
}
#if QT_VERSION >= QT_VERSION_CHECK(4,7,0)
PyObject* constBits(QImage* image) {
return PythonQtPrivate::wrapMemoryAsBuffer(image->constBits(), image->byteCount());
}
#endif
PyObject* scanLine(QImage* image, int line) {
return PythonQtPrivate::wrapMemoryAsBuffer(image->scanLine(line), image->bytesPerLine());
}
#if QT_VERSION >= QT_VERSION_CHECK(4,7,0)
PyObject* constScanLine(QImage* image, int line) {
return PythonQtPrivate::wrapMemoryAsBuffer(image->constScanLine(line), image->bytesPerLine());
}
#endif
QAction* addAction (QMenu* menu, const QString & text, PyObject* callable, const QKeySequence & shortcut = 0) {
QAction* a = menu->addAction(text);
a->setShortcut(shortcut);
PythonQt::self()->addSignalHandler(a, SIGNAL(triggered(bool)), callable);
return a;
}
QAction* addAction (QMenu* menu, const QIcon& icon, const QString& text, PyObject* callable, const QKeySequence& shortcut = 0)
{
QAction* a = menu->addAction(text);
a->setIcon(icon);
a->setShortcut(shortcut);
PythonQt::self()->addSignalHandler(a, SIGNAL(triggered(bool)), callable);
return a;
}
QAction* addAction (QMenuBar* menu, const QString & text, PyObject* callable)
{
QAction* a = menu->addAction(text);
PythonQt::self()->addSignalHandler(a, SIGNAL(triggered(bool)), callable);
return a;
}
QAction* addAction (QToolBar* menu, const QString & text, PyObject* callable)
{
QAction* a = menu->addAction(text);
PythonQt::self()->addSignalHandler(a, SIGNAL(triggered(bool)), callable);
return a;
}
QAction* addAction (QToolBar* menu, const QIcon& icon, const QString& text, PyObject* callable)
{
QAction* a = menu->addAction(text);
a->setIcon(icon);
PythonQt::self()->addSignalHandler(a, SIGNAL(triggered(bool)), callable);
return a;
}