browsercore/core/webpagedata.h
changeset 16 3c88a81ff781
parent 3 0954f5dd2cd0
equal deleted inserted replaced
14:6aeb7a756187 16:3c88a81ff781
    25 #include <QImage>
    25 #include <QImage>
    26 #include <QPoint>
    26 #include <QPoint>
    27 #include <QMetaType>
    27 #include <QMetaType>
    28 #include "BWFGlobal.h"
    28 #include "BWFGlobal.h"
    29 
    29 
    30 class BWF_EXPORT WebPageData : public QObject
    30 class BWF_EXPORT WebPageData
    31 {
    31 {
    32     Q_OBJECT
    32 static const unsigned int DataMagic = 0x5AFEF00D;
       
    33 
    33 public:
    34 public:
    34     WebPageData(){};
    35     WebPageData() :
    35     WebPageData(QObject *parent) : QObject(parent) {};
    36                     magic(0) // default constructor should create valid item
    36     WebPageData(const WebPageData& o) :  m_thumbnail(o.m_thumbnail),m_zoomFactor(o.m_zoomFactor),m_contentsPos(o.m_contentsPos) {};
    37             ,       minScale(1.0)
    37     QImage  m_thumbnail;
    38             ,       maxScale(1.0)
    38     qreal   m_zoomFactor;
    39             ,       userScalable(true)
    39     QPoint  m_contentsPos;
    40             ,       initialScale(1.0)
       
    41             ,       rect(QRectF())
       
    42             ,       webViewRect(QRectF())
       
    43             ,       scale(1.0)
       
    44             ,       viewportSize(QSizeF())
       
    45             ,       specifiedWidth(QString())
       
    46             ,       specifiedHeight(QString())
       
    47             ,       fitToScreen(0)
       
    48     {};
       
    49 
       
    50     WebPageData(qreal aMaxScale, qreal aMinScale, qreal aUserScalable, qreal aInitialScale) :
       
    51                     magic(DataMagic)
       
    52             ,       minScale(aMinScale)
       
    53             ,       maxScale(aMaxScale)
       
    54             ,       userScalable(aUserScalable)
       
    55             ,       initialScale(aInitialScale)
       
    56             ,       rect(QRectF())
       
    57             ,       webViewRect(QRectF())
       
    58             ,       scale(1.0)
       
    59             ,       viewportSize(QSizeF())
       
    60             ,       specifiedWidth(QString())
       
    61             ,       specifiedHeight(QString())
       
    62             ,       fitToScreen(0)
       
    63     {};
       
    64 
       
    65     WebPageData(qreal aMaxScale, qreal aMinScale, qreal aUserScalable, qreal aInitialScale, const QRectF& aRect, const QRectF& aWebViewRect,
       
    66                 qreal aScale, const QSizeF& aViewportSize, const QString& aSpecifiedWidth, const QString& aSpecifiedHeight, bool aFitToScreen) :
       
    67                     magic(DataMagic)
       
    68             ,       minScale(aMinScale)
       
    69             ,       maxScale(aMaxScale)
       
    70             ,       userScalable(aUserScalable)
       
    71             ,       initialScale(aInitialScale)
       
    72             ,       rect(aRect)
       
    73             ,       webViewRect(aWebViewRect)
       
    74             ,       scale(aScale)
       
    75             ,       viewportSize(aViewportSize)
       
    76             ,       specifiedWidth(aSpecifiedWidth)
       
    77             ,       specifiedHeight(aSpecifiedHeight)
       
    78             ,       fitToScreen(aFitToScreen)
       
    79     {};
       
    80 
       
    81     WebPageData(const WebPageData& o) : //: QObject()
       
    82                     magic(o.magic)
       
    83             ,       minScale(o.minScale)
       
    84             ,       maxScale(o.maxScale)
       
    85             ,       userScalable(o.userScalable)
       
    86             ,       initialScale(o.initialScale)
       
    87             ,       rect(o.rect)
       
    88             ,       webViewRect(o.webViewRect)
       
    89             ,       scale(o.scale)
       
    90             ,       viewportSize(o.viewportSize)
       
    91             ,       specifiedWidth(o.specifiedWidth)
       
    92             ,       specifiedHeight(o.specifiedHeight)
       
    93             ,       fitToScreen(o.fitToScreen)
       
    94     {};
       
    95 
       
    96     bool isValid() const { return magic == DataMagic; }
       
    97 
       
    98     unsigned int magic;
       
    99     qreal minScale;
       
   100     qreal maxScale;
       
   101     bool userScalable;
       
   102     qreal initialScale;
       
   103     QRectF rect;
       
   104     QRectF webViewRect;
       
   105     qreal scale;
       
   106     QSizeF viewportSize;
       
   107     QString specifiedWidth;
       
   108     QString specifiedHeight;
       
   109     bool fitToScreen;
    40 };
   110 };
    41 Q_DECLARE_METATYPE (WebPageData)
   111 Q_DECLARE_METATYPE (WebPageData)
    42 QDataStream &operator<<(QDataStream &out, const WebPageData &myObj);
   112 QDataStream &operator<<(QDataStream &out, const WebPageData &myObj);
    43 QDataStream &operator>>(QDataStream &in, WebPageData &myObj);
   113 QDataStream &operator>>(QDataStream &in, WebPageData &myObj);
    44 #endif
   114 #endif