^1732501935934
@
sname
AutoDemo
slabel
自动演示
sdescriptors
xworker.lang.MetaDescriptor3
smany
true
seditCols
2
sinitialization
false
sgroup
xworker.guide
smodifier
public
sinheritDescription
false
Sdescription
#$@text#$@
<p>已过时，使用swt下面的AutoDemo。</p>

<p>自动演示系统。</p>
#$@text#$@
snotXmlAttribute
false
sjson_isArray
false
sjson_array_type
children
sjson_attribute
false
sth_createIndex
true
sth_registThing
child|xworker.lang.util.ThingIndex
sth_registMyChilds
false
sth_registDisabled
false
sth_mark
false
  @/@actions
  sname
  actions
  sdescriptors
  xworker.lang.MetaDescriptor3/@actions
  sinheritDescription
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  actions
    @/@actions/@menu_run
    sname
    menu_run
    sisSynchronized
    false
    sthrowException
    true
    suseOtherAction
    false
    suseOuterJava
    true
    suseInnerJava
    false
    souterClassName
    xworker.ide.tools.autodemo.AutoDemo
    smethodName
    menu_run
    sdisableGlobalContext
    false
    sattributeTemplate
    false
    sinterpretationType
    Action
    svarScope
    Global
    screateLocalVarScope
    false
    ssaveReturn
    false
    sdebugLog
    false
    sdescriptors
    xworker.lang.actions.Actions/@JavaAction
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    menu_run
    @/@actions/@isDemo
    sname
    isDemo
    sisSynchronized
    false
    sthrowException
    true
    suseOtherAction
    false
    svarScope
    Local
    sdisableGlobalContext
    false
    scode
    return true;
    sinterpretationType
    Action
    screateLocalVarScope
    false
    ssaveReturn
    false
    sdebugLog
    false
    sdescriptors
    xworker.lang.actions.Actions/@GroovyAction
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    isDemo
    @/@actions/@run
    sname
    run
    sisSynchronized
    false
    sthrowException
    true
    suseOtherAction
    false
    svarScope
    Local
    sdisableGlobalContext
    false
    Scode
#$@text#$@
import org.xmeta.ActionContext;

import xworker.ide.tools.autodemo.AutoDemo;

def thing = self;
def shellThing = world.getThing("xworker.ide.tools.autodemo.AutoDemoShell");
def ac = new ActionContext();
def shell = shellThing.doAction("create", ac);
shell.setVisible(true);

AutoDemo demo = new AutoDemo(thing, shell, ac);
ac.getScope(0).put("demo", demo);

//自动演示
ac.autoButton.setSelection(true);
ac.autoSelection.handleEvent(null);
#$@text#$@
    sinterpretationType
    Action
    screateLocalVarScope
    false
    ssaveReturn
    false
    sdebugLog
    false
    sdescriptors
    xworker.lang.actions.Actions/@GroovyAction
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    run
  @/@name
  sname
  name
  sshowLabel
  true
  sreadOnly
  false
  sinheritDescription
  false
  svalidateAllowBlank
  true
  LvalidateOnBlur
  true
  LallowDecimals
  true
  LallowNegative
  true
  snotXmlAttribute
  false
  sdescriptors
  xworker.lang.MetaDescriptor3/@attribute
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  name
  @/@label
  sname
  label
  ssize
  50
  sshowLabel
  true
  sreadOnly
  false
  sinheritDescription
  false
  svalidateAllowBlank
  true
  LvalidateOnBlur
  true
  LallowDecimals
  true
  LallowNegative
  true
  snotXmlAttribute
  false
  sdescriptors
  xworker.lang.MetaDescriptor3/@attribute
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  label
  @/@allowPrevious
  sname
  isChapter
  slabel
  是否是一个章节
  sinputtype
  truefalse
  sgroup
  Common
  sshowLabel
  true
  sreadOnly
  false
  sdefault
  true
  sinheritDescription
  false
  Sdescription
#$@text#$@
<p>如果为true ，那么运行从后一步向前跳到本步，否则会继续往前跳转。</p>

