^1700276740218
@
sname
DesAndExtendsDialog
slabel
DesAndExtendsDialog
sdescriptors
xworker.swt.widgets.Display
  @/@shell
  sname
  shell
  stext
  lang:d=类和继承&en=Classes & Extends
  sNO_TRIM
  false
  sCLOSE
  true
  sTITLE
  true
  sMIN
  false
  sMAX
  false
  sBORDER
  false
  sRESIZE
  true
  sON_TOP
  false
  sTOOL
  false
  sNO_FOCUS
  false
  swidth
  1024
  sheight
  768
  scenterScreen
  true
  spack
  false
  smaximized
  false
  sfullScreen
  false
  sdesign
  true
  sisIde
  false
  sdesignDefaultOpen
  false
  sexitOnDispose
  false
  sH_SCROLL
  false
  sV_SCROLL
  false
  sNO_BACKGROUND
  false
  sNO_MERGE_PAINTS
  false
  sNO_REDRAW_RESIZE
  false
  sNO_RADIO_GROUP
  false
  sEMBEDDED
  false
  sDOUBLE_BUFFERED
  false
  scapture
  false
  senabled
  true
  sredraw
  true
  svisible
  true
  sdescriptors
  xworker.swt.widgets.Display/@Shell
  sid
  shell
    @/@shell/@FillLayout
    sname
    FillLayout
    stype
    SWT.HORIZONTAL
    sdescriptors
    xworker.swt.Layouts/@FillLayout
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    FillLayout
    @/@shell/@mainComposite
    sname
    mainComposite
    sBORDER
    false
    sH_SCROLL
    false
    sV_SCROLL
    false
    sNO_BACKGROUND
    false
    sNO_FOCUS
    false
    sNO_MERGE_PAINTS
    false
    sNO_REDRAW_RESIZE
    false
    sNO_RADIO_GROUP
    false
    sEMBEDDED
    false
    sDOUBLE_BUFFERED
    false
    scapture
    false
    senabled
    true
    sredraw
    true
    svisible
    true
    sdescriptors
    xworker.swt.Widgets/@Composite
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    mainComposite
      @/@shell/@mainComposite/@shellGridLayout
      sname
      mainCompositeGridLayout
      snumColumns
      2
      smakeColumnsEqualWidth
      false
      smarginWidth
      5
      smarginHeight
      5
      smarginLeft
      0
      smarginTop
      0
      smarginRight
      0
      smarginBottom
      0
      shorizontalSpacing
      5
      sverticalSpacing
      5
      sdescriptors
      xworker.swt.Layouts/@GridLayout
      sid
      shellGridLayout
      @/@shell/@mainComposite/@toolBar
      sname
      toolBar
      stype
      HORIZONTAL
      sFLAT
      false
      sWRAP
      false
      sBORDER
      false
      sSHADOW_OUT
      false
      sRIGHT
      false
      scapture
      false
      senabled
      true
      sredraw
      true
      svisible
      true
      sdescriptors
      xworker.swt.Widgets/@ToolBar
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_registDisabled
      false
      sth_mark
      false
      sid
      toolBar
        @/@shell/@mainComposite/@toolBar/@toolbarGridData
        sname
        toolbarGridData
        shorizontalIndent
        0
        swidth
        -1
        sheight
        -1
        shorizontalAlignment
        BEGINNING
        sverticalAlignment
        CENTER
        shorizontalSpan
        1
        sverticalSpan
        1
        sgrabExcessHorizontalSpace
        false
        sgrabExcessVerticalSpace
        false
        sdescriptors
        xworker.swt.layout.LayoutDatas/@GridData
        sinheritDescription
        false
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_registDisabled
        false
        sth_mark
        false
        sid
        toolbarGridData
        @/@shell/@mainComposite/@toolBar/@preItem
        sname
        preItem
        stype
        PUSH
        simage
        icons/arrow_left.png
        senabled
        false
        sdescriptors
        xworker.swt.widgets.ToolBar/@ToolItem
        sinheritDescription
        false
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_registDisabled
        false
        sth_mark
        false
        sid
        preItem
          @/@shell/@mainComposite/@toolBar/@preItem/@listeners
          sname
          listeners
          sdescriptors
          xworker.swt.events.Listeners/@listeners
          sinheritDescription
          false
          sth_createIndex
          false
          sth_registMyChilds
          false
          sth_registDisabled
          false
          sth_mark
          false
          sid
          listeners
            @/@shell/@mainComposite/@toolBar/@preItem/@listeners/@Listener
            sname
            Listener
            stype
            Selection
            sdescriptors
            xworker.swt.events.Listeners/@listeners/@Listener
            sinheritDescription
            false
            sth_createIndex
            false
            sth_registMyChilds
            false
            sth_registDisabled
            false
            sth_mark
            false
            sid
            Listener
              @/@shell/@mainComposite/@toolBar/@preItem/@listeners/@Listener/@preItemSelection
              sname
              preItemSelection
              sisSynchronized
              false
              sthrowException
              true
              suseOtherAction
              false
              svarScope
              Local
              sdisableGlobalContext
              false
              Scode
