I've set disk space pre-allocation, but noticed it's only really getting allocated as files actually start getting dl'ed, not when a torrent file is added or un-paused.
This defeats its purpose and is bound to cause problems, as it may mislead you to believe you have space for all files added, and later (possibly unattended) hdd fills up, eventually leading to os crash, data loss, etc...
Space should be allocated as soon as a torrent is added/when it's un-paused, regardless of availability/active connections (the way uTorrent does it).
I noticed this too as a user switching over from uTorrent. Like cm-mc said, in uTorrent all the files are preallocated at the time when the torrent is started (not added). It's good to preallocate all the files especially with large/slow torrents so that you know how much hard drive space is available for new torrents. Because in qBittorrent a slow torrent might not get fully preallocated until days later and by then you might have a freespace issue with other torrents that are running and haven't preallocated yet.
So yeah, it would be cool for qBittorrent to preallocate all the files of the torrent at the time of the torrent start. It should be only the selected fles in case the user "skips" some of the files in the torrent.
I wouldn't advise to preallocate all files when the torrent is added unless it's an optional feature. But definitely preallocating at the torrent start would be good.