git-svn-id: svn://db.shs.com.ru/libs@150 a8b55f48-bf90-11e4-a774-851b48703e85

This commit is contained in:
2016-12-14 12:37:38 +00:00
parent 75c597b0f7
commit 2144b520fe
3 changed files with 80 additions and 9 deletions

View File

@@ -1,17 +1,37 @@
project(piqt)
cmake_minimum_required(VERSION 2.6)
option(LIB "System install" 0)
file(GLOB HDRS "./*.h")
if (LIB)
if (WIN32)
if (MINGW)
find_package(MinGW REQUIRED)
endif()
find_package(Qt4 REQUIRED)
if(LIBPROJECT)
include(PIPMacros)
else()
find_package(PIP REQUIRED)
endif()
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${PIP_INCLUDES} ${QT_INCLUDES})
file(GLOB HDRS "*.h")
file(GLOB CPPS "*.cpp")
if(DEFINED ENV{QNX_HOST})
add_library(${PROJECT_NAME} STATIC ${CPPS})
else()
add_library(${PROJECT_NAME} SHARED ${CPPS})
endif()
set(LIBS ${QT_QTCORE_LIBRARY} ${PIP_LIBRARY})
target_link_libraries(${PROJECT_NAME} ${LIBS})
if(LIB)
if(WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${HDRS} DESTINATION ${MINGW_INCLUDE})
else ()
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR})
else()
set(CMAKE_INSTALL_PREFIX /usr)
install(FILES ${HDRS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
endif ()
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
endif()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
endif ()
else()
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif()

View File

@@ -1,4 +1,49 @@
#include "piqt.h"
#include "qvariantedit.h"
const QVariant PI2QVariant(const PIVariant & v) {
switch (v.type()) {
case PIVariant::pivBool: return QVariant(v.toBool());
case PIVariant::pivChar:
case PIVariant::pivUChar:
case PIVariant::pivShort:
case PIVariant::pivUShort:
case PIVariant::pivInt: return QVariant(v.toInt());
case PIVariant::pivUInt: return QVariant(uint(v.toInt()));
case PIVariant::pivLLong: return QVariant(v.toLLong());
case PIVariant::pivULLong: return QVariant(ullong(v.toLLong()));
case PIVariant::pivFloat: return QVariant(v.toFloat());
case PIVariant::pivDouble: return QVariant(v.toDouble());
case PIVariant::pivLDouble: return QVariant(v.toDouble());
case PIVariant::pivByteArray: return QVariant(PI2QByteArray(v.toByteArray()));
case PIVariant::pivString: return QVariant(PI2QString(v.toString()));
case PIVariant::pivStringList: return QVariant(PI2QStringList(v.toStringList()));
case PIVariant::pivTime: return QVariant(PI2QTime(v.toTime()));
case PIVariant::pivDate: return QVariant(PI2QDate(v.toDate()));
case PIVariant::pivDateTime: return QVariant(PI2QDateTime(v.toDateTime()));
//case PIVariant::pivSystemTime: return QVariant(v.to());
default: return QVariant();
}
return QVariant();
}
const PIVariant Q2PIVariant(const QVariant & v) {
switch (v.type()) {
case QVariant::Bool: return PIVariant(v.toBool());
case QVariant::Int: return PIVariant(v.toInt());
case QVariant::UInt: return PIVariant(v.toUInt());
case QVariant::LongLong: return PIVariant(v.toLongLong());
case QVariant::ULongLong: return PIVariant(v.toULongLong());
case QVariant::Double: return PIVariant(v.toDouble());
case QVariant::ByteArray: return PIVariant(Q2PIByteArray(v.toByteArray()));
case QVariant::String: return PIVariant(Q2PIString(v.toString()));
case QVariant::StringList: return PIVariant(Q2PIStringList(v.toStringList()));
case QVariant::Time: return PIVariant(Q2PITime(v.toTime()));
case QVariant::Date: return PIVariant(Q2PIDate(v.toDate()));
case QVariant::DateTime: return PIVariant(Q2PIDateTime(v.toDateTime()));
default: return PIVariant();
}
return PIVariant();
}

View File

@@ -4,6 +4,7 @@
#include "pistring.h"
#include "pimathmatrix.h"
#include "pitime.h"
#include "pivariant.h"
#include <QString>
#include <QByteArray>
#include <QPointF>
@@ -11,6 +12,7 @@
#include <QVector3D>
#include <QDateTime>
#include <QStringList>
#include <QVariant>
//inline const QString PI2QString(const PIString & v) {return QString::fromLocal8Bit(v.data());}
@@ -45,6 +47,10 @@ inline const PIDate Q2PIDate(const QDate & v) {return PIDate(v.year(), v.month()
inline const PITime Q2PITime(const QTime & v) {return PITime(v.hour(), v.minute(), v.second(), v.msec());}
inline const PIDateTime Q2PIDateTime(const QDateTime & v) {return PIDateTime(Q2PIDate(v.date()), Q2PITime(v.time()));}
const QVariant PI2QVariant(const PIVariant & v);
const PIVariant Q2PIVariant(const QVariant & v);
//inline const PIVariant QString2PIVariant(const QString & v) {return PIVariant::readFromString(QString2PIString(v));}