#$@text#$@
historyIndex--;
if(historyIndex < 0){
    historyIndex = 0;
}
actionContext.g().put("historyIndex", historyIndex);

actions.doAction("setThing", actionContext, "thing",  historys[historyIndex]);
#$@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
              preItemSelection
        @/@shell/@mainComposite/@toolBar/@nextItem
        sname
        nextItem
        stype
        PUSH
        simage
        icons/arrow_right.png
        senabled
        false
        sdescriptors
        xworker.swt.widgets.ToolBar/@ToolItem
        sinheritDescription
        false
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_registDisabled
        false
        sth_mark
        false
        sid
        nextItem
          @/@shell/@mainComposite/@toolBar/@nextItem/@listeners
          sname
          listeners
          sdescriptors
          xworker.swt.events.Listeners/@listeners
          sinheritDescription
          false
          sth_createIndex
          false
          sth_registMyChilds
          false
          sth_registDisabled
          false
          sth_mark
          false
          sid
          listeners
            @/@shell/@mainComposite/@toolBar/@nextItem/@listeners/@Listener
            sname
            Listener
            stype
            Selection
            sdescriptors
            xworker.swt.events.Listeners/@listeners/@Listener
            sinheritDescription
            false
            sth_createIndex
            false
            sth_registMyChilds
            false
            sth_registDisabled
            false
            sth_mark
            false
            sid
            Listener
              @/@shell/@mainComposite/@toolBar/@nextItem/@listeners/@Listener/@preItemSelection
              sname
              preItemSelection
              sisSynchronized
              false
              sthrowException
              true
              suseOtherAction
              false
              svarScope
              Local
              sdisableGlobalContext
              false
              Scode
#$@text#$@
historyIndex++;
if(historyIndex > historys.size() - 1){
    historyIndex = historys.size() - 1;
}
actionContext.g().put("historyIndex", historyIndex);

actions.doAction("setThing", actionContext, "thing",  historys[historyIndex]);
#$@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
              preItemSelection
      @/@shell/@mainComposite/@thingPath
      sname
      thingPath
      sstyle
      SINGLE
      sH_SCROLL
      false
      sV_SCROLL
      false
      sWRAP
      false
      sREAD_ONLY
      false
      sPASSWORD
      false
      sSEARCH
      false
      sCANCEL
      false
      sBORDER
      true
      salign
      LEFT
      scapture
      false
      senabled
      true
      sredraw
      true
      svisible
      true
      sdescriptors
      xworker.swt.Widgets/@Text
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_registDisabled
      false
      sth_mark
      false
      sid
      thingPath
        @/@shell/@mainComposite/@thingPath/@GridData
        sname
        GridData
        sstyle
        FILL_HORIZONTAL
        shorizontalIndent
        0
        swidth
        -1
        sheight
        -1
        shorizontalAlignment
        BEGINNING
        sverticalAlignment
        CENTER
        shorizontalSpan
        1
        sverticalSpan
        1
        sgrabExcessHorizontalSpace
        false
        sgrabExcessVerticalSpace
        false
        sdescriptors
        xworker.swt.layout.LayoutDatas/@GridData
        sinheritDescription
        false
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_registDisabled
        false
        sth_mark
        false
        sid
        GridData
        @/@shell/@mainComposite/@thingPath/@Listeners
        sname
        Listeners
        sdescriptors
        xworker.swt.widgets.Widget/@Listeners
        sinheritDescription
        false
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_registDisabled
        false
        sth_mark
        false
        sid
        Listeners
          @/@shell/@mainComposite/@thingPath/@Listeners/@thingPathDefaultSelection
          sname
          thingPathDefaultSelection
          stype
          DefaultSelection
          sdescriptors
          xworker.swt.events.Listeners/@listeners/@Listener
          sinheritDescription
          false
          sth_createIndex
          false
          sth_registMyChilds
          false
          sth_registDisabled
          false
          sth_mark
          false
          sid
          thingPathDefaultSelection
            @/@shell/@mainComposite/@thingPath/@Listeners/@thingPathDefaultSelection/@GroovyAction
            sname
            GroovyAction
            sisSynchronized
            false
            sthrowException
            true
            suseOtherAction
            false
            svarScope
            Local
            sdisableGlobalContext
            false
            Scode
