History

pre-CR cleanup

Atlante45 committed 12 years ago

Commit 30fd4e21 parent 8b50fba13 files · +241 −268Browse files

Showing the changes to libraries/script-engine/src/ArrayBufferClass.cpp (1 of 13 files). Show all

Unified · Split

libraries/script-engine/src/ArrayBufferClass.cpp+8−8
@@ -23,10 +23,9 @@ static const QString CLASS_NAME = "ArrayBuffer"; · 22 unmodified lines
2323 Q_DECLARE_METATYPE(QByteArray*)
2424
2525 ArrayBufferClass::ArrayBufferClass(ScriptEngine* scriptEngine) :
26−QObject(scriptEngine->getScriptEngine()),
27−QScriptClass(scriptEngine->getScriptEngine()),
26+QObject(scriptEngine->getEngine()),
27+QScriptClass(scriptEngine->getEngine()),
2828 _scriptEngine(scriptEngine) {
29− qDebug() << "Created with engine: " << engine();
3029 qScriptRegisterMetaType<QByteArray>(engine(), toScriptValue, fromScriptValue);
3130 QScriptValue global = engine()->globalObject();
3231
@@ -40,15 +39,16 @@ _scriptEngine(scriptEngine) { · 7 unmodified lines
4039 QScriptEngine::SkipMethodsInEnumeration |
4140 QScriptEngine::ExcludeSuperClassMethods |
4241 QScriptEngine::ExcludeSuperClassProperties);
43−
4442 _proto.setPrototype(global.property("Object").property("prototype"));
4543
44+ // Register constructor
4645 _ctor = engine()->newFunction(construct, _proto);
4746 _ctor.setData(engine()->toScriptValue(this));
4847
4948 engine()->globalObject().setProperty(name(), _ctor);
5049
5150 // Registering other array types
51+ // The script engine is there parent so it'll delete them with itself
5252 new DataViewClass(scriptEngine);
5353 new Int8ArrayClass(scriptEngine);
5454 new Uint8ArrayClass(scriptEngine);
@@ -87,11 +87,10 @@ QScriptValue ArrayBufferClass::newInstance(const QByteArray& ba) { · 32 unmodified lines
8787 QScriptValue ArrayBufferClass::construct(QScriptContext* context, QScriptEngine* engine) {
8888 ArrayBufferClass* cls = qscriptvalue_cast<ArrayBufferClass*>(context->callee().data());
8989 if (!cls) {
90+ // return if callee (function called) is not of type ArrayBuffer
9091 return QScriptValue();
9192 }
92−
9393 QScriptValue arg = context->argument(0);
94−
9594 if (!arg.isValid() || !arg.isNumber()) {
9695 return QScriptValue();
9796 }
@@ -100,6 +99,7 @@ QScriptValue ArrayBufferClass::construct(QScriptContext* context, QScriptEngine* · 2 unmodified lines
10099 QScriptValue newObject = cls->newInstance(size);
101100
102101 if (context->isCalledAsConstructor()) {
102+ // if called with keyword new, replace this object.
103103 context->setThisObject(newObject);
104104 return engine->undefinedValue();
105105 }
@@ -118,8 +118,8 @@ QScriptClass::QueryFlags ArrayBufferClass::queryProperty(const QScriptValue& obj · 12 unmodified lines
118118 return 0; // No access
119119 }
120120
121−QScriptValue ArrayBufferClass::property(const QScriptValue &object,
122− const QScriptString &name, uint id) {
121+QScriptValue ArrayBufferClass::property(const QScriptValue& object,
122+ const QScriptString& name, uint id) {
123123 QByteArray* ba = qscriptvalue_cast<QByteArray*>(object.data());
124124 if (ba && name == _byteLength) {
125125 return ba->length();