Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 34fb410

Browse filesBrowse files
author
Kevin Nadro
committed
cleaning up code and files
- making more files and renaming things
1 parent 7a55695 commit 34fb410
Copy full SHA for 34fb410

9 files changed

+188-157Lines changed: 188 additions & 157 deletions

File tree

Expand file treeCollapse file tree
Open diff view settings
Filter options
Expand file treeCollapse file tree
Open diff view settings
Collapse file

‎algorithm/category.json‎

Copy file name to clipboardExpand all lines: algorithm/category.json
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@
7070
},
7171
"sandbox": {
7272
"list": {
73-
"2DMatrix": "2D Matrix"
73+
"create_mode": "Create Mode"
7474
},
7575
"name": "Sandbox"
7676
},
Collapse file

‎algorithm/sandbox/2DMatrix/desc.json‎

Copy file name to clipboardExpand all lines: algorithm/sandbox/2DMatrix/desc.json
-8Lines changed: 0 additions & 8 deletions
This file was deleted.
Collapse file
+8Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"create_mode": "Words have to go here",
3+
"References": [
4+
],
5+
"files": {
6+
"normal": "Create Mode"
7+
}
8+
}
Collapse file
File renamed without changes.
Collapse file
File renamed without changes.
Collapse file

‎js/create/array2d.js‎

Copy file name to clipboard
+122Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
'use strict';
2+
3+
const modules = require('../module');
4+
const util = require('./util');
5+
6+
const getNumRows = () => {
7+
var row_field = document.getElementById('numRows');
8+
return row_field.value;
9+
}
10+
11+
const getNumColumns = () => {
12+
var column_field = document.getElementById('numColumns');
13+
return column_field.value;
14+
}
15+
16+
const fauxData = (r, c) => {
17+
var arr = new Array(r);
18+
for (var i = 0; i < c; i++) {
19+
arr[i] = new Array(c);
20+
}
21+
22+
for (var i = 0; i < r; i++) {
23+
for(var j = 0; j < c; j++){
24+
arr[i][j] = 0;
25+
}
26+
}
27+
return arr;
28+
}
29+
30+
const tableToInputFields = () => {
31+
var table = document.querySelector('.mtbl-table');
32+
33+
var numRows = table.childNodes.length;
34+
var numColumns = table.childNodes[0].childNodes.length;
35+
36+
for(var i = 0; i < numRows; i++){
37+
for(var j = 0; j < numColumns; j++){
38+
var elem = document.createElement('input');
39+
elem.type = 'Number';
40+
elem.value = Math.floor(Math.random() * 10 + 1);
41+
elem.classList.add('mtbl-col','inputField');
42+
table.childNodes[i].childNodes[j].innerHTML = '';
43+
table.childNodes[i].childNodes[j].appendChild(elem);
44+
}
45+
}
46+
}
47+
48+
const generateJS = (logger) => {
49+
logger.clear();
50+
var table = document.querySelector('.mtbl-table');
51+
52+
var numRows = table.childNodes.length;
53+
var numColumns = table.childNodes[0].childNodes.length;
54+
55+
logger.print('Copy and paste this code in your data.js file!');
56+
logger.print('');
57+
58+
logger.print('let myTable = [');
59+
60+
var line = '';
61+
var i;
62+
var j;
63+
var comma = ',';
64+
for(i = 0; i < numRows; i++){
65+
line = '[';
66+
for(j = 0; j < numColumns-1; j++){
67+
line += table.childNodes[i].childNodes[j].childNodes[0].value + ',';
68+
}
69+
if(i === numRows - 1){comma = '';}
70+
line += table.childNodes[i].childNodes[j++].childNodes[0].value + ']' + comma;
71+
logger.print(line);
72+
}
73+
logger.print(']');
74+
75+
76+
logger.print("let myTableTracer = new Array2DTracer ('"+util.getTracerName()+"')");
77+
logger.print('myTableTracer._setData (myTable)');
78+
}
79+
80+
const mousescroll = (e) =>{
81+
var colmElem = document.querySelector('.mtbl-col');
82+
var delta = (e.wheelDelta !== undefined && e.wheelDelta) ||
83+
(e.detail !== undefined && -e.detail);
84+
85+
var inputFields = document.getElementsByClassName("inputField");
86+
for (var i = 0; i < inputFields.length; i++) {
87+
inputFields[i].style.width = (parseFloat(colmElem.style.fontSize) * 2.5) + "px";
88+
}
89+
90+
}
91+
92+
const setup = () => {
93+
var button_2DMatrix = document.getElementById("button-2DMatrix");
94+
var logger;
95+
var arr2DTracer;
96+
button_2DMatrix.addEventListener('click',function(){
97+
util.clearModules();
98+
arr2DTracer = new modules.Array2DTracer();
99+
var arrElem = document.querySelector('.module_wrapper');
100+
arrElem.addEventListener("mousewheel", mousescroll, false);
101+
arrElem.addEventListener("DOMMouseScroll", mousescroll, false);
102+
logger = new modules.LogTracer('Generated Javascript');
103+
104+
var numRows = getNumRows();
105+
var numColumns = getNumColumns();
106+
var data = fauxData(numRows, numColumns);
107+
108+
arr2DTracer.setData(data);
109+
tableToInputFields();
110+
util.positionModules();
111+
arr2DTracer.refresh();
112+
},false);
113+
var button_JS = document.getElementById('button-generateJS');
114+
button_JS.addEventListener('click',function(){
115+
generateJS(logger);
116+
util.enabledHightlighting();
117+
},false);
118+
}
119+
120+
module.exports = {
121+
setup
122+
};
Collapse file

