示例#1
0
/// Handler for button 1: "SET"
void button1_handler(uint8_t on) {
    static uint8_t skip = 0;
    
    if (on) {
        blinkmode_set(blinkmode_get() | 0200);  // don't blink while button is being depressed

        if (skip > 0) {
            skip--;
            return;
        }
        
        switch (set_state) {
            case SET_NONE:
                mode_next();
                skip = 1;
                break;
                
            case SET_HOUR:
                set_blinkhandler(button1_handler);

                time_nexthour();

                fadeto(time_get_hhmm());
                break;
                
            case SET_MINUTE:
                set_blinkhandler(button1_handler);
                
                time_nextminute();

                fadeto(time_get_hhmm());
                break;
                
            case SET_YEAR:
                set_blinkhandler(button1_handler);
                break;     
                       
            case SET_MONTH:
                set_blinkhandler(button1_handler);
                break;
            
            case SET_DAY:
                set_blinkhandler(button1_handler);
                break;
        }
    } else {
        blinkmode_set(blinkmode_get() & 0177);  // re-enable blinking
        cli(); blinkhandler = NULL; skip = 0; sei();
    }
}
// sets whether to use the "dark" (lights off) or not
void GsPalette::setdark(bool dark)
{
	m_dark = dark;

    if(dark)
        gVideoDriver.setLightIntensity(0.1f);
    else
        gVideoDriver.setLightIntensity(1.0f);

	fadeto( m_dark ? m_darkness : 0, FADE_SPEED_SLOW);
}
示例#3
0
/// Handler for button 2, "+"
void button2_handler(uint8_t on) {
    if (on) {
        switch (set_state) {
            case SET_NONE:
                switch (mode_get()) {
                case MMSS:
                    time_set(-1,-1,0);
                    fadeto(time_get_mmss());
                    break;
                case HHMM:
                    set_state = SET_HOUR;
                    blinkmode_set(BLINK_HH);
                    fade_set(FADE_OFF);
                    dotmode_set(DOT_ON);
                    
                    fadeto(time_get_hhmm());
                    break;
                default:
                    break;
                }
                break;
            case SET_HOUR:
                set_state = SET_MINUTE;
                blinkmode_set(BLINK_MM);
                break;
            case SET_MINUTE:
            default:
                set_state = SET_NONE;
                blinkmode_set(BLINK_NONE);
                fade_set(FADE_SLOW);
                dotmode_set(DOT_BLINK);
                break;
        }
    } else {
        cli(); blinkhandler = NULL; sei();
    }
}
示例#4
0
// sets whether to use the "dark" (lights off) or not
void CPalette::setdark(bool dark)
{
	m_dark = dark;
	setFadeColour(0);
	fadeto( m_dark ? m_darkness : 0, FADE_SPEED_SLOW);
}