~aleteoryx/muditaos

muditaos/module-gui/gui/widgets/Icon.cpp -rw-r--r-- 1.1 KiB
a405cad6Aleteoryx trim readme 6 days 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
28
29
30
31
32
33
34
// 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 "Icon.hpp"
#include <Style.hpp>
#include <Font.hpp>

using namespace gui;

Icon::Icon(Item *parent,
           const uint32_t &x,
           const uint32_t &y,
           const uint32_t &w,
           const uint32_t &h,
           const UTF8 &imageName,
           const UTF8 &str,
           ImageTypeSpecifier specifier)
    : VBox(parent, x, y, w, h)
{
    setEdges(RectangleEdge::None);
    setAlignment(Alignment(Alignment::Horizontal::Center, Alignment::Vertical::Center));

    image = new Image(this, imageName, specifier);
    image->setMargins(Margins(0, icon::image_top_margin, 0, icon::image_bottom_margin));

    text = new Text(this, 0, 0, 0, 0);
    text->setMaximumSize(w, h);
    text->setTextType(TextType::MultiLine);
    text->setEditMode(EditMode::Browse);
    text->setEdges(RectangleEdge::None);
    text->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
    text->setFont(style::window::font::medium);
    text->setRichText(str);
}