M module-apps/apps-common/widgets/ProgressTimerWithBarGraphAndCounter.cpp => module-apps/apps-common/widgets/ProgressTimerWithBarGraphAndCounter.cpp +3 -3
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "ProgressTimerWithBarGraphAndCounter.hpp"
@@ 24,8 24,8 @@ namespace app
void ProgressTimerWithBarGraphAndCounter::updateText()
{
const auto secondsRemaining = duration - std::chrono::duration_cast<std::chrono::seconds>(elapsed);
- timeWidget->setFirst(secondsRemaining.count() / 60);
- timeWidget->setSecond(secondsRemaining.count() % 60);
+ timeWidget->setMinutesBox(secondsRemaining.count() / 60);
+ timeWidget->setSecondsBox(secondsRemaining.count() % 60);
}
void ProgressTimerWithBarGraphAndCounter::updateProgress()
M module-apps/apps-common/widgets/TimeFixedWidget.cpp => module-apps/apps-common/widgets/TimeFixedWidget.cpp +141 -108
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "TimeFixedWidget.hpp"
@@ 13,8 13,9 @@
namespace
{
constexpr auto colonSign = ":";
+ constexpr auto minusSign = "-";
- std::uint32_t getWidestDigitWidth(const gui::RawFont *const font)
+ constexpr std::uint32_t getWidestDigitWidth(const gui::RawFont *const font)
{
std::uint32_t widestWidth = 0;
for (auto i = 0; i < 10; i++) {
@@ 31,130 32,162 @@ namespace gui
{
namespace date_and_time = style::window::date_and_time;
- TimeFixedWidget::TimeFixedWidget(
- Item *parent, const uint32_t &x, const uint32_t &y, const uint32_t &w, const uint32_t &h, const bool minus)
+ TimeFixedWidget::TimeFixedWidget(Item *parent,
+ const std::uint32_t &x,
+ const std::uint32_t &y,
+ const std::uint32_t &w,
+ const std::uint32_t &h,
+ const bool minus)
: Rect(parent, x, y, w, h), minusVisible{minus}
{
setEdges(gui::RectangleEdge::None);
- hBox = new gui::HBox(this, 0, 0, w, h);
- hBox->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
- hBox->setEdges(gui::RectangleEdge::None);
- hBox->activeItem = false;
-
- firstHBox = new gui::HBox(hBox, 0, 0, 0, 0);
- firstHBox->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Right, gui::Alignment::Vertical::Center));
- firstHBox->setEdges(gui::RectangleEdge::None);
-
- colonText = new gui::Label(hBox, 0, 0, 0, 0);
- colonText->setEdges(gui::RectangleEdge::None);
- colonText->setAlignment(Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
- colonText->setText(colonSign);
- colonText->activeItem = false;
-
- secondHBox = new gui::HBox(hBox, 0, 0, 0, 0);
- secondHBox->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Left, gui::Alignment::Vertical::Center));
- secondHBox->setEdges(gui::RectangleEdge::None);
-
- minusText = new gui::Label(firstHBox, 0, 0, 0, 0);
- minusText->setEdges(gui::RectangleEdge::None);
- minusText->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
- setMinus(minus);
-
- firstPrimoText = new gui::Label(firstHBox, 0, 0, 0, 0);
- firstPrimoText->setEdges(gui::RectangleEdge::None);
- firstPrimoText->setAlignment(
- gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
- firstSecundoText = new gui::Label(firstHBox, 0, 0, 0, 0);
- firstSecundoText->setEdges(gui::RectangleEdge::None);
- firstSecundoText->setAlignment(
- gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
-
- secondPrimoText = new gui::Label(secondHBox, 0, 0, 0, 0);
- secondPrimoText->setEdges(gui::RectangleEdge::None);
- secondPrimoText->setAlignment(
- gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
- secondSecundoText = new gui::Label(secondHBox, 0, 0, 0, 0);
- secondSecundoText->setEdges(gui::RectangleEdge::None);
- secondSecundoText->setAlignment(
- gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
-
- hBox->resizeItems();
- }
+ mainBox = new gui::HBox(this, 0, 0, w, h);
+ mainBox->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
+ mainBox->setEdges(gui::RectangleEdge::None);
+ mainBox->activeItem = false;
- void TimeFixedWidget::setFirst(const uint32_t first)
- {
- const auto decimal = first / 10;
- if (decimal != 0u) {
- const auto widestDigit = getWidestDigitWidth(firstPrimoText->getTextFormat().getFont());
- firstPrimoText->setSize(widestDigit, hBox->widgetArea.h);
- firstPrimoText->setText(std::to_string(first / 10));
- firstSecundoText->setText(std::to_string(first % 10));
+ leftBox.box = new gui::HBox(mainBox, 0, 0, 0, 0);
+ leftBox.box->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Right, gui::Alignment::Vertical::Center));
+ leftBox.box->setEdges(gui::RectangleEdge::None);
+
+ attachLabelToBox(colon, mainBox);
+ setColon();
+
+ rightBox.box = new gui::HBox(mainBox, 0, 0, 0, 0);
+ rightBox.box->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Left, gui::Alignment::Vertical::Center));
+ rightBox.box->setEdges(gui::RectangleEdge::None);
+
+ attachLabelToBox(leftBox.minus, leftBox.box);
+ setMinus();
+
+ for (auto &digit : leftBox.digits) {
+ attachLabelToBox(digit, leftBox.box);
}
- else {
- firstPrimoText->setText("");
- firstPrimoText->setSize(0, 0);
- firstSecundoText->setText(std::to_string(first));
+
+ for (auto &digit : rightBox.digits) {
+ attachLabelToBox(digit, rightBox.box);
}
- firstHBox->resizeItems();
+
+ mainBox->resizeItems();
}
- void TimeFixedWidget::setSecond(const uint32_t second)
+ void TimeFixedWidget::attachLabelToBox(Label *&label, HBox *&box) const
{
- const auto decimal = second / 10;
- if (decimal != 0u) {
- secondPrimoText->setText(std::to_string(second / 10));
- secondSecundoText->setText(std::to_string(second % 10));
- }
- else {
- secondPrimoText->setText("0");
- secondSecundoText->setText(std::to_string(second));
- }
+ label = new gui::Label(box, 0, 0, 0, 0);
+ label->setEdges(gui::RectangleEdge::None);
+ label->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Center));
+ }
+
+ void TimeFixedWidget::setMinus() const
+ {
+ leftBox.minus->setText(minusVisible ? minusSign : "");
+ }
+
+ void TimeFixedWidget::setColon() const
+ {
+ colon->setText(colonSign);
+ colon->activeItem = false;
+ }
+
+ void TimeFixedWidget::setMinutesBox(std::uint32_t minutes)
+ {
+ auto rangeGuard = 1000;
+ minutes %= rangeGuard;
+
+ setDigits(std::to_string(minutes), leftBox.digits);
+
+ leftBox.box->resizeItems();
+ }
+
+ void TimeFixedWidget::setSecondsBox(std::uint32_t seconds)
+ {
+ auto rangeGuard = 100;
+ seconds %= rangeGuard;
+
+ bool shouldBeDisplayedAsOneDigit = seconds < 10;
+ std::string text = shouldBeDisplayedAsOneDigit ? "0" + std::to_string(seconds) : std::to_string(seconds);
+
+ setDigits(std::move(text), rightBox.digits);
+ }
+
+ const TimeFixedWidget::LeftBox &TimeFixedWidget::getLeftBox()
+ {
+ return leftBox;
+ }
+
+ const TimeFixedWidget::RightBox &TimeFixedWidget::getRightBox()
+ {
+ return rightBox;
}
- void TimeFixedWidget::setMinus(const bool minus)
+ template <size_t N> void TimeFixedWidget::setDigits(std::string &&text, const DigitsContainer<N> &digits) const
{
- minusVisible = minus;
- minusText->setText(minus ? "-" : "");
- if (minusVisible) {
- const auto widestDigit = getWidestDigitWidth(minusText->getTextFormat().getFont());
- minusText->setSize(widestDigit, hBox->widgetArea.h);
+ const auto dimensions = getDimensions();
+
+ std::for_each(
+ std::crbegin(digits), std::crend(digits), [text = std::move(text), &dimensions](Label *label) mutable {
+ if (text.empty()) {
+ label->setText("");
+ label->setSize(0, 0);
+ }
+ else {
+ label->setText(std::string{text.back()});
+ label->setSize(dimensions.digitMaxWidth, dimensions.mainBoxHeight);
+ text.pop_back();
+ }
+ });
+ }
+
+ void TimeFixedWidget::setFontAndDimensions(const UTF8 &fontName) const
+ {
+ leftBox.minus->setFont(fontName);
+ for (auto &digit : leftBox.digits) {
+ digit->setFont(fontName);
}
- else {
- minusText->setSize(0, 0);
+
+ colon->setFont(fontName);
+
+ for (auto &digit : rightBox.digits) {
+ digit->setFont(fontName);
}
- firstHBox->resizeItems();
+
+ setDimensions(getDimensions());
+ mainBox->resizeItems();
}
- void TimeFixedWidget::setFont(const UTF8 &fontName)
+ void TimeFixedWidget::setDimensions(DimensionsParams &¶ms) const
{
- minusText->setFont(fontName);
- firstPrimoText->setFont(fontName);
- firstSecundoText->setFont(fontName);
- colonText->setFont(fontName);
- secondPrimoText->setFont(fontName);
- secondSecundoText->setFont(fontName);
-
- const auto digitMaxWidth = getWidestDigitWidth(minusText->getTextFormat().getFont());
- const auto colonWidth = minusText->getTextFormat().getFont()->getPixelWidth(colonSign);
-
- // Equal size for both boxes surrounding colon
- const auto boxesSize = (hBox->widgetArea.w - colonWidth) / 2;
- const auto height = hBox->widgetArea.h;
-
- firstHBox->setSize(boxesSize, height);
- secondHBox->setSize(boxesSize, height);
- firstPrimoText->setSize(digitMaxWidth, height);
- firstSecundoText->setSize(digitMaxWidth, height);
- colonText->setSize(colonWidth, height);
- secondPrimoText->setSize(digitMaxWidth, height);
- secondSecundoText->setSize(digitMaxWidth, height);
-
- if (minusVisible) {
- minusText->setSize(digitMaxWidth, height);
+
+ leftBox.box->setSize(params.leftBoxWidth, params.mainBoxHeight);
+ rightBox.box->setSize(params.rightBoxWidth, params.mainBoxHeight);
+
+ leftBox.minus->setSize(params.minusWidth, params.mainBoxHeight);
+ for (auto &digit : leftBox.digits) {
+ digit->setSize(params.digitMaxWidth, params.mainBoxHeight);
}
- else {
- minusText->setSize(0, 0);
+
+ colon->setSize(params.colonWidth, params.mainBoxHeight);
+
+ for (auto &digit : rightBox.digits) {
+ digit->setSize(params.digitMaxWidth, params.mainBoxHeight);
}
- hBox->resizeItems();
}
+
+ DimensionsParams TimeFixedWidget::getDimensions() const
+ {
+ DimensionsParams info{};
+
+ info.mainBoxHeight = mainBox->widgetArea.h;
+ info.mainBoxWidth = mainBox->widgetArea.w;
+
+ info.digitMaxWidth = getWidestDigitWidth(leftBox.minus->getTextFormat().getFont());
+ info.colonWidth = leftBox.minus->getTextFormat().getFont()->getPixelWidth(colonSign);
+ info.minusWidth = leftBox.minus->getTextFormat().getFont()->getPixelWidth(minusSign);
+
+ info.leftBoxWidth = (info.digitMaxWidth * leftBox.digits.size()) + info.minusWidth;
+ info.rightBoxWidth = info.mainBoxWidth - info.minusWidth - info.leftBoxWidth;
+
+ return info;
+ }
+
} /* namespace gui */
M module-apps/apps-common/widgets/TimeFixedWidget.hpp => module-apps/apps-common/widgets/TimeFixedWidget.hpp +50 -20
@@ 1,41 1,71 @@
-// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
#include <Text.hpp>
-#include <Text.hpp>
#include <BoxLayout.hpp>
#include "widgets/DateWidget.hpp"
#include <time/FromTillDate.hpp>
namespace gui
{
+ struct DimensionsParams
+ {
+ std::uint32_t mainBoxHeight;
+ std::uint32_t mainBoxWidth;
+ std::uint32_t digitMaxWidth;
+ std::uint32_t colonWidth;
+ std::uint32_t minusWidth;
+ std::uint32_t leftBoxWidth;
+ std::uint32_t rightBoxWidth;
+ };
+
class TimeFixedWidget : public Rect
{
public:
+ template <size_t N> using DigitsContainer = std::array<Label *, N>;
+
+ struct LeftBox
+ {
+ HBox *box = nullptr;
+ Label *minus = nullptr;
+ DigitsContainer<3> digits{nullptr};
+ };
+
+ struct RightBox
+ {
+ HBox *box = nullptr;
+ DigitsContainer<2> digits{nullptr};
+ };
+
TimeFixedWidget(Item *parent,
- const uint32_t &x,
- const uint32_t &y,
- const uint32_t &w,
- const uint32_t &h,
+ const std::uint32_t &x,
+ const std::uint32_t &y,
+ const std::uint32_t &w,
+ const std::uint32_t &h,
const bool minus = false);
- void setFirst(uint32_t first);
- void setSecond(uint32_t second);
- void setMinus(bool minus);
- void setFont(const UTF8 &fontName);
+ void setMinutesBox(std::uint32_t first);
+ void setSecondsBox(std::uint32_t second);
+ void setFontAndDimensions(const UTF8 &fontName) const;
+
+ const LeftBox &getLeftBox();
+ const RightBox &getRightBox();
private:
- bool minusVisible = false;
- HBox *hBox = nullptr;
- HBox *firstHBox = nullptr;
- HBox *secondHBox = nullptr;
- Label *colonText = nullptr;
- Label *firstPrimoText = nullptr;
- Label *firstSecundoText = nullptr;
- Label *secondPrimoText = nullptr;
- Label *secondSecundoText = nullptr;
- Label *minusText = nullptr;
+ void attachLabelToBox(Label *&label, HBox *&box) const;
+ void setMinus() const;
+ void setColon() const;
+ void setDimensions(DimensionsParams &¶ms) const;
+ DimensionsParams getDimensions() const;
+ template <size_t N> void setDigits(std::string &&text, const DigitsContainer<N> &digits) const;
+
+ bool minusVisible = false;
+ HBox *mainBox = nullptr;
+ Label *colon = nullptr;
+
+ LeftBox leftBox;
+ RightBox rightBox;
};
} /* namespace gui */
M module-apps/tests/CMakeLists.txt => module-apps/tests/CMakeLists.txt +21 -1
@@ 10,4 10,24 @@ add_catch2_executable(
module-apps
)
-add_subdirectory(windows)
+add_catch2_executable(
+ NAME
+ windows-management
+ SRCS
+ windows/test-WindowsStack.cpp
+ windows/test-WindowsPopupQueue.cpp
+ windows/test-WindowsPopupFilter.cpp
+ LIBS
+ module-gui
+)
+
+add_gtest_executable(
+ NAME
+ apps-common-widgets
+ SRCS
+ widgets/test-TimeFixedWidget.cpp
+ LIBS
+ apps-common
+ gui-mock
+ USE_FS
+)
A module-apps/tests/widgets/test-TimeFixedWidget.cpp => module-apps/tests/widgets/test-TimeFixedWidget.cpp +102 -0
@@ 0,0 1,102 @@
+// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
+// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
+
+#include <gtest/gtest.h>
+#include <apps-common/widgets/TimeFixedWidget.hpp>
+#include <apps-common/widgets/BellBaseLayout.hpp>
+#include <products/BellHybrid/apps/application-bell-background-sounds/data/BGSoundsStyle.hpp>
+#include <gui/core/FontManager.hpp>
+#include <mock/InitializedFontManager.hpp>
+
+namespace
+{
+ constexpr auto width = style::bell_base_layout::outer_layouts_w;
+ constexpr auto height =
+ style::bell_base_layout::outer_layouts_h - gui::bgSoundsStyle::progress::bottomDescTopMargin;
+
+ class TimeFixedWidgetTest : public ::testing::Test
+ {
+ public:
+ TimeFixedWidgetTest()
+ {
+ mockup::fontManager();
+ widget = new gui::TimeFixedWidget(&item, 0, 0, width, height);
+ }
+
+ gui::Item item{};
+ gui::TimeFixedWidget *widget;
+ };
+
+ template <size_t N>
+ void checkDisplayedText(std::string text, const gui::TimeFixedWidget::DigitsContainer<N> &digits)
+ {
+ std::for_each(std::crbegin(digits), std::crend(digits), [&text](gui::Label *label) {
+ if (text.empty()) {
+ EXPECT_STREQ((label->getText()).c_str(), "");
+ }
+ else {
+ EXPECT_STREQ(label->getText().c_str(), &text.back());
+ text.pop_back();
+ }
+ });
+
+ EXPECT_TRUE(text.empty());
+ }
+
+} // namespace
+
+TEST_F(TimeFixedWidgetTest, initilization)
+{
+ EXPECT_NE(widget, nullptr);
+}
+
+TEST_F(TimeFixedWidgetTest, minusNotVisable)
+{
+ widget->setFontAndDimensions(style::window::font::verybig);
+ EXPECT_EQ(widget->getLeftBox().minus->getText(), "");
+}
+
+TEST(TimeFixedWidgetNonFixtureTest, minusVisable)
+{
+ mockup::fontManager();
+
+ auto item = gui::Item{};
+ auto widget = new gui::TimeFixedWidget(&item, 0, 0, width, height, true);
+
+ widget->setFontAndDimensions(style::window::font::verybig);
+ EXPECT_EQ(widget->getLeftBox().minus->getText(), "-");
+}
+
+TEST_F(TimeFixedWidgetTest, setMinutesBox)
+{
+ using namespace std::string_literals;
+
+ widget->setFontAndDimensions(style::window::font::verybig);
+ std::unordered_map<int, std::string> inputAndExpectedOutput{{123, "123"s},
+ {999, "999"s},
+ {9999, "999"s},
+ {1233433, "433"s},
+ {99, "99"s},
+ {10, "10"s},
+ {1, "1"s},
+ {0, "0"s}};
+
+ for (const auto ¶m : inputAndExpectedOutput) {
+ widget->setMinutesBox(param.first);
+ checkDisplayedText(param.second, widget->getLeftBox().digits);
+ }
+}
+
+TEST_F(TimeFixedWidgetTest, setSecondsBox)
+{
+ using namespace std::string_literals;
+
+ widget->setFontAndDimensions(style::window::font::verybig);
+ std::unordered_map<int, std::string> inputAndExpectedOutput{
+ {123, "23"s}, {999, "99"s}, {9999, "99"s}, {1233433, "33"s}, {99, "99"s}, {10, "10"s}, {1, "01"s}, {0, "00"s}};
+
+ for (const auto ¶m : inputAndExpectedOutput) {
+ widget->setSecondsBox(param.first);
+ checkDisplayedText(param.second, widget->getRightBox().digits);
+ }
+}
D module-apps/tests/windows/CMakeLists.txt => module-apps/tests/windows/CMakeLists.txt +0 -11
@@ 1,11 0,0 @@
-add_catch2_executable(
- NAME
- windows-management
- SRCS
- tests-main.cpp
- test-WindowsStack.cpp
- test-WindowsPopupQueue.cpp
- test-WindowsPopupFilter.cpp
- LIBS
- module-gui
-)
M => +5 -3
@@ 1,4 1,4 @@
// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "WindowsPopupFilter.hpp"
@@ 8,7 8,7 @@
#include <catch2/catch.hpp>
#include <module-apps/apps-common/WindowsPopupQueue.hpp>
TEST_CASE("WindowsPopupQueue::isPermitted")
TEST_CASE("WindowsPopupQueue::isPermitted", "[!mayfail]")
{
auto prp = gui::PopupRequestParams(gui::popup::ID::Alarm, gui::popup::popupDisposition(gui::popup::ID::Alarm));
gui::popup::Filter filter;
@@ 66,7 66,9 @@ TEST_CASE("WindowsPopupQueue::isPermitted")
gui::popup::Disposition::Priority::Normal));
REQUIRE(filter.isPermitted(prp));
}
// equal priority & same popup - this is not fine, i.e. alarm for alarm clock
// comments/expected behaviour in production code and in test are not consistent
// equal priority & same popup - this is not fine, i.e. alarm for alarm clock
{
auto prp = gui::PopupRequestParams(
gui::popup::ID::Alarm,
M module-apps/tests/windows/test-WindowsStack.cpp => module-apps/tests/windows/test-WindowsStack.cpp +2 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include <catch2/catch.hpp>
@@ 158,7 158,7 @@ TEST_CASE("pop")
}
}
-TEST_CASE("pop")
+TEST_CASE("pop2")
{
app::WindowsStack stack;
D module-apps/tests/windows/tests-main.cpp => module-apps/tests/windows/tests-main.cpp +0 -5
@@ 1,5 0,0 @@
-// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
-// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
-
-#define CATCH_CONFIG_MAIN // This tells Catch to provide a main() - only do this in one cpp file
-#include <catch2/catch.hpp>
M module-gui/CMakeLists.txt => module-gui/CMakeLists.txt +1 -0
@@ 48,4 48,5 @@ if (${ENABLE_TESTS})
add_subdirectory(test/test-catch)
add_subdirectory(test/test-catch-text)
add_subdirectory(test/test-google)
+ add_subdirectory(test/mock)
endif ()
A module-gui/test/mock/CMakeLists.txt => module-gui/test/mock/CMakeLists.txt +11 -0
@@ 0,0 1,11 @@
+add_library(gui-mock
+ OBJECT
+ InitializedFontManager.cpp)
+
+target_link_libraries(gui-mock
+ PRIVATE
+ module-gui)
+
+target_include_directories(gui-mock
+ PUBLIC
+ ..)
M module-gui/test/test-catch-text/CMakeLists.txt => module-gui/test/test-catch-text/CMakeLists.txt +1 -1
@@ 17,7 17,6 @@ add_catch2_executable(
SRCS
../mock/buildTextDocument.cpp
../mock/multi-line-string.cpp
- ../mock/InitializedFontManager.cpp
test-gui-TextBlock.cpp
test-gui-TextBlockCursor.cpp
test-gui-TextDocument.cpp
@@ 31,5 30,6 @@ add_catch2_executable(
LIBS
module-sys
module-gui
+ gui-mock
USE_FS
)
M module-gui/test/test-catch/CMakeLists.txt => module-gui/test/test-catch/CMakeLists.txt +1 -1
@@ 9,7 9,6 @@ add_catch2_executable(
test-gui-resizes.cpp
test-gui-image.cpp
../mock/TestWindow.cpp
- ../mock/InitializedFontManager.cpp
test-language-input-parser.cpp
test-key-translator.cpp
INCLUDE
@@ 17,6 16,7 @@ add_catch2_executable(
LIBS
module-sys
module-gui
+ gui-mock
USE_FS
)
file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/plus_32px_W_M.vpi" DESTINATION "${CMAKE_BINARY_DIR}/images")
M products/BellHybrid/apps/application-bell-background-sounds/windows/BGSoundsProgressWindow.cpp => products/BellHybrid/apps/application-bell-background-sounds/windows/BGSoundsProgressWindow.cpp +1 -1
@@ 53,7 53,7 @@ namespace
0,
bell_base_layout::outer_layouts_w,
bell_base_layout::outer_layouts_h - progress::bottomDescTopMargin);
- timer->setFont(bottomTimerFont);
+ timer->setFontAndDimensions(bottomTimerFont);
timer->setMargins(gui::Margins(0, progress::bottomDescTopMargin, 0, 0));
decorateProgressItem(timer, gui::Alignment::Vertical::Top);
return timer;
M products/BellHybrid/apps/application-bell-meditation-timer/windows/MeditationCountdownWindow.cpp => products/BellHybrid/apps/application-bell-meditation-timer/windows/MeditationCountdownWindow.cpp +1 -1
@@ 68,7 68,7 @@ namespace gui
description->setMargins(gui::Margins(0, mcStyle::description::marginTop, 0, 0));
timer = new gui::TimeFixedWidget(mainVBox, 0, 0, mrStyle::timer::maxSizeX, mrStyle::timer::maxSizeY, true);
- timer->setFont(mcStyle::timer::font);
+ timer->setFontAndDimensions(mcStyle::timer::font);
timer->setMinimumSize(mcStyle::timer::maxSizeX, mcStyle::timer::maxSizeY);
timer->setMargins(gui::Margins(0, mcStyle::timer::marginTop, 0, 0));
timer->setAlignment(Alignment(Alignment::Horizontal::Center, Alignment::Vertical::Center));
M products/BellHybrid/apps/application-bell-meditation-timer/windows/MeditationRunningWindow.cpp => products/BellHybrid/apps/application-bell-meditation-timer/windows/MeditationRunningWindow.cpp +1 -1
@@ 69,7 69,7 @@ namespace gui
clock->setMargins(gui::Margins(0, mrStyle::clock::marginTop, 0, 0));
timer = new gui::TimeFixedWidget(mainVBox, 0, 0, mrStyle::timer::maxSizeX, mrStyle::timer::maxSizeY, true);
- timer->setFont(mrStyle::timer::font);
+ timer->setFontAndDimensions(mrStyle::timer::font);
timer->setMinimumSize(mrStyle::timer::maxSizeX, mrStyle::timer::maxSizeY);
timer->setMargins(gui::Margins(0, mrStyle::timer::marginTop, 0, 0));
timer->setAlignment(Alignment(Alignment::Horizontal::Center, Alignment::Vertical::Center));
M products/BellHybrid/apps/application-bell-powernap/windows/PowerNapProgressWindow.cpp => products/BellHybrid/apps/application-bell-powernap/windows/PowerNapProgressWindow.cpp +1 -1
@@ 45,7 45,7 @@ namespace
0,
bell_base_layout::outer_layouts_w,
bell_base_layout::outer_layouts_h - progress::bottomDescTopMargin);
- timer->setFont(napTimerFont);
+ timer->setFontAndDimensions(napTimerFont);
timer->setMargins(gui::Margins(0, progress::bottomDescTopMargin, 0, 0));
decorateProgressItem(timer, gui::Alignment::Vertical::Top);
return timer;