def make_widgets(filter_manager, include_dataset_specific=False): base_widgets = { 'dataset': FilterWidget( 'Mutation dataset', 'radio', filter=filter_manager.filters['Mutation.sources'], labels=create_dataset_labels(), disabled_label='All datasets' ), 'ptm_type': FilterWidget( 'Type of PTM site', 'radio', filter=filter_manager.filters['Site.types'], disabled_label='all sites' ), 'has_ptm': FilterWidget( 'Genes with PTM mutations only', 'checkbox', filter=filter_manager.filters['Gene.has_ptm_muts'], disabled_label='all genes', labels=['Genes with PTM mutations only'] ), 'is_kinase': FilterWidget( 'Genes of known kinases', 'checkbox', filter=filter_manager.filters['Gene.is_known_kinase'], labels=['Genes of known kinases only'] ), } if include_dataset_specific: dataset_specific = create_dataset_specific_widgets( None, filter_manager.filters, population_widgets=False ) base_widgets['dataset_specific'] = dataset_specific return base_widgets
def make_widgets(filter_manager): return { 'proteins': { 'ptm': FilterWidget( 'Show only proteins with PTM mutations', 'checkbox', filter=filter_manager.filters['Protein.has_ptm_mutations'], class_name='pull-right'), 'feature': FilterWidget('Search by', 'checkbox_multiple', filter=filter_manager.filters['Feature.name'], labels=[ engine.pretty_name for engine in advanced_search_engines.values() ], all_selected_label='All features', class_name='checkboxes-inline') }, 'mutations': [ FilterWidget( 'Show all mutations (by default only PTM mutations are shown)', 'checkbox', filter=filter_manager.filters['Mutation.is_ptm'], class_name='pull-right'), ] }
def _create_option_widgets(self, filter_manager): return [ FilterWidget( 'Show sites', 'binary', filter=filter_manager.filters['JavaScript.show_sites']), FilterWidget( 'Clone kinases by site', 'binary', filter=filter_manager.filters['JavaScript.clone_by_site']), FilterWidget( 'Prevent drug overlapping', 'binary', filter=filter_manager.filters['JavaScript.collide_drugs']), ]
def create_widgets(protein, filters_by_id, custom_datasets_names=None): """Widgets to be displayed on a bar above visualisation.""" return { 'dataset': FilterWidget('Mutation dataset', 'radio', filter=filters_by_id['Mutation.sources'], labels=cached_queries.dataset_labels, class_name='dataset-widget'), 'custom_dataset': FilterWidget('Custom mutation dataset', 'radio', filter=filters_by_id['UserMutations.sources'], labels=custom_datasets_names), 'dataset_specific': create_dataset_specific_widgets(protein, filters_by_id), 'is_ptm': FilterWidget('PTM mutations only', 'checkbox', filter=filters_by_id['Mutation.is_ptm'], disabled_label='all mutations', labels=['PTM mutations only']), 'ptm_type': FilterWidget('Type of PTM site', 'radio', filter=filters_by_id['Site.types'], disabled_label='Any site', hierarchy={ site_type.name: site_type.sub_types for site_type in cached_queries.site_types if site_type.sub_types }), 'other': [ FilterWidget( 'Drug group', 'checkbox_multiple', filter=filters_by_id['Drug.groups.name'], labels=[group.title() for group in cached_queries.drug_groups], ) ] }
def create_dataset_specific_widgets(protein, filters_by_id, population_widgets=True): cancer_codes_mc3 = protein.cancer_codes(MC3Mutation) if protein else [] widgets = [ FilterWidget('Cancer type', 'checkbox_multiple', filter=filters_by_id['Mutation.mc3_cancer_code'], labels=cached_queries.all_cancer_names, choices=cancer_codes_mc3, all_selected_label='Any cancer type'), FilterWidget('Clinical significance', 'checkbox_multiple', filter=filters_by_id['Mutation.sig_code'], all_selected_label='Any clinical significance class', labels=ClinicalData.significance_codes.values()), FilterWidget('Disease name', 'checkbox_multiple', filter=filters_by_id['Mutation.disease_name'], all_selected_label='Any disease name') ] if population_widgets: widgets += [ FilterWidget('Ethnicity', 'checkbox_multiple', filter=filters_by_id['Mutation.populations_1KG'], labels=populations_labels( The1000GenomesMutation.populations), all_selected_label='Any ethnicity'), FilterWidget('Ethnicity', 'checkbox_multiple', filter=filters_by_id['Mutation.populations_ESP6500'], labels=populations_labels( ExomeSequencingMutation.populations), all_selected_label='Any ethnicity') ] return widgets