Hey, Gilles
Good idea. In fact, it's basically the entire solution already for a site that sells several packages for download.
In our case, it's a little more complicated than that.
It's audio site, so:
1. There are hundreds of lectures available for download - so, we can't create a role for each product, nor can we add it to a download module manually
2. At the checkout (as well as all related admin settings) there is a Shipping Address, shipping charges box, etc. This would've not be a big deal other than some users will undoubtedly get confused. (Not to mention that it makes no sense whatsoever for such a site)
3. There is not place to add path / upload actual files on Product Add screen.
So, I was thinking that:
1. We need a checkbox as you are adding a new product that indicates that the product is downloadable.
2. If it is, once you add it, a new screen (new portion of a screen or a new link) becomes available with upload instruments on it.
3. Shopping cart page could check if all products on the page are downloadable and, if it is the case, hide shipping related fields.
4. Optionally, we could have a Shipping Disabled setting to Store Admin screen that would just hide it globally for that store.
5. Orders screen, then, could just check if the product purchased is downloadable and, if it is, display a download button for it.
What do you think?