aboutsummaryrefslogtreecommitdiffstats
path: root/doc/codesnippets/doc/src/snippets/code/doc_src_porting-qsa.qdoc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/codesnippets/doc/src/snippets/code/doc_src_porting-qsa.qdoc')
-rw-r--r--doc/codesnippets/doc/src/snippets/code/doc_src_porting-qsa.qdoc187
1 files changed, 187 insertions, 0 deletions
diff --git a/doc/codesnippets/doc/src/snippets/code/doc_src_porting-qsa.qdoc b/doc/codesnippets/doc/src/snippets/code/doc_src_porting-qsa.qdoc
new file mode 100644
index 000000000..0dc572cd9
--- /dev/null
+++ b/doc/codesnippets/doc/src/snippets/code/doc_src_porting-qsa.qdoc
@@ -0,0 +1,187 @@
+//! [0]
+point = new Object();
+point.x = 12;
+point.y = 35;
+//! [0]
+
+
+//! [1]
+function manhattanLength(point) {
+ return point.x + point.y;
+}
+//! [1]
+
+
+//! [2]
+manhattanLength = function(point) {
+ return point.x + point.y;
+}
+//! [2]
+
+
+//! [3]
+point.manhattanLength = function() {
+ return this.x + this.y;
+}
+print(point.manhattanLength()); // prints 47
+//! [3]
+
+
+//! [4]
+class Point() {
+ var x;
+ var y;
+ function manhattanLength() { return x + y; }
+}
+//! [4]
+
+
+//! [5]
+point.manhattanLength = function() {
+ return this.x + this.y;
+}
+print(point.manhattanLength()); // prints 47
+//! [5]
+
+
+//! [6]
+class Car {
+ var regNumber;
+ function Car(regnr) {
+ regNumber = regnr;
+ }
+}
+var car = new Car("ABC 123");
+//! [6]
+
+
+//! [7]
+function Car(regnr) {
+ this.regNumber = regnr;
+}
+var car = new Car("ABC 123");
+//! [7]
+
+
+//! [8]
+var car = new Object();
+car.constructor = function(regnr) { ... }
+car.constructor();
+//! [8]
+
+
+//! [9]
+class Car {
+ var regNumber;
+ function Car(regnr) {
+ regNumber = regnr;
+ }
+ function toString() {
+ return regNumber;
+ }
+}
+//! [9]
+
+
+//! [10]
+function Car(regnr) {
+ this.regNumber = regnr;
+ this.toString = function() { return this.regNumber; }
+}
+//! [10]
+
+
+//! [11]
+function Car(regnr) {
+ this.regNumber = regnr;
+}
+Car.prototype.toString = function() { return this.regNumber; }
+//! [11]
+
+
+//! [12]
+class GasolineCar extends Car {
+ function GasolineCar(regnr) {
+ Car(regnr);
+ }
+ function toString() {
+ return "GasolineCar(" + regNumber + ")";
+ }
+}
+//! [12]
+
+
+//! [13]
+function GasolineCar(regnr) {
+ Car(regnr);
+}
+GasolineCar.prototype = new Car();
+GasolineCar.prototype.toString = function() {
+ return "GasolineCar(" + this.regNumber + ")";
+}
+//! [13]
+
+
+//! [14]
+class Car {
+ static var globalCount = 0;
+}
+print(Car.globalCount);
+//! [14]
+
+
+//! [15]
+Car.globalCount = 0;
+print(Car.globalCount);
+//! [15]
+
+
+//! [16]
+QPushButton *button = new QPushButton();
+button->setObjectName("button");
+interpreter->addTransientObject(button);
+//! [16]
+
+
+//! [17]
+QPushButton *button = new QPushButton();
+QScriptValue scriptButton = engine.newQObject(button);
+engine.globalObject().setProperty("button", scriptButton);
+//! [17]
+
+
+//! [18]
+ModuleFactory::ModuleFactory()
+{
+ registerClass( "ImageSource", &ImgSource::staticMetaObject);
+ ...
+}
+
+QObject *ModuleFactory::create( const QString &type,
+ const QVariantList &,
+ QObject * )
+{
+ if ( type == "ImageSource" )
+ return new ImgSource();
+ ...
+}
+
+...
+
+interpreter.addObjectFactory(new ModuleFactory());
+//! [18]
+
+
+//! [19]
+QScriptValue construct_QPushButton(QScriptContext *, QScriptEngine *engine) {
+ return engine->newQObject(new QPushButton());
+}
+
+...
+
+QScriptValue constructor = engine.newFunction(construct_QPushButton);
+QScriptValue value =
+ engine.newQMetaObject(&QPushButton::staticMetaObject,
+ constructor);
+engine.globalObject().setProperty("QPushButton", value);
+//! [19]