<p>有些演示可能依赖于前一步，如果从后面跳到这里执行可能会发生错误或混乱。</p>
#$@text#$@
  svalidateAllowBlank
  true
  LvalidateOnBlur
  true
  LallowDecimals
  true
  LallowNegative
  true
  snotXmlAttribute
  false
  sdescriptors
  xworker.lang.MetaDescriptor3/@attribute
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  allowPrevious
  @/@referenceDemoPath
  sname
  referencePath
  sinputtype
  dataSelector
  ssize
  60
  sshowLabel
  true
  sreadOnly
  false
  sinheritDescription
  false
  sdescription
  <p>如果不为空表示引用其他自动演示。</p>
  svalidateAllowBlank
  true
  LvalidateOnBlur
  true
  LallowDecimals
  true
  LallowNegative
  true
  snotXmlAttribute
  false
  sdescriptors
  xworker.lang.MetaDescriptor3/@attribute
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_registDisabled
  false
  sth_mark
  false
  sid
  referenceDemoPath
  @/@description
  sname
  description
  sinputtype
  html
  sshowLabel
  true
  sreadOnly
  false
  sinheritDescription
  false
  svalidateAllowBlank
  true
  LvalidateOnBlur
  true
  LallowDecimals
  true
  LallowNegative
  true
  snotXmlAttribute
  false
  sdescriptors
  xworker.lang.MetaDescriptor3/@attribute
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  description
  @/@SendText
  sname
  SendText
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Speaker
  smodifier
  public
  sinheritDescription
  false
  sicon
  icons/user_comment.png
  sdescription
  <p>向系统发送信息。</p>
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  SendText
    @/@SendText/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@SendText/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      scode
      demo.inputText(self.getString("content"));
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@SendText/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@SendText/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@SendText/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    1000
    sinheritDescription
    false
    sdescription
    <p>这是Sleep的时间。</p>
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@SendText/@content
    sname
    content
    sinputtype
    textarea
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    content
    @/@SendText/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@SysResponse
  sname
  SysResponse
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Speaker
  smodifier
  public
  sinheritDescription
  false
  sicon
  icons/tux.png
  sdescription
  <p>系统回复消息，消息谢谢description里。</p>
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  SysResponse
    @/@SysResponse/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@SysResponse/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      scode
      return;//demo.sysmResponse(self.getMetadata().getPath());
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@SysResponse/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@SysResponse/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@SysResponse/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    5000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@SysResponse/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ShowXml
  sname
  ShowXml
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Content
  smodifier
  public
  sinheritDescription
  false
  sicon
  icons/file/xml.gif
  sdescription
  <p>显示一段XML。</p>
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowXml
    @/@ShowXml/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowXml/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}
demo.showXml(self.getString("content"));
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowXml/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowXml/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowXml/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ShowXml/@content
    sname
    content
    sinputtype
    textarea
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    content
    @/@ShowXml/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ShowHtml
  sname
  ShowHtml
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Speaker
  smodifier
  public
  sinheritDescription
  false
  sicon
  icons/xhtml.png
  sdescription
  <p>显示一个网页。</p>
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowHtml
    @/@ShowHtml/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowHtml/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
import xworker.lang.util.XWorkerUtils;
/*
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}
*/
def url = self.getStringBlankAsNull("url");
if(url == null){
    url = XWorkerUtils.getThingDescUrl(self);
    demo.showHtml(url, false);
}else if(self.getBoolean("isThing")){
    def thing = world.getThing(self.getString("url"));
    url = XWorkerUtils.getThingDescUrl(thing);
    demo.showHtml(url, false);
}else{
    demo.showHtml(self.getString("url"), self.getBoolean("isWebControl"));
}
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowHtml/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowHtml/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowHtml/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ShowHtml/@url
    sname
    url
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    url
    @/@ShowHtml/@isWebControl
    sname
    isWebControl
    sinputtype
    truefalse
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    sdescription
    <p>如果是WebControl只需要输入事物的路径。</p>
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    isWebControl
    @/@ShowHtml/@isThing
    sname
    isThing
    sinputtype
    truefalse
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    false
    sinheritDescription
    false
    sdescription
    <p>如果url是事物，那么显示该事物的描述。</p>
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    isThing
    @/@ShowHtml/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ShowThingDescription
  sname
  ShowThingDescription
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Content
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>显示事物的文档（description属性），如果thingPath为空，那么显示本事物的文档。</p>
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowThingDescription
    @/@ShowThingDescription/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowThingDescription/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