#$@text#$@
def thing = world.getThing(thingPath.getText().trim());
if(thing == null){
    thingNotExists(actionContext);
}else{
    actions.doAction("setThing", actionContext, "thing", thing);
}
#$@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
            GroovyAction
              @/@shell/@mainComposite/@thingPath/@Listeners/@thingPathDefaultSelection/@GroovyAction/@ActionDefined
              sname
              ActionDefined
              sdescriptors
              xworker.lang.actions.Inout/@ActionDefined
              sinheritDescription
              false
              sth_createIndex
              false
              sth_registMyChilds
              false
              sth_registDisabled
              false
              sth_mark
              false
              sid
              ActionDefined
                @/@shell/@mainComposite/@thingPath/@Listeners/@thingPathDefaultSelection/@GroovyAction/@ActionDefined/@thingNotExists
                sname
                thingNotExists
                sshell
                ognl:mainComposite.getShell()
                sicon
                ICON_WARNING
                sbuttons
                OK
                stitle
                lang:d=打开事物&en=Open Thing
                smessage
                lang:d=事物不存在!&en=Thing not exists.
                sinterpretationType
                Self
                sattributeTemplate
                false
                schildsAttributeTemplate
                false
                svarScope
                Local
                sisSynchronized
                false
                sthrowException
                true
                suseOtherAction
                false
                screateLocalVarScope
                false
                ssaveReturn
                false
                sdisableGlobalContext
                false
                sdebugLog
                false
                sdescriptors
                xworker.swt.actions.MessageBoxActions/@MessageBox
                sinheritDescription
                false
                sth_createIndex
                false
                sth_registMyChilds
                false
                sth_registDisabled
                false
                sth_mark
                false
                sid
                thingNotExists
      @/@shell/@mainComposite/@mainSashForm
      sname
      mainSashForm
      sstyle
      HORIZONTAL
      sSMOOTH
      false
      sweights
      40,60
      sBORDER
      false
      sH_SCROLL
      false
      sV_SCROLL
      false
      sNO_BACKGROUND
      false
      sNO_FOCUS
      false
      sNO_MERGE_PAINTS
      false
      sNO_REDRAW_RESIZE
      false
      sNO_RADIO_GROUP
      false
      sEMBEDDED
      false
      sDOUBLE_BUFFERED
      false
      scapture
      false
      senabled
      true
      sredraw
      true
      svisible
      true
      sdescriptors
      xworker.swt.Widgets/@SashForm
      sinheritDescription
      false
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_registDisabled
      false
      sth_mark
      false
      sid
      mainSashForm
        @/@shell/@mainComposite/@mainSashForm/@mainSashFormGridData
        sname
        mainSashFormGridData
        sstyle
        FILL_BOTH
        shorizontalIndent
        0
        swidth
        -1
        sheight
        -1
        shorizontalAlignment
        BEGINNING
        sverticalAlignment
        CENTER
        shorizontalSpan
        2
        sverticalSpan
        1
        sgrabExcessHorizontalSpace
        false
        sgrabExcessVerticalSpace
        false
        sdescriptors
        xworker.swt.layout.LayoutDatas/@GridData
        sinheritDescription
        false
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_registDisabled
        false
        sth_mark
        false
        sid
        mainSashFormGridData
        @/@shell/@mainComposite/@mainSashForm/@thingSashForm
        sname
        thingSashForm
        sstyle
        VERTICAL
        sSMOOTH
        false
        sweights
        40,30,30
        sBORDER
        false
        sH_SCROLL
        false
        sV_SCROLL
        false
        sNO_BACKGROUND
        false
        sNO_FOCUS
        false
        sNO_MERGE_PAINTS
        false
        sNO_REDRAW_RESIZE
        false
        sNO_RADIO_GROUP
        false
        sEMBEDDED
        false
        sDOUBLE_BUFFERED
        false
        scapture
        false
        senabled
        true
        sredraw
        true
        svisible
        true
        sdescriptors
        xworker.swt.Widgets/@SashForm
        sinheritDescription
        false
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_registDisabled
        false
        sth_mark
        false
        sid
        thingSashForm
          @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup
          sname
          descriptorsGroup
          stext
          lang:d=类：&en=Classes:
          sstyle
          SHADOW_ETCHED_IN
          sBORDER
          false
          sH_SCROLL
          false
          sV_SCROLL
          false
          sNO_BACKGROUND
          false
          sNO_FOCUS
          false
          sNO_MERGE_PAINTS
          false
          sNO_REDRAW_RESIZE
          false
          sNO_RADIO_GROUP
          false
          sEMBEDDED
          false
          sDOUBLE_BUFFERED
          false
          scapture
          false
          senabled
          true
          sredraw
          true
          svisible
          true
          sdescriptors
          xworker.swt.Widgets/@Group
          sid
          descriptorsGroup
            @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsGroupFillLayout
            sname
            descriptorsGroupFillLayout
            stype
            SWT.HORIZONTAL
            sdescriptors
            xworker.swt.Layouts/@FillLayout
            sid
            descriptorsGroupFillLayout
            @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsTable
            sname
            descriptorsTable
            sselectStyle
            SINGLE
            sV_SCROLL
            true
            sH_SCROLL
            true
            sCHECK
            false
            sFULL_SELECTION
            true
            sHIDE_SELECTION
            false
            sBORDER
            false
            slineVisible
            true
            smultipleColumns
            true
            sheaderVisible
            true
            ssortIndicator
            true
            smoveableColumns
            true
            sheadImages
            false
            ssubImages
            false
            sVIRTUAL
            false
            scolumnNames
            ["name", "path"] as String[]
            sdescriptors
            xworker.swt.Widgets/@DataTable
            sid
            descriptorsTable
              @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsTable/@dNameColumn
              sname
              dNameColumn
              stext
              label:xworker.swt.ide.worldexplorer.swt.i18n.I18nResource/@thingTableColumn/@name
              swidth
              0
              sdescriptors
              xworker.swt.xworker.DataTable/@TableColumn
              sid
              dNameColumn
              @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsTable/@dPathColumn
              sname
              dPathColumn
              stext
              label:xworker.swt.ide.worldexplorer.swt.i18n.I18nResource/@thingTableColumn/@path
              swidth
              560
              sdescriptors
              xworker.swt.xworker.DataTable/@TableColumn
              sid
              dPathColumn
              @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsTable/@listeners
              sname
              listeners
              sdescriptors
              xworker.swt.events.Listeners/@listeners
              sid
              listeners
                @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsTable/@listeners/@descriptorsTableSelection
                sname
                descriptorsTableSelection
                stype
                Selection
                sdescriptors
                xworker.swt.events.Listeners/@listeners/@Listener
                sid
                descriptorsTableSelection
                  @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsTable/@listeners/@descriptorsTableSelection/@GroovyAction
                  sname
                  GroovyAction
                  sisSynchronized
                  false
                  sthrowException
                  true
                  suseOtherAction
                  false
                  svarScope
                  Global
                  sdisableGlobalContext
                  false
                  Scode
