1
0
Fork 0
BangleApps/apps/gbtwist/app.js

97 lines
1.9 KiB
JavaScript

// just a watch, to fill an empty screen
function drwClock() {
var d = new Date();
var h = d.getHours(), m = d.getMinutes();
var time = ("0"+h).substr(-2) + ":" + ("0"+m).substr(-2);
g.reset();
g.setFont('6x8',7);
g.setFontAlign(-1,-1);
g.drawString(time,20,80);
}
g.clear();
drwClock();
Bangle.loadWidgets();
Bangle.drawWidgets();
/////////////////////////////////////////////////////////////
// control music by twist/buttons
var counter = 0; //stores your counted your twists
var tstate = false; //are you ready to count the twists?
function playx() {
Bluetooth.println(JSON.stringify({t:"music", n:"play"}));
}
function volup() {
Bluetooth.println(JSON.stringify({t:"music", n:"volumeup"}));
}
function voldn() {
Bluetooth.println(JSON.stringify({t:"music", n:"volumedown"}));
}
function sendCmd() {
print (counter);
Bangle.beep(200,3000);
if (tstate==false && counter>0){
do {playx(); counter--;}
while (counter >= 1);
}
}
function twistctrl() {
if (tstate==false){
tstate=true;
setTimeout('tstate=false',4000);
setTimeout(sendCmd,4100);
Bangle.beep(200,3000);
}
else{
g.clearRect(10,140,230,200);
if (tstate==true){
if (counter < 5){
counter++;
drwCmd();
Bangle.buzz(100,2);
}
else {
counter = 0;
Bangle.buzz(400);
}
}
}
}
function drwCmd() {
g.setFont('6x8',6);
g.setColor(0.3,1,0.3);
g.clearRect(10,140,230,200);
switch (counter){
case 1:
g.drawString('play',50,150);
break;
case 2:
g.drawString('next',50,150);
break;
case 3:
g.drawString('prev',50,150);
break;
case 4:
g.drawString('nx f',50,150);
break;
case 5:
g.drawString('pr f',50,150);
break;
case 0:
g.clearRect(10,140,230,200);
break;
}
}
setWatch(volup,BTN1,{repeat:true});
setWatch(voldn,BTN3,{repeat:true});
Bangle.on('twist',twistctrl);
setWatch(Bangle.showLauncher, BTN2, {repeat:false,edge:"falling"});