import xworker.lang.util.XWorkerUtils;

/*
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}*/

def path = self.getStringBlankAsNull("thingPath");
if(path == null){
    path = self.getMetadata().getPath();
}
def url = XWorkerUtils.getThingDescUrl(path);
demo.showHtml(url, false);
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowThingDescription/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowThingDescription/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowThingDescription/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    5000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ShowThingDescription/@thingPath
    sname
    thingPath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    thingPath
    @/@ShowThingDescription/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ShowComposite
  sname
  ShowComposite
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Content
  smodifier
  public
  sinheritDescription
  false
  Sdescription
#$@text#$@
<p>显示一个Composite。</p>

<p>&nbsp;</p>
#$@text#$@
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowComposite
    @/@ShowComposite/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowComposite/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def path = self.getStringBlankAsNull("compositePath");
if(path != null){
    demo.showComposite(path);
}else{
    def composite = self.getThing("Composite@0");
    if(composite != null){
        demo.showComposite(composite.getMetadata().getPath());
    }
}
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowComposite/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowComposite/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowComposite/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    5000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ShowComposite/@compositePath
    sname
    compositePath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    compositePath
    @/@ShowComposite/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
    @/@ShowComposite/@Composite
    sname
    Composite
    sdescriptors
    xworker.lang.MetaDescriptor3/@thing
    sextends
    xworker.swt.widgets.Composite
    smany
    true
    seditCols
    2
    sinitialization
    false
    smodifier
    public
    sinheritDescription
    true
    snotXmlAttribute
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    Composite
  @/@EditThing
  sname
  EditThing
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>打开编辑一个事物。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  EditThing
    @/@EditThing/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@EditThing/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def thing = null;

def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def path = self.getString("thingPath");
if(path != null && path.startsWith("var:")){
    path = path.substring(4, path.length());
    thing = actionContext.get(path);
}else{
    thing = world.getThing(path);
}    
if(thing != null){
    demo.editThing(thing);
}else{
    log.warn("AutoDemo:EditThing: thing not exists, path=" + self.getMetadata().getPath());   
}
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@EditThing/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@EditThing/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@EditThing/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@EditThing/@thingPath
    sname
    thingPath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    sdescription
    <p>支持var:开头，从actionContext取事物。</p>
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    thingPath
    @/@EditThing/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@MarkControl
  sname
  MarkControl
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  SWT
  smodifier
  public
  sinheritDescription
  false
  Sdescription
#$@text#$@
<p>标记一个演示区的SWT控件。</p>

<p><strong>可能会标记SWT控件或事物编辑器的属性，下面两个变量上下文可用：</strong></p>

<ul>
	<li><strong>contentActionContext</strong><br />
	显示Composite的变量上下文。<br />
	&nbsp;</li>
	<li><strong>thingEditor</strong><br />
	编辑事物的变量上下文。</li>
</ul>
#$@text#$@
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  MarkControl
    @/@MarkControl/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@MarkControl/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
import ognl.Ognl;
import xworker.swt.design.Designer;
import org.eclipse.swt.widgets.Control;

def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

//通过Ognl获取Control
def obj = null;
if(self.getStringBlankAsNull("path") != null){
    obj = Ognl.getValue(self.getString("path"), actionContext );
}
//如果控件存在，标记控件
if(obj != null && obj instanceof Control){
    obj.getDisplay().asyncExec({    
        Designer.markControl(obj);        
    });
    
    return;
}

