/elec/propeller-clock

To get this branch, use:
bzr branch http://bzr.ed.am/elec/propeller-clock

« back to all changes in this revision

Viewing changes to src/propeller-clock.cc

  • Committer: Tim Marston
  • Date: 2012-05-09 20:53:26 UTC
  • Revision ID: tim@ed.am-20120509205326-23nmnh3i05hotlro
moved modes to a subdirectory

Show diffs side-by-side

added added

removed removed

79
79
#include "button.h"
80
80
#include "time.h"
81
81
#include "Arduino.h"
82
 
#include "analogue_clock.h"
83
 
#include "digital_clock.h"
84
 
#include "test_pattern.h"
85
 
#include "settings_mode.h"
 
82
#include "modes/analogue_clock.h"
 
83
#include "modes/digital_clock.h"
 
84
#include "modes/test_pattern.h"
 
85
#include "modes/settings_mode.h"
86
86
#include "text.h"
87
87
#include "text_renderer.h"
88
88
#include "common.h"
126
126
// activate the current minor mode
127
127
void activate_minor_mode()
128
128
{
 
129
        // reset text
 
130
        Text::reset();
 
131
        leds_off();
 
132
 
 
133
        // give the mode a chance to init
129
134
        switch( _minor_mode ) {
130
135
        case ANALOGUE_CLOCK_IDX: analogue_clock_activate(); break;
131
136
        case DIGITAL_CLOCK_IDX: digital_clock_activate(); break;
132
137
        }
133
 
 
134
 
        // reset text
135
 
        Text::reset();
136
 
        leds_off();
137
138
}
138
139
 
139
140
 
140
141
// activate major mode
141
142
void activate_major_mode()
142
143
{
 
144
        // reset text
 
145
        Text::reset();
 
146
        leds_off();
 
147
 
 
148
        // reset buttons
 
149
        _button.set_press_mode( _major_mode != SETTINGS_MODE_IDX );
 
150
 
 
151
        // give the mode a chance to init
143
152
        switch( _major_mode ) {
144
153
        case MAIN_MODE_IDX: activate_minor_mode(); break;
145
154
        case SETTINGS_MODE_IDX: settings_mode_activate(); break;
146
155
        }
147
 
 
148
 
        // reset text
149
 
        Text::reset();
150
 
        leds_off();
151
156
}
152
157
 
153
158
 
330
335
        // initialise RTC
331
336
        Time::init();
332
337
 
 
338
        // init text renderer
 
339
        TextRenderer::init();
 
340
 
333
341
        // activate the minor mode
334
342
        activate_major_mode();
335
343
}