//液晶计时器
import fonts.fontAwesome;
import win.ui;
/*DSG{{*/
var winform = win.form(text="液晶计时器";left=-20;top=50;right=327;bottom=362;bgcolor=16777215;border="none";max=false)
winform.add(
bk={cls="bk";left=0;top=0;right=349;bottom=27;bgcolor=10789024;z=9};
btnClock={cls="plus";text="启动时钟";left=68;top=163;right=180;bottom=195;bgcolor=13234329;border={radius=6};notify=1;z=2};
btnCountDownTimer={cls="plus";text="启动倒计时";left=202;top=117;right=314;bottom=149;bgcolor=13234329;border={radius=6};notify=1;z=3};
btnPause={cls="plus";text='\uF04C';left=188;top=214;right=220;bottom=245;border={radius=6};color=2368548;font=LOGFONT(name='FontAwesome';charset=0);notify=1;z=7};
btnStop={cls="plus";text='\uF04D';left=243;top=214;right=275;bottom=245;border={radius=6};color=2368548;font=LOGFONT(name='FontAwesome';charset=0);notify=1;z=8};
btnTimer={cls="plus";text="启动计时器";left=200;top=163;right=312;bottom=195;bgcolor=13234329;border={radius=6};notify=1;z=4};
datetimepick={cls="datetimepick";left=35;top=121;right=190;bottom=147;edge=1;transparent=1;updown=1;z=5};
lbTip={cls="static";text="双击时间切换悬浮显示模式";left=35;top=264;right=322;bottom=288;transparent=1;z=6};
plusClock={cls="plus";left=60;top=33;right=279;bottom=93;notify=1;z=1}
)
/*}}*/

var style = {
	icon = {
		background={
			active=0xFF0078B0;
			hover=0xFF00AEFF;
			default=0;
		}; 
	};
	button = {
		background={
			active=0xFF0078B0;
			hover=0xFF00AEFF; 
			disabled=0xFFCCCCCC;
		}; 
	}
}
	
winform.btnStop.skin(style.icon) 
winform.btnPause.skin(style.icon)
winform.btnCountDownTimer.skin(style.button) 
winform.btnClock.skin(style.button)
winform.btnTimer.skin(style.button)

import win.ui.lcdClock;
var lcdClock = win.ui.lcdClock(winform.plusClock);
if(!lcdClock.setImageAttributes) error("请先更新 win.ui.lcdClock 扩展库",2)
lcdClock.startClock();

winform.onMinimize = function(lParam){
	winform.plusClock.orphanWindow(true)
	win.setTopmost(winform.plusClock.hwnd)
	winform.modifyStyleEx(0x40000/*_WS_EX_APPWINDOW*/,0x80/*_WS_EX_TOOLWINDOW*/);
	winform.transparent(0)
	winform.plusClock.floating = true;
	return true;
}

winform.plusClock.onMouseDown = function(wParam,lParam){
	if( winform.plusClock.floating ) {
		::User32.SendMessage(owner.hwnd,0xA1/*_WM_NCLBUTTONDOWN*/,2/*_HTCAPTION*/,0);
	}	
	else {
		winform.hitCaption();
	}
}

winform.plusClock.onMouseDoubuleClick = function(wParam,lParam){
    if( !winform.plusClock.floating ) {
        winform.hitMin();
    	return;
    }
    
	winform.plusClock.floating = false;
	
	winform.transparent(false)
	win.setTopmost(winform.plusClock.hwnd,false)
	winform.modifyStyleEx(0x80/*_WS_EX_TOOLWINDOW*/,0x40000/*_WS_EX_APPWINDOW*/);
	winform.resize();
	winform.datetimepick.redraw();
}

winform.btnClock.oncommand = function(id,event){
	lcdClock.startClock()   
	winform.btnClock.disabled = true;
	winform.btnCountDownTimer.disabled = false;
	winform.btnTimer.disabled = false;
}

import fsys.media;
winform.btnCountDownTimer.oncommand = function(id,event){
    winform.btnClock.disabled = false;
	winform.btnCountDownTimer.disabled = true;
	winform.btnTimer.disabled = false
	
	lcdClock.startCountDownTimer(,function(){
		winform.btnCountDownTimer.disabled = false;
		fsys.media.playSound("C:\Windows\media\Ring05.wav")
	})
}

winform.btnTimer.oncommand = function(id,event){
	lcdClock.startTimer();
	
	winform.btnClock.disabled = false;
	winform.btnCountDownTimer.disabled = false;
	winform.btnTimer.disabled = true;
}

winform.btnPause.oncommand = function(id,event){
	lcdClock.pause();
	
	winform.btnClock.disabled = false;
	winform.btnCountDownTimer.disabled = false;
	winform.btnTimer.disabled = false;
}

winform.datetimepick.setFormat("' 设置倒计时:'HH':'mm':'ss");
winform.datetimepick.time = time.iso8601(0);
winform.datetimepick.onnotify = function(id,code,ptr){
	if(code == 0xFFFFFD09/*_DTN_DATETIMECHANGE*/){ 
		lcdClock.resetCountDownTimer( winform.datetimepick.time )
		winform.btnClock.disabled = false;
		winform.btnCountDownTimer.disabled = false;
		winform.btnTimer.disabled = false
	}
}

winform.btnStop.oncommand = function(id,event){
	lcdClock.stop();
	
	winform.btnClock.disabled = false;
	winform.btnCountDownTimer.disabled = false;
	winform.btnTimer.disabled = false;
}

import win.ui.simpleWindow2;
var simpleWindow2 = win.ui.simpleWindow2(winform);

import win.ui.tooltip; 
var tooltipCtrl = win.ui.tooltip( winform );//在窗口上创建tooltip控件 
tooltipCtrl.addTool(winform.btnStop,"停止计时" )
tooltipCtrl.addTool(winform.btnPause,"暂停计时" ) 
tooltipCtrl.addTool(winform.btnClock,"显示时钟，不会清零计时器" ) 
tooltipCtrl.addTool(simpleWindow2.titlebarMin,"点这里隐藏窗口并悬浮显示计时器" )  
tooltipCtrl.addTool(winform.plusClock,"鼠标左键按住可以拖动,双击可以切换显示模式" ) 

winform.show() 
win.loopMessage();