#$@text#$@
import xworker.lang.util.XWorkerUtils;
import xworker.swt.util.SwtUtils;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.TableItem;

//获取选中的事物路径
def item = event.widget.getSelection()[0];
actionContext.getScope(0).put("path", item.getData().path);

//在浏览器中显示文档
def thing = world.getThing(item.getData().path);
SwtUtils.setThingDesc(thing, browser);

//动作文档
def actionThings = thing.getActionsThings();
actionsTable.removeAll();
def acs = [];
def acss = [:];
for(ac in actionThings){
    acs.add(ac.metadata.name);
    acss.put(ac.metadata.name, ac.metadata.path);
}
Collections.sort(acs);

for(ac in acs){
    def titem = new TableItem(actionsTable, SWT.NONE);
    titem.setText([ac] as String[]);
    titem.setData(["path":acss.get(ac)]);
}
#$@text#$@
                  sinterpretationType
                  Action
                  screateLocalVarScope
                  false
                  ssaveReturn
                  false
                  sswitchResult
                  false
                  sdebugLog
                  false
                  sdescriptors
                  xworker.lang.actions.Actions/@GroovyAction
                  sid
                  GroovyAction
                @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsTable/@listeners/@descriptorsTableDefaultSelection
                sname
                descriptorsTableDefaultSelection
                stype
                DefaultSelection
                sdescriptors
                xworker.swt.events.Listeners/@listeners/@Listener
                sid
                descriptorsTableDefaultSelection
                  @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@descriptorsGroup/@descriptorsTable/@listeners/@descriptorsTableDefaultSelection/@GroovyAction
                  sname
                  GroovyAction
                  sisSynchronized
                  false
                  sthrowException
                  true
                  suseOtherAction
                  false
                  svarScope
                  Global
                  sdisableGlobalContext
                  false
                  Scode
