summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Implement progress indicator on taskbar on Windows.kh12014-09-115-2/+53
| | | | | | | Task-number: QTIFW-15 Change-Id: Ia11c185f25dff2f1614425ec5ff78e79b2fa2a77 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix auto dependencies for root nodes.jkobus2014-09-101-0/+1
| | | | | | | If root node has auto dependecies set, they will work now too. Change-Id: Idaa06e71b755dab43d7b456bfb90f8faadceeaab Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Fix indent.kh12014-09-101-1/+1
| | | | | Change-Id: I809f2b2cdeef8c4bfa5918f4a77ab332c69f3b8f Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
* Set value for empty tags that should provide a default value.kh12014-09-051-5/+8
| | | | | | Task-number: QTIFW-541 Change-Id: Ib899d87be75baaa96b3b15d8a94f660c1a6544e0 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Remove unused operators.kh12014-09-052-14/+0
| | | | | Change-Id: Icd4c43e27478c017280ffda64c9c51045fdc32da Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix some std::cout usage.kh12014-09-052-11/+7
| | | | | | | Fixes missing timestamps and some propably wrong conversion. Change-Id: I6106e1ea61d0840d132dd3b44cd746f023e795af Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Minor style fix.kh12014-09-041-4/+5
| | | | | Change-Id: Ia34652ea6cae93285c73b7c29de82cb7434c7e67 Reviewed-by: Niels Weber <niels.weber@digia.com>
* Rewrite binary layout read/ write implementation.kh12014-09-046-196/+260
| | | | | | | | | | Move BinaryLayout into its own file. Calculate the segment offsets in place instead of letting the caller do the work. Adjust autotest to match the new behavior. Adjust uses to the new behavior. Change-Id: Iba7a4398bd097f1768c33f0c528efd12b7458541 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Split and implement new installer base, update checker.kh12014-09-0415-764/+655
| | | | | | | | | | | | | Based on the former patches, split the installer base into its own class. Use the new binary content read functions. Adjust uses to match the new classes. Adjust installer base /update checker signature and inheritance. Remove all now superfluous functions from binary content. Core engine instantiates the operations now, makes reading and writing more generic. Move product key check into QInstaller namespace. Make use of the new command line parser. Change-Id: I00aff79085b69ce627906881b43f374681ea7e91 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Introduce commandline parser class.kh12014-08-293-0/+236
| | | | | | | | Though it just wraps the Qt class, it does at least some useful setup in its constructor, will reuse that in the next commit. Change-Id: I7b876d196540baad197bdbf85babbeaea62f8c27 Reviewed-by: Niels Weber <niels.weber@digia.com>
* Let the binary layout function find the cookie on its own.kh12014-08-293-14/+11
| | | | | | | | | Saves some ugly looking call convention, as we need to find the cookie anyway, pass the cookie instead of the position. Change-Id: I2227576a8ad251fac5312fc477f8381287b0d36d Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Make BinaryFormatEngineHandler a real singleton.kh12014-08-294-31/+11
| | | | | | | | It is really needed only once. Change-Id: I0b2231432541c2781afe55105f88809db4fe19e1 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Adjust implementation to not use the collection manager.kh12014-08-295-57/+30
| | | | | Change-Id: Ie38460ff4a94b5583cabb1ecad97cd6c9a906c15 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Remove unneeded status checkjkobus2014-08-291-14/+6
| | | | | | | | Looks like none of the functions invoked in meantime can potentially change the status. Change-Id: I04da950138610c6ab7ad5dc0f0efce589a3815cf Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Optimize the code in case loadScript == falsejkobus2014-08-281-6/+7
| | | | | Change-Id: I643b57529910d0202389c40d1cb6f7e55bfca5f4 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Don't modify commitPage property, use setComplete insteadjkobus2014-08-282-20/+11
| | | | | Change-Id: I7a81d5736d3196731b0f77fbc977950a934bc846 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Refactor binary engine implementation.kh12014-08-272-100/+78
| | | | | Change-Id: Ic7e30a7b3b3f339beda61170e63f69c4b8938beb Reviewed-by: Niels Weber <niels.weber@digia.com>
* Make use of the new read binary content function.kh12014-08-271-11/+1
| | | | | Change-Id: I8ed0b4177e8e6063d9c14d96f6df4030d1028348 Reviewed-by: Niels Weber <niels.weber@digia.com>
* Introduce two new functions to read and write binary content.kh12014-08-273-1/+172
| | | | | | | In addition update the auto test to test both new functions. Change-Id: I85f1e28cf486fc381941e553dac6defa9d327117 Reviewed-by: Niels Weber <niels.weber@digia.com>
* Fix listing of resourcesKai Koehne2014-08-271-1/+1
| | | | | | | In commit 6466dbd11190 the list iterator advances two times in one go. Change-Id: I24aae53b764732b04159261921365c99518ee3e9 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Make listing of resources less verboseKai Koehne2014-08-271-10/+9
| | | | | | | Print the resources only once, and hide Qt internal resource paths. Change-Id: I4fce72424b4ab94d44d63e16b6ae89cff7ccac72 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Show the details text box when dependencies are not met.jkobus2014-08-272-24/+25
| | | | | | | | This was broken in change 2f5c612538984122018e118b506119dd0e2a2e6e It stopped working when verbose (-v) option was not provided. Change-Id: I1f269faf9b8ce14cd40508c5f7622504fb3f373d Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Rename binary format classes and functions. Move to QInstaller.kh12014-08-2710-315/+424
| | | | | | | | | | Adjust some minor implementation details. Some renaming of member variables and function names is left out but will follow in later patches. Add some documentation. Change-Id: I929dcbe13fa701be5224b9e5fdf8d19bfff81235 Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Don't assert in case of missing dependencyjkobus2014-08-271-1/+0
| | | | | | | | | This case is handled anyway, by showing to the user the message in red. Change-Id: I64f75901e4fb4fadba255198f5f391d7c2bc1457 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Minor style change.kh12014-08-251-1/+1
| | | | | | Change-Id: I3edcccf06c6dfccee8ec8cdfb59f50f416de4a79 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Suppress spurious message box while accessing unmounted devices.kh12014-07-301-0/+5
| | | | | | Task-number: QTIFW-530 Change-Id: I692f73f7959818cf3b14d1030b5e1269c56ad637 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Default to details on if verboseNiels Weber2014-07-251-0/+3
| | | | | | | | | | If the installer is run in verbose mode, assume that the user wants to see the installation details on performinstallation page. Task-number: QTIFW-140 Change-Id: Ic30eb8e0b757bca1c1cb22d9c643be44ffa7f93d Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Toggle details on ReadyForInstallation page with verbose modeNiels Weber2014-07-252-21/+5
| | | | | | | | | | | | Removed the Details button, as it only confused people, especially with the internal component names being shown there. As it is essentially debugging output, it should be toggled with the verbose switch, as is the rest of the debugging output. Task-number: QTIFW-140 Change-Id: I23dc5bd033a52cffc7cf811b6ec886a9db3a6a63 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Fix compile on MacOSXChristian Stenger2014-07-231-0/+5
| | | | | Change-Id: Ib95eb7259928bd5ec23bb2ea9c08c925a8bf170f Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* List disk space requirements prior to installationNiels Weber2014-07-231-0/+4
| | | | | | | | | | | Add a sentence to ReadyForInstallation page showing the required space. So far we only had this in verbose output. Task-number: QTIFW-16 Change-Id: Id119d86e67162482f72ad692954902766985a37f Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix disk space checking for updatesNiels Weber2014-07-231-1/+1
| | | | | | | | | | Makes more sense to check only the space required by components that are about to be installed, not that required by all components already installed as well. Task-number: QTIFW-434 Change-Id: I7b6b5425d5c77b50f1277855e6744596d06b44bc Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Prefix log messages with timestampKai Koehne2014-07-221-1/+13
| | | | | | | | | Add time in milliseconds since the first log statement. Task-number: QTIFW-496 Change-Id: I5db788e9570e0ae7abeb9946c709f3f38a1dca88 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Adjust the segment in place instead in different locations.kh12014-07-211-2/+2
| | | | | | Change-Id: I4bfc2227161decb5ba5e96ec39d4dbd9d2699d34 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix attaching to console on WindowsKai Koehne2014-07-182-37/+74
| | | | | | | | | | | Commit e68390254c8 was incomplete in that it didn't redirect the streams properly. This commit fixes the case where the application is launched from the console, but output is not redirected. In addition, redirection of stdin was removed. We don't use cin anywhere. Change-Id: I25dcde106d598ec1db6f2737312ce542438af0c9 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Simplify VerboseWriterKai Koehne2014-07-183-9/+6
| | | | | | | | | This class does not need to be a QObject. Also, rename 'setOutputStream' to more accurate 'setFileName'. Change-Id: Iefb5997bb1ee1d5c54fa9abbdd3ad81f5d9a49d8 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Simplify loggingKai Koehne2014-07-183-59/+17
| | | | | | | | | | | | Let VerboseWriter solely handle logging to the destination file. qt_message_handler takes the role of logging to cout. This allows us to get rid of the twisted stream logic in utils.cpp, and furthermore let us get rid of the buggy debugstream. Change-Id: I5cf2e41b126a90025825a0d93f95b41d783ef22a Task-number: QTIFW-524 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Show Details widget doesn't follow content during install.kh12014-07-183-11/+29
| | | | | | | | Now also keeps the position if we have scrolled somewhere. Task-number: QTIFW-353 Change-Id: I58e90592df3d8d4589b5e577366c251e501900d9 Reviewed-by: Niels Weber <niels.weber@digia.com>
* Move Console implementation (Windows) in .cpp fileKai Koehne2014-07-183-69/+122
| | | | | | | No logic has been altered. Change-Id: I1784cc50a454258435ae11d4d67d6951b5039e9f Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Fix Typo resulting in wrong error messageNiels Weber2014-07-171-1/+1
| | | | | Change-Id: I62e91bcb3bfe73ea0d23f6cdf6938af10fffd8cc Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Don't allow \ in installpath on UnixNiels Weber2014-07-171-5/+10
| | | | | | | | | | Also now only show the actual matching character, not the whole RegExp. Task-number: QTIFW-512 Change-Id: I179b994b5ee5d7f19b9724d13b2c192a6af01448 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Move permissions handling after rename.kh12014-07-151-4/+4
| | | | | | | | | At least on Linux we lost the executable permission while doing a rename before setPermissions(...). Not so urgent in these cases, though more correct. Change-Id: Ibb1ca9f04fe94732ff22afd004fbf921255df690 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Update documentation and rename code to improve readability.kh12014-07-151-59/+57
| | | | | Change-Id: I5b467aca314f81304f7a4854cb6ea5b4f57361f3 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Make the marker and the find function class members.kh12014-07-156-39/+42
| | | | | | | Prepare for QTIFW-292 and QTIFW-345. Change-Id: I065366742d28e72bc5ae55e70eabf6532b809fea Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Move class BinaryContent into its own file.kh12014-07-1511-553/+657
| | | | | | | Prepare for QTIFW-292 and QTIFW-345. Change-Id: I938b5aa728e8f81eb9521df5753ad80ac630d96e Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Move updater class into sdk binary and rename to UpdateChecker.kh12014-07-159-189/+150
| | | | | | | | | | | | | Remove some now superfluous methods from binary format. Adjust initializing some objects as we need them not earlier. Unify implementation of accessing the right binary to read the content from. UpdateChecker does now have its own run checker, makes it possible to run the binary even if a e.g. maintenace tool is already running. Change-Id: I94f32f7f38b62b5aee433753abc2fe72e879ddc9 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Adjust parsing the arguments, we now only need them for the parser.kh12014-07-141-7/+5
| | | | | Change-Id: Ibf4ee8358f7eb75854c8b6ca9be25b1288eb045d Reviewed-by: Niels Weber <niels.weber@digia.com>
* Trim whitespace from targetdirectoryNiels Weber2014-07-141-1/+1
| | | | | | | Task-number: QTIFW-468 Change-Id: Ib657fe5cbdcebaecf53be11db35888fa132822fa Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix permissions of written maintenancetoolNiels Weber2014-07-111-2/+3
| | | | | Change-Id: I175d94cda81b0947c5f721022a22b087ca6f1c97 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Introduce developer tool.kh12014-07-113-261/+0
| | | | | | | | | | Supports dump binary content, run operation and update existing binary with new installer base. The support for starting with binary data of a different installer got dropped completely, use update and run instead. Change-Id: I41073d0bfc9a4c4da18fbb9f49fd3e65bb54b501 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Windows: Write verbose output into parent consoleKai Koehne2014-07-111-4/+12
| | | | | | | | | | | | Don't open a new console window for verbose output if we got launched from a console already, but attach to the parent console. This allows users to e.g. pipe the verbose output to a file. Change-Id: Ie602bdd18ef48b576e4b90806541709394882735 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>