Files
Crosspoint/src/activities/settings/DetectTimezoneActivity.h
T

29 lines
724 B
C++

#pragma once
#include <string>
#include "activities/Activity.h"
class DetectTimezoneActivity final : public Activity {
public:
explicit DetectTimezoneActivity(GfxRenderer& renderer, MappedInputManager& mappedInput)
: Activity("DetectTimezone", renderer, mappedInput) {}
void onEnter() override;
void onExit() override;
void loop() override;
void render(RenderLock&&) override;
private:
enum State { CONNECTING, DETECTING, SUCCESS, FAILED };
State state = CONNECTING;
std::string detectedTimezone;
bool dstKnown = false;
bool dstActive = false;
void onWifiSelectionComplete(bool success);
void onWifiSelectionCancelled();
void performDetect();
const char* dstStatusLabel() const;
};