Rebol shift-tab副作用

时间:2017-03-18 18:03:31

标签: rebol2

鉴于此:     视图布局[field [print“1”] field [print“2”]]

当我将+ tab从字段#2转移到字段#1时,不会触发任何操作。 如何让它们像普通标签一样点亮?

1 个答案:

答案 0 :(得分:0)

这是Rebol / View引擎中field样式的键处理程序中的错误。这是一个快速补丁,您可以在代码中包含以修复它并使SHIFT + Tab工作:

use [body f pos][
    ;-- patch `ctx-text/back-field` function to fix the bug
    body: copy/deep second f: get in ctx-text 'back-field
    insert body/2/while [if head? item [item: tail item]]
    ctx-text/back-field: func first :f :body

    ;-- remove test that disables face/action for back-tabs
    body: second get in ctx-text 'edit-text
    body: find body 'word?
    pos: at body/3/7/tab-char/5/6 11
    change/part pos pos/4 4
]

此代码将在运行时遍历View引擎函数(代码是Rebol中的数据),并通过在需要时注入或删除代码来对函数体进行热补丁。

如果您恰好是Rebol / SDK用户,我可以直接为您提供修补源文件的说明,这样您就可以封装固定的View可执行文件。

享受。