summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/2.0'Iikka Eklund2016-01-20230-930/+711
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: installerfw.pri src/libs/kdtools/kdgenericfactory.cpp src/libs/kdtools/kdgenericfactory.h src/libs/kdtools/kdupdaterapplication.cpp src/libs/kdtools/kdupdaterapplication.h src/libs/kdtools/kdupdaterupdatesourcesinfo.cpp src/libs/kdtools/kdupdaterupdatesourcesinfo.h sync.profile Change-Id: Ifdc8b065f89b7e241bd3788ed79768e21888161f
| * Doc: Remove dubious sentence from installer.calculateComponentsToUninstall()Kai Koehne2016-01-151-2/+2
| | | | | | | | | | | | | | | | The auto-dependencies seems already to be handled correctly in UninstallerCalculator. Change-Id: I30074036aa030399cd49a6bfe2e380ffa1e92c58 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
| * Update license headersIikka Eklund2015-12-29235-899/+664
| | | | | | | | | | | | | | | | | | Update existing license headers. LGPL -> LGPLv21. Update copyright year as well. Change-Id: Ie1d71f8c68186b8f625f409ddf94691f178093c9 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
| * Fix target directory check for reserved words on WindowsAndy Shaw2015-12-071-1/+1
| | | | | | | | | | | | | | | | | | If the directory starts with "Con" etc then it is still ok to use, it is only if it is /Con or /Con/ that it is not allowed. So the extra check to be sure has anything after the reserved part is included. Change-Id: I72e0e0f98167f29da54cb627e75cd1814c3f9706 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
| * Use QQmlV4Function to correctly get empty parameters from script.Karsten Heimrich2015-11-263-46/+56
| | | | | | | | | | | | | | | | | | By using QQmlV4Function to get the parameters, empty strings passed are correctly kept as empty and not null. Task-number: QTIFW-724 Change-Id: I592e2230e574ba82e765bd0079964db29452b2e9 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Allow defining non-checkable itemsKatja Marttila2016-01-185-4/+21
| | | | | | | | | | | | | | | | | | | | | | This change will introduce new element 'Checkable' for package. Setting checkable to false will hide checkbox. Useful if use case is to install one sub item instead of all sub items. Change-Id: I8c731e77353b6da539dddcecdc8495b28ef5f7ea Task-number: QTIFW-773 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* | Added support for setting descriptions of Windows shortcutsFrerich Raabe2016-01-182-3/+9
| | | | | | | | | | | | | | | | | | This patch extends the CreateShortcut operation on Windows such that it recognizes a new optional 'description' argument - if specified, it's used to set the description (AKA "comment") of the Windows shortcut. Change-Id: Ib0ab48bd30e83d9cc89b1bad7d2b88e9109bdcea Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | Fix timezone issue, simply keep the UTC time.Karsten Heimrich2016-01-042-28/+6
| | | | | | | | | | | | | | | | | | | | Since we're the only user of the list archive function, do not convert from UTC. Though once we document the function it should be mentioned that the user needs to convert it (e.g. for display purposes etc...). Change-Id: Icbf8372ddff4f34e3c5a426b983ff25a117d74eb Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | Optimized checking validity of target directory value on WindowsFrerich Raabe2015-12-092-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QDir::drives() was called on every key press to check whether the specified drive letter is valid. Alas, this function is quite expensive on Windows in case there are network drives. In my local tests, a single call to QDir::drives() would take about 300ms per call (i.e. 0.3s per key press). This made typing text feel very sluggish. I first considered fetching the list of drives up front (e.g. when starting the installer) but this won't handle cases nicely where drives are added/removed while the installer is running - e.g. USB devices. Instead, let's use a cooldown timer: only bother checking the entered path if there was no keypress for some specific time (right now: 200ms, a value which is based on highly scientific experiments). In addition to that, also make sure to check the validity when trying to navigate to the next page -- this takes care of people typing and hitting Return quickly. Change-Id: I35e83fff2fd095765ab1b00b44ac1b8bf495af98 Task-number: QTIFW-673 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Remove implicit expanding vertical spacer from dynamic pagesFrerich Raabe2015-12-091-1/+0
| | | | | | | | | | | | | | | | | | | | | | This change is backwards incompatible in that it may have a negative impact on the layouting of dynamic pages, but it permits creating dynamic pages which allocate the entire vertical space of the page, e.g. custom license text viewers. Change-Id: I5981450366a1d58f01315192bb29f6ae29b7dbd4 Task-number: QTIFW-779 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fixed compiling lib7z_facade.cpp with Visual Studio 2013Frerich Raabe2015-12-091-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit c43f3f0c683841f7b2bd62ce8c1556f2e5412d4d introduced a usage of localtime_s for non-MinGW Windows builds. Visual Studio 2013 complained about this, saying ..\..\..\..\source\src\libs\installer\lib7z_facade.cpp(331) : error C3861: 'localtime_s': identifier not found The MSDN explains that <time.h> should be included, so let's do that to make the build succeed. Change-Id: I8447ed0c97480485e4219f6e413b05d80be6ef63 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fixed reading error output from sudo'ed processFrerich Raabe2015-12-091-1/+1
| | | | | | | | | | | | | | The 'errBuf' buffer was never actually used for anything. Change-Id: Ia28b3ee3308ecff451afb518e0da8cf7125362d4 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | Fixed bug in making stderr pipe read-handle non-blockingFrerich Raabe2015-12-091-1/+1
| | | | | | | | | | | | | | Use F_GETFL to set the flags, and S_SETFL to set them. Change-Id: Ia32d020f320e819db5f0976972e38981d22eaa26 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | When running sudo'ed process, make reading from child non-blockingFrerich Raabe2015-12-091-1/+11
| | | | | | | | | | | | | | | | | | | | | | For some reason, using a blocking read would sometimes(!) not cause the sudo process to finish. In fact, it didn't even seem to start running, even though it showed up in the process list. Maybe a deadlock? Using non-blocking reads fixes this. Change-Id: Ic8a94b38e4be426abcc08bbd0dd887a3cffda5d5 Task-number: QTIFW-771 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | Let ElevatedExecuteOperation delete its RemoteObject earlierFrerich Raabe2015-12-081-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After running the process, ElevatedExecuteOperation would delete the QProcessWrapper object via deleteLater(). However, this would cause lingering remote connections: Operations are executed threaded via QtConcurrent::run(). The QtConcurrent threads don't run an event loop, so calling QProcessWrapper::deleteLater() would cause the object to get deleted once the thread finished. However, QtConcurrent uses a thread pool, so it may happen that the remote object is never deleted at all. Let's fix this by deleting the object right away. It should be safe no matter which thread runs the operation: 1. If it's the UI thread, the nested event loop will synchronize, i.e. the QEventLoop:exec() call only returns once the process finished. 2. If it's a non-UI thread, the code synchronizes via QProcessWrapper::waitForFinished(). In either case, the process will be finished by the time we get to the end of the function, so I think it's safe to just delete the object right away (and hence close the remote connection). Let's also add an assert to document our assumption. Change-Id: Ieb9970ff6452d404924824ece2a0a6e79552b0b3 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Removed unused variableFrerich Raabe2015-12-081-1/+0
| | | | | | | | | | | | | | I see no need to do anything with the file descriptor flags in here. Change-Id: Ib4d8dfd3d18ed90028138b0def7c5da15f434fd7 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fixed running binarycreator if the temporary directory name contains spacesFrerich Raabe2015-12-081-14/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The binarycreator program fails to generate an archive if the temporary directory name contains spaces. This is not uncommon on Windows since the temporary directory is beneath the home directory, e.g. C:\Users\<username>\AppData\Local\Temp. If the user name contains spaces (as it does in my case, the user name is "Frerich Raabe") binarycreator fails with [64] Warning: QFile::remove: Empty or null file name (C:\Qt\MSVC12\5.5.0-src\qtbase\src\corelib\io\qfile.cpp:498, bool __thiscall QFile::remove(void)) Caught exception: Cannot create archive "C:\Users\Frerich": internal code: E_FAIL This was caused by createArchive() assembling a command line without escaping either the 'target' or any of the 'sources' values. Instead of adding escaping only to split the command line again, let's drop the approach of constructing a command and then splitting it completely. Instead, let's build an array of arguments right away. Change-Id: I284c1b5a27e9edd3717243ea7979149ab2033d64 Task-number: QTIFW-787 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fix violated assertion in error handling of binarycreatorFrerich Raabe2015-12-081-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The errorMessageFrom7zResult() function asserts (via a qFatal) that the given status code is indeed an error, i.e. not S_OK. However, the condition 'res != S_OK || !tempFile.exists()' permitted that the function is called with S_OK (in case !tempFile.exists() is true), violating an assertion. This patch adjusts the error handling such that the details of the error returned by errorMessageFrom7zResult() are only included in the exception message if the status code is not S_OK. Change-Id: I15d686cd35c918093ec90c56a7bcc3f0e6638cfb Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Automatically chose to perform uninstall if appropriateFrerich Raabe2015-12-082-3/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch makes the maintenance tool automatically chose (but not start) deinstallation if there are no valid repositories available. Without this, all three options are available but the first two will show an error message if there is not even one repository available. This simplifies the maintenance tool for purely offline installers which use no repositories whatsoever. Change-Id: If496ac6858191c758a7bae6ec4a9434f88ddaac0 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Implemented installer.readFile()Frerich Raabe2015-12-082-0/+29
| | | | | | | | | | | | | | | | | | | | | | For reading an external file using a specific encoding. This is convenient for having installers show the current configuration (e.g. effective license key) in case the configuration is stored in plain files as opposed to using e.g. the Windows registry. Change-Id: I87f8583b4cb192c4bd8b62a03f292a5cbefd52d8 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Implemented support for creating URL shortcuts on WindowsFrerich Raabe2015-12-081-21/+43
| | | | | | | | | | | | | | | | | | | | | | | | This makes it possible to use the CreateShortcut operation for creating http: and ftp: links, too. This is useful for adding links to online resources to the start menu. The detection of hyperlinks is very simplistic at this point, but good enough many purposes. Change-Id: I80b5eea466a37891cb378eb5c603c08f065bd843 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fixed occasional crash on Windows when terminating installerFrerich Raabe2015-12-083-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The static RemoteClient object (defined in RemoteClient::instance()) which gets destroyed at the very end of the process lifetime would -- as part of its constructor -- execute the RemoteClientPrivate destructor. The RemoteClientPrivate destructor did non-trivial work though, trying to shut down the connection which involves accessing the LocalServer instance. Executing this code at the very end of the process lifetime would sometimes cause a crash on Windows with a back trace into the QMutex guts. Let's fix this by getting more control over the destruction order; the RemoteClient instance is no longer a static object but allocated dynamically. Callers can explicitly call 'destroy' to dispose of the instance as part of their shutdown routine. Change-Id: Ie6773ccc0276ad6285919e57e9ed190bab02be3f Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fix spanish language import nameKatja Marttila2015-11-272-2/+2
| | | | | | | | | | | | | | | | | | Spanish language was imported as name qtbase_es.qm. As it is not found under Qt translations, all other translations were skipped to. Change-Id: I093e72abf7385ca7926d61a14225e3254c1c1fbd Task-number: QTIFW-791 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Fix broken daylight saving time check.Karsten Heimrich2015-11-231-0/+16
| | | | | | | | | | Change-Id: I9fd27cd014d3b1f13b176dc0d4e8af1a93c37ff5 Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
* | Fix null pointer exception in silent modeChristoph Vogtländer2015-11-191-1/+1
| | | | | | | | | | | | | | | | | | | | | | Running in silent mode (using gui.setSilent(true) in a controller script) QApplication::activeWindow() returns a null pointer as no application window has the focus. Change-Id: I440746b540110ebf336b6078b87b250660ee95be Task-number: QTIFW-764 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Fix crash when updating admin installation with user/temp repositoryKatja Marttila2015-10-301-1/+11
| | | | | | | | | | | | | | | | Grant permission rights for writing maintenance config file Change-Id: Ib95fc05b80b95ce952b4bcf2395fbb5ed0ef9153 Task-number: QTIFW-740 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Read UrlQueryString from settings.Jarek Kobus2015-10-144-4/+5
| | | | | | | | | | | | | | Task-number: QTIFW-744 Change-Id: Ie67bbb5f753a86041c60f2e32fe6b36213e4613e Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Merge remote-tracking branch 'origin/2.0'Kai Koehne2015-10-122-3/+14
|\| | | | | | | Change-Id: Ia4c0c6766b52626798197c646043407df8de1fd6
| * Fix errors when running updates in a directory requiring elevationKai Koehne2015-08-201-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | isWritable() is not a reliable way to check for permissions on Windows. Instead, just try to create a file. The alternative would be to set the magic qt_ntfs_permission_lookup variable to 1. Anyhow, this might slow down things and cause other regressions ... Task-number: QTIFW-746 Change-Id: I1b5637670bfcfe29966f0545ce2c6b1f663a9738 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
| * Fix usage of system proxy with credentialsKai Koehne2015-08-051-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | So far we've been using the entered credentials only for custom proxies on Windows and OS X. If one selected 'System Proxy' we asked or the credentials, but tried again without setting them. This fixes a regression introduced in 2.0, where we started to interactively ask for credentials. Task-number: QTBUG-46547 Change-Id: If059a9c68a0976db0453abdc795d9546c4b3aa4a Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Allow to use the stylesheet to customize UIDenis Shienkov2015-09-284-1/+21
| | | | | | | | | | | | | | | | | | | | Now it is possible to set a stylesheet file to customize the wizard's UI. The stylesheet adds to the config.xml file using the new "StyleSheet" element. Change-Id: I66271f755a0f742e96cf433fe557423a2261e432 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
* | Add Castilian Spanish translationJavier Llorente2015-09-244-2/+2693
| | | | | | | | | | | | Change-Id: I6cef758f1b9746b4eb03670765677bb8f5b275c5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Compile with namespaces.Karsten Heimrich2015-09-071-1/+1
| | | | | | | | | | | | Change-Id: I734b0e27d53fd8b6199a3fb5891497df0e1815bb Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Missed to rename classes and to update docs and tests.Karsten Heimrich2015-09-0739-171/+191
| | | | | | | | | | Change-Id: I2d79ab4094cb9706287d44160543c19b35a66c95 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Fix wording of "Could not get authorization" error messageKai Koehne2015-08-261-2/+2
| | | | | | | | | | | | | | Task-number: QTIFW-767 Change-Id: I424c0551032a3a9bc96037d5104bf295060d5e35 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com> Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* | Merge remote-tracking branch 'origin/2.0'Kai Koehne2015-08-196-16/+70
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Changelog dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri src/libs/installer/component.cpp src/libs/kdtools/updatesinfo.cpp Change-Id: I0a1b4a464f7d9008b589b54dd7aed0cac71bd666
| * Unify handling of translationsKai Koehne2015-06-304-21/+63
| | | | | | | | | | | | | | | | | | | | | | Mimic the logic implemented in installerbase/QTranslator::load() by - using QLocale().uiLanguages() - splitting up the locales into candidates (first en-US, then en ...) - implicitly assuming the default is English Task-number: QTIFW-390 Change-Id: I294288d5fc739ebf12c93a0e1a43d613b3834721 Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
| * Init all components with proper install actionJarek Kobus2015-06-291-1/+1
| | | | | | | | | | | | Task-number: QTIFW-727 Change-Id: Iae9d232310370fefc0c9dca771e6b2cca6b5b433 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
| * Fix: .dat file gets deleted after multiple component changes.Karsten Heimrich2015-06-111-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can close the .dat file in maintenance mode. There is no need to keep it open since no packages are in there and resources are mapped into memory anyway. Fixes commit 7f2c98c8 that updates the .dat file on soft restart. On Windows updating did not work cause the .dat is opened and locked by the OS. To overcome locked files we run a VB script that does a deferred rename once the lock is gone, but in case of a soft restart we now did start several of them depending on the amount of restarts. That had the undesired effect of several replace/rename operations, of which only 2 "succeeded": - First script: Remove .dat | Rename .dat.new -> .dat - Second script: Remove .dat | no .dat anymore... Task-number: QTIFW-689 Change-Id: Ic3ee1b418890eabe5b854dc7879cd7bc118f9240 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Fix missing KD* documentation.Karsten Heimrich2015-08-071-0/+11
| | | | | | | | | | Change-Id: I4916c786ac946d58044eb6938801af93de82d6c4 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
* | add silent modeChristoph Vogtländer2015-07-175-1/+34
| | | | | | | | | | | | | | | | | | | | Add possibility to run silently without a gui. Silent mode can be enabled in a controller script using gui.setSilent(true). Change-Id: I5c5d0cc2be734e8e447edfe4e71106fe08f87188 Task-number: QTIFW-166 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
* | Adjust include guards.Karsten Heimrich2015-07-1422-66/+66
| | | | | | | | | | Change-Id: I0252c934b3bcdca254ae6915904d84d5cf013f5a Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Rename files. Remove {kd} prefix. Remove {kdupdater} prefix.Karsten Heimrich2015-07-1463-126/+131
| | | | | | | | | | Change-Id: I88c93cab718f4659296d5f7f562beefd747a366f Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Make the installation relocatable (with some limitations).Karsten Heimrich2015-07-147-53/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace the install path with a constant that's updated while loading the stored configuration and operation values. Dynamic variables now need to be set after reading the .ini file, cause there we store the values we found during installation. Makes an installation relocatable, though with some limitations: * Uninstaller entry might break on Windows * Start menu sortcuts might break on Windows * Everything else written to the system using full path Task-number: QTIFW-653 Change-Id: Ie3255299460d4ad7f18c88de9044c95db10d17ac Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Cleanup. Prepare for proper rollback implementation.Karsten Heimrich2015-07-142-89/+91
| | | | | | | | | | Change-Id: I798702d86dccad2883d36355c5e98d1e698a18ab Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Rework handling of repository testing.Karsten Heimrich2015-07-141-13/+23
| | | | | | | | | | | | | | | | | | - Show message box on error/success. - Show informative text only if necessary. - Add option to enable/disable repo after test. Change-Id: I5608aa1c94f804db1754c9f789697eab614b21c6 Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Remove quotes around component checker warningsKai Koehne2015-07-101-1/+1
| | | | | | | | | | | | | | This was forgotten in b2a65ce68bce4fcd Change-Id: I3731765ffc17879116609b88fb43215fd8aa4cf7 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Make use of the new varadic template feature + cosmetic changes.Karsten Heimrich2015-07-1047-87/+108
| | | | | | | | | | | | | | | | Change constructor to take the a package manager argument. Add a package manager member to the operation. Remove setter function. Change-Id: Iffb860e24089beb6496ac4ee479d547a29463728 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Add factory auto test. Update template parameter + documentation.Karsten Heimrich2015-07-102-32/+75
| | | | | | | | | | | | | | | | The create function cannot be documented properly, cause qdoc does not understand the ellipsis(...) operator as of right now. Change-Id: I6569372ed37621eeaaa7a41ea49aa795676ca65b Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Fix build on WindowsKai Koehne2015-07-101-1/+1
| | | | | | | | | | | | | | Fix breakage introduced with b2a65ce68 Change-Id: I587e9c7d681e8197fa0c967441b52ef58cfe23e6 Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>