#$@text#$@
import org.eclipse.swt.SWT;
import xworker.lang.util.XWorkerUtils;

def item = event.widget.getSelection()[0];
def thing = world.getThing(item.getData().path);
if(thing != null){
    if((event.stateMask & SWT.CTRL) == SWT.CTRL){
        actions.doAction("setThing", actionContext, "thing", thing);
    }else{        
        XWorkerUtils.ideOpenThing(thing);
        shell.dispose();
    }
}
#$@text#$@
                  sinterpretationType
                  Action
                  screateLocalVarScope
                  false
                  ssaveReturn
                  false
                  sdebugLog
                  false
                  sdescriptors
                  xworker.lang.actions.Actions/@GroovyAction
                  sid
                  GroovyAction
          @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@extendsGroup
          sname
          extendsGroup
          stext
          lang:d=继承：&en=Extends:
          sstyle
          SHADOW_ETCHED_IN
          sBORDER
          false
          sH_SCROLL
          false
          sV_SCROLL
          false
          sNO_BACKGROUND
          false
          sNO_FOCUS
          false
          sNO_MERGE_PAINTS
          false
          sNO_REDRAW_RESIZE
          false
          sNO_RADIO_GROUP
          false
          sEMBEDDED
          false
          sDOUBLE_BUFFERED
          false
          scapture
          false
          senabled
          true
          sredraw
          true
          svisible
          true
          sdescriptors
          xworker.swt.Widgets/@Group
          sid
          extendsGroup
            @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@extendsGroup/@extendsGroupFillLayout
            sname
            extendsGroupFillLayout
            stype
            SWT.HORIZONTAL
            sdescriptors
            xworker.swt.Layouts/@FillLayout
            sid
            extendsGroupFillLayout
            @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@extendsGroup/@extendsTable
            sname
            extendsTable
            sselectStyle
            SINGLE
            sV_SCROLL
            true
            sH_SCROLL
            true
            sCHECK
            false
            sFULL_SELECTION
            true
            sHIDE_SELECTION
            false
            sBORDER
            false
            slineVisible
            true
            smultipleColumns
            true
            sheaderVisible
            true
            ssortIndicator
            true
            smoveableColumns
            true
            sheadImages
            false
            ssubImages
            false
            sVIRTUAL
            false
            scolumnNames
            ["name", "path"] as String[]
            sdescriptors
            xworker.swt.Widgets/@DataTable
            sid
            extendsTable
              @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@extendsGroup/@extendsTable/@eNameColumn
              sname
              eNameColumn
              stext
              label:xworker.swt.ide.worldexplorer.swt.i18n.I18nResource/@thingTableColumn/@name
              swidth
              0
              sdescriptors
              xworker.swt.xworker.DataTable/@TableColumn
              sid
              eNameColumn
              @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@extendsGroup/@extendsTable/@ePathColumn
              sname
              ePathColumn
              stext
              label:xworker.swt.ide.worldexplorer.swt.i18n.I18nResource/@thingTableColumn/@path
              swidth
              560
              sdescriptors
              xworker.swt.xworker.DataTable/@TableColumn
              sid
              ePathColumn
              @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@extendsGroup/@extendsTable/@listeners
              sname
              listeners
              sdescriptors
              xworker.swt.events.Listeners/@listeners
              sid
              listeners
                @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@extendsGroup/@extendsTable/@listeners/@extendsTableSelection
                sname
                extendsTableSelection
                stype
                Selection
                sref
                descriptorsTableSelection
                sdescriptors
                xworker.swt.events.Listeners/@listeners/@Listener
                sid
                extendsTableSelection
                @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@extendsGroup/@extendsTable/@listeners/@extendsTableDefaultSelection
                sname
                extendsTableDefaultSelection
                stype
                DefaultSelection
                sref
                descriptorsTableDefaultSelection
                sdescriptors
                xworker.swt.events.Listeners/@listeners/@Listener
                sid
                extendsTableDefaultSelection
          @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@actionGroup
          sname
          actionGroup
          stext
          lang:d=动作&en=Actions
          sstyle
          SHADOW_ETCHED_IN
          sBORDER
          false
          sH_SCROLL
          false
          sV_SCROLL
          false
          sNO_BACKGROUND
          false
          sNO_FOCUS
          false
          sNO_MERGE_PAINTS
          false
          sNO_REDRAW_RESIZE
          false
          sNO_RADIO_GROUP
          false
          sEMBEDDED
          false
          sDOUBLE_BUFFERED
          false
          scapture
          false
          senabled
          true
          sredraw
          true
          svisible
          true
          sdescriptors
          xworker.swt.Widgets/@Group
          sinheritDescription
          false
          sth_createIndex
          false
          sth_registMyChilds
          false
          sth_registDisabled
          false
          sth_mark
          false
          sid
          actionGroup
            @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@actionGroup/@extendsGroupFillLayout
            sname
            actionsGroupFillLayout
            stype
            SWT.HORIZONTAL
            sdescriptors
            xworker.swt.Layouts/@FillLayout
            sid
            extendsGroupFillLayout
            @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@actionGroup/@actionsTable
            sname
            actionsTable
            sselectStyle
            SINGLE
            sV_SCROLL
            true
            sH_SCROLL
            true
            sCHECK
            false
            sFULL_SELECTION
            true
            sHIDE_SELECTION
            true
            sBORDER
            false
            slineVisible
            true
            smultipleColumns
            true
            sheaderVisible
            true
            ssortIndicator
            true
            smoveableColumns
            true
            sheadImages
            false
            ssubImages
            false
            sVIRTUAL
            false
            scapture
            false
            senabled
            true
            sredraw
            true
            svisible
            true
            sdescriptors
            xworker.swt.Widgets/@Table
            sinheritDescription
            false
            sth_createIndex
            false
            sth_registMyChilds
            false
            sth_registDisabled
            false
            sth_mark
            false
            sid
            actionsTable
              @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@actionGroup/@actionsTable/@ePathColumn
              sname
              ePathColumn
              stext
              lang:d=名称&en=Name
              swidth
              560
              sdescriptors
              xworker.swt.xworker.DataTable/@TableColumn
              sid
              ePathColumn
              @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@actionGroup/@actionsTable/@listeners
              sname
              listeners
              sdescriptors
              xworker.swt.events.Listeners/@listeners
              sid
              listeners
                @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@actionGroup/@actionsTable/@listeners/@extendsTableSelection
                sname
                actionsTableSelection
                stype
                Selection
                sdescriptors
                xworker.swt.events.Listeners/@listeners/@Listener
                sid
                extendsTableSelection
                  @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@actionGroup/@actionsTable/@listeners/@extendsTableSelection/@GroovyAction
                  sname
                  GroovyAction
                  sisSynchronized
                  false
                  sthrowException
                  true
                  suseOtherAction
                  false
                  svarScope
                  Local
                  sdisableGlobalContext
                  false
                  Scode
