5.12. TUI 附加组件基本特性

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

注意

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

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

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

在内部,simpleline 工具包有三个主要类: AppUIScreenWidget。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)。

其它资源