Q3270
A Qt-based 3270 Terminal Emulator
Loading...
Searching...
No Matches
FunctionRegistry.h
1/*
2 * Q3270 Terminal Emulator
3 *
4 * Copyright (c) 2020–2025 Andy Styles
5 * SPDX-License-Identifier: BSD-3-Clause
6 *
7 * This file is part of Q3270.
8 * See the LICENSE file in the project root for full license information.
9 */
10
11#ifndef FUNCTIONREGISTRY_H
12#define FUNCTIONREGISTRY_H
13
14#include <QString>
15#include <QStringList>
16#include <QList>
17#include <QFlags>
18
19enum class UsageContext : quint8 {
20 None = 0x00,
21 Keyboard = 0x01,
22 Menu = 0x02,
23 Toolbar = 0x04,
24 Script = 0x08,
25 Touch = 0x10,
26 Any = Keyboard | Menu | Toolbar | Script | Touch
27};
28
29Q_DECLARE_FLAGS(UsageContexts, UsageContext)
30Q_DECLARE_OPERATORS_FOR_FLAGS(UsageContexts)
31
33 QString name;
34 UsageContexts contexts;
35 QString description;
36};
37
39{
40 public:
41 static const QList<FunctionInfo> &all();
42 static QStringList namesFor(UsageContext context);
43 static QList<FunctionInfo> functionsFor(UsageContext context);
44};
45
46#endif // FUNCTIONREGISTRY_H
Definition FunctionRegistry.h:39
Keyboard::Keyboard - Keyboard input processing.
Definition Keyboard.h:25
Definition FunctionRegistry.h:32