dllimport/dllexport stuff

This commit is contained in:
Uwe Rathmann 2018-10-12 08:03:03 +02:00
parent f1ac0cc13d
commit 19df7461c0
22 changed files with 144 additions and 30 deletions

View File

@ -6,10 +6,11 @@
#ifndef QSK_HUNSPELL_TEXT_PREDICTOR_H #ifndef QSK_HUNSPELL_TEXT_PREDICTOR_H
#define QSK_HUNSPELL_TEXT_PREDICTOR_H #define QSK_HUNSPELL_TEXT_PREDICTOR_H
#include "QskTextPredictor.h" #include "QskInputContextGlobal.h"
#include <QskTextPredictor.h>
#include <memory> #include <memory>
class QSK_EXPORT QskHunspellTextPredictor : public QskTextPredictor class QSK_INPUTCONTEXT_EXPORT QskHunspellTextPredictor : public QskTextPredictor
{ {
using Inherited = QskTextPredictor; using Inherited = QskTextPredictor;

View File

@ -0,0 +1,25 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* This file may be used under the terms of the QSkinny License, Version 1.0
*****************************************************************************/
#ifndef QSK_INPUTCONTEXT_GLOBAL_H
#define QSK_INPUTCONTEXT_GLOBAL_H
#include "QskGlobal.h"
#ifdef QSK_DLL
#if defined( QSK_INPUTCONTEXT_MAKEDLL ) // create a DLL library
#define QSK_INPUTCONTEXT_EXPORT Q_DECL_EXPORT
#else // use a DLL library
#define QSK_INPUTCONTEXT_EXPORT Q_DECL_IMPORT
#endif
#endif // QSK_DLL
#ifndef QSK_INPUTCONTEXT_EXPORT
#define QSK_INPUTCONTEXT_EXPORT
#endif
#endif

View File

@ -6,10 +6,11 @@
#ifndef QSK_PINYIN_TEXT_PREDICTOR_H #ifndef QSK_PINYIN_TEXT_PREDICTOR_H
#define QSK_PINYIN_TEXT_PREDICTOR_H #define QSK_PINYIN_TEXT_PREDICTOR_H
#include "QskTextPredictor.h" #include "QskInputContextGlobal.h"
#include <QskTextPredictor.h>
#include <memory> #include <memory>
class QSK_EXPORT QskPinyinTextPredictor : public QskTextPredictor class QSK_INPUTCONTEXT_EXPORT QskPinyinTextPredictor : public QskTextPredictor
{ {
using Inherited = QskTextPredictor; using Inherited = QskTextPredictor;

View File

@ -32,6 +32,9 @@ DESTDIR = $${QSK_OUT_ROOT}/plugins/platforminputcontexts
QMAKE_RPATHDIR *= $${QSK_OUT_ROOT}/lib QMAKE_RPATHDIR *= $${QSK_OUT_ROOT}/lib
LIBS *= -L$${QSK_OUT_ROOT}/lib -lqskinny LIBS *= -L$${QSK_OUT_ROOT}/lib -lqskinny
HEADERS += \
QskInputContextGlobal.h
SOURCES += \ SOURCES += \
QskInputContextPlugin.cpp QskInputContextPlugin.cpp
@ -68,8 +71,6 @@ hunspell {
} }
win32 {
contains(QSK_CONFIG, QskDll) { contains(QSK_CONFIG, QskDll) {
DEFINES += QT_DLL QSK_DLL DEFINES += QT_DLL QSK_DLL QSK_INPUTCONTEXT_MAKEDLL
}
} }

View File

@ -6,11 +6,11 @@
#ifndef QSK_QML_EXPORT_H #ifndef QSK_QML_EXPORT_H
#define QSK_QML_EXPORT_H #define QSK_QML_EXPORT_H
#include "QskGlobal.h" #include "QskQmlGlobal.h"
namespace QskQml namespace QskQml
{ {
QSK_EXPORT void registerTypes(); QSK_QML_EXPORT void registerTypes();
} }
#endif #endif

25
qmlexport/QskQmlGlobal.h Normal file
View File

@ -0,0 +1,25 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* This file may be used under the terms of the QSkinny License, Version 1.0
*****************************************************************************/
#ifndef QSK_QML_GLOBAL_H
#define QSK_QML_GLOBAL_H
#include <QskGlobal.h>
#ifdef QSK_DLL
#if defined( QSK_QML_MAKEDLL ) // create a DLL library
#define QSK_QML_EXPORT Q_DECL_EXPORT
#else // use a DLL library
#define QSK_QML_EXPORT Q_DECL_IMPORT
#endif
#endif // QSK_DLL
#ifndef QSK_QML_EXPORT
#define QSK_QML_EXPORT
#endif
#endif

View File

@ -6,7 +6,7 @@
#ifndef QSK_SHORTCUT_H #ifndef QSK_SHORTCUT_H
#define QSK_SHORTCUT_H #define QSK_SHORTCUT_H
#include "QskGlobal.h" #include "QskQmlGlobal.h"
#include <qnamespace.h> #include <qnamespace.h>
#include <qobject.h> #include <qobject.h>
@ -20,7 +20,7 @@ class QKeySequence;
For QML, with C++ there is also QskShortcutMap that does For QML, with C++ there is also QskShortcutMap that does
not need to create QObjects per shortcut not need to create QObjects per shortcut
*/ */
class QSK_EXPORT QskShortcut : public QObject, public QQmlParserStatus class QSK_QML_EXPORT QskShortcut : public QObject, public QQmlParserStatus
{ {
Q_OBJECT Q_OBJECT
Q_INTERFACES( QQmlParserStatus ) Q_INTERFACES( QQmlParserStatus )

View File

@ -14,7 +14,7 @@ CONFIG += no_private_qt_headers_warning
contains(QSK_CONFIG, QskDll) { contains(QSK_CONFIG, QskDll) {
CONFIG += dll CONFIG += dll
DEFINES += QSK_DLL QSK_MAKEDLL DEFINES += QSK_DLL QSK_QML_MAKEDLL
} }
else { else {
CONFIG += staticlib CONFIG += staticlib
@ -32,6 +32,7 @@ INCLUDEPATH *= $${QSK_DIRS}
DEPENDPATH *= $${QSK_DIRS} DEPENDPATH *= $${QSK_DIRS}
HEADERS += \ HEADERS += \
QskQmlGlobal.h \
QskShortcut.h \ QskShortcut.h \
QskQml.h QskQml.h

View File

@ -0,0 +1,25 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* This file may be used under the terms of the QSkinny License, Version 1.0
*****************************************************************************/
#ifndef QSK_MATERIAL_GLOBAL_H
#define QSK_MATERIAL_GLOBAL_H
#include "QskGlobal.h"
#ifdef QSK_DLL
#if defined( QSK_MATERIAL_MAKEDLL ) // create a DLL library
#define QSK_MATERIAL_EXPORT Q_DECL_EXPORT
#else // use a DLL library
#define QSK_MATERIAL_EXPORT Q_DECL_IMPORT
#endif
#endif // QSK_DLL
#ifndef QSK_MATERIAL_EXPORT
#define QSK_MATERIAL_EXPORT
#endif
#endif

View File

@ -6,10 +6,11 @@
#ifndef QSK_MATERIAL_SKIN_H #ifndef QSK_MATERIAL_SKIN_H
#define QSK_MATERIAL_SKIN_H #define QSK_MATERIAL_SKIN_H
#include "QskMaterialGlobal.h"
#include <QskSkin.h> #include <QskSkin.h>
#include <memory> #include <memory>
class QSK_EXPORT QskMaterialSkin : public QskSkin class QSK_MATERIAL_EXPORT QskMaterialSkin : public QskSkin
{ {
Q_OBJECT Q_OBJECT

View File

@ -6,9 +6,10 @@
#ifndef QSK_MATERIAL_SKIN_FACTORY_H #ifndef QSK_MATERIAL_SKIN_FACTORY_H
#define QSK_MATERIAL_SKIN_FACTORY_H #define QSK_MATERIAL_SKIN_FACTORY_H
#include "QskMaterialGlobal.h"
#include <QskSkinFactory.h> #include <QskSkinFactory.h>
class QSK_EXPORT QskMaterialSkinFactory : public QskSkinFactory class QSK_MATERIAL_EXPORT QskMaterialSkinFactory : public QskSkinFactory
{ {
Q_OBJECT Q_OBJECT

View File

@ -3,6 +3,7 @@ include( $${PWD}/../skins.pri )
TARGET = materialskin TARGET = materialskin
HEADERS += \ HEADERS += \
QskMaterialGlobal.h \
QskMaterialSkin.h \ QskMaterialSkin.h \
QskMaterialSkinFactory.h QskMaterialSkinFactory.h
@ -11,3 +12,5 @@ SOURCES += \
QskMaterialSkinFactory.cpp QskMaterialSkinFactory.cpp
OTHER_FILES += metadata.json OTHER_FILES += metadata.json
DEFINES += QSK_MATERIAL_MAKEDLL

View File

@ -26,9 +26,7 @@ DESTDIR = $${QSK_OUT_ROOT}/plugins/skins
QMAKE_RPATHDIR *= $${QSK_OUT_ROOT}/lib QMAKE_RPATHDIR *= $${QSK_OUT_ROOT}/lib
LIBS *= -L$${QSK_OUT_ROOT}/lib -lqskinny LIBS *= -L$${QSK_OUT_ROOT}/lib -lqskinny
win32 {
contains(QSK_CONFIG, QskDll) { contains(QSK_CONFIG, QskDll) {
DEFINES += QT_DLL QSK_DLL DEFINES += QT_DLL QSK_DLL
} }
}

View File

@ -0,0 +1,25 @@
/******************************************************************************
* QSkinny - Copyright (C) 2016 Uwe Rathmann
* This file may be used under the terms of the QSkinny License, Version 1.0
*****************************************************************************/
#ifndef QSK_SQUIEK_GLOBAL_H
#define QSK_SQUIEK_GLOBAL_H
#include "QskGlobal.h"
#ifdef QSK_DLL
#if defined( QSK_SQUIEK_MAKEDLL ) // create a DLL library
#define QSK_SQUIEK_EXPORT Q_DECL_EXPORT
#else // use a DLL library
#define QSK_SQUIEK_EXPORT Q_DECL_IMPORT
#endif
#endif // QSK_DLL
#ifndef QSK_SQUIEK_EXPORT
#define QSK_SQUIEK_EXPORT
#endif
#endif

View File

@ -6,10 +6,11 @@
#ifndef QSK_SQUIEK_SKIN_H #ifndef QSK_SQUIEK_SKIN_H
#define QSK_SQUIEK_SKIN_H #define QSK_SQUIEK_SKIN_H
#include "QskSquiekGlobal.h"
#include <QskSkin.h> #include <QskSkin.h>
#include <memory> #include <memory>
class QSK_EXPORT QskSquiekSkin : public QskSkin class QSK_SQUIEK_EXPORT QskSquiekSkin : public QskSkin
{ {
Q_OBJECT Q_OBJECT

View File

@ -6,9 +6,10 @@
#ifndef QSK_SQUIEK_SKIN_FACTORY_H #ifndef QSK_SQUIEK_SKIN_FACTORY_H
#define QSK_SQUIEK_SKIN_FACTORY_H #define QSK_SQUIEK_SKIN_FACTORY_H
#include "QskSquiekGlobal.h"
#include <QskSkinFactory.h> #include <QskSkinFactory.h>
class QSK_EXPORT QskSquiekSkinFactory : public QskSkinFactory class QSK_SQUIEK_EXPORT QskSquiekSkinFactory : public QskSkinFactory
{ {
Q_OBJECT Q_OBJECT

View File

@ -3,6 +3,7 @@ include( $${PWD}/../skins.pri )
TARGET = squiekskin TARGET = squiekskin
HEADERS += \ HEADERS += \
QskSquiekGlobal.h \
QskSquiekSkin.h \ QskSquiekSkin.h \
QskSquiekSkinFactory.h QskSquiekSkinFactory.h
@ -11,3 +12,5 @@ SOURCES += \
QskSquiekSkinFactory.cpp QskSquiekSkinFactory.cpp
OTHER_FILES += metadata.json OTHER_FILES += metadata.json
DEFINES += QSK_SQUIEK_MAKEDLL

View File

@ -10,9 +10,9 @@
class QGuiApplication; class QGuiApplication;
namespace SKINNY_EXPORT SkinnyFont namespace SkinnyFont
{ {
void init( QGuiApplication* ); SKINNY_EXPORT void init( QGuiApplication* );
} }
#endif #endif

View File

@ -6,7 +6,9 @@
#ifndef SKINNY_GLOBAL_H #ifndef SKINNY_GLOBAL_H
#define SKINNY_GLOBAL_H #define SKINNY_GLOBAL_H
#ifdef SKINNY_DLL #include <QskGlobal.h>
#ifdef QSK_DLL
#if defined( SKINNY_MAKEDLL ) // create a DLL library #if defined( SKINNY_MAKEDLL ) // create a DLL library
#define SKINNY_EXPORT Q_DECL_EXPORT #define SKINNY_EXPORT Q_DECL_EXPORT
@ -14,7 +16,7 @@
#define SKINNY_EXPORT Q_DECL_IMPORT #define SKINNY_EXPORT Q_DECL_IMPORT
#endif #endif
#endif // SKINNY_DLL #endif // QSK_DLL
#ifndef SKINNY_EXPORT #ifndef SKINNY_EXPORT
#define SKINNY_EXPORT #define SKINNY_EXPORT

View File

@ -8,9 +8,9 @@
#include "SkinnyGlobal.h" #include "SkinnyGlobal.h"
namespace SKINNY_EXPORT SkinnyPlugin namespace SkinnyPlugin
{ {
void init(); void SKINNY_EXPORT init();
} }
#endif #endif

View File

@ -9,7 +9,7 @@
#include "SkinnyGlobal.h" #include "SkinnyGlobal.h"
#include <QPainterPath> #include <QPainterPath>
namespace SKINNY_EXPORT SkinnyShapeFactory namespace SkinnyShapeFactory
{ {
// a couple of standard painter paths, that can // a couple of standard painter paths, that can
// be used for testing // be used for testing
@ -30,7 +30,7 @@ namespace SKINNY_EXPORT SkinnyShapeFactory
ShapeCount ShapeCount
}; };
QPainterPath shapePath( Shape, const QSizeF& ); SKINNY_EXPORT QPainterPath shapePath( Shape, const QSizeF& );
} }
#endif #endif

View File

@ -17,7 +17,7 @@ CONFIG += fontconfig
contains(QSK_CONFIG, QskDll) { contains(QSK_CONFIG, QskDll) {
CONFIG += dll CONFIG += dll
DEFINES += QSK_DLL QSK_MAKEDLL DEFINES += QSK_DLL SKINNY_MAKEDLL
} }
else { else {
CONFIG += staticlib CONFIG += staticlib