如果将 XmNlayoutDirection 指定为 XmDEFAULT_DIRECTION,则小部件的布局方向在创建时从主导伪 XOC 进行设置。对于动态文本(XmText 和 XmTextField),主导伪 XOC 是与用于小部件的 XmRendition 关联的伪 XOC。对于静态文本 (XmList、XmLabel、XmLabelG),布局方向从指定方向的第一个复合字符串组件设置。此规范以下列两种方式之一发生:
组件类型为 XmSTRING_COMPONENT_LAYOUT_PUSH 或 XmSTRING_COMPONENT_DIRECTION.
组件类型为 XmSTRING_COMPONENT_LOCALE_TEXT、 XmSTRING_COMPONENT_WIDECHAR_TEXT 或 XmSTRING_COMPONENT_TEXT,它们都来自组件的关联 XmRendition 和关联 LayoutObject。
如果未将 XmNlayoutDirection 指定为 XmDEFAULT_DIRECTION,并且未在布局修饰符字符串中显式指定 XmNlayoutModifier @ls orientation 值,则 XmNlayoutDirection 值将传递给 XOC 及其 LayoutObject。
如果同时显式指定了 XmNlayoutDirection 和 XmNlayoutModifier @ls orientation ,则行为将混合在一起。XmNlayoutDirection 控制小部件对象布局,而 XmNlayoutModifier @ls orientation 值控制布局变换。
请参见《CAE 规范:可移植布局服务:依赖于上下文的定向文本》。开放组:1997 年 2 月; ISBN 1-85912-142-X;文档号码 C616 — 对用于处理依赖于上下文的双向文本转换的可移植功能的说明,这些功能是对现有 POSIX 语言环境模型的扩展。 该文档适用于希望为复杂文本语言提供支持的系统和应用程序程序员。