File: bitmasks.js

package info (click to toggle)
openclonk 7.0-4
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 145,828 kB
  • ctags: 33,094
  • sloc: cpp: 163,891; ansic: 82,846; xml: 29,876; python: 1,203; php: 767; makefile: 138; sh: 77
file content (40 lines) | stat: -rwxr-xr-x 829 bytes parent folder | download | duplicates (7)
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

var cat;

function CheckCharacters(text,allowed) {
  for (var i = 0; i < text.length; ++i) {
    if(allowed.indexOf(text.charAt(i))<0 ) {
      return false;
    }
  }
  return true;
}

function Calc() {
  var input = document.getElementById("input").value*1;
  if(CheckCharacters(input,"0123456789")) cat=input;

  for(var i=0;i<BIT_COUNT;++i)
    Mark(i);
}

function Mark(bit) {
  if((1<<bit) & cat) {
    if(!(bit%2))
      document.getElementById(PREFIX+bit).className="mark";
    else
      document.getElementById(PREFIX+bit).className="darkmark";
  }
  else {
    if(!(bit%2))
      document.getElementById(PREFIX+bit).className="";
    else
      document.getElementById(PREFIX+bit).className="dark";
  }
}

function Switch(bit) {
  cat = cat ^ (1 << bit);
  Mark(bit);
  document.getElementById("input").value = cat;
}