~aleteoryx/muditaos

ref: eda92600a7df852e18bdb44388966248a4af3c77 muditaos/module-gui/gui/widgets/status-bar/Time.cpp -rw-r--r-- 911 bytes
eda92600 — Maciej Gibowicz [BH-2095] Add quote interval setting 10 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Copyright (c) 2017-2024, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/blob/master/LICENSE.md

#include "Time.hpp"
#include "Style.hpp"
#include <time/time_conversion_factory.hpp>

#include <ctime>
namespace gui::status_bar
{
    Time::Time(Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h)
        : StatusBarWidgetBase(parent, x, y, w, h), time{}
    {
        setEdges(RectangleEdge::None);
        setFont(style::status_bar::time::font);
        setAlignment(gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Bottom));
        using namespace utils::time;
        time = TimestampFactory().createTimestamp(TimestampType::Clock, std::time(nullptr));
        update();
    }

    void Time::update()
    {
        time->set_time(std::time(nullptr));
        setText(time->str());
    }
} // namespace gui::status_bar