M module-apps/application-desktop/widgets/DesktopInputWidget.cpp => module-apps/application-desktop/widgets/DesktopInputWidget.cpp +3 -4
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "DesktopInputWidget.hpp"
@@ 82,9 82,8 @@ namespace gui
};
}
- auto DesktopInputWidget::handleRequestResize([[maybe_unused]] const Item *child,
- unsigned short request_w,
- unsigned short request_h) -> Size
+ auto DesktopInputWidget::handleRequestResize([[maybe_unused]] const Item *child, Length request_w, Length request_h)
+ -> Size
{
request_h = std::clamp(
static_cast<Length>(request_h), style::desktop::inputWidget::min_h, style::desktop::inputWidget::max_h);
M module-apps/application-desktop/widgets/DesktopInputWidget.hpp => module-apps/application-desktop/widgets/DesktopInputWidget.hpp +2 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
@@ 27,7 27,7 @@ namespace gui
DesktopInputWidget(app::Application *application, Item *parent, uint32_t x, uint32_t y, uint32_t w, uint32_t h);
~DesktopInputWidget() override = default;
- auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size override;
+ auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size override;
};
} /* namespace gui */
M module-apps/application-messages/widgets/SMSInputWidget.cpp => module-apps/application-messages/widgets/SMSInputWidget.cpp +3 -4
@@ 30,7 30,7 @@ namespace gui
body->setMaximumSize(style::window::default_body_width, style::messages::smsInput::max_input_h);
deleteByList = false;
- inputText = new gui::Text(body, 0, 0, 0, 0, "", ExpandMode::Up);
+ inputText = new gui::Text(body, 0, 0, 0, 0, "", ExpandMode::Up);
inputText->setMaximumSize(style::messages::smsInput::default_input_w, style::messages::smsInput::max_input_h);
inputText->setMinimumSize(style::messages::smsInput::default_input_w,
style::messages::smsInput::default_input_h);
@@ 166,9 166,8 @@ namespace gui
}
}
- auto SMSInputWidget::handleRequestResize([[maybe_unused]] const Item *child,
- unsigned short request_w,
- unsigned short request_h) -> Size
+ auto SMSInputWidget::handleRequestResize([[maybe_unused]] const Item *child, Length request_w, Length request_h)
+ -> Size
{
request_h =
std::clamp((Length)request_h, style::messages::smsInput::min_h, style::messages::smsInput::max_input_h);
M module-apps/application-messages/widgets/SMSInputWidget.hpp => module-apps/application-messages/widgets/SMSInputWidget.hpp +2 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
@@ 33,7 33,7 @@ namespace gui
void updateDraftMessage(const UTF8 &inputText);
void displayDraftMessage() const;
- auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size override;
+ auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size override;
};
} /* namespace gui */
M module-apps/application-messages/widgets/SMSOutputWidget.cpp => module-apps/application-messages/widgets/SMSOutputWidget.cpp +2 -3
@@ 145,9 145,8 @@ namespace gui
body->addWidget(errorIcon);
}
- auto SMSOutputWidget::handleRequestResize([[maybe_unused]] const Item *child,
- unsigned short request_w,
- unsigned short request_h) -> Size
+ auto SMSOutputWidget::handleRequestResize([[maybe_unused]] const Item *child, Length request_w, Length request_h)
+ -> Size
{
setMinimumHeight(request_h);
return Size(request_w, request_h);
M module-apps/application-messages/widgets/SMSOutputWidget.hpp => module-apps/application-messages/widgets/SMSOutputWidget.hpp +2 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
@@ 31,7 31,7 @@ namespace gui
SMSOutputWidget(app::Application *application, const std::shared_ptr<SMSRecord> &record);
virtual ~SMSOutputWidget() = default;
- auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size override;
+ auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size override;
};
} /* namespace gui */
M module-apps/application-phonebook/widgets/OutputLinesTextWithLabelWidget.cpp => module-apps/application-phonebook/widgets/OutputLinesTextWithLabelWidget.cpp +2 -3
@@ 86,9 86,8 @@ namespace gui
onLoadCallback = [&](std::shared_ptr<ContactRecord> contact) { multilineText->setText(contact->note); };
}
- auto OutputLinesTextWithLabelWidget::handleRequestResize(const Item *child,
- unsigned short request_w,
- unsigned short request_h) -> Size
+ auto OutputLinesTextWithLabelWidget::handleRequestResize(const Item *child, Length request_w, Length request_h)
+ -> Size
{
setMinimumHeight(phonebookStyle::outputLinesTextWithLabelWidget::title_label_h +
phonebookStyle::outputLinesTextWithLabelWidget::span_size + request_h);
M module-apps/application-phonebook/widgets/OutputLinesTextWithLabelWidget.hpp => module-apps/application-phonebook/widgets/OutputLinesTextWithLabelWidget.hpp +5 -5
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
@@ 20,11 20,11 @@ namespace gui
OutputLinesTextWithLabelWidget(phonebookInternals::ListItemName listItemName);
~OutputLinesTextWithLabelWidget() override = default;
- VBox *vBox = nullptr;
- Label *titleLabel = nullptr;
- Text *multilineText = nullptr;
+ VBox *vBox = nullptr;
+ Label *titleLabel = nullptr;
+ Text *multilineText = nullptr;
- auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size override;
+ auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size override;
private:
void applyItemNameSpecificSettings();
M module-gui/gui/core/BoundingBox.cpp => module-gui/gui/core/BoundingBox.cpp +9 -16
@@ 1,22 1,15 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "BoundingBox.hpp"
#include <limits>
#include <sstream>
#include <limits>
+#include <module-gui/gui/Common.hpp>
namespace gui
{
- const uint16_t BoundingBox::zero_size = 0;
- const uint16_t BoundingBox::max_size = std::numeric_limits<uint16_t>().max();
- const uint16_t BoundingBox::min_size = std::numeric_limits<uint16_t>().min();
-
- const int16_t BoundingBox::zero_position = 0;
- const int16_t BoundingBox::max_position = std::numeric_limits<int16_t>().max();
- const int16_t BoundingBox::min_position = std::numeric_limits<int16_t>().min();
-
- BoundingBox::BoundingBox(int32_t x, int32_t y, uint32_t w, uint32_t h)
+ BoundingBox::BoundingBox(Position x, Position y, Length w, Length h)
{
this->x = x;
this->y = y;
@@ 81,13 74,13 @@ namespace gui
void BoundingBox::clear()
{
- x = 0;
- y = 0;
- w = 0;
- h = 0;
+ x = zero_position;
+ y = zero_position;
+ w = zero_size;
+ h = zero_size;
}
- uint16_t BoundingBox::size(gui::Axis axis) const
+ Length BoundingBox::size(gui::Axis axis) const
{
if (axis == Axis::X)
return w;
@@ 95,7 88,7 @@ namespace gui
return h;
}
- int16_t BoundingBox::pos(gui::Axis axis) const
+ Position BoundingBox::pos(gui::Axis axis) const
{
if (axis == Axis::X)
return x;
M module-gui/gui/core/BoundingBox.hpp => module-gui/gui/core/BoundingBox.hpp +14 -12
@@ 1,10 1,12 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
#include "Axes.hpp"
+#include "gui/Common.hpp"
#include <cstdint>
+#include <limits>
#include <string>
namespace gui
@@ 16,20 18,20 @@ namespace gui
class BoundingBox
{
public:
- static const uint16_t zero_size;
- static const uint16_t max_size;
- static const uint16_t min_size;
+ static constexpr Length zero_size = 0;
+ static constexpr Length max_size = std::numeric_limits<Length>().max();
+ static constexpr Length min_size = std::numeric_limits<Length>().min();
- static const int16_t zero_position;
- static const int16_t max_position;
- static const int16_t min_position;
+ static constexpr Position zero_position = 0;
+ static constexpr Position max_position = std::numeric_limits<Position>().max();
+ static constexpr Position min_position = std::numeric_limits<Position>().min();
struct
{
- int16_t x = zero_position, y = zero_position;
- uint16_t w = zero_size, h = zero_size;
+ Position x = zero_position, y = zero_position;
+ Length w = zero_size, h = zero_size;
};
- BoundingBox(int32_t x = 0, int32_t y = 0, uint32_t w = 0, uint32_t h = 0);
+ BoundingBox(Position x = zero_position, Position y = zero_position, Length w = 0, Length h = 0);
virtual ~BoundingBox() = default;
static bool intersect(const BoundingBox &box1, const BoundingBox &box2, BoundingBox &result);
@@ 37,9 39,9 @@ namespace gui
/// set x,y,w,h to zero
void clear();
/// get size in axis - in x get width in y get height
- uint16_t size(gui::Axis axis) const;
+ Length size(gui::Axis axis) const;
/// get position in axis - in x get x, in y get y
- int16_t pos(gui::Axis axis) const;
+ Position pos(gui::Axis axis) const;
std::string str() const;
/// logical sum of bounding box by another bounding box values
void sum(const BoundingBox &box);
M module-gui/gui/core/Context.cpp => module-gui/gui/core/Context.cpp +10 -10
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
/*
@@ 45,9 45,9 @@ namespace gui
// if boxes overlap copy part defined by result from current context to the new context.
if (BoundingBox::intersect(currentBox, newBox, resultBox)) {
- uint32_t sourceOffset = resultBox.y * w + resultBox.x;
- uint32_t destOffset = (resultBox.y - gy) * width + (resultBox.x - gx);
- for (int32_t h = 0; h < resultBox.h; h++) {
+ Length sourceOffset = resultBox.y * w + resultBox.x;
+ Length destOffset = (resultBox.y - gy) * width + (resultBox.x - gx);
+ for (Length h = 0; h < resultBox.h; h++) {
memcpy(retContext->data + destOffset, data + sourceOffset, resultBox.w);
sourceOffset += w;
destOffset += width;
@@ 67,9 67,9 @@ namespace gui
// if boxes overlap copy part defined by result from current context to the new context.
if (BoundingBox::intersect(currentBox, insertBox, resultBox)) {
- uint32_t sourceOffset = (resultBox.y - iy) * context->w + (resultBox.x - ix);
- uint32_t destOffset = (resultBox.y) * w + (resultBox.x);
- for (int32_t h = 0; h < resultBox.h; h++) {
+ Length sourceOffset = (resultBox.y - iy) * context->w + (resultBox.x - ix);
+ Length destOffset = (resultBox.y) * w + (resultBox.x);
+ for (Length h = 0; h < resultBox.h; h++) {
memcpy(data + destOffset, context->data + sourceOffset, resultBox.w);
sourceOffset += context->w;
destOffset += w;
@@ 93,9 93,9 @@ namespace gui
xBoxOffset = iareaX;
if (iareaY < 0)
yBoxOffset = iareaY;
- uint32_t sourceOffset = (resultBox.y - iy - yBoxOffset) * context->w + (resultBox.x - ix - xBoxOffset);
- uint32_t destOffset = (resultBox.y) * w + (resultBox.x);
- for (int32_t h = 0; h < resultBox.h; h++) {
+ Length sourceOffset = (resultBox.y - iy - yBoxOffset) * context->w + (resultBox.x - ix - xBoxOffset);
+ Length destOffset = (resultBox.y) * w + (resultBox.x);
+ for (Length h = 0; h < resultBox.h; h++) {
memcpy(data + destOffset, context->data + sourceOffset, resultBox.w);
sourceOffset += context->w;
destOffset += w;
M module-gui/gui/dom/Item2JsonSerializingVisitor.cpp => module-gui/gui/dom/Item2JsonSerializingVisitor.cpp +2 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "Item2JsonSerializingVisitor.hpp"
@@ 104,7 104,7 @@ void Item2JsonSerializingVisitor::visit(gui::ListItem &item)
auto Item2JsonSerializingVisitor::serialize(gui::BoundingBox &box) -> json11::Json::array
{
- return {box.x, box.y, box.w, box.h};
+ return {static_cast<int>(box.x), static_cast<int>(box.y), static_cast<int>(box.w), static_cast<int>(box.h)};
}
auto Item2JsonSerializingVisitor::serialize(gui::Color &color) -> json11::Json::array
M module-gui/gui/widgets/BoxLayout.cpp => module-gui/gui/widgets/BoxLayout.cpp +7 -6
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "BoxLayout.hpp"
@@ 265,7 265,8 @@ namespace gui
{
// Get maximum size that element in orthogonal axis can occupy in current layout size.
Length maxOrthogonalItemInParentSize =
- this->area(Area::Normal).size(orthogonal(axis)) <= el->getMargins().getSumInAxis(orthogonal(axis))
+ static_cast<Position>(this->area(Area::Normal).size(orthogonal(axis))) <=
+ el->getMargins().getSumInAxis(orthogonal(axis))
? 0
: this->area(Area::Normal).size(orthogonal(axis)) - el->getMargins().getSumInAxis(orthogonal(axis));
@@ 288,7 289,7 @@ namespace gui
auto axisItemPosition = 0;
// Check if elements in axis can fit with margins in layout free space.
- if (((Position)axisItemSize + el->getMargins().getSumInAxis(axis)) <= leftPosition) {
+ if (((Position)(axisItemSize + el->getMargins().getSumInAxis(axis))) <= leftPosition) {
if (reverseOrder) {
startingPosition -= el->getMargins().getMarginInAxis(axis, MarginInAxis::Second);
@@ 433,7 434,7 @@ namespace gui
}
template <Axis axis>
- auto BoxLayout::handleRequestResize(const Item *child, unsigned short request_w, unsigned short request_h) -> Size
+ auto BoxLayout::handleRequestResize(const Item *child, Length request_w, Length request_h) -> Size
{
if (parent != nullptr) {
auto [w, h] = requestSize(request_w, request_h);
@@ 568,7 569,7 @@ namespace gui
BoxLayout::addWidget<Axis::X>(item);
}
- auto HBox::handleRequestResize(const Item *child, unsigned short request_w, unsigned short request_h) -> Size
+ auto HBox::handleRequestResize(const Item *child, Length request_w, Length request_h) -> Size
{
return BoxLayout::handleRequestResize<Axis::X>(child, request_w, request_h);
}
@@ 599,7 600,7 @@ namespace gui
BoxLayout::addWidget<Axis::Y>(item);
}
- auto VBox::handleRequestResize(const Item *child, unsigned short request_w, unsigned short request_h) -> Size
+ auto VBox::handleRequestResize(const Item *child, Length request_w, Length request_h) -> Size
{
return BoxLayout::handleRequestResize<Axis::Y>(child, request_w, request_h);
}
M module-gui/gui/widgets/BoxLayout.hpp => module-gui/gui/widgets/BoxLayout.hpp +4 -5
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
@@ 119,8 119,7 @@ namespace gui
// set focus on specified box element
bool setFocusOnElement(unsigned int elementNumber);
void setFocusOnLastElement();
- template <Axis axis>
- auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size;
+ template <Axis axis> auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size;
auto onDimensionChanged(const BoundingBox &oldDim, const BoundingBox &newDim) -> bool override;
};
@@ 132,7 131,7 @@ namespace gui
HBox(Item *parent, const uint32_t &x = 0, const uint32_t &y = 0, const uint32_t &w = 0, const uint32_t &h = 0);
virtual ~HBox() = default;
virtual void addWidget(Item *item) override;
- auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size override;
+ auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size override;
Length getSizeLeft();
};
@@ 144,7 143,7 @@ namespace gui
VBox(Item *parent, const uint32_t &x = 0, const uint32_t &y = 0, const uint32_t &w = 0, const uint32_t &h = 0);
virtual ~VBox() = default;
virtual void addWidget(Item *item) override;
- auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size override;
+ auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size override;
Length getSizeLeft();
};
M module-gui/gui/widgets/Item.cpp => module-gui/gui/widgets/Item.cpp +7 -9
@@ 5,8 5,8 @@
#include "BoundingBox.hpp" // for BoundingBox, BoundingBox::(anonymous)
#include "InputEvent.hpp" // for InputEvent, KeyCode, InputEvent::State
#include "Navigation.hpp" // for Navigation
-#include <algorithm> // for find
-#include <list> // for list<>::iterator, list, operator!=, _List...
+#include <algorithm> // for find
+#include <list> // for list<>::iterator, list, operator!=, _List...
#include <memory>
#include <DrawCommand.hpp>
namespace gui
@@ 141,7 141,7 @@ namespace gui
onDimensionChanged(oldArea, widgetArea);
}
- void Item::setPosition(const short &x, const short &y)
+ void Item::setPosition(const Position &x, const Position &y)
{
setArea({x, y, widgetArea.w, widgetArea.h});
}
@@ 156,7 156,7 @@ namespace gui
setArea({widgetArea.x, y, widgetArea.w, widgetArea.h});
}
- auto Item::requestSize(unsigned short request_w, unsigned short request_h) -> Size
+ auto Item::requestSize(Length request_w, Length request_h) -> Size
{
if (parent == nullptr) {
setSize(request_w, request_h);
@@ 165,7 165,7 @@ namespace gui
return parent->handleRequestResize(this, request_w, request_h);
}
- auto Item::handleRequestResize(const Item *it, unsigned short request_w, unsigned short request_h) -> Size
+ auto Item::handleRequestResize(const Item *it, Length request_w, Length request_h) -> Size
{
if (it == nullptr) {
return {0, 0};
@@ 300,7 300,7 @@ namespace gui
return widgetArea.pos(axis);
}
- void Item::setPosition(const short &val, Axis axis)
+ void Item::setPosition(const Position &val, Axis axis)
{
int16_t x = getX();
int16_t y = getY();
@@ 380,9 380,7 @@ namespace gui
void Item::setRadius(int value)
{
- if (value < 0)
- value = 0;
- radius = value;
+ radius = std::abs(value);
}
void Item::updateDrawArea()
M module-gui/gui/widgets/Item.hpp => module-gui/gui/widgets/Item.hpp +13 -13
@@ 3,8 3,8 @@
#pragma once
-#include "Alignment.hpp" // for Alignment
-#include "Axes.hpp" // for Axis
+#include "Alignment.hpp" // for Alignment
+#include "Axes.hpp" // for Axis
#include <module-gui/gui/Common.hpp>
#include "Layout.hpp" // for LayoutHorizontalPolicy, LayoutVertic...
#include "Margins.hpp" // for Padding, Margins
@@ 231,8 231,8 @@ namespace gui
/// sets position of element - this is sets area().x and area().y of item
/// @note calls onDimensionChanged callback & updateDrawArea for item
/// @attention should be bind to area
- virtual void setPosition(const short &x, const short &y);
- virtual void setPosition(const short &val, Axis axis);
+ virtual void setPosition(const Position &x, const Position &y);
+ virtual void setPosition(const Position &val, Axis axis);
[[nodiscard]] uint16_t getSize(Axis axis) const;
[[nodiscard]] uint16_t getPosition(Axis axis) const;
virtual void setMargins(const Margins &value);
@@ 268,7 268,7 @@ namespace gui
/// requests bigger size from parent if parent available
/// if no parent available - sets size
/// @return true if handled positively
- virtual auto requestSize(unsigned short request_w, unsigned short request_h) -> Size final;
+ virtual auto requestSize(Length request_w, Length request_h) -> Size final;
/// handle for layouts to implement to resize on demand ( i.e. when it needs to expand after
/// addition/removal of chars )
///
@@ 282,7 282,7 @@ namespace gui
/// should be handled without infinite loop on resize ( item->setSize -> notify Layout -> layout: item->setSize
/// )
/// @return bool requested size granted {w,h}
- virtual auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size;
+ virtual auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size;
virtual void setSize(const unsigned short w, const unsigned short h);
void setSize(uint32_t val, Axis axis);
@@ 301,7 301,7 @@ namespace gui
/// pre hook function, if set it is executed before building draw command
/// at Item::buildDrawListImplementation()
/// @param `commandlist` : commands list of commands for renderer to draw elements on screen
- std::function<void(std::list<Command> &)> preBuildDrawListHook = nullptr;
+ std::function<void(std::list<Command> &)> preBuildDrawListHook = nullptr;
/// post hook function, if set it is executed after building draw command
/// at Item::buildDrawListImplementation()
/// @param `commandlist` : commands list of commands for renderer to draw elements on screen
@@ 333,13 333,13 @@ namespace gui
/// all these elements should be checked for naming/use consistency
/// possibly all of that should be handled via area() (and area should have callback pinned from Item on resize
/// @{
- void setX(const int32_t x);
- void setY(const int32_t y);
- [[nodiscard]] int32_t getX() const
+ void setX(const gui::Position x);
+ void setY(const gui::Position y);
+ [[nodiscard]] gui::Position getX() const
{
return (widgetArea.x);
}
- [[nodiscard]] int32_t getY() const
+ [[nodiscard]] gui::Position getY() const
{
return (widgetArea.y);
}
@@ 353,13 353,13 @@ namespace gui
}
/// helper function to show where widget ends in x axis
/// @return item ends position in X axis
- [[nodiscard]] int32_t offset_w() const
+ [[nodiscard]] gui::Position offset_w() const
{
return getWidth() + widgetArea.x;
}
/// helper function to show where widget ends in y axis
/// @return item ends position in Y axis
- [[nodiscard]] int32_t offset_h() const
+ [[nodiscard]] gui::Position offset_h() const
{
return getHeight() + widgetArea.y;
}
M module-gui/gui/widgets/ListView.cpp => module-gui/gui/widgets/ListView.cpp +1 -3
@@ 634,9 634,7 @@ namespace gui
return true;
}
- auto ListView::handleRequestResize([[maybe_unused]] const Item *child,
- unsigned short request_w,
- unsigned short request_h) -> Size
+ auto ListView::handleRequestResize([[maybe_unused]] const Item *child, Length request_w, Length request_h) -> Size
{
return Size(request_w, request_h);
M module-gui/gui/widgets/ListView.hpp => module-gui/gui/widgets/ListView.hpp +1 -1
@@ 194,7 194,7 @@ namespace gui
// virtual methods from Item
bool onInput(const InputEvent &inputEvent) override;
bool onDimensionChanged(const BoundingBox &oldDim, const BoundingBox &newDim) override;
- auto handleRequestResize(const Item *, unsigned short request_w, unsigned short request_h) -> Size override;
+ auto handleRequestResize(const Item *, Length request_w, Length request_h) -> Size override;
};
} /* namespace gui */
M module-gui/gui/widgets/Margins.cpp => module-gui/gui/widgets/Margins.cpp +3 -3
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
/*
@@ 14,7 14,7 @@
namespace gui
{
- short Margins::getSumInAxis(gui::Axis axis) const
+ Position Margins::getSumInAxis(gui::Axis axis) const
{
switch (axis) {
case Axis::X:
@@ 26,7 26,7 @@ namespace gui
}
}
- short Margins::getMarginInAxis(Axis axis, MarginInAxis pos) const
+ Position Margins::getMarginInAxis(Axis axis, MarginInAxis pos) const
{
switch (axis) {
M module-gui/gui/widgets/Margins.hpp => module-gui/gui/widgets/Margins.hpp +6 -5
@@ 1,9 1,10 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once
#include "core/Axes.hpp"
+#include "gui/Common.hpp"
namespace gui
{
@@ 16,17 17,17 @@ namespace gui
class Margins
{
public:
- short left, top, right, bottom;
+ Position left, top, right, bottom;
constexpr Margins() : left{0}, top{0}, right{0}, bottom{0}
{}
- constexpr Margins(const short left, const short top, const short right, const short bottom)
+ constexpr Margins(const Position left, const Position top, const Position right, const Position bottom)
: left{left}, top{top}, right{right}, bottom{bottom}
{}
- [[nodiscard]] short getSumInAxis(Axis axis) const;
- [[nodiscard]] short getMarginInAxis(Axis axis, MarginInAxis pos) const;
+ [[nodiscard]] Position getSumInAxis(Axis axis) const;
+ [[nodiscard]] Position getMarginInAxis(Axis axis, MarginInAxis pos) const;
bool operator==(const Margins &margins);
bool operator!=(const Margins &margins);
};
M module-gui/gui/widgets/Style.hpp => module-gui/gui/widgets/Style.hpp +1 -1
@@ 103,7 103,7 @@ namespace style
inline constexpr auto width = 280U;
inline constexpr auto h = 50U;
}; // namespace progressBar
- }; // namespace window
+ }; // namespace window
namespace settings
{
M module-gui/gui/widgets/Text.cpp => module-gui/gui/widgets/Text.cpp +1 -1
@@ 314,7 314,7 @@ namespace gui
auto Text::getSizeMinusPadding(Axis axis, Area val) -> Length
{
- auto size = area(val).size(axis);
+ int size = area(val).size(axis);
if (size <= padding.getSumInAxis(axis)) {
size = 0;
M module-gui/gui/widgets/Text.hpp => module-gui/gui/widgets/Text.hpp +1 -1
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#pragma once