I have an application where a user needs to drag and drop attachments from their hard drive into the application; the application stores documents relating to building projects like floor plans, location plans, pictures of gardens etc.

Use cases:

  • I want to select a bunch of files of a certain type and drag them into the application. I need to tell the system what they are, so I will need to specify that they are all 'floor plans' for example.

  • I want to select a bunch of files of mixed type and drag them into the application. I need to tell the system what each one is because they will be different, e.g. one is a floor plan, the other is a picture of a house, etc.

I'm thinking that there needs to be a control that sets global metadata for the dragged set of documents and an individual control that allows the user to override global metadata with individual document metadata.

Does anyone have a good pattern for this complex scenario?


I have experienced a similar problem, in which the user was uploading documents of different types. I allowed the user some flexibility in how they accomplished the task.

  • Allow the user to do a bulk upload to a specific type by having the various document types listed out. Each type is a row in a table, wide enough to be a reasonable drop target. So if the user has 3 floor plans, they can drag and drop them to a placeholder area called 'floor plans.' If you have a short number of types, you could list them all out in the table. If there are many, at least list the commonly used types out and have an add button to add a new type to create a new drop target. enter image description here
  • The other method is to allow the user to upload everything in bulk, and then list out all of the uploaded files and provide a dropdown to select the type for each one individually. You could include a multi-select option, where you could allow them to assign types in bulk if this is a common use case. enter image description here
  • both great answers guys. good job. – colmcq Jun 17 '15 at 15:41

So, you want to be able to change the details for one or many files in one go - I would suggest a file view that lists all the files with a panel to one side that lists the details of the selected file or files as input boxes - the user could select a single file and edit its details in the side panel or they could select multiple files and edit their details in the side panel as though they were one file - For example: the user selects a single file, clicks into the 'name' input and changes the 'name' of that file. The user selects 3 or 4 files and clicks into the 'style' input and changes the 'style' value for all selected files.

I'm sure I've seen this kind of interaction somewhere (to do with MP3 player software) but I can't think where!

It looks something like this (very simplified sketch)

Multiple File Detail Management

  • both great answers guys. good job. – colmcq Jun 17 '15 at 15:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.