Files
MuditaOS/module-apps/application-desktop/windows/MmiInternalMsgWindow.cpp
Mateusz Grzegorzek 58dd02cff1 [BH-861] Cleanup Application split - part I
1. Prepare Pure and Bell specific `Application`
   classes and add them to `app` target:

- `products/BellHybrid/apps/Application.cpp`
- `products/PurePhone/apps/Application.cpp`

2. Update `CMakeLists.txt` files.
3. Move `ApplicationBell` implementation to Bell-specific
   `Application` class and remove `ApplicationBell` files.
4. Change Bell apps parent classes from `ApplicationBell`
  to Bell-specific `Application` class.
5. Rename `Application` to `ApplicationCommon` in the rest of the files.
2021-09-13 11:58:10 +02:00

50 lines
1.7 KiB
C++

// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "Mmi.hpp"
#include "MmiInternalMsgWindow.hpp"
#include "MmiPushWindow.hpp"
#include <i18n/i18n.hpp>
#include <service-appmgr/data/MmiActionsParams.hpp>
using namespace gui;
MmiInternalMsgWindow::MmiInternalMsgWindow(app::ApplicationCommon *app, const std::string &name)
: MmiPushWindow(app, name)
{}
void MmiInternalMsgWindow::onBeforeShow(ShowMode mode, SwitchData *data)
{
if (auto metadata = dynamic_cast<mmiactions::MMIResultParams *>(data); metadata != nullptr) {
if (metadata->getCustomData() != nullptr) {
mmi::MMIMessageVisitor customMMIvisitor;
std::string displayMessage;
metadata->getCustomData()->accept(customMMIvisitor, displayMessage);
text->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Left, gui::Alignment::Vertical::Top));
text->setText(displayMessage);
}
else {
handleInternalMessages(metadata);
}
}
}
void MmiInternalMsgWindow::handleInternalMessages(mmiactions::MMIResultParams *metadata)
{
std::string displayMessage;
text->setAlignment(gui::Alignment(gui::Alignment::Horizontal::Center, gui::Alignment::Vertical::Top));
auto result = metadata->getData();
switch (result) {
case mmiactions::MMIResultParams::MMIResult::Success:
text->setText(displayMessage + utils::translate("app_desktop_info_mmi_result_success"));
break;
case mmiactions::MMIResultParams::MMIResult::Failed:
text->setText(displayMessage + utils::translate("app_desktop_info_mmi_result_failed"));
break;
default:
text->clear();
break;
}
}