//使用事物路径获取
def self = self;
contentComposite.display.asyncExec({
    def thingPath = self.getStringBlankAsNull("controlThingPath");
    if(thingPath != null){
        obj = Designer.findControl(contentComposite, thingPath);
        if(obj == null){
            obj = Designer.findControl(editorComposite, thingPath);
        }                        
    }
    
    //如果控件存在，标记控件
    if(obj != null && obj instanceof Control){
        obj.getDisplay().asyncExec({    
            Designer.markControl(obj);
        });
    }
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@MarkControl/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@MarkControl/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@MarkControl/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@MarkControl/@path
    sname
    path
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    sdescription
    <p>为Ognl的表达式，从演示区的变量上下文中取对象。</p>
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    path
    @/@MarkControl/@controlThingPath
    sname
    controlThingPath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    Sdescription
#$@text#$@
<p>直接指定SWT控件事物的路径，通过事物的路径定位控件。</p>

<p>如果path为空，或path找到的Control为null，那么该属性生效。</p>
#$@text#$@
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    controlThingPath
    @/@MarkControl/@toolTipWidth
    sname
    toolTipWidth
    sgroup
    UnUsed
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    200
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    toolTipWidth
    @/@MarkControl/@toopTipHeight
    sname
    toopTipHeight
    sgroup
    UnUsed
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    100
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    toopTipHeight
    @/@MarkControl/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@UnMapkControl
  sname
  UnMapkControl
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  SWT
  smodifier
  public
  sinheritDescription
  false
  Sdescription
#$@text#$@
<p>标记一个SWT控件，并以此事物作为提示信息。</p>

<p><strong>几个特殊的变量上下文：</strong></p>

<ul>
	<li><strong>contentActionContext</strong><br />
	显示Composite的变量上下文。<br />
	&nbsp;</li>
	<li><strong>thingEditor</strong><br />
	编辑事物的变量上下文。</li>
</ul>
#$@text#$@
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  UnMapkControl
    @/@UnMapkControl/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@UnMapkControl/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
import ognl.Ognl;
import xworker.swt.design.Designer;
import org.eclipse.swt.widgets.Control;

def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

if(self.getStringBlankAsNull("path") != null){
    def obj = Ognl.getValue(self.getString("path"), actionContext);
    if(obj != null){
        Designer.unmarkControl(obj);
        return;
    }    
}

//使用事物路径获取
def self = self;
contentComposite.display.asyncExec({
    def obj = null;
    def thingPath = self.getStringBlankAsNull("controlThingPath");
    if(thingPath != null){
        obj = Designer.findControl(contentComposite, thingPath);
        if(obj == null){
            obj = Designer.findControl(editorComposite, thingPath);
        }                        
    }
    
    //如果控件存在，标记控件
    if(obj != null && obj instanceof Control){
        obj.getDisplay().asyncExec({    
            Designer.unmarkControl(obj);
        });
    }
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@UnMapkControl/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@UnMapkControl/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@UnMapkControl/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@UnMapkControl/@path
    sname
    path
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    path
    @/@UnMapkControl/@controlThingPath
    sname
    controlThingPath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    Sdescription
#$@text#$@
<p>直接指定SWT控件事物的路径，通过事物的路径定位控件。</p>

<p>如果path为空，或path找到的Control为null，那么该属性生效。</p>
#$@text#$@
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    controlThingPath
    @/@UnMapkControl/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@SetThingEditorValue
  sname
  SetThingEditorValue
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  SetThingEditorValue
    @/@SetThingEditorValue/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@SetThingEditorValue/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
import xworker.dataObject.utils.JacksonFormator;

def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def thingEditor = thingEditor;
def value = JacksonFormator.parseObject(self.getString("values"));

if(value != null){    
    thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
        thingEditor.thingContext.actions.doAction("setValues", thingEditor.thingContext, ["values": value]);
    });
}
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@SetThingEditorValue/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@SetThingEditorValue/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@SetThingEditorValue/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@SetThingEditorValue/@values
    sname
    values
    sinputtype
    textarea
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    values
    @/@SetThingEditorValue/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@FocusThingEditorAttribute
  sname
  FocusThingEditorAttribute
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>指定编辑器属性控件获取输入焦点。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  FocusThingEditorAttribute
    @/@FocusThingEditorAttribute/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@FocusThingEditorAttribute/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def tihngEditor = thingEditor;
def self = self;

def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
    thingEditor.thingContext.actions.doAction("focusAttributeInput", thingEditor.thingContext, ["name": self.getString("attributeName")]);
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@FocusThingEditorAttribute/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@FocusThingEditorAttribute/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@FocusThingEditorAttribute/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    1000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@FocusThingEditorAttribute/@attributeName
    sname
    attributeName
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    attributeName
    @/@FocusThingEditorAttribute/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ShowThingEditorAddChild
  sname
  ShowThingEditorAddChild
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>显示添加子节点界面。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowThingEditorAddChild
    @/@ShowThingEditorAddChild/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowThingEditorAddChild/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def tihngEditor = thingEditor;

thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
    thingEditor.thingContext.actions.doAction("showAddChild", thingEditor.thingContext);
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowThingEditorAddChild/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowThingEditorAddChild/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowThingEditorAddChild/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    1000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ShowThingEditorAddChild/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@SetThingEditorAddChildValues
  sname
  SetThingEditorAddChildValues
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>添加子节点界面的表单设置值。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  SetThingEditorAddChildValues
    @/@SetThingEditorAddChildValues/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@SetThingEditorAddChildValues/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
import xworker.dataObject.utils.JacksonFormator;

def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def value = JacksonFormator.parseObject(self.getString("values"));

if(value != null){
    def tihngEditor = thingEditor;
    
    thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
        thingEditor.thingContext.actions.doAction("setAddChildValues", thingEditor.thingContext, ["values": value]);
    });
}
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@SetThingEditorAddChildValues/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@SetThingEditorAddChildValues/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@SetThingEditorAddChildValues/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    1000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@SetThingEditorAddChildValues/@values
    sname
    values
    sinputtype
    textarea
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    values
    @/@SetThingEditorAddChildValues/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@DoThingEditorAddChild
  sname
  DoThingEditorAddChild
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>事物编辑器中执行添加子节点的操作。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  DoThingEditorAddChild
    @/@DoThingEditorAddChild/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@DoThingEditorAddChild/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def tihngEditor = thingEditor;

thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
    thingEditor.thingContext.actions.doAction("doAddChild", thingEditor.thingContext);
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@DoThingEditorAddChild/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@DoThingEditorAddChild/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@DoThingEditorAddChild/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@DoThingEditorAddChild/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@AutoDemo
  sname
  AutoDemo
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.AutoDemo
  smany
  true
  seditCols
  2
  sinitialization
  false
  smodifier
  public
  sinheritDescription
  true
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  AutoDemo
  @/@ShowCode
  sname
  ShowCode
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Content
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>显示代码。</p>
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowCode
    @/@ShowCode/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowCode/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

demo.showCode(self.getString("codeType"), self.getString("code"));
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowCode/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowCode/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowCode/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ShowCode/@codeType
    sname
    codeType
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    codeType
    @/@ShowCode/@code
    sname
    code
    sinputtype
    textarea
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    code
    @/@ShowCode/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ClearUserInput
  sname
  ClearUserInput
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Speaker
  smodifier
  public
  sinheritDescription
  false
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ClearUserInput
    @/@ClearUserInput/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ClearUserInput/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

demo.clearInputText();
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ClearUserInput/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ClearUserInput/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ClearUserInput/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    0
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ClearUserInput/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ShowBlank
  sname
  ShowBlank
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Content
  smodifier
  public
  sinheritDescription
  false
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowBlank
    @/@ShowBlank/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowBlank/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def demo = demo;