#$@text#$@
import xworker.lang.util.XWorkerUtils;
import xworker.swt.util.SwtUtils;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.TableItem;

//获取选中的事物路径
def item = event.widget.getSelection()[0];
actionContext.getScope(0).put("path", item.getData().path);

//在浏览器中显示文档
def thing = world.getThing(item.getData().path);
SwtUtils.setThingDesc(thing, browser);
#$@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
                  GroovyAction
                @/@shell/@mainComposite/@mainSashForm/@thingSashForm/@actionGroup/@actionsTable/@listeners/@extendsTableDefaultSelection
                sname
                actionsTableDefaultSelection
                stype
                DefaultSelection
                sref
                descriptorsTableDefaultSelection
                sdescriptors
                xworker.swt.events.Listeners/@listeners/@Listener
                sid
                extendsTableDefaultSelection
        @/@shell/@mainComposite/@mainSashForm/@browser
        sname
        browser
        sWEBKIT
        false
        sjavascriptEnabled
        true
        sdescriptors
        xworker.swt.Widgets/@Browser
        sinheritDescription
        false
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_registDisabled
        false
        sth_mark
        false
        sid
        browser
          @/@shell/@mainComposite/@mainSashForm/@browser/@UtilBrowser
          sname
          UtilBrowser
          sdescriptors
          xworker.swt.browser.Browser/@UtilBrowser
          sinheritDescription
          false
          sth_createIndex
          false
          sth_registMyChilds
          false
          sth_registDisabled
          false
          sth_mark
          false
          sid
          UtilBrowser
      @/@shell/@mainComposite/@actions
      sname
      actions
      sdescriptors
      xworker.swt.Widgets/@actions
      sid
      actions
        @/@shell/@mainComposite/@actions/@init
        sname
        setThing
        sisSynchronized
        false
        sthrowException
        true
        suseOtherAction
        false
        svarScope
        Global
        sdisableGlobalContext
        false
        Scode
