QAD_EXPORT
git-svn-id: svn://db.shs.com.ru/libs@719 a8b55f48-bf90-11e4-a774-851b48703e85
This commit is contained in:
@@ -5,9 +5,10 @@
|
||||
#include <QBuffer>
|
||||
#include <QByteArray>
|
||||
#include <QMap>
|
||||
#include "qad_export.h"
|
||||
|
||||
|
||||
class ChunkStream
|
||||
class QAD_EXPORT ChunkStream
|
||||
{
|
||||
public:
|
||||
enum Version {
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
#include "chunkstream.h"
|
||||
|
||||
|
||||
class PropertyStorage {
|
||||
class QAD_EXPORT PropertyStorage {
|
||||
public:
|
||||
PropertyStorage() {}
|
||||
|
||||
|
||||
@@ -2,18 +2,21 @@
|
||||
#define QAD_TYPES_H
|
||||
|
||||
#include "propertystorage.h"
|
||||
#include "qad_export.h"
|
||||
|
||||
|
||||
class QMetaEnum;
|
||||
|
||||
|
||||
namespace QAD {
|
||||
|
||||
struct Enumerator {
|
||||
struct QAD_EXPORT Enumerator {
|
||||
Enumerator(int v = 0, const QString & n = QString()): value(v), name(n) {}
|
||||
int value;
|
||||
QString name;
|
||||
};
|
||||
|
||||
struct Enum {
|
||||
struct QAD_EXPORT Enum {
|
||||
Enum(const QString & n = QString()): enum_name(n) {}
|
||||
Enum(const QMetaEnum & meta, int selected = 0);
|
||||
QString toString() const {return selected;} // obsolete, use selectedName()
|
||||
@@ -34,7 +37,7 @@ namespace QAD {
|
||||
Enum & operator <<(const QStringList & v);
|
||||
};
|
||||
|
||||
struct File {
|
||||
struct QAD_EXPORT File {
|
||||
File(const QString & p = QString(), const QString & f = QString(), bool abs = false): file(p), filter(f), is_abs(abs) {}
|
||||
QString toString() const {return file;}
|
||||
QString file;
|
||||
@@ -42,14 +45,14 @@ namespace QAD {
|
||||
bool is_abs;
|
||||
};
|
||||
|
||||
struct Dir {
|
||||
struct QAD_EXPORT Dir {
|
||||
Dir(const QString & d = QString(), bool abs = false): dir(d), is_abs(abs) {}
|
||||
QString toString() const {return dir;}
|
||||
QString dir;
|
||||
bool is_abs;
|
||||
};
|
||||
|
||||
struct IODevice {
|
||||
struct QAD_EXPORT IODevice {
|
||||
IODevice(const QString & device_prefix = QString(), const PropertyStorage & device_properties = PropertyStorage(),
|
||||
int open_mode = QIODevice::ReadWrite, int device_options = 0)
|
||||
: prefix(device_prefix), mode(open_mode), options(device_options), props(device_properties) {}
|
||||
@@ -61,12 +64,12 @@ namespace QAD {
|
||||
PropertyStorage props;
|
||||
};
|
||||
|
||||
struct MathVector {
|
||||
struct QAD_EXPORT MathVector {
|
||||
MathVector(const QVector<double> & vec = QVector<double>()) {v = vec;}
|
||||
QVector<double> v;
|
||||
};
|
||||
|
||||
struct MathMatrix {
|
||||
struct QAD_EXPORT MathMatrix {
|
||||
MathMatrix(const QVector<QVector<double> > & mat = QVector<QVector<double> > ()) {m = mat;}
|
||||
QVector<QVector<double> > m; // [Row][Column]
|
||||
};
|
||||
@@ -109,7 +112,7 @@ inline QDataStream & operator >>(QDataStream & s, QAD::MathMatrix & v) {s >> v.m
|
||||
inline QDebug operator <<(QDebug s, const QAD::MathMatrix & v) {s.nospace() << "Matrix " << v.m; return s.space();}
|
||||
|
||||
|
||||
class __QADTypesRegistrator__ {
|
||||
class QAD_EXPORT __QADTypesRegistrator__ {
|
||||
public:
|
||||
__QADTypesRegistrator__(int);
|
||||
static __QADTypesRegistrator__ * instance();
|
||||
@@ -136,13 +139,13 @@ inline QRectF enlargedRect(const QRectF & r, qreal dx, qreal dy, qreal v) {
|
||||
return QRectF(r.left() - v + dx, r.top() - v + dy, r.width() + v+v, r.height() + v+v);
|
||||
}
|
||||
|
||||
QVariant::Type typeFromLetter(const QString & l);
|
||||
QString uniqueName(QString n, const QStringList & names);
|
||||
QAD_EXPORT QVariant::Type typeFromLetter(const QString & l);
|
||||
QAD_EXPORT QString uniqueName(QString n, const QStringList & names);
|
||||
|
||||
int fontHeight(const QWidget * w = 0);
|
||||
int lineThickness(const QWidget * w = 0);
|
||||
QSize preferredIconSize(float x = 1.f, const QWidget * w = 0);
|
||||
double appScale(const QWidget * w = 0);
|
||||
QAD_EXPORT int fontHeight(const QWidget * w = 0);
|
||||
QAD_EXPORT int lineThickness(const QWidget * w = 0);
|
||||
QAD_EXPORT QSize preferredIconSize(float x = 1.f, const QWidget * w = 0);
|
||||
QAD_EXPORT double appScale(const QWidget * w = 0);
|
||||
|
||||
|
||||
#endif // QAD_TYPES_H
|
||||
|
||||
@@ -11,22 +11,23 @@
|
||||
#include <QRectF>
|
||||
#include <QDebug>
|
||||
#include <cmath>
|
||||
#include "qad_export.h"
|
||||
|
||||
|
||||
inline QByteArray QString2QByteArray(const QString & string) {return string.isEmpty() ? QByteArray() : qUncompress(QByteArray::fromBase64(string.toLatin1()));}
|
||||
int QString2int(const QString & string);
|
||||
QAD_EXPORT int QString2int(const QString & string);
|
||||
inline QColor QString2QColor(const QString & string) {return (string.left(1) == "#" ? QColor(string.right(string.length() - 1).toInt(0, 16)) : QColor(QString2int(string)));}
|
||||
QRect QString2QRect(const QString & string);
|
||||
QRectF QString2QRectF(const QString & string);
|
||||
QPoint QString2QPoint(const QString & string);
|
||||
QPointF QString2QPointF(const QString & string);
|
||||
QAD_EXPORT QRect QString2QRect(const QString & string);
|
||||
QAD_EXPORT QRectF QString2QRectF(const QString & string);
|
||||
QAD_EXPORT QPoint QString2QPoint(const QString & string);
|
||||
QAD_EXPORT QPointF QString2QPointF(const QString & string);
|
||||
|
||||
inline QString QColor2QString(const QColor & color) {QString s = color.name(); return "0x" + QString::number(color.alpha(), 16).rightJustified(2, '0') + s.right(s.length() - 1);}
|
||||
inline QString QPoint2QString(const QPoint & point) {return QString::number(point.x()) + ";" + QString::number(point.y());}
|
||||
inline QString QPointF2QString(const QPointF & point) {return QString::number(point.x()) + ";" + QString::number(point.y());}
|
||||
inline QString QByteArray2QString(const QByteArray & array) {return array.isEmpty() ? QString() : QString(qCompress(array, 9).toBase64());}
|
||||
QString QRect2QString(const QRect & rect);
|
||||
QString QRectF2QString(const QRectF & rect);
|
||||
QAD_EXPORT QString QRect2QString(const QRect & rect);
|
||||
QAD_EXPORT QString QRectF2QString(const QRectF & rect);
|
||||
|
||||
#define QPICONFIG_GET_VALUE \
|
||||
Entry & getValue(const QString & vname, const char * def, bool * exist = 0) {return getValue(vname, QString(def), exist);} \
|
||||
@@ -49,7 +50,7 @@ QString QRectF2QString(const QRectF & rect);
|
||||
Entry & getValue(const QString & vname, const QPointF & def, bool * exist = 0) {return getValue(vname, QPointF2QString(def), exist);} \
|
||||
Entry & getValue(const QString & vname, const QByteArray & def, bool * exist = 0) {return getValue(vname, QByteArray2QString(def), exist);}
|
||||
|
||||
class QPIConfig: public QFile
|
||||
class QAD_EXPORT QPIConfig: public QFile
|
||||
{
|
||||
friend class Entry;
|
||||
friend class Branch;
|
||||
|
||||
@@ -7,6 +7,8 @@
|
||||
#include <QDebug>
|
||||
#include <cmath>
|
||||
#include <complex>
|
||||
#include "qad_export.h"
|
||||
|
||||
|
||||
#ifndef PIP_MATH_COMPLEX
|
||||
#define QPIEVALUATOR_COMPLEX
|
||||
@@ -40,7 +42,7 @@ namespace QPIEvaluatorTypes {
|
||||
bfIm, bfRe, bfArg, bfLen, bfConj,
|
||||
bfRad, bfDeg};
|
||||
|
||||
struct Instruction {
|
||||
struct QAD_EXPORT Instruction {
|
||||
Instruction() {;}
|
||||
Instruction(Operation oper, QVector<int> opers, int out_ind, int func = -1) {
|
||||
operation = oper; operators = opers; out = out_ind; function = func;}
|
||||
@@ -48,20 +50,20 @@ namespace QPIEvaluatorTypes {
|
||||
QVector<int> operators;
|
||||
int out;
|
||||
int function;};
|
||||
struct Element {
|
||||
struct QAD_EXPORT Element {
|
||||
Element() {;}
|
||||
Element(eType new_type, int new_num, int new_var_num = -1) {set(new_type, new_num, new_var_num);}
|
||||
void set(eType new_type, int new_num, int new_var_num = -1) {type = new_type; num = new_num; var_num = new_var_num;}
|
||||
eType type;
|
||||
int num;
|
||||
int var_num;};
|
||||
struct Function {
|
||||
struct QAD_EXPORT Function {
|
||||
Function() {arguments = 0; type = bfUnknown;}
|
||||
Function(const QString & name, int args, BaseFunctions ftype) {identifier = name; arguments = args; type = ftype;}
|
||||
QString identifier;
|
||||
BaseFunctions type;
|
||||
int arguments;};
|
||||
struct Variable {
|
||||
struct QAD_EXPORT Variable {
|
||||
Variable() {value = 0.;}
|
||||
Variable(const QString & var_name, complexd val) {name = var_name; value = val;}
|
||||
QString name;
|
||||
@@ -71,7 +73,9 @@ namespace QPIEvaluatorTypes {
|
||||
return s1.name.size() > s2.name.size();
|
||||
return s1.name > s2.name;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
≠ :
|
||||
≥ }
|
||||
@@ -79,7 +83,7 @@ namespace QPIEvaluatorTypes {
|
||||
⋀ &
|
||||
⋁ |
|
||||
*/
|
||||
class QPIEvaluatorContent
|
||||
class QAD_EXPORT QPIEvaluatorContent
|
||||
{
|
||||
friend class QPIEvaluator;
|
||||
public:
|
||||
@@ -116,7 +120,8 @@ private:
|
||||
|
||||
};
|
||||
|
||||
class QPIEvaluator
|
||||
|
||||
class QAD_EXPORT QPIEvaluator
|
||||
{
|
||||
public:
|
||||
QPIEvaluator() {correct = false ;}
|
||||
@@ -172,6 +177,7 @@ private:
|
||||
|
||||
};
|
||||
|
||||
|
||||
inline bool operator ==(QPIEvaluatorTypes::Element e1, QPIEvaluatorTypes::Element e2) {return (e1.type == e2.type && e1.num == e2.num);}
|
||||
inline bool operator !=(QPIEvaluatorTypes::Element e1, QPIEvaluatorTypes::Element e2) {return (e1.type != e2.type || e1.num != e2.num);}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user