Example #1
0
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
Example #2
0
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'),
        ]
    }
Example #3
0
    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']),
        ]
Example #4
0
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],
            )
        ]
    }
Example #5
0
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