Theseus 模组文档
API 参考 / 只读视图、场景、音频与文本

ClipboardAccess


系统剪贴板访问(宿主安装,进程内唯一)。TextField 的复制/剪切/粘贴统一经本入口转发;模组自制输入逻辑也可直接调用它读写剪贴板。

方法速览

方法用途
install(Provider)宿主安装平台实现
getText()读剪贴板文本
setText(String)写剪贴板文本

install(Provider)

java
public static void install(Provider p);

行为:宿主安装点(进程内唯一,后装覆盖先装)。mod-api 自身不绑定任何平台实现;未安装时读取返回 null、写入无操作,且都不抛异常。 示例:

java
ClipboardAccess.install(new MyPlatformClipboard());

getText()

java
public static String getText();

行为:读取剪贴板文本;未安装、无文本或实现抛出 Throwable 时返回 null(异常被吞掉,不影响输入组件)。 示例:

java
String clip = ClipboardAccess.getText();
if (clip != null) field.typeString(clip);

setText(String)

java
public static void setText(String text);

行为:写入剪贴板文本;未安装时为无操作,实现抛出的 Throwable 被吞掉。text 为 null 时按实现约定视为清空。 示例:

java
ClipboardAccess.setText(field.selectedText());

完整签名

java
public final class ClipboardAccess {
    public interface Provider {
        String getText();
        void setText(String text);
    }
    public static void install(Provider p);
    public static String getText();
    public static void setText(String text);
}

关键契约:Provider#getText() 在无文本 / 非文本 / 不可读时返回 null;Provider#setText(String) 的 text 为 null 时视为清空。与 ImeAnchor 同为「宿主实现的静态挂载点」:组件层(可能被模组复用)只依赖本接口,不依赖 java.awt;该类为 final 且构造器私有。

线程:源码未声明额外线程约束(已安装实现字段为 volatile)。

性能:源码未标注额外性能约束。

稳定性:2.0 起冻结:2.x 内只增不破。