2
* settings_major_mode.h
4
* Copyright (C) 2011 Tim Marston <tim@ed.am> and Dan Marston.
6
* This file is part of propeller-clock (hereafter referred to as "this
7
* program"). See http://ed.am/dev/software/arduino/propeller-clock for more
10
* This program is free software: you can redistribute it and/or modify
11
* it under the terms of the GNU Lesser General Public License as published
12
* by the Free Software Foundation, either version 3 of the License, or
13
* (at your option) any later version.
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU Lesser General Public License for more details.
20
* You should have received a copy of the GNU Lesser General Public License
21
* along with this program. If not, see <http://www.gnu.org/licenses/>.
23
#ifndef _SETTINGS_MAJOR_MODE_H_
24
#define _SETTINGS_MAJOR_MODE_H_
27
#include "major_mode.h"
31
class SettingsMajorMode : public MajorMode
36
* Constructor which provides the button.
38
SettingsMajorMode( Button &button );
41
* Called once per segment to draw a column of LEDs.
43
* @param segment the segment number to draw
45
void draw( int segment );
48
* Called at the start of a "frame", before any segments are drawn.
53
* Called when the mode is becoming active.
58
* Called when the mode is becoming inactive.
63
* Called when the button has been pressed.
68
* Called when the button has been long-pressed.
75
* Set up message buffers.
77
void reset_messages();
79
/** item we're setting */
82
/** part of item that we're setting */
85
/** is there an interim press and does it need actioning? */
93
#endif //_SETTINGS_MAJOR_MODE_H_