-
Notifications
You must be signed in to change notification settings - Fork 0
/
Conversion.jsx
104 lines (103 loc) · 7.34 KB
/
Conversion.jsx
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
93
94
95
96
97
98
99
100
101
102
103
104
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/*Conversion
>=----------------------------------------------------------------------------------------------------------------------------------------------------------------
Author: Christian Condamine - ([email protected])
>=----------------------------------------------------------------------------------------------------------------------------------------------------------------
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
This script is reduced to a dialog box allowing to enter a value in a chosen unit and to obtain in return its conversion
in another unit.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
*/
#targetengine 'main'
valeurSortie = 0
defaire = false;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Dialog box /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$.localize = true;
$.locale = null;
if($.locale.substr(0,2) != "fr"){$.locale = "en"};
var boiteDial = new Window("dialog","Conversion");
boiteDial.alignChildren = ["center","top"];
//// Value_Panel
var panValeur = boiteDial.add("panel", [0,10,235,70], {en:"value to convert", fr:"Valeur \340 convertir"});
panValeur.orientation = "row";
panValeur.margins = 10;
var ettValEntree = panValeur.add("edittext",[10,15,130,38],0);
ettValEntree.onChange = function() {lancerConversion(ettValEntree.text,uniteEntree.selection.index,uniteSortie.selection.index,ettDec.text);
ettValSortie.text = valeurSortie;};
var localiseUnitEntree2 = {en:"inche\(s\)", fr:"pouce\(s\)"};
var uniteEntree = panValeur.add("dropdownlist", [140,15,220,38], ["mm", "point\(s\)", localiseUnitEntree2]);
uniteEntree.selection = 0;
uniteEntree.onChange = function() {lancerConversion(ettValEntree.text,uniteEntree.selection.index,uniteSortie.selection.index,ettDec.text);
ettValSortie.text = valeurSortie;};
//// Decimals_Panel
var panDec = boiteDial.add("panel", [0,75,235,120], undefined);
panDec.margins = 10;
var sttDec= panDec.add("statictext", [10,5,87,33], {en:"Decimals :", fr:"D\351cimales"});
var ettDec = panDec.add("edittext",[90,5,120,33],2);
ettDec.onChange = function() {lancerConversion(ettValEntree.text,uniteEntree.selection.index,uniteSortie.selection.index,ettDec.text);
ettValSortie.text = valeurSortie;};
//// Result_Panel
var panResultat = boiteDial.add("panel", [0,105,235,165], {en:"Result", fr:"R\351sultat"});
panResultat.orientation = "row";
var localiseUnitSortie2 = {en:"inche\(s\)", fr:"pouce\(s\)"};
var uniteSortie = panResultat.add("dropdownlist", [10,15,90,38], ["mm", "point\(s\)", localiseUnitSortie2]);
uniteSortie.selection = 0;
uniteSortie.onChange = function() {lancerConversion(ettValEntree.text,uniteEntree.selection.index,uniteSortie.selection.index,ettDec.text);
ettValSortie.text = valeurSortie;};
var ettValSortie = panResultat.add("edittext",[100,15,220,38],0);
var ok = boiteDial.add("button", undefined, "Ok");
boiteDial.show();
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Conversion ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function lancerConversion(valeurEntree,uniteEntree,uniteSortie,dec) {
switch (uniteEntree) {
case 0 :
switch (uniteSortie) {
case 0 :
valeurSortie=parseFloat(valeurEntree).toFixed(dec);
return (valeurSortie);
break;
case 1 :
valeurSortie=(parseFloat(valeurEntree*2.834645)).toFixed(dec);
return (valeurSortie);
break;
case 2 :
valeurSortie=(parseFloat(valeurEntree/25.4)).toFixed(dec);
return (valeurSortie);
break;
};
case 1 :
switch (uniteSortie) {
case 0 :
valeurSortie=(parseFloat(valeurEntree/2.834645)).toFixed(dec);
return (valeurSortie);
break;
case 1 :
valeurSortie=parseFloat(valeurEntree).toFixed(dec);
return (valeurSortie);
break;
case 2 :
valeurSortie=(parseFloat(valeurEntree*72)).toFixed(dec);
return (valeurSortie);
break;
};
case 2 :
switch (uniteSortie) {
case 0 :
valeurSortie=(parseFloat(valeurEntree*25.4)).toFixed(dec);
return (valeurSortie);
break;
case 1 :
valeurSortie=(parseFloat(valeurEntree*72)).toFixed(dec);
return (valeurSortie);
break;
case 2 :
valeurSortie=parseFloat(valeurEntree).toFixed(dec);
return (valeurSortie);
break;
};
};
};