5.12. TUI 附加组件基本特性


Anaconda 还支持基于文本的界面(TUI)。这个界面在功能方面有更多限制,但在某些系统上,它可能是交互式安装的唯一选择。有关基于文本的界面和图形界面与 TUI 的限制的更多信息,请参阅 Anaconda 简介和附加组件

注意

要在附加组件中添加对文本接口的支持,请在 tui 目录下创建新的子软件包集合,如 Anaconda 附加组件结构所述。

安装程序中的文本模式支持是基于 simpleline 库,该库仅允许非常简单的用户交互。文本模式界面:

  • 不支持光标移动 - 相反,其行为类似一台行打印机。
  • 不支持任何视觉增强,例如使用不同的颜色或字体。

在内部,line 工具包有三个主要类:App, UIScreenWidget。Widget 是包含要在屏幕上打印的信息的单元。它们被放在 UIScreens 上,由 App 类的一个实例切换。在基本元素之上,hub spoke 和对话框 都 以类似图形界面的方式包含各种小部件。

附加组件最重要的类是 NormalTUISpoke ,其它各种类定义在 pyanaconda.ui.tui.spokes 软件包中。所有这些类都基于 TUIObject 类,这本身等同于 附加 GUI 高级功能中讨论的 GUIObject 类。每个 TUI spoke 都是继承于 NormalTUISpoke 类的 Python 类,覆盖 API 定义的特殊参数和方法。因为文本界面比 GUI 简单,所以只有两个这样的参数:

  • title - 确定 spoke 的标题,类似于 GUI 中的标题参数.
  • category - 确定作为字符串的 spoke 类;类名称不在任何地方显示,它仅用于分组。
注意

TUI 处理类的方式与 GUI 不同。建议为您的新 spoke 分配一个预先存在的类。创建新类需要修补 Anaconda,这不会带来任何好处。

每个 spoke 还应覆盖多种方法,即 initinitializerefreshrefreshapplyexecuteinputpromptpropertiesreadycompletedmandatorystatus)。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.