summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/scriptengine.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Doc: add docs for buttons JavaScript objectLeena Miettinen2015-01-131-11/+26
| | | | | | | | | Based on Qt 5 QWizard documentation. Change-Id: Ic61ed428d1513fc21131992b1b40bf63a93b4fd2 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Doc: remove "type" from briefs in Scripting APILeena Miettinen2015-01-131-2/+2
| | | | | | | | These are not QML types, but JavaScript objects. Change-Id: Ib50656c764270a1184c74a2c653438a2f42846fd Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Fix objects returned by gui methodsKai Koehne2015-01-081-9/+146
| | | | | | | | | | | | | We need to make sure objects like pageWidgetByObjectName are augmented too (so that one can access child objects). This is achieved by a proxy object that augments all raw QObject * and QWidget * return values. This fixes e.g. the dynamicpage example. Task-number: QTIFW-605 Change-Id: If26dc59220946a7445ef0f9ec7caa15e5b04eaa8 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Simplify registration of objects into script engineKai Koehne2015-01-071-29/+36
| | | | | | | | | | | | Rename addQObjectChildren, removeQObjectChildren methods to addToGlobalObject, removeToGlobalObject, and merge the augmentation of the properties with newQObject. Also, don't recursively register all objects with their objectNames in the global scope. This avoids name pollution. Change-Id: I28f1bc67e6febecc7b5142982c918432b61ed96f Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Expose findChild, findChildren methods to JSKai Koehne2014-12-101-0/+31
| | | | | | | | Re-add the findChild, findChildren methods known from Qt Script. Change-Id: I3db6be53ccd89a09b2c7de14ba7f96ebb26dbdbb Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Expose systemInfo APIKai Koehne2014-12-051-0/+3
| | | | | | | | | Add systemInfo as a wrapper for QSystemInfo. Task-number: QTIFW-592 Change-Id: Ib54fcea8b0ef3a397a74f5315202f3000abd63cd Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* Set the object ownership -before- adding the widget as property.kh12014-11-171-0/+1
| | | | | Change-Id: I0af2c4ae71bcf89466826024b8a2af4584d805be Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Make sure to remove all objects from script engine.kh12014-10-301-0/+14
| | | | | | Change-Id: I5dedd63bad3eb37b55a3cc246b3c74ba58396b32 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Fix regression after porting to QJSEngine.kh12014-10-301-0/+1
| | | | | | | | | | | | Setting a dynamic property of a dynamic page from JS doesn't have any effect anymore, as the properties are not synced. Now we define the property directly on the JavaScript object and connect it to corresponding C++ page with static Qt properties. Task-number: QTIFW-562 Change-Id: If95222a94ebee7f8bb455792eab96c5e9bc19b86 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Add LGPLv3 as new licenseKai Koehne2014-10-161-14/+7
| | | | | | | Change-Id: I61158f956894e209dccf83744b4753774676099d Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* Some more documentation fixes (removes more warnings).kh12014-10-151-6/+6
| | | | | Change-Id: I1efb7f98ac4cccdc4dbd1784806cce286654af9f Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* Fix c++ documentation creation. Add, fix inline documentation.kh12014-10-081-2/+201
| | | | | | Change-Id: Idd6805afbf5736eebf03c2d1ca6dae272c519634 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Rewrite the component getter mess, remove superfluous methods.kh12014-10-061-4/+4
| | | | | | | | Now we can combine some enum values to achieve the same as before with the several getter functions, removes the clutter from the API. Change-Id: I6368b0ff77821ac95d1defaec4af27dd7d383396 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
* Expose qsTr to the scripts, makes component error example work.kh12014-06-061-1/+6
| | | | | Change-Id: I73be2490182af8582b3e56b177e8ca26c950fa97 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
* Set the right ownership for the components we expose.kh12014-06-061-2/+5
| | | | | | | | Make sure we set the component ownership to c++, by default the script engine would take it and delete the component... Change-Id: If4ea905495566954ff804b636934c33eb118ccf3 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Replace script with js engine.kh12014-06-031-261/+167
| | | | | Change-Id: Ic9c88e27dca1e936ba09a3776df3df7ec166c606 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* Cleanup to support Qt5 only.kh12014-06-021-27/+0
| | | | | Change-Id: Ib8f61229ce2f07e52c22a15e10dc817aca860ead Reviewed-by: Niels Weber <niels.weber@digia.com>
* Make sure we read the script content as UTF8.kh12014-04-231-6/+6
| | | | | | | | Task-number: QTIFW-485 Change-Id: Id09365207c6f5b1312fb85ad67443f7e51a1944e Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix strange error message.kh12014-04-041-9/+11
| | | | | | | | | | | Task-number: QTIFW-309 If a component script file is empty or misses the component class constructor, bail out during binary create or installer execution. Change-Id: I422c64186652a52122d54b5b042139803c24ba10 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Use qobject_cast where appropriate.kh12014-04-031-1/+1
| | | | | | Change-Id: I433ce0a9521863f02777baff339c7226327f4628 Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Merge remote-tracking branch 'origin/1.4' into 1.5Tim Jenssen2013-11-061-19/+25
|\ | | | | | | Change-Id: I2725f9bacbe04240dc3f97062c5ebc50884822c8
| * Restart on the wizard needs to cleanup component left-oversTim Jenssen2013-11-061-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - use two different script engine instances - one which lives from the beginning -> the controlScriptEngine - the other one which will be reset if there are some new repositories loaded - now the core has a pointer to the gui object, but it should only be used by the script engine so a QObject type should be enough - engines are deleted as QObject children from the PackageManagerCore - registered downloaded archives are removed Change-Id: I60a4a32fb2e409059839ec11b10c57357454f57a Reviewed-by: Michal Klocek <michal.klocek@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
| * prepare script engine to get the gui object laterTim Jenssen2013-10-291-19/+22
| | | | | | | | | | | | | | | | - Since we need two different script engines we need to be able to set the gui object later Change-Id: Ie40f8ec3dd84dc4d5b3cf127c3e41ce25ef53b66 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* | Merge remote-tracking branch 'origin/1.4'Tim Jenssen2013-08-261-0/+2
|\| | | | | | | Change-Id: I9ee4395291754fd5a56555e1dd974df19ee39376
| * Force updating of Essential components.kh12013-08-141-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTIFW-38 Task-number: QTIFW-155 This is necessary for correct functioning of the Maintenance Tool. Change-Id: I3844760bdd31abf547c660f82dda14a3da38c5da Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* | Expose getOpenFileName to scriptsFrederik Gladhorn2013-08-221-2/+7
|/ | | | | | | Change-Id: Ic3ddbb1f3ddfd72e93f9408dd9a5d5b6fa6cbf71 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* add exceptionhandler code for connected signals/JS methodsTim Jenssen2013-06-031-0/+8
| | | | | | | | | | | - there wasn't any error information if a C++ triggered signal resulted in a JS method which has an error, now it will create an exception for it - creating messagebox inside the lib is something what we want to avoid, so the developer itself is responsible to catch these exceptions - most cases of the installer code does that already Change-Id: I07486f73be9de13a486de235f14e3a7d7b54f5b1 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* avoid wrong replacings in the load script codeTim Jenssen2013-05-211-6/+6
| | | | | Change-Id: Ia0d437fe1200ffa692e7b9a204622619934e92a5 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* introduce installerscriptengineTim Jenssen2013-05-161-0/+400
- it uses one scriptengine for everything and adds the components or/and the install-controller in javascript closure contexts - added the gui object to the component script context - removed tabController from controlscript context Change-Id: I3bd6c5dcf470666c30add1b7d04a8fdd094f5f11 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>