mirror of
https://gitlab.com/eql/lqml.git
synced 2025-12-07 11:01:01 -08:00
add cpp-lib example; some fixes
This commit is contained in:
parent
7a4bff3c20
commit
eb54b6fd41
12 changed files with 144 additions and 11 deletions
14
cpp-lib/cpp/cpp.pro
Normal file
14
cpp-lib/cpp/cpp.pro
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
QT += core
|
||||
TEMPLATE = lib
|
||||
CONFIG += plugin release
|
||||
DESTDIR = ../
|
||||
TARGET = cpp
|
||||
OBJECTS_DIR = ./tmp/
|
||||
MOC_DIR = ./tmp/
|
||||
|
||||
win32 {
|
||||
include(../../src/windows.pri)
|
||||
}
|
||||
|
||||
HEADERS += lib.h
|
||||
SOURCES += lib.cpp
|
||||
27
cpp-lib/cpp/lib.cpp
Normal file
27
cpp-lib/cpp/lib.cpp
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
#include "lib.h"
|
||||
#include <QtDebug>
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
QObject* ini() {
|
||||
// any QObject inherited class will do
|
||||
static QObject* cpp = 0;
|
||||
if(!cpp) {
|
||||
cpp = new CPP;
|
||||
}
|
||||
return cpp;
|
||||
}
|
||||
|
||||
// insert here your function implementations
|
||||
|
||||
QVariant CPP::hello(const QVariant& arg) {
|
||||
QString msg;
|
||||
QDebug debug(&msg);
|
||||
debug << arg;
|
||||
|
||||
qDebug() << "hello" << arg;
|
||||
|
||||
return arg;
|
||||
}
|
||||
|
||||
QT_END_NAMESPACE
|
||||
28
cpp-lib/cpp/lib.h
Normal file
28
cpp-lib/cpp/lib.h
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
#ifndef LIB_H
|
||||
#define LIB_H
|
||||
|
||||
#include <QtCore>
|
||||
|
||||
#ifdef Q_CC_MSVC
|
||||
#define LIB_EXPORT __declspec(dllexport)
|
||||
#else
|
||||
#define LIB_EXPORT
|
||||
#endif
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
extern "C" { LIB_EXPORT QObject* ini(); }
|
||||
|
||||
class CPP : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
// max. 10 arguments of type QVariant
|
||||
// return type must also be a QVariant
|
||||
Q_INVOKABLE QVariant hello(const QVariant&);
|
||||
};
|
||||
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue