• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

compassinformatics / cpsi-mapview / 15022980938

14 May 2025 02:11PM UTC coverage: 26.333% (+0.04%) from 26.29%
15022980938

push

github

geographika
Move describe to test globals

492 of 2344 branches covered (20.99%)

Branch coverage included in aggregate %.

1464 of 5084 relevant lines covered (28.8%)

1.17 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

1.85
/app/controller/form/LayerTreeFilter.js
1
/**
2
 * This is the controller for the {@link CpsiMapview.view.form.LayerTreeFilter} component
3
 *
4
 * @class CpsiMapview.controller.form.LayerTreeFilter
5
 */
6
Ext.define('CpsiMapview.controller.form.LayerTreeFilter', {
1✔
7
    extend: 'Ext.app.ViewController',
8

9
    alias: 'controller.cmv_layertreefilter',
10

11
    requires: ['CpsiMapview.util.LayerTreeFilter'],
12

13
    /**
14
     * Clears the textfield for filtering the layer tree.
15
     *
16
     * @param {Ext.form.field.Text } textField
17
     */
18
    clearText: function (textField) {
19
        const me = this;
×
20
        const view = me.getView();
×
21

22
        textField.setValue('');
×
23

24
        const tree = Ext.ComponentQuery.query('cmv_layertree')[0];
×
25
        if (!tree) {
×
26
            return;
×
27
        }
28
        const store = tree.getStore();
×
29
        if (!store) {
×
30
            return;
×
31
        }
32

33
        // remove previous filter if exists
34
        store.removeFilter(view.TEXT_FILTER_ID);
×
35
    },
36

37
    /**
38
     * Updates the filter with the latest input values.
39
     *
40
     * @return {void}
41
     */
42
    updateFilter: function () {
43
        const me = this;
×
44
        const view = me.getView();
×
45
        const vm = view.getViewModel();
×
46
        const LayerTreeFilterUtil = CpsiMapview.util.LayerTreeFilter;
×
47

48
        const tree = Ext.ComponentQuery.query('cmv_layertree')[0];
×
49
        if (!tree) {
×
50
            return;
×
51
        }
52
        const store = tree.getStore();
×
53
        if (!store) {
×
54
            return;
×
55
        }
56

57
        store.removeFilter(view.FILTER_ID);
×
58
        const filter = LayerTreeFilterUtil.createLayerTreeFilter(
×
59
            view.FILTER_ID,
60
            vm.get('hideInvisibleLayers'),
61
            vm.get('searchText'),
62
            view.getDoFilterBaseLayers()
63
        );
64
        store.addFilter(filter);
×
65
    },
66

67
    /**
68
     * Handler for the input field change event.
69
     *
70
     * @param {Ext.form.field.Text} textfield The textfield.
71
     * @param {string} searchText The search text.
72
     * @return  {void}
73
     */
74
    onSearchTextChange: function (textfield, searchText) {
75
        const treeFilter = textfield.up('cmv_layertreefilter');
×
76
        const vm = treeFilter.getViewModel();
×
77
        const ctrl = treeFilter.getController();
×
78
        if (!vm || !ctrl) {
×
79
            return;
×
80
        }
81
        vm.set('searchText', searchText);
×
82
        ctrl.updateFilter();
×
83
    },
84

85
    /**
86
     * Handler for the checkbox change event.
87
     *
88
     * @param {Ext.form.field.Checkbox} cb The checkbox.
89
     * @param {boolean} checked True, if checked. False otherwise.
90
     * @return {void}
91
     */
92
    onCheckboxChange: function (cb, checked) {
93
        const treeFilter = cb.up('cmv_layertreefilter');
×
94
        const vm = treeFilter.getViewModel();
×
95
        const ctrl = treeFilter.getController();
×
96
        if (!vm || !ctrl) {
×
97
            return;
×
98
        }
99
        vm.set('hideInvisibleLayers', checked);
×
100
        ctrl.updateFilter();
×
101
    }
102
});
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc