mirror of
https://github.com/mudita/MuditaOS.git
synced 2026-06-14 19:45:31 -04:00
39 lines
1.1 KiB
C++
39 lines
1.1 KiB
C++
// 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 <cstdint>
|
|
|
|
namespace gui
|
|
{
|
|
class LockBox
|
|
{
|
|
public:
|
|
enum class InputActionType
|
|
{
|
|
ProvideInput,
|
|
ProvideNewInput,
|
|
ConfirmNewInput
|
|
};
|
|
|
|
enum class InputErrorType
|
|
{
|
|
InvalidInput,
|
|
NewInputConfirmFailed,
|
|
UnhandledError
|
|
};
|
|
|
|
virtual void popChar(unsigned int charNum) = 0;
|
|
virtual void putChar(unsigned int charNum) = 0;
|
|
virtual void clear() = 0;
|
|
|
|
virtual void setVisibleStateInputRequired(InputActionType type) = 0;
|
|
virtual void setVisibleStateInputInvalid(InputErrorType type, unsigned int value) = 0;
|
|
virtual void setVisibleStateBlocked() = 0;
|
|
|
|
virtual void buildLockBox(unsigned int inputSize) = 0;
|
|
virtual ~LockBox() = default;
|
|
};
|
|
} // namespace gui
|