#$@text#$@
import xworker.lang.util.XWorkerUtils;
import xworker.swt.util.SwtUtils;

if(actionContext.get("descriptorsTable") == null){
    return;
}

//增加到history中
if(actionContext.get("historys") == null){
    def historys = [];
    historys.add(thing);
    actionContext.g().put("historys", historys);
    def historyIndex = 0;
    actionContext.g().put("historyIndex", historyIndex);
}else{   
    if(historyIndex < (historys.size() - 1)){
        if(thing != historys[historyIndex]){
            //移除后面的
            while(historys.size() > (historyIndex + 1)){
                historys.remove(historys.size() - 1);
            }
            historys.add(thing);
            historyIndex = historys.size() - 1;
            actionContext.g().put("historyIndex", historyIndex);
        }
    }else{
        historys.add(thing);
        historyIndex = historys.size() - 1;
    }
    
    //println historys;
    //println historyIndex;
    actionContext.g().put("historyIndex", historyIndex);
    if(historys.size() > 1){
        if(historyIndex > 0){
            preItem.setEnabled(true);
        }else{
            preItem.setEnabled(false);
        }
        if(historyIndex < historys.size() - 1){
            nextItem.setEnabled(true);
        }else{
                nextItem.setEnabled(false);
        }
    }else{
        preItem.setEnabled(false);
        nextItem.setEnabled(false);
    }
}

descriptorsTable.removeAll();
extendsTable.removeAll();
actionsTable.removeAll();
browser.setText("");

//在浏览器中显示文档
SwtUtils.setThingDesc(thing, browser);

thingPath.setText(thing.getMetadata().getPath());

def dess = [:];
for(descriptor in thing.getAllDescriptors()){
    if(dess.get(descriptor.metadata.path) != null){
        continue;
    }
    dess.put(descriptor.metadata.path, descriptor);
    
    descriptorsTable.updateRow(null, ["name": descriptor.metadata.name, "path":descriptor.metadata.path]);    
}

def exss = [:];
for(exend in thing.getAllExtends()){
    if(exss.get(exend.metadata.path) != null){
        continue;
    }
    exss.put(exend.metadata.path, exend);

    extendsTable.updateRow(null, ["name": exend.metadata.name, "path":exend.metadata.path]);    
}
#$@text#$@
        sinterpretationType
        Action
        screateLocalVarScope
        false
        ssaveReturn
        false
        sswitchResult
        false
        sdebugLog
        false
        sdescriptors
        xworker.lang.actions.Actions/@GroovyAction
        sid
        init
