aboutsummaryrefslogtreecommitdiff
path: root/src/qml/pages/LengthModel.qml
blob: a374be36e21a73a07d31900e3cfcc2edd4e96d70 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
import QtQuick 2.0

ListModel {
    function from (title, value) {
        var functions = {
            "meter": function () { return value; },
            "kilometer": function () { return value*1000.0; },
            "decimeter": function () { return value/10.0; },
            "centimeter": function () { return value/100.0; },
            "millimeter": function () { return value/1000.0; },
            "thou": function () { return value*(25.4e-6); },
            "inch": function () { return value*0.0254; },
            "foot": function () { return value*0.3048; },
            "yard": function () { return value*0.9144; },
            "mile": function () { return value*1609.344; },
            "nautical mile": function () { return value*1852.0; }
        }
        return functions[title]();
    }

    function to (title, value) {
        var functions = {
            "meter": function () { return value; },
            "kilometer": function () { return value/1000.0; },
            "decimeter": function () { return value*10.0; },
            "centimeter": function () { return value*100.0; },
            "millimeter": function () { return value*1000.0; },
            "thou": function () { return value/(25.4e-6); },
            "inch": function () { return value/0.0254; },
            "foot": function () { return value/0.3048; },
            "yard": function () { return value/0.9144; },
            "mile": function () { return value/1609.344; },
            "nautical mile": function () { return value/1852.0; }
        };
        return functions[title]();
    }

    ListElement {
        title: "meter"
        abbr: "m"
    }

    ListElement {
        title: "kilometer"
        abbr: "km"
    }

    ListElement {
        title: "decimeter"
        abbr: "dm"
    }

    ListElement {
        title: "centimeter"
        abbr: "cm"
    }

    ListElement {
        title: "millimeter"
        abbr: "mm"
    }

    ListElement {
        title: "thou"
        abbr: "thou"
    }

    ListElement {
        title: "inch"
        abbr: "inch"
    }

    ListElement {
        title: "foot"
        abbr: "ft"
    }

    ListElement {
        title: "yard"
        abbr: "yd"
    }

    ListElement {
        title: "mile"
        abbr: ""
    }

    ListElement {
        title: "nautical mile"
        abbr: ""
    }
}