Dear Galaxy user,

I'm working on a interface where the user can choose multiple data files using 
<param name="data_selection" type="data" multiple="true" />. Although I didn't 
find details about this in the manual, it does work.
The next step in the interface are two select boxes (<param type="select" 
samples" multiple="true" 
dynamic_options="copy_selected_data_names(data_selection)"  />) which allow 
further selection on the data chosen in "data_selection".

I created a small python script that copies the entries selected in 
"data_selection" as follows:

def copy_selected_data_names(DataToolParameter_multiple_object):
        items = []
        
        if(DataToolParameter_multiple_object != NULL):
                if(type(DataToolParameter_multiple_object) == type([])):        
        ## If it is a list
                        for g in DataToolParameter_multiple_object:
                                items.append([g.name,g.file_name,False])
                
                else:                                                           
                                ## If it isn't a list
                        
items.append([DataToolParameter_multiple_object.name,DataToolParameter_multiple_object.file_name,False])
        
        return items

I noticed that once only one single object is selected, the DataToolParameter 
returns directly one HistoryDatasetAssociation object. Once several are 
selected, it returns a list with HistoryDatasetAssociation objects. I think 
this is not correct; the DataToolParameter is a object where multple is set to 
"true" so it should always return a list even if none or 1 object is selected.

Nevertheless, this part of the code works. However, the update of the 
dynamic_options="copy_selected_data_names(data_selection)" only takes place 
whenever new objects (in repeat blocks) are added or removed elsewhere in the 
interface. Thus, the copying of the content doesn't take place when the 
selection has changed.

My question is: is there a way to make dynamic_options="" update whenever the 
selection in "data_selection" has changed?

I checked the code and I found some variables in the DataToolParameter class 
that may have something to do with it:

self.refresh_on_change = False
self.refresh_on_change_values = []

But I'm not able to solve the puzzle on my own. Is there anyone who can help in 
this direction? Thanks in advance!
___________________________________________________________
Please keep all replies on the list by using "reply all"
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:
  http://lists.bx.psu.edu/

To search Galaxy mailing lists use the unified search at:
  http://galaxyproject.org/search/mailinglists/

Reply via email to