^1651569059484
@
sname
shell
stext
lang:d=菜单&en=Menu
sNO_TRIM
false
sCLOSE
true
sTITLE
true
sMIN
false
sMAX
false
sBORDER
false
sRESIZE
true
sON_TOP
false
sTOOL
false
sNO_FOCUS
false
swidth
550
sheight
600
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
slabel
IdeMenuEditor
scapture
false
senabled
true
sredraw
true
svisible
true
sdescriptors
xworker.swt.widgets.Shell
sth_createIndex
false
sth_registMyChilds
false
sth_mark
false
  @/@shellGridLayout
  sname
  shellGridLayout
  snumColumns
  2
  smakeColumnsEqualWidth
  false
  smarginWidth
  5
  smarginHeight
  5
  smarginLeft
  0
  smarginTop
  0
  smarginRight
  0
  smarginBottom
  0
  shorizontalSpacing
  5
  sverticalSpacing
  5
  slabel
  shellGridLayout
  sdescriptors
  xworker.swt.Layouts/@GridLayout
  sid
  shellGridLayout
  @/@menuTree
  sname
  menuTree
  sselectStyle
  SINGLE
  sV_SCROLL
  true
  sH_SCROLL
  true
  sCHECK
  false
  sFULL_SELECTION
  false
  sHIDE_SELECTION
  true
  sBORDER
  true
  slineVisible
  false
  smultipleColumns
  false
  sheaderVisible
  false
  ssortIndicator
  true
  smoveableColumns
  false
  sheadImages
  false
  ssubImages
  false
  scheckSelection
  false
  scapture
  false
  senabled
  true
  sredraw
  true
  stoolTipText
  选择双击可以打开菜单定义
  svisible
  true
  slabel
  menuTree
  sdescriptors
  xworker.swt.Widgets/@Tree
  sid
  menuTree
    @/@menuTree/@menuTreeGridData
    sname
    menuTreeGridData
    sstyle
    FILL_BOTH
    shorizontalIndent
    0
    swidth
    -1
    sheight
    -1
    shorizontalAlignment
    BEGINNING
    sverticalAlignment
    CENTER
    shorizontalSpan
    1
    sverticalSpan
    1
    sgrabExcessHorizontalSpace
    false
    sgrabExcessVerticalSpace
    false
    slabel
    menuTreeGridData
    sdescriptors
    xworker.swt.layout.LayoutDatas/@GridData
    sid
    menuTreeGridData
    @/@menuTree/@5808
    sname
    Listeners
    slabel
    Listeners
    sdescriptors
    xworker.swt.widgets.Widget/@Listeners
    sid
    5808
      @/@menuTree/@5808/@5809
      sname
      menuTreeDefaultSelection
      stype
      DefaultSelection
      slabel
      menuTreeDefaultSelection
      sdescriptors
      xworker.swt.events.Listeners/@listeners/@Listener
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      5809
        @/@menuTree/@5808/@5809/@5810
        sname
        menuTreeAction
        sisSynchronized
        false
        sthrowException
        true
        suseOtherAction
        false
        svarScope
        Global
        sdisableGlobalContext
        false
        Scode
#$@text#$@
import xworker.lang.util.XWorkerUtils;
def thing = menuTree.getSelection()[0].getData();
XWorkerUtils.ideOpenThing(thing);

shell.dispose();
#$@text#$@
        sinterpretationType
        Action
        screateLocalVarScope
        false
        ssaveReturn
        false
        sdescriptors
        xworker.lang.actions.Actions/@GroovyAction
        sid
        5810
      @/@menuTree/@5808/@menuTreeSelection
      sname
      menuTreeSelection
      stype
      Selection
      sdescriptors
      xworker.swt.events.Listeners/@listeners/@Listener
      sth_createIndex
      false
      sth_registMyChilds
      false
      sth_mark
      false
      sid
      menuTreeSelection
        @/@menuTree/@5808/@menuTreeSelection/@menuTreeSelection
        sname
        menuTreeSelection
        sisSynchronized
        false
        sthrowException
        true
        suseOtherAction
        false
        svarScope
        Local
        sdisableGlobalContext
        false
        Scode
