@@ -12,6 +12,10 @@ const getNumColumns = () => {
12
12
return column_field . value ;
13
13
} ;
14
14
15
+ const getTracerName = ( ) => {
16
+ return document . getElementById ( "tracerName" ) . value ;
17
+ }
18
+
15
19
const fauxData = ( r , c ) => {
16
20
var arr = new Array ( r ) ;
17
21
for ( var i = 0 ; i < c ; i ++ ) {
@@ -46,21 +50,36 @@ const makeInputFields = () =>{
46
50
47
51
} ;
48
52
49
- const generateJS = ( ) => {
50
- var logger = new modules . LogTracer ( 'Generated Javascript' ) ;
53
+ const generateJS = ( logger ) => {
54
+ logger . clear ( ) ;
51
55
var table = document . querySelector ( '.mtbl-table' ) ;
52
56
53
57
var numRows = table . childNodes . length ;
54
58
var numColumns = table . childNodes [ 0 ] . childNodes . length ;
55
59
60
+ logger . print ( 'Copy and paste this code in your data.js file!' ) ;
61
+ logger . print ( '' ) ;
62
+
63
+ logger . print ( 'let myTable = [' ) ;
64
+
56
65
var line = '' ;
57
- for ( var i = 0 ; i < numRows ; i ++ ) {
58
- line = '' ;
59
- for ( var j = 0 ; j < numColumns ; j ++ ) {
66
+ var i ;
67
+ var j ;
68
+ var comma = ',' ;
69
+ for ( i = 0 ; i < numRows ; i ++ ) {
70
+ line = '[' ;
71
+ for ( j = 0 ; j < numColumns - 1 ; j ++ ) {
60
72
line += table . childNodes [ i ] . childNodes [ j ] . childNodes [ 0 ] . value + ',' ;
61
73
}
74
+ if ( i === numRows - 1 ) { comma = '' ; }
75
+ line += table . childNodes [ i ] . childNodes [ j ++ ] . childNodes [ 0 ] . value + ']' + comma ;
62
76
logger . print ( line ) ;
63
77
}
78
+ logger . print ( ']' ) ;
79
+
80
+
81
+ logger . print ( "let myTableTracer = new Array2DTracer ('" + getTracerName ( ) + "')" ) ;
82
+ logger . print ( 'myTableTracer._setData (myTable)' ) ;
64
83
65
84
} ;
66
85
@@ -86,16 +105,24 @@ const positionModules = () =>{
86
105
const setupButtons = ( ) => {
87
106
88
107
var button_2DMatrix = document . getElementById ( "button-2DMatrix" ) ;
108
+ var logger ;
109
+ var arr2DTracer ;
89
110
button_2DMatrix . addEventListener ( 'click' , function ( ) {
90
- var arr2DTracer = new modules . Array2DTracer ( ) ;
111
+ arr2DTracer = new modules . Array2DTracer ( ) ;
112
+ logger = new modules . LogTracer ( 'Generated Javascript' ) ;
113
+
91
114
var numRows = getNumRows ( ) ;
92
115
var numColumns = getNumColumns ( ) ;
93
116
var data = fauxData ( numRows , numColumns ) ;
94
117
95
118
arr2DTracer . setData ( data ) ;
96
119
makeInputFields ( ) ;
97
- generateJS ( ) ;
98
120
positionModules ( ) ;
121
+ arr2DTracer . refresh ( ) ;
122
+ } , false ) ;
123
+ var button_JS = document . getElementById ( 'button-generateJS' ) ;
124
+ button_JS . addEventListener ( 'click' , function ( ) {
125
+ generateJS ( logger ) ;
99
126
} , false ) ;
100
127
101
128
} ;
0 commit comments