demo.executeRunnable({
    demo.layout("blankComposite");
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowBlank/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowBlank/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowBlank/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@SelfDemo
  sname
  AbstractNode
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>自定义的演示内容，需自行实现run方法。</p>
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  SelfDemo
    @/@SelfDemo/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@SelfDemo/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@SelfDemo/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@SelfDemo/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
    @/@SelfDemo/@actions
    sname
    actions
    slabel
    Actions
    sdescriptors
    xworker.lang.MetaDescriptor2/@thing
    sextends
    xworker.lang.actions.Actions
    smany
    true
    seditCols
    2
    Sdescription
#$@text#$@
<p>动作集合，通过子节点可以添加各种动作，动作通常是一个可执行的程序。</p>
<p>事物的第一个动作集合的子事物才可以作为事物的行为，第二个及其他动作集合就不能作为事物的行为使用了，事物的行为默认找第一个动作集合。</p>
<p>事物的run方法一般是这个事物转化为动作之后执行的方法。</p>
#$@text#$@
    szh_label
    动作
    sth_createIndex
    false
    sid
    actions
      @/@SelfDemo/@actions/@name
      sname
      name
      sdescriptors
      xworker.lang.MetaDescriptor2/@attribute
      sid
      name
  @/@ShowLayout
  sname
  ShowLayout
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Content
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>切换界面显示。</p>
  snotXmlAttribute
  false
  sjson_isArray
  false
  sjson_attribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowLayout
    @/@ShowLayout/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowLayout/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def demo = demo;
def self  = self;
if(self.getStringBlankAsNull("content") == null){
    return;
}

demo.executeRunnable({
    demo.layout(self.getString("content"));
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowLayout/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowLayout/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowLayout/@content
    sname
    content
    sinputtype
    select
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    content
      @/@ShowLayout/@content/@blankComposite
      sname
      blankComposite
      svalue
      blankComposite
      sdescriptors
      xworker.lang.MetaDescriptor3/@attribute/@value
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      blankComposite
      @/@ShowLayout/@content/@contentComposite
      sname
      contentComposite
      svalue
      contentComposite
      sdescriptors
      xworker.lang.MetaDescriptor3/@attribute/@value
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      contentComposite
      @/@ShowLayout/@content/@browserComposite
      sname
      browserComposite
      svalue
      browserComposite
      sdescriptors
      xworker.lang.MetaDescriptor3/@attribute/@value
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      browserComposite
      @/@ShowLayout/@content/@editorComposite
      sname
      editorComposite
      svalue
      editorComposite
      sdescriptors
      xworker.lang.MetaDescriptor3/@attribute/@value
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      editorComposite
      @/@ShowLayout/@content/@xmlComposite
      sname
      xmlComposite
      svalue
      xmlComposite
      sdescriptors
      xworker.lang.MetaDescriptor3/@attribute/@value
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      xmlComposite
    @/@ShowLayout/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ShowEditorContent
  sname
  ShowEditorContent
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>显示事物编辑器的编辑界面，一般是从添加子节点界面的返回。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  ShowEditorContent
    @/@ShowEditorContent/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ShowEditorContent/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def tihngEditor = thingEditor;

thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
    thingEditor.thingContext.actions.doAction("showEditor", thingEditor.thingContext);
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ShowEditorContent/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ShowEditorContent/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ShowEditorContent/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    1000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ShowEditorContent/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@SelectAddChildItem
  sname
  SelectAddChildItem
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>选择添加子节点中的一个节点。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  SelectAddChildItem
    @/@SelectAddChildItem/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@SelectAddChildItem/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def tihngEditor = thingEditor;
def self = self;

thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
    thingEditor.thingContext.actions.doAction("selectChildTreeNode", thingEditor.thingContext, ["thingPath": self.getString("thingPath")]);
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@SelectAddChildItem/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@SelectAddChildItem/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@SelectAddChildItem/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    1000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@SelectAddChildItem/@attributeName
    sname
    thingPath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    attributeName
    @/@SelectAddChildItem/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ThingEditorSelectNode
  sname
  ThingEditorSelectNode
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>事物编辑器中选择一个节点。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_registDisabled
  false
  sth_mark
  false
  sid
  ThingEditorSelectNode
    @/@ThingEditorSelectNode/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ThingEditorSelectNode/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

println "xxxxxxxxxxxxxxxx";
def thingEditor = thingEditor;
def self = self;

println thingEditor;
println self;

thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
    thingEditor.thingContext.actions.doAction("selectThing", thingEditor.thingContext, ["thing": self.getString("thingPath")]);
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sswitchResult
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ThingEditorSelectNode/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ThingEditorSelectNode/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ThingEditorSelectNode/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ThingEditorSelectNode/@thingPath
    sname
    thingPath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    sdescription
    <p>支持var:开头，从actionContext取事物。</p>
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    thingPath
    @/@ThingEditorSelectNode/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@ThingEditorDoSave
  sname
  ThingEditorDoSave
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.ide.tools.autodemo.CommonNode
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>事物编辑器保存当前事物。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_registDisabled
  false
  sth_mark
  false
  sid
  ThingEditorDoSave
    @/@ThingEditorDoSave/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    actions
      @/@ThingEditorDoSave/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def tihngEditor = thingEditor;
def self = self;

thingEditor.thingContext.contentComposite.getDisplay().asyncExec({
    thingEditor.thingContext.actions.doAction("save", thingEditor.thingContext);
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      run
    @/@ThingEditorDoSave/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    name
    @/@ThingEditorDoSave/@label
    sname
    label
    ssize
    50
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    label
    @/@ThingEditorDoSave/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    waitTime
    @/@ThingEditorDoSave/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    description
  @/@CreateThingDialog
  sname
  CreateThingDialog
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  EditThing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>打开创建事物的窗口，实际上是在右面显示打开窗口的界面。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_registDisabled
  false
  sth_mark
  false
  sid
  CreateThingDialog
    @/@CreateThingDialog/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    actions
      @/@CreateThingDialog/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

//打开新建事物的窗口
demo.showComposite("xworker.demo.xworker.FakeNewThingDialog/@mainComposite");

//设置属性和名字
def actionContext = actionContext;
def self = self;
demo.executeRunnable({
    def contentActionContext = actionContext.get("contentActionContext");
    if(contentActionContext == null){
        println("contentActionContext is null");
        return;
    }
    def thingName = self.getStringBlankAsNull("thingName");
    if(thingName != null){
        contentActionContext.dataObjectNameText.setText(thingName);
    }    
    
    def descriptorPath = self.getStringBlankAsNull("descriptorPath");
    if(descriptorPath != null){
        contentActionContext.descriptorText.setText(descriptorPath);
    }    
});
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_registDisabled
      false
      sth_mark
      false
      sid
      run
    @/@CreateThingDialog/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    name
    @/@CreateThingDialog/@label
    sname
    label
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    label
    @/@CreateThingDialog/@thingName
    sname
    thingName
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    thingName
    @/@CreateThingDialog/@descriptorPath
    sname
    descriptorPath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    descriptorPath
    @/@CreateThingDialog/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    description
  @/@GroovyScript
  sname
  GroovyScript
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  sextends
  xworker.groovy.GroovyAction
  smany
  true
  seditCols
  2
  sinitialization
  false
  smodifier
  public
  sinheritDescription
  false
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_registDisabled
  false
  sth_mark
  false
  sid
  GroovyScript
  @/@ThingNarrate
  sname
  ThingNarrate
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  smany
  true
  seditCols
  2
  sinitialization
  false
  sgroup
  Thing
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>事物解说员，给定一个事物然后动态生成解说该事物的演示脚本，形成子演示。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_registDisabled
  false
  sth_mark
  false
  sid
  ThingNarrate
    @/@ThingNarrate/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    actions
      @/@ThingNarrate/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
import org.xmeta.Thing;
import xworker.ide.tools.autodemo.AutoDemo;

def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

//要解说的事物
def thingPath = self.getString("thingPath");
def thing = world.getThing(thingPath);
if(thing == null){
    log.warn("thing is null, demo=" + self.getMetadata.getPath());
    return;
}

//创建演示事物
def demoThing = new Thing("xworker.ide.tools.autodemo.AutoDemo");
//根节点必须设置时间
createEditThing(demoThing, thing, thing.getString("demo_waitTime"), true);
//初始化子节点
init(demoThing, thing);

println demoThing.getMetadata().getPath();

//创建子演示
def childDemo = new AutoDemo(demo, demoThing);

def init(demoThing, thing){
    for(child in thing.getChilds()){
        def demo_waitTime = child.getStringBlankAsNull("demo_waitTime");        
        if(demo_waitTime != null){
            createEditThing(demoThing, child, demo_waitTime, false);
        }
        
        init(demoThing, child);
    }
}

def createEditThing(demoThing, thing, waitTime, first){
    //形成说明
    def sys = new Thing("xworker.ide.tools.autodemo.AutoDemo/@SysResponse");
    sys.set("description", thing.getString("description"));
    sys.set("waitTime", "");
    demoThing.addChild(sys);
    
    //打开事物
    def edit = null;
    if(first){
        edit = new Thing("xworker.ide.tools.autodemo.AutoDemo/@EditThing");
        edit.set("isChapter", "true");
    }else{
        edit = new Thing("xworker.ide.tools.autodemo.AutoDemo/@ThingEditorSelectNode");
    }
    edit.set("thingPath", thing.getMetadata().getPath());
    edit.set("waitTime", waitTime);
    
    demoThing.addChild(edit);
    
    
}
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sswitchResult
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_registDisabled
      false
      sth_mark
      false
      sid
      run
    @/@ThingNarrate/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    name
    @/@ThingNarrate/@label
    sname
    label
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    label
    @/@ThingNarrate/@thingPath
    sname
    thingPath
    sinputtype
    dataSelector
    ssize
    60
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    thingPath
    @/@ThingNarrate/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    description
  @/@DemoSelector
  sname
  DemoSelector
  sdescriptors
  xworker.lang.MetaDescriptor3/@thing
  smany
  true
  seditCols
  2
  sinitialization
  false
  smodifier
  public
  sinheritDescription
  false
  sdescription
  <p>给一个界面可以选择执行子演示，如果不选择那么自动演示时可能会跳过。</p>
  snotXmlAttribute
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_registDisabled
  false
  sth_mark
  false
  sid
  DemoSelector
    @/@DemoSelector/@actions
    sname
    actions
    sdescriptors
    xworker.lang.MetaDescriptor3/@actions
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    actions
      @/@DemoSelector/@actions/@run
      sname
      run
      sisSynchronized
      false
      sthrowException
      true
      suseOtherAction
      false
      svarScope
      Local
      sdisableGlobalContext
      false
      Scode
#$@text#$@
def desc = self.getMetadata().getDescription();
if(desc != null && desc.trim() != "" && desc.trim() != "<p></p>"){
    demo.sysmResponse(self.getMetadata().getPath());
}

def path = "xworker.ide.tools.autodemo.DemoSelector/@mainComposite";
demo.showComposite(path, ["thing": self]);
#$@text#$@
      sinterpretationType
      Action
      screateLocalVarScope
      false
      ssaveReturn
      false
      sdebugLog
      false
      sdescriptors
      xworker.lang.actions.Actions/@GroovyAction
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_registDisabled
      false
      sth_mark
      false
      sid
      run
    @/@DemoSelector/@name
    sname
    name
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    name
    @/@DemoSelector/@label
    sname
    label
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    label
    @/@DemoSelector/@waitTime
    sname
    waitTime
    sshowLabel
    true
    sreadOnly
    false
    sdefault
    7000
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    waitTime
    @/@DemoSelector/@description
    sname
    description
    sinputtype
    html
    sshowLabel
    true
    sreadOnly
    false
    sinheritDescription
    false
    svalidateAllowBlank
    true
    LvalidateOnBlur
    true
    LallowDecimals
    true
    LallowNegative
    true
    snotXmlAttribute
    false
    sdescriptors
    xworker.lang.MetaDescriptor3/@attribute
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    description
    @/@DemoSelector/@AutoDemo
    sname
    AutoDemo
    sdescriptors
    xworker.lang.MetaDescriptor3/@thing
    sextends
    xworker.ide.tools.autodemo.AutoDemo
    smany
    true
    seditCols
    2
    sinitialization
    false
    smodifier
    public
    sinheritDescription
    true
    snotXmlAttribute
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    AutoDemo
  @/@5648
  sname
  MenuBar
  sdescriptors
  xworker.lang.MetaDescriptor3/@MenuBar
  sinheritDescription
  false
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_registDisabled
  false
  sth_noThingRegistViewer
  false
  sth_fileMonitor
  false
  sth_mark
  false
  sth_registQueryOnlySelf
  false
  snotXmlAttribute
  false
  sjson_isArray
  false
  sgroupDescriptor
  false
  sid
  5648
    @/@5648/@5649
    sname
    autoDemo
    slabel
    AutoDemo
    ssortWeight
    0
    sdescriptors
    xworker.lang.ThingMenuBar/@Menu
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_noThingRegistViewer
    false
    sth_fileMonitor
    false
    sth_mark
    false
    sth_registQueryOnlySelf
    false
    snotXmlAttribute
    false
    sjson_isArray
    false
    sgroupDescriptor
    false
    sid
    5649
      @/@5648/@5649/@5650
      sname
      execute
      slabel
      执行
      saction
      xworker.ide.tools.autodemo.AutoDemo/@actions/@menu_run
      ssortWeight
      0
      sdescriptors
      xworker.lang.ThingMenuBar/@Menu
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_registDisabled
      false
      sth_noThingRegistViewer
      false
      sth_fileMonitor
      false
      sth_mark
      false
      sth_registQueryOnlySelf
      false
      snotXmlAttribute
      false
      sjson_isArray
      false
      sgroupDescriptor
      false
      sid
      5650