#$@text#$@
def thing = menuTree.getSelection()[0].getData();
String info = "Type:" + thing.getThingName() + "\n";
info = info + "nodeId:" + getString(thing, "nodeId")
info = info + "parentNodeIds:" + getString(thing, "parentNodeIds")
info = info + "sortWeight:" + getString(thing, "sortWeight")
infoText.setText(info);

editButton.setEnabled(true);

def getString(thing, String name){
    def v = thing.getString(name);
    if(v == null){
        return "\n";
    }else{
        return v + "\n";
    }
}
#$@text#$@
        sinterpretationType
        Action
        screateLocalVarScope
        false
        ssaveReturn
        false
        sdebugLog
        false
        sdescriptors
        xworker.lang.actions.Actions/@GroovyAction
        sth_createIndex
        false
        sth_registMyChilds
        false
        sth_mark
        false
        sid
        menuTreeSelection
  @/@infoText
  sname
  infoText
  sstyle
  MULTI
  sFULL_SELECTION
  false
  sREAD_ONLY
  false
  sWRAP
  false
  sH_SCROLL
  false
  sV_SCROLL
  false
  sBORDER
  false
  salign
  LEFT
  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/@StyledText
  sth_createIndex
  false
  sth_registMyChilds
  false
  sth_mark
  false
  sid
  infoText
    @/@infoText/@infoTextGridData
    sname
    infoTextGridData
    sstyle
    FILL_VERTICAL
    shorizontalIndent
    0
    swidth
    200
    shorizontalAlignment
    BEGINNING
    sverticalAlignment
    CENTER
    shorizontalSpan
    1
    sverticalSpan
    1
    sgrabExcessHorizontalSpace
    false
    sgrabExcessVerticalSpace
    false
    sdescriptors
    xworker.swt.Commons/@GridData
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_mark
    false
    sid
    infoTextGridData
  @/@2028
  sname
  buttonComposite
  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
  sid
  2028
    @/@2028/@2029
    sname
    buttonCompositeGridData
    sstyle
    FILL_HORIZONTAL
    shorizontalIndent
    0
    swidth
    -1
    sheight
    -1
    shorizontalAlignment
    END
    sverticalAlignment
    CENTER
    shorizontalSpan
    2
    sverticalSpan
    1
    sgrabExcessHorizontalSpace
    false
    sgrabExcessVerticalSpace
    false
    slabel
    buttonCompositeGridData
    sdescriptors
    xworker.swt.layout.LayoutDatas/@GridData
    sid
    2029
    @/@2028/@2030
    sname
    buttonCompositeRowLayout
    sfill
    false
    sjustify
    false
    smarginWidth
    0
    smarginHeight
    0
    smarginLeft
    3
    smarginTop
    3
    smarginRight
    3
    smarginBottom
    3
    spack
    true
    sspacing
    3
    stype
    SWT.HORIZONTAL
    swrap
    true
    slabel
    buttonCompositeRowLayout
    sdescriptors
    xworker.swt.Layouts/@RowLayout
    sid
    2030
    @/@2028/@20321
    sname
    editButton
    stext
    lang:d=编辑&en=Edit
    stype
    SWT.PUSH
    sflat
    false
    sborder
    false
    sselected
    false
    scapture
    false
    senabled
    false
    sredraw
    true
    spack
    false
    svisible
    true
    slabel
    editButton
    sdescriptors
    xworker.swt.Widgets/@Button
    sinheritDescription
    false
    sth_createIndex
    false
    sth_registMyChilds
    false
    sth_registDisabled
    false
    sth_mark
    false
    sid
    20321
      @/@2028/@20321/@2033
      sname
      RowData
      sexclude
      false
      swidth
      80
      sheight
      -1
      slabel
      RowData
      sdescriptors
      xworker.swt.layout.LayoutDatas/@RowData
      sid
      2033
      @/@2028/@20321/@2223
      sname
      Listeners
      slabel
      Listeners
      sdescriptors
      xworker.swt.widgets.Widget/@Listeners
      sid
      2223
        @/@2028/@20321/@2223/@2224
        sname
        editButtonSelection
        stype
        Selection
        slabel
        closeButtonSelection
        sdescriptors
        xworker.swt.events.Listeners/@listeners/@Listener
        sid
        2224
          @/@2028/@20321/@2223/@2224/@RefAction
          sname
          RefAction
          srefActionPath
          xworker.ide.worldexplorer.swt.util.IdeMenuEditor/@menuTree/@5808/@5809/@5810
          sinterpretationType
          Self
          sattributeTemplate
          false
          schildsAttributeTemplate
          false
          svarScope
          Local
          sisSynchronized
          false
          sthrowException
          true
          suseOtherAction
          false
          screateLocalVarScope
          false
          ssaveReturn
          false
          sdisableGlobalContext
          false
          sdebugLog
          false
          sdescriptors
          xworker.lang.actions.Actions/@RefAction
          sinheritDescription
          false
          sth_createIndex
          false
          sth_registMyChilds
          false
          sth_registDisabled
          false
          sth_mark
          false
          sid
          RefAction
    @/@2028/@2032
    sname
    closeButton
    stext
    lang:d=关闭&en=Close
    stype
    SWT.PUSH
    sflat
    false
    sborder
    false
    sselected
    false
    scapture
    false
    senabled
    true
    sredraw
    true
    spack
    false
    svisible
    true
    slabel
    closeButton
    sdescriptors
    xworker.swt.Widgets/@Button
    sid
    2032
      @/@2028/@2032/@2033
      sname
      RowData
      sexclude
      false
      swidth
      80
      sheight
      -1
      slabel
      RowData
      sdescriptors
      xworker.swt.layout.LayoutDatas/@RowData
      sid
      2033
      @/@2028/@2032/@2223
      sname
      Listeners
      slabel
      Listeners
      sdescriptors
      xworker.swt.widgets.Widget/@Listeners
      sid
      2223
        @/@2028/@2032/@2223/@2224
        sname
        closeButtonSelection
        stype
        Selection
        slabel
        closeButtonSelection
        sdescriptors
        xworker.swt.events.Listeners/@listeners/@Listener
        sid
        2224
          @/@2028/@2032/@2223/@2224/@Dispose
          sname
          Dispose
          scontrolList
          shell
          sinterpretationType
          Self
          sattributeTemplate
          false
          schildsAttributeTemplate
          false
          svarScope
          Local
          sisSynchronized
          false
          sthrowException
          true
          suseOtherAction
          false
          screateLocalVarScope
          false
          ssaveReturn
          false
          sdisableGlobalContext
          false
          sdescriptors
          xworker.swt.actions.ControlActions/@Dispose
          sth_createIndex
          false
          sth_registMyChilds
          false
          sth_mark
          false
          sid
          Dispose
  @/@init
  sname
  init
  sisSynchronized
  false
  sthrowException
  true
  suseOtherAction
  false
  svarScope
  Global
  sdisableGlobalContext
  false
  Scode
#$@text#$@
import xworker.function.util.FunctionsUtil;

FunctionsUtil.attachToTree(menuTree, actionContext);

for(item in menuTree.getItems()){
    expand(item);
}

def expand(item){
    for(childItem in item.getItems()){
        expand(childItem);
    }
    item.setExpanded(true);
}
#$@text#$@
  sinterpretationType
  Action
  screateLocalVarScope
  false
  ssaveReturn
  false
  sdescriptors
  xworker.swt.Widgets/@Code
  sid
  init
