Skip to content

自动补全

自动补全

1. base、cell方法自动补全

base补全

cell补全

2. client 方法自动补全

client补全

base、cell、客户端方法补全均支持调用组件方法,例:

py
self.component1.test()
self.component3.hello()

self.base.component1.test()
self.cell.component3.hello()
self.client.component3.helloCB()

3. def 文件 tag 自动补全

  • def基础标签自动补全
    • Properties
    • ClientMethods
    • BaseMethods
    • ......
  • 参数类型补全,支持自定义参数,会自动匹配Types.xml
  • 新建base/cell函数补全,补全中会提示对应py文件中定义过的函数,选择并生成即可

符号跳转

base/cell/client 跳转符号定义处,支持Components,当按住ctrl并鼠标左键点击函数/成员时,会自动跳转到定义处,例如:

  • self.client.component3.helloCB()

    • component3 -> 跳转至def Components
    • helloCB -> 跳转至def Components ClientMethods
  • self.cell.component3.hello()

    • component3 -> 跳转至def Components
    • hello -> 跳转至cell.components.TestNoBase.hello函数

文件映射

  • 点击DEF文件中root旁的ico,可跳转到对应的py文件
  • 点击Python文件中 class / def 旁的ico,可跳转到对应的DEF文件中的定义处

函数生成

DEF文件下的 CellMethodsBaseMethods ,选择一个methodItem,在其上下文操作中选择生成Python函数,插件会自动在对应的文件中创建新函数

类型映射

为KBE基础类型提供类型映射

xml
<Properties>
    <roleType>
      <Type>UINT8</Type>
      <Flags>BASE</Flags>
      <Persistent>true</Persistent>
    </roleType>
</Properties>

如图所示,roleType已被识别为int

基础类型对照表

类型名PY类型
UINT8Int
INT8Int
FLOATFloat
DOUBLEFloat
VECTOR2x
VECTOR3x
VECTOR4x
STRINGString
UNICODEUnicode
PYTHONObject
PY_DICTDict
PY_TUPLETuple
PY_LISTList
ENTITYCALLObject
BLOBBytes

支持自定义类型,插件会自动匹配Type.xml中的类型