// 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 "application-phonebook/data/PhonebookInternals.hpp" #include "application-phonebook/data/PhonebookItemData.hpp" #include "application-phonebook/widgets/ContactListItem.hpp" #include #include #include namespace gui { class InputLinesWithLabelWidget : public ContactListItem { public: explicit InputLinesWithLabelWidget( phonebookInternals::ListItemName listItemName, const std::function &navBarTemporaryMode = nullptr, const std::function &navBarRestoreFromTemporaryMode = nullptr, const std::function &selectSpecialCharacter = nullptr, const std::function &inputOptions = nullptr, unsigned int lines = 1); VBox *vBox = nullptr; Label *titleLabel = nullptr; TextFixedSize *inputText = nullptr; private: phonebookInternals::ListItemName listItemName; void applyItemNameSpecificSettings(); std::function navBarTemporaryMode = nullptr; std::function navBarRestoreFromTemporaryMode = nullptr; std::function inputOptions = nullptr; void firstNameHandler(); void secondNameHandler(); void numberHandler(); void secondNumberHandler(); void emailHandler(); void addressHandler(); void noteHandler(); }; } /* namespace gui */