#include "xwindowdef.h" XWindowDef::XWindowDef() : XAsset() , mName() , mRect() , mRectClient() , mGroup() , mStyle(0) , mBorder(0) , mOwnerDraw(0) , mOwnerDrawFlags(0) , mBorderSize(0.0f) , mStaticFlags(0) , mDynamicFlags(4) , mNextTime(0) , mForeColor() , mBackColor() , mBorderColor() , mOutlineColor() , mBackground() { SetName("Window Definition"); } XWindowDef::~XWindowDef() { } void XWindowDef::ParseData(XDataStream *aStream) { Q_UNUSED(aStream); mName.ParsePtr(aStream, false); mRect.ParseData(aStream); mRectClient.ParseData(aStream); mGroup.ParsePtr(aStream, false); mStyle = aStream->ParseInt32(QString("%1 style").arg(GetName())); mBorder = aStream->ParseInt32(QString("%1 border").arg(GetName())); mOwnerDraw = aStream->ParseInt32(QString("%1 owner draw").arg(GetName())); mOwnerDrawFlags = aStream->ParseInt32(QString("%1 owner draw flags").arg(GetName())); mBorderSize = aStream->ParseSingle(QString("%1 border size").arg(GetName())); mStaticFlags = aStream->ParseInt32(QString("%1 static flags").arg(GetName())); for (int i = 0; i < 4; i++) { mDynamicFlags[i] = aStream->ParseInt32(QString("%1 dynamic flag %2").arg(GetName()).arg(i)); } mNextTime = aStream->ParseInt32(QString("%1 next time").arg(GetName())); float r, g, b, a; r = aStream->ParseSingle(QString("%1 foreground red").arg(GetName())); g = aStream->ParseSingle(QString("%1 foreground green").arg(GetName())); b = aStream->ParseSingle(QString("%1 foreground blue").arg(GetName())); a = aStream->ParseSingle(QString("%1 foreground alpha").arg(GetName())); mForeColor = QColor(r, g, b, a); r = aStream->ParseSingle(QString("%1 background red").arg(GetName())); g = aStream->ParseSingle(QString("%1 background green").arg(GetName())); b = aStream->ParseSingle(QString("%1 background blue").arg(GetName())); a = aStream->ParseSingle(QString("%1 background alpha").arg(GetName())); mBackColor = QColor(r, g, b, a); r = aStream->ParseSingle(QString("%1 border red").arg(GetName())); g = aStream->ParseSingle(QString("%1 border green").arg(GetName())); b = aStream->ParseSingle(QString("%1 border blue").arg(GetName())); a = aStream->ParseSingle(QString("%1 border alpha").arg(GetName())); mBorderColor = QColor(r, g, b, a); r = aStream->ParseSingle(QString("%1 outline red").arg(GetName())); g = aStream->ParseSingle(QString("%1 outline green").arg(GetName())); b = aStream->ParseSingle(QString("%1 outline blue").arg(GetName())); a = aStream->ParseSingle(QString("%1 outline alpha").arg(GetName())); mOutlineColor = QColor(r, g, b, a); mBackground.ParsePtr(aStream, false); mName.ParseData(aStream); mGroup.ParseData(aStream); mBackground.ParseData(aStream); } void XWindowDef::Clear() { mName.Clear(); mRect.Clear(); mRectClient.Clear(); mGroup.Clear(); mStyle = 0; mBorder = 0; mOwnerDraw = 0; mOwnerDrawFlags = 0; mBorderSize = 0.0f; mStaticFlags = 0; mDynamicFlags = QVector(4); mNextTime = 0; mForeColor = QColor(); mBackColor = QColor(); mBorderColor = QColor(); mOutlineColor = QColor(); mBackground.Clear(); }