chrille112 wrote:Then add a routine that checks after a file has been downloaded, if it's the last file in the directory. If not, leave it in the unfinished, if it is - move all of the files to finished downloads
Files are eased out of DC++'s queue once they're completed, what you're asking for probably would require that to change, and for DC++ to add functions to the queue to indicate "finished file, waiting for moving". That's not a problem, it's just a pretty substantial change to DC++'s internals. It's not completely obvious how to handle some situations.
base_directory\file_a.ext
base_directory\file_b_queued_separately.ext
base_directory\file_set\file_c.ext
base_directory\file_set\file_d.ext
Waiting to move files only works, basically, if they were all queued at the same time. In the above example, you want file_a and file_b to be moved to the destination when they're finished, but you want file_c to stay until file_d is completed (or vice-versa).
If hubs are worried about you sharing incomplete sets of files, having a "container" to represent all of them makes more sense - something like MAGMA or another type of "collection file" (which is the generic term for this.) If you're worried about starting a download and getting an incomplete set, the collection file would serve the purpose too - it would enable you to queue the files all at once as a logical set. If everyone starts downloads from the collection file, nobody will end up with an incomplete set, and it won't matter if the files in the set are shared before you have them all.
Once discussion is finished, someone who wants this should enter it into bugzilla.