‎js/create/index.js‎

Copy file name to clipboard
+4-147Lines changed: 4 additions & 147 deletions
Original file line numberDiff line numberDiff line change
@@ -1,156 +1,13 @@
11
'use strict';
22

33
const modules = require('../module');
4+
const array2d = require('./array2d');
45

5-
const getNumRows = () => {
6-
var row_field = document.getElementById("numRows");
7-
return row_field.value;
8-
};
9-
10-
const getNumColumns = () => {
11-
var column_field = document.getElementById("numColumns");
12-
return column_field.value;
13-
};
14-
15-
const getTracerName = () =>{
16-
return document.getElementById("tracerName").value;
17-
}
18-
19-
const fauxData = (r, c) => {
20-
var arr = new Array(r);
21-
for (var i = 0; i < c; i++) {
22-
arr[i] = new Array(c);
23-
}
24-
25-
for (var i = 0; i < r; i++) {
26-
for(var j = 0; j < c; j++){
27-
arr[i][j] = 0;
28-
}
29-
}
30-
return arr;
31-
};
32-
33-
const makeInputFields = () =>{
34-
35-
var table = document.querySelector('.mtbl-table');
36-
37-
var numRows = table.childNodes.length;
38-
var numColumns = table.childNodes[0].childNodes.length;
39-
40-
for(var i = 0; i < numRows; i++){
41-
for(var j = 0; j < numColumns; j++){
42-
var elem = document.createElement('input');
43-
elem.type = 'Number';
44-
elem.value = 1;
45-
elem.classList.add('mtbl-col','inputField');
46-
table.childNodes[i].childNodes[j].innerHTML = '';
47-
table.childNodes[i].childNodes[j].appendChild(elem);
48-
}
49-
}
50-
51-
};
52-
53-
const generateJS = (logger) =>{
54-
logger.clear();
55-
var table = document.querySelector('.mtbl-table');
56-
57-
var numRows = table.childNodes.length;
58-
var numColumns = table.childNodes[0].childNodes.length;
59-
60-
logger.print('Copy and paste this code in your data.js file!');
61-
logger.print('');
62-
63-
logger.print('let myTable = [');
64-
65-
var line = '';
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++){
72-
line += table.childNodes[i].childNodes[j].childNodes[0].value + ',';
73-
}
74-
if(i === numRows - 1){comma = '';}
75-
line += table.childNodes[i].childNodes[j++].childNodes[0].value + ']' + comma;
76-
logger.print(line);
77-
}
78-
logger.print(']');
79-
80-
81-
logger.print("let myTableTracer = new Array2DTracer ('"+getTracerName()+"')");
82-
logger.print('myTableTracer._setData (myTable)');
83-
84-
};
85-
86-
const positionModules = () =>{
87-
var elems = document.getElementsByClassName('module_wrapper');
88-
if(elems <= 0) return;
89-
90-
var n = elems.length;
91-
var spacing = (100/n);
92-
93-
for (var i = 0; i < n; i++) {
94-
if( i === 0){
95-
elems[i].style.bottom = (spacing * (n-1)) + '%';
96-
}else if(i === n - 1){
97-
elems[i].style.top = (spacing * i) + '%';
98-
}else{
99-
elems[i].style.top = (spacing * i) + '%';
100-
elems[i].style.bottom = (spacing * i) + '%';
101-
}
102-
}
103-
}
104-
105-
const clearModules = () =>{
106-
var elems = document.getElementsByClassName('module_wrapper');
107-
if(elems.length > 0){
108-
var parent = elems[0].parentElement;
109-
var numChild = parent.childNodes.length;
110-
for(var i = 0; i < numChild; i++){
111-
parent.removeChild(parent.firstChild);
112-
}
113-
}
114-
}
115-
116-
const enabledHightlighting = () =>{
117-
var elems = document.getElementsByClassName('module_wrapper');
118-
var logger = elems[1];
119-
var wrapper = logger.childNodes[1];
120-
console.log(elems);
121-
console.log(wrapper);
122-
for (var i = 0; i < wrapper.childNodes.length; i++) {
123-
wrapper.childNodes[i].style["-webkit-user-select"] = "all";
124-
}
125-
}
126-
127-
const setupButtons = () => {
128-
129-
var button_2DMatrix = document.getElementById("button-2DMatrix");
130-
var logger;
131-
var arr2DTracer;
132-
button_2DMatrix.addEventListener('click',function(){
133-
clearModules();
134-
arr2DTracer = new modules.Array2DTracer();
135-
logger = new modules.LogTracer('Generated Javascript');
136-
137-
var numRows = getNumRows();
138-
var numColumns = getNumColumns();
139-
var data = fauxData(numRows, numColumns);
140-
141-
arr2DTracer.setData(data);
142-
makeInputFields();
143-
positionModules();
144-
arr2DTracer.refresh();
145-
},false);
146-
var button_JS = document.getElementById('button-generateJS');
147-
button_JS.addEventListener('click',function(){
148-
generateJS(logger);
149-
enabledHightlighting();
150-
},false);
1516

7+
const init = () => {
8+
array2d.setup();
1529
};
15310

15411
module.exports = {
155-
setupButtons
12+
init,
15613
};
Collapse file

‎js/create/util.js‎

Copy file name to clipboard
+52Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
'use strict';
2+
3+
4+
const getTracerName = () =>{
5+
return document.getElementById("tracerName").value;
6+
}
7+
8+
const positionModules = () =>{
9+
var elems = document.getElementsByClassName('module_wrapper');
10+
if(elems <= 0) return;
11+
12+
var n = elems.length;
13+
var spacing = (100/n);
14+
15+
for (var i = 0; i < n; i++) {
16+
if( i === 0){
17+
elems[i].style.bottom = (spacing * (n-1)) + '%';
18+
}else if(i === n - 1){
19+
elems[i].style.top = (spacing * i) + '%';
20+
}else{
21+
elems[i].style.top = (spacing * i) + '%';
22+
elems[i].style.bottom = (spacing * i) + '%';
23+
}
24+
}
25+
}
26+
27+
const clearModules = () =>{
28+
var elems = document.getElementsByClassName('module_wrapper');
29+
if(elems.length > 0){
30+
var parent = elems[0].parentElement;
31+
var numChild = parent.childNodes.length;
32+
for(var i = 0; i < numChild; i++){
33+
parent.removeChild(parent.firstChild);
34+
}
35+
}
36+
}
37+
38+
const enabledHightlighting = () =>{
39+
var elems = document.getElementsByClassName('module_wrapper');
40+
var logger = elems[1];
41+
var wrapper = logger.childNodes[1];
42+
for (var i = 0; i < wrapper.childNodes.length; i++) {
43+
wrapper.childNodes[i].style["-webkit-user-select"] = "all";
44+
}
45+
}
46+
47+
module.exports = {
48+
enabledHightlighting,
49+
positionModules,
50+
clearModules,
51+
getTracerName
52+
};
Collapse file

‎js/index.js‎

Copy file name to clipboardExpand all lines: js/index.js
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ $(() => {
7373
DOM.showFirstAlgorithm();
7474
}
7575

76-
Sandbox.setupButtons();
76+
Sandbox.init();
7777

7878
});
7979

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.