mirror of https://gitlab.com/basile.b/dexed.git
deleted static explorer
This commit is contained in:
parent
8a34000cc0
commit
2f7ebb60c6
|
@ -1,400 +0,0 @@
|
||||||
inherited CEStaticExplorerWidget: TCEStaticExplorerWidget
|
|
||||||
Left = 1548
|
|
||||||
Height = 430
|
|
||||||
Top = 457
|
|
||||||
Width = 310
|
|
||||||
Caption = 'Static explorer'
|
|
||||||
ClientHeight = 430
|
|
||||||
ClientWidth = 310
|
|
||||||
inherited Back: TPanel
|
|
||||||
Height = 430
|
|
||||||
Width = 310
|
|
||||||
ClientHeight = 430
|
|
||||||
ClientWidth = 310
|
|
||||||
inherited Content: TPanel
|
|
||||||
Height = 430
|
|
||||||
Width = 310
|
|
||||||
ClientHeight = 430
|
|
||||||
ClientWidth = 310
|
|
||||||
PopupMenu = nil
|
|
||||||
object Tree: TTreeView[0]
|
|
||||||
Left = 4
|
|
||||||
Height = 394
|
|
||||||
Top = 32
|
|
||||||
Width = 302
|
|
||||||
Align = alClient
|
|
||||||
BorderSpacing.Around = 4
|
|
||||||
DefaultItemHeight = 18
|
|
||||||
ExpandSignType = tvestPlusMinus
|
|
||||||
HideSelection = False
|
|
||||||
Images = imgList
|
|
||||||
ReadOnly = True
|
|
||||||
RightClickSelect = True
|
|
||||||
RowSelect = True
|
|
||||||
ScrollBars = ssAutoBoth
|
|
||||||
SelectionColor = clActiveBorder
|
|
||||||
TabOrder = 0
|
|
||||||
OnDeletion = TreeDeletion
|
|
||||||
OnKeyPress = TreeKeyPress
|
|
||||||
Options = [tvoAutoItemHeight, tvoKeepCollapsedNodes, tvoReadOnly, tvoRightClickSelect, tvoRowSelect, tvoShowButtons, tvoShowLines, tvoShowRoot, tvoToolTips, tvoThemedDraw]
|
|
||||||
Items.Data = {
|
|
||||||
F9FFFFFF02000B000000000000000000000000000000FFFFFFFF000000000000
|
|
||||||
00000005000000416C696173010000000100000001000000FFFFFFFF00000000
|
|
||||||
000000000007000000436C6173736573020000000200000002000000FFFFFFFF
|
|
||||||
00000000000000000005000000456E756D73030000000300000003000000FFFF
|
|
||||||
FFFF0000000000000000000800000046756E6374696F6E040000000400000004
|
|
||||||
000000FFFFFFFF00000000000000000007000000496D706F7274730500000005
|
|
||||||
00000005000000FFFFFFFF00000000000000000009000000496E746572666163
|
|
||||||
65060000000600000006000000FFFFFFFF000000000000000000050000004D69
|
|
||||||
78696E070000000700000007000000FFFFFFFF00000000000000000007000000
|
|
||||||
53747275637473080000000800000008000000FFFFFFFF000000000000000000
|
|
||||||
0900000054656D706C61746573000000000000000000000000FFFFFFFF000000
|
|
||||||
00000000000005000000556E696F6E010000000100000001000000FFFFFFFF00
|
|
||||||
0000000000000000080000005661726961626C65
|
|
||||||
}
|
|
||||||
TreeLineColor = 14671839
|
|
||||||
TreeLinePenStyle = psSolid
|
|
||||||
end
|
|
||||||
object Panel1: TPanel[1]
|
|
||||||
Left = 2
|
|
||||||
Height = 26
|
|
||||||
Top = 2
|
|
||||||
Width = 306
|
|
||||||
Align = alTop
|
|
||||||
BorderSpacing.Around = 2
|
|
||||||
BevelOuter = bvNone
|
|
||||||
ClientHeight = 26
|
|
||||||
ClientWidth = 306
|
|
||||||
PopupMenu = contextMenu
|
|
||||||
TabOrder = 1
|
|
||||||
object TreeFilterEdit1: TTreeFilterEdit
|
|
||||||
Left = 32
|
|
||||||
Height = 22
|
|
||||||
Top = 2
|
|
||||||
Width = 272
|
|
||||||
OnAfterFilter = TreeFilterEdit1AfterFilter
|
|
||||||
ButtonWidth = 28
|
|
||||||
NumGlyphs = 1
|
|
||||||
Align = alClient
|
|
||||||
Anchors = [akTop, akLeft, akRight]
|
|
||||||
BorderSpacing.Around = 2
|
|
||||||
MaxLength = 0
|
|
||||||
TabOrder = 0
|
|
||||||
FilteredTreeview = Tree
|
|
||||||
end
|
|
||||||
object btnRefresh: TBitBtn
|
|
||||||
Left = 2
|
|
||||||
Height = 22
|
|
||||||
Hint = 'refresh the list'
|
|
||||||
Top = 2
|
|
||||||
Width = 28
|
|
||||||
Align = alLeft
|
|
||||||
BorderSpacing.Around = 2
|
|
||||||
Layout = blGlyphBottom
|
|
||||||
OnClick = btnRefreshClick
|
|
||||||
Spacing = 0
|
|
||||||
TabOrder = 1
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
inherited contextMenu: TPopupMenu
|
|
||||||
left = 112
|
|
||||||
top = 48
|
|
||||||
end
|
|
||||||
object imgList: TImageList[2]
|
|
||||||
left = 80
|
|
||||||
top = 48
|
|
||||||
Bitmap = {
|
|
||||||
4C69090000001000000010000000FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000000064646497626262FF616161FF626262FF6464649700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00646464976F6E6EFFA6A5A4FFA9A8A9FFA6A5A4FF6D6E6EFF64646497FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00626363FFA7A5A5FF7D7B7AFF787675FF7D7B7AFFA7A5A5FF626363FFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00626363FF8E8C8BFF767371FF767371FF767371FF8E8C8BFF626363FFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00636464FF858381FF878481FF868381FF878481FF858381FF636464FFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00585858AC6F6E6EFF95918FFF989492FF95918FFF6F6E6EFF585858ACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001E585858AC636363FF626263FF636363FF585858AC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF0000000000B9851C97B78319FFB68217FFB78319FFB9851C9700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00B9851C97C6922EFFECC482FFEFC886FFECC482FFC6912CFFB9851C97FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00B78319FFEEC684FFE5AA49FFE2A641FFE5AA49FFEEC684FFB78319FFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00B78219FFEBB964FFE3A641FFE3A641FFE3A641FFEBB964FFB78219FFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00B7841AFFEAB45CFFE9B45CFFE8B35BFFE9B45CFFEAB45CFFB7841AFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00A37519ACC5922FFFEDC074FFF1C47AFFEDC074FFC5922FFFA37519ACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001EA37519ACB78319FFB68218FFB78319FFA37519AC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF0000000000008C4B97008A48FF008946FF008A48FF008C4B9700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00008C4B97109F63FF74DAB7FF7ADEBDFF74DAB7FF109F63FF008C4B97FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00008A49FF66DAB4FF1EC68EFF16C388FF1EC68EFF66DAB4FF008A49FFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00008948FF25CF99FF00C07FFF00BE7EFF00C07FFF25CF99FF008948FFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00008A4AFF00C789FF00C88AFF00C689FF00C88AFF00C789FF008A4AFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00007B43AC009B5CFF00CE90FF00D194FF00CE90FF009B5CFF007B43ACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001E007B43AC008A4AFF008949FF008A4AFF007B43AC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000002C70DC97296DDBFF286CDBFF296DDBFF2C70DC9700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002D70DC974083E7FF95C2FFFF9BC7FFFF95C2FFFF4081E7FF2D70DC97FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002B6EDBFF8FC3FFFF5AA4FFFF53A1FFFF5AA4FFFF8FC3FFFF2B6EDBFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002B6DDBFF65B2FFFF449EFFFF449DFFFF449EFFFF65B2FFFF2B6DDBFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002D6FDBFF4FA9FFFF4FA9FFFF4EA7FFFF4FA9FFFF4FA9FFFF2D6FDBFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002863C1AC387FE4FF56B2FFFF58B6FFFF56B2FFFF387FE4FF2863C1ACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001E2862C1AC2D6EDBFF2D6DDBFF2D6EDBFF2862C1AC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000009A6BDC979968DBFF9968DBFF9968DBFF9A6BDC9700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF009A6BDC97A17DE7FFC6BCFFFFC9C1FFFFC6BCFFFFA17DE7FF9A6BDC97FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF009A69DBFFC5BDFFFFAA9DFFFFA798FFFFAA9DFFFFC5BDFFFF9A69DBFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF009A68DBFFB3ACFFFFA396FFFFA396FFFFA396FFFFB3ACFFFF9A68DBFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF009A69DBFFACA5FFFFACA5FFFFABA3FFFFACA5FFFFACA5FFFF9A69DBFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00885EC1ACA17BE4FFB3B1FFFFB4B6FFFFB3B1FFFFA17BE4FF885EC1ACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001E885EC1AC9A69DBFF9A68DBFF9A69DBFF885EC1AC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF0000000000AB499C97AA459AFFA94499FFAA459AFFAB499C9700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00AB499C97B462AAFFD8B8D9FFDBBEDDFFD8B8D9FFB462AAFFAB499C97FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00AA469AFFDCB6DAFFCA91C9FFC78CC5FFCA91C9FFDCB6DAFFAA469AFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00A94699FFD69ED4FFCA83C7FFCA83C6FFCA83C7FFD69ED4FFA94699FFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00AA489AFFD68ED1FFD68ED2FFD58DD1FFD68ED2FFD68ED1FFAA489AFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00964189ACB85CAAFFE195DAFFE499DEFFE195DAFFB85CAAFF964189ACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001E964189ACA94899FFA84799FFA94899FF964189AC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF0000000000354CCD973249CCFF3148CBFF3249CCFF354CCD9700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00354CCD97455DDBFF90A6FCFF95ACFFFF90A6FCFF445DDBFF354CCD97FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00334ACCFF90A5FDFF5A79FAFF5573F9FF5A79FAFF90A5FDFF334ACCFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00334ACBFF6D88FFFF4D6DFBFF4D6DFAFF4D6DFBFF6D88FFFF334ACBFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00354BCBFF5F7CFFFF607CFFFF5F7BFDFF607CFFFF5F7CFFFF354BCBFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002F44B4AC425AD9FF6F88FFFF738CFFFF6F88FFFF425AD9FF2F44B4ACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001E2F44B4AC344BCBFF334ACAFF344BCBFF2F44B4AC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000002CC1FF9729C0FFFF28C0FFFF29C0FFFF2CC1FF9700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002DC1FF9741C6FFFF96DCFFFF9CDDFFFF96DCFFFF41C5FFFF2DC1FF97FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002AC0FFFF95DDFFFF62CDFFFF5CCBFFFF62CDFFFF95DDFFFF2AC0FFFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002AC0FFFF75D7FFFF56CEFFFF56CEFFFF56CEFFFF75D7FFFF2AC0FFFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF002BC0FFFF68D8FFFF69D8FFFF68D8FFFF69D8FFFF68D8FFFF2BC0FFFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF0028AAE0AC3EC9FFFF76E0FFFF7BE2FFFF76E0FFFF3EC9FFFF28AAE0ACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001E28AAE0AC2BC0FFFF2ABFFFFF2BC0FFFF28AAE0AC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF0000000000DADADA97D9D9DAFFD9D9D9FFD9D9DAFFDADADA9700000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00DADADA97DADADBFFE5E5E4FFE6E6E4FFE5E5E4FFDADAD9FFDADADA97FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00D9DADAFFE6E6E5FFDBDBD9FFDADAD8FFDBDBD9FFE6E6E5FFD9DADAFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00D9DADAFFE2E1E0FFDBDAD9FFDBDAD9FFDBDAD9FFE2E1E0FFD9DADAFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00D9DADAFFE2E1E0FFE3E2E0FFE2E1E0FFE3E2E0FFE2E1E0FFD9DADAFFFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00BFBFBFACDDDDDDFFE8E7E6FFE9E8E7FFE8E7E6FFDDDDDDFFBFBFBFACFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF000000001EBFBFBFACD9D9D9FFD9D9D9FFD9D9D9FFBFBFBFAC0000001EFFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00000000000000001E0000003300000033000000330000001E00000000FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFFFF00FFFF
|
|
||||||
FF00FFFFFF00FFFFFF00FFFFFF00
|
|
||||||
}
|
|
||||||
end
|
|
||||||
end
|
|
|
@ -1,584 +0,0 @@
|
||||||
unit ce_staticexplorer;
|
|
||||||
|
|
||||||
{$I ce_defines.inc}
|
|
||||||
|
|
||||||
interface
|
|
||||||
|
|
||||||
uses
|
|
||||||
Classes, SysUtils, TreeFilterEdit, Forms, Controls, Graphics, ExtCtrls, Menus,
|
|
||||||
ComCtrls, ce_widget, jsonparser, fpjson, process, actnlist, Buttons, Clipbrd,
|
|
||||||
ce_common, ce_project, ce_observer, ce_synmemo, ce_interfaces;
|
|
||||||
|
|
||||||
type
|
|
||||||
TCEStaticExplorerWidget = class(TCEWidget, ICEProjectObserver, ICEMultiDocObserver)
|
|
||||||
btnRefresh: TBitBtn;
|
|
||||||
imgList: TImageList;
|
|
||||||
Panel1: TPanel;
|
|
||||||
Tree: TTreeView;
|
|
||||||
TreeFilterEdit1: TTreeFilterEdit;
|
|
||||||
procedure btnRefreshClick(Sender: TObject);
|
|
||||||
procedure TreeDeletion(Sender: TObject; Node: TTreeNode);
|
|
||||||
procedure TreeFilterEdit1AfterFilter(Sender: TObject);
|
|
||||||
procedure TreeKeyPress(Sender: TObject; var Key: char);
|
|
||||||
private
|
|
||||||
fMsgs: ICEMessagesDisplay;
|
|
||||||
fDmdProc: TCheckedAsyncProcess;
|
|
||||||
fActCopyIdent: TAction;
|
|
||||||
fActRefresh: TAction;
|
|
||||||
fActRefreshOnChange: TAction;
|
|
||||||
fActRefreshOnFocus: TAction;
|
|
||||||
fActAutoRefresh: TAction;
|
|
||||||
fActSelectInSource: TAction;
|
|
||||||
fDoc: TCESynMemo;
|
|
||||||
fProj: TCEProject;
|
|
||||||
fAutoRefresh: boolean;
|
|
||||||
fRefreshOnChange: boolean;
|
|
||||||
fRefreshOnFocus: boolean;
|
|
||||||
fJsonFname: string;
|
|
||||||
ndAlias, ndClass, ndEnum, ndFunc, ndUni: TTreeNode;
|
|
||||||
ndImp, ndIntf, ndMix, ndStruct, ndTmp, ndVar: TTreeNode;
|
|
||||||
procedure TreeDblClick(Sender: TObject);
|
|
||||||
procedure actRefreshExecute(Sender: TObject);
|
|
||||||
procedure actAutoRefreshExecute(Sender: TObject);
|
|
||||||
procedure actRefreshOnChangeExecute(Sender: TObject);
|
|
||||||
procedure actRefreshOnFocusExecute(Sender: TObject);
|
|
||||||
procedure actCopyIdentExecute(Sender: TObject);
|
|
||||||
procedure updateVisibleCat;
|
|
||||||
procedure clearTree;
|
|
||||||
//
|
|
||||||
procedure produceJsonInfo;
|
|
||||||
procedure jsonInfoProduced(sender: TObject);
|
|
||||||
//
|
|
||||||
procedure optget_AutoRefresh(aWriter: TWriter);
|
|
||||||
procedure optset_AutoRefresh(aReader: TReader);
|
|
||||||
procedure optget_RefreshOnChange(aWriter: TWriter);
|
|
||||||
procedure optset_RefreshOnChange(aReader: TReader);
|
|
||||||
procedure optget_RefreshOnFocus(aWriter: TWriter);
|
|
||||||
procedure optset_RefreshOnFocus(aReader: TReader);
|
|
||||||
//
|
|
||||||
procedure docNew(aDoc: TCESynMemo);
|
|
||||||
procedure docClosing(aDoc: TCESynMemo);
|
|
||||||
procedure docFocused(aDoc: TCESynMemo);
|
|
||||||
procedure docChanged(aDoc: TCESynMemo);
|
|
||||||
//
|
|
||||||
procedure projNew(aProject: TCEProject);
|
|
||||||
procedure projClosing(aProject: TCEProject);
|
|
||||||
procedure projFocused(aProject: TCEProject);
|
|
||||||
procedure projChanged(aProject: TCEProject);
|
|
||||||
procedure projCompiling(aProject: TCEProject);
|
|
||||||
protected
|
|
||||||
procedure UpdateByDelay; override;
|
|
||||||
//
|
|
||||||
procedure sesoptDeclareProperties(aFiler: TFiler); override;
|
|
||||||
//
|
|
||||||
function contextName: string; override;
|
|
||||||
function contextActionCount: integer; override;
|
|
||||||
function contextAction(index: integer): TAction; override;
|
|
||||||
//
|
|
||||||
procedure SetVisible(Value: boolean); override;
|
|
||||||
published
|
|
||||||
property autoRefresh: boolean read fAutoRefresh write fAutoRefresh;
|
|
||||||
property refreshOnChange: boolean read fRefreshOnChange write fRefreshOnChange;
|
|
||||||
property refreshOnFocus: boolean read fRefreshOnFocus write fRefreshOnFocus;
|
|
||||||
public
|
|
||||||
constructor create(aOwner: TComponent); override;
|
|
||||||
destructor destroy; override;
|
|
||||||
end;
|
|
||||||
|
|
||||||
implementation
|
|
||||||
{$R *.lfm}
|
|
||||||
|
|
||||||
uses LCLProc, ce_libman, ce_symstring;
|
|
||||||
|
|
||||||
{$REGION Standard Comp/Obj------------------------------------------------------}
|
|
||||||
constructor TCEStaticExplorerWidget.create(aOwner: TComponent);
|
|
||||||
var
|
|
||||||
png: TPortableNetworkGraphic;
|
|
||||||
begin
|
|
||||||
fAutoRefresh := false;
|
|
||||||
fRefreshOnFocus := true;
|
|
||||||
fRefreshOnChange := false;
|
|
||||||
//
|
|
||||||
fActCopyIdent := TAction.Create(self);
|
|
||||||
fActCopyIdent.OnExecute:=@actCopyIdentExecute;
|
|
||||||
fActCopyIdent.Caption := 'Copy identifier';
|
|
||||||
fActRefresh := TAction.Create(self);
|
|
||||||
fActRefresh.OnExecute := @actRefreshExecute;
|
|
||||||
fActRefresh.Caption := 'Refresh';
|
|
||||||
fActAutoRefresh := TAction.Create(self);
|
|
||||||
fActAutoRefresh.OnExecute := @actAutoRefreshExecute;
|
|
||||||
fActAutoRefresh.Caption := 'Auto-refresh';
|
|
||||||
fActAutoRefresh.AutoCheck := true;
|
|
||||||
fActAutoRefresh.Checked := fAutoRefresh;
|
|
||||||
fActRefreshOnChange := TAction.Create(self);
|
|
||||||
fActRefreshOnChange.OnExecute := @actRefreshOnChangeExecute;
|
|
||||||
fActRefreshOnChange.Caption := 'Refresh on change';
|
|
||||||
fActRefreshOnChange.AutoCheck := true;
|
|
||||||
fActRefreshOnChange.Checked := fRefreshOnChange;
|
|
||||||
fActRefreshOnFocus := TAction.Create(self);
|
|
||||||
fActRefreshOnFocus.OnExecute := @actRefreshOnFocusExecute;
|
|
||||||
fActRefreshOnFocus.Caption := 'Refresh on focused';
|
|
||||||
fActRefreshOnFocus.AutoCheck := true;
|
|
||||||
fActRefreshOnFocus.Checked := fRefreshOnFocus;
|
|
||||||
fActSelectInSource := TAction.Create(self);
|
|
||||||
fActSelectInSource.OnExecute := @TreeDblClick;
|
|
||||||
fActSelectInSource.Caption := 'Select in source';
|
|
||||||
//
|
|
||||||
inherited;
|
|
||||||
//
|
|
||||||
ndAlias := Tree.Items[0];
|
|
||||||
ndClass := Tree.Items[1];
|
|
||||||
ndEnum := Tree.Items[2];
|
|
||||||
ndFunc := Tree.Items[3];
|
|
||||||
ndImp := Tree.Items[4];
|
|
||||||
ndIntf := Tree.Items[5];
|
|
||||||
ndMix := Tree.Items[6];
|
|
||||||
ndStruct := Tree.Items[7];
|
|
||||||
ndTmp := Tree.Items[8];
|
|
||||||
ndUni := Tree.Items[9];
|
|
||||||
ndVar := Tree.Items[10];
|
|
||||||
//
|
|
||||||
png := TPortableNetworkGraphic.Create;
|
|
||||||
try
|
|
||||||
png.LoadFromLazarusResource('arrow_update');
|
|
||||||
btnRefresh.Glyph.Assign(png);
|
|
||||||
finally
|
|
||||||
png.Free;
|
|
||||||
end;
|
|
||||||
//
|
|
||||||
Tree.OnDblClick := @TreeDblClick;
|
|
||||||
Tree.PopupMenu := contextMenu;
|
|
||||||
//
|
|
||||||
EntitiesConnector.addObserver(self);
|
|
||||||
end;
|
|
||||||
|
|
||||||
destructor TCEStaticExplorerWidget.destroy;
|
|
||||||
begin
|
|
||||||
EntitiesConnector.removeObserver(self);
|
|
||||||
//
|
|
||||||
killProcess(fDmdProc);
|
|
||||||
inherited;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.SetVisible(Value: boolean);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
getMessageDisplay(fMsgs);
|
|
||||||
if Value then
|
|
||||||
produceJsonInfo;
|
|
||||||
end;
|
|
||||||
{$ENDREGION}
|
|
||||||
|
|
||||||
{$REGION ICESessionOptionsObserver ---------------------------------------------}
|
|
||||||
procedure TCEStaticExplorerWidget.optget_AutoRefresh(aWriter: TWriter);
|
|
||||||
begin
|
|
||||||
aWriter.WriteBoolean(fAutoRefresh);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.optset_AutoRefresh(aReader: TReader);
|
|
||||||
begin
|
|
||||||
fAutoRefresh := aReader.ReadBoolean;
|
|
||||||
fActAutoRefresh.Checked := fAutoRefresh;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.optget_RefreshOnChange(aWriter: TWriter);
|
|
||||||
begin
|
|
||||||
aWriter.WriteBoolean(fRefreshOnChange);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.optset_RefreshOnChange(aReader: TReader);
|
|
||||||
begin
|
|
||||||
fRefreshOnChange := aReader.ReadBoolean;
|
|
||||||
fActRefreshOnChange.Checked := fRefreshOnChange;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.optget_RefreshOnFocus(aWriter: TWriter);
|
|
||||||
begin
|
|
||||||
aWriter.WriteBoolean(fRefreshOnFocus);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.optset_RefreshOnFocus(aReader: TReader);
|
|
||||||
begin
|
|
||||||
fRefreshOnFocus := aReader.ReadBoolean;
|
|
||||||
fActRefreshOnFocus.Checked := fRefreshOnFocus;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.sesoptDeclareProperties(aFiler: TFiler);
|
|
||||||
begin
|
|
||||||
inherited;
|
|
||||||
aFiler.DefineProperty(Name + '_AutoRefresh', @optset_AutoRefresh, @optget_AutoRefresh, true);
|
|
||||||
aFiler.DefineProperty(Name + '_RefreshOnChange', @optset_RefreshOnChange, @optget_RefreshOnChange, true);
|
|
||||||
aFiler.DefineProperty(Name + '_RefreshOnFocus', @optset_RefreshOnFocus, @optget_RefreshOnFocus, true);
|
|
||||||
end;
|
|
||||||
{$ENDREGION}
|
|
||||||
|
|
||||||
{$REGION ICEContextualActions---------------------------------------------------}
|
|
||||||
function TCEStaticExplorerWidget.contextName: string;
|
|
||||||
begin
|
|
||||||
result := 'Static explorer';
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TCEStaticExplorerWidget.contextActionCount: integer;
|
|
||||||
begin
|
|
||||||
result := 6;
|
|
||||||
end;
|
|
||||||
|
|
||||||
function TCEStaticExplorerWidget.contextAction(index: integer): TAction;
|
|
||||||
begin
|
|
||||||
case index of
|
|
||||||
0: exit(fActSelectInSource);
|
|
||||||
1: exit(fActCopyIdent);
|
|
||||||
2: exit(fActRefresh);
|
|
||||||
3: exit(fActAutoRefresh);
|
|
||||||
4: exit(fActRefreshOnChange);
|
|
||||||
5: exit(fActRefreshOnFocus);
|
|
||||||
else result := nil;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.actRefreshExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if Updating then exit;
|
|
||||||
produceJsonInfo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.actAutoRefreshExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
autoRefresh := not autoRefresh;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.actRefreshOnChangeExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
refreshOnChange := not refreshOnChange;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.actRefreshOnFocusExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
refreshOnFocus := not refreshOnFocus;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.actCopyIdentExecute(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if Tree.Selected = nil then exit;
|
|
||||||
Clipboard.AsText:= Tree.Selected.Text;
|
|
||||||
end;
|
|
||||||
|
|
||||||
{$ENDREGION}
|
|
||||||
|
|
||||||
{$REGION ICEMultiDocObserver ---------------------------------------------------}
|
|
||||||
procedure TCEStaticExplorerWidget.docNew(aDoc: TCESynMemo);
|
|
||||||
begin
|
|
||||||
fDoc := aDoc;
|
|
||||||
beginUpdateByDelay;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.docClosing(aDoc: TCESynMemo);
|
|
||||||
begin
|
|
||||||
if fDoc <> aDoc then exit;
|
|
||||||
fDoc := nil;
|
|
||||||
clearTree;
|
|
||||||
updateVisibleCat;
|
|
||||||
beginUpdateByDelay;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.docFocused(aDoc: TCESynMemo);
|
|
||||||
begin
|
|
||||||
if fDoc = aDoc then exit;
|
|
||||||
fDoc := aDoc;
|
|
||||||
if not Visible then exit;
|
|
||||||
//
|
|
||||||
if fAutoRefresh then beginUpdateByDelay
|
|
||||||
else if fRefreshOnFocus then produceJsonInfo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.docChanged(aDoc: TCESynMemo);
|
|
||||||
begin
|
|
||||||
if fDoc <> aDoc then exit;
|
|
||||||
if not Visible then exit;
|
|
||||||
//
|
|
||||||
if fAutoRefresh then beginUpdateByDelay
|
|
||||||
else if fRefreshOnChange then produceJsonInfo;
|
|
||||||
end;
|
|
||||||
{$ENDREGION}
|
|
||||||
|
|
||||||
{$REGION ICEProjectObserver ----------------------------------------------------}
|
|
||||||
procedure TCEStaticExplorerWidget.projNew(aProject: TCEProject);
|
|
||||||
begin
|
|
||||||
fProj := aProject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.projClosing(aProject: TCEProject);
|
|
||||||
begin
|
|
||||||
if fProj <> aProject then
|
|
||||||
exit;
|
|
||||||
fProj := nil;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.projFocused(aProject: TCEProject);
|
|
||||||
begin
|
|
||||||
fProj := aProject;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.projChanged(aProject: TCEProject);
|
|
||||||
begin
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.projCompiling(aProject: TCEProject);
|
|
||||||
begin
|
|
||||||
end;
|
|
||||||
{$ENDREGION}
|
|
||||||
|
|
||||||
{$REGION Symbol-tree things ----------------------------------------------------}
|
|
||||||
procedure TCEStaticExplorerWidget.UpdateByDelay;
|
|
||||||
begin
|
|
||||||
if not fAutoRefresh then exit;
|
|
||||||
produceJsonInfo;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.TreeDeletion(Sender: TObject; Node: TTreeNode);
|
|
||||||
begin
|
|
||||||
if (node.Data <> nil) then
|
|
||||||
Dispose(PInt64(node.Data));
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.btnRefreshClick(Sender: TObject);
|
|
||||||
begin
|
|
||||||
fActRefresh.Execute;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.updateVisibleCat;
|
|
||||||
begin
|
|
||||||
if (fDoc <> nil) then
|
|
||||||
begin
|
|
||||||
ndAlias.Visible := ndAlias.Count > 0;
|
|
||||||
ndClass.Visible := ndClass.Count > 0;
|
|
||||||
ndEnum.Visible := ndEnum.Count > 0;
|
|
||||||
ndFunc.Visible := ndFunc.Count > 0;
|
|
||||||
ndImp.Visible := ndImp.Count > 0;
|
|
||||||
ndIntf.Visible := ndIntf.Count > 0;
|
|
||||||
ndMix.Visible := ndMix.Count > 0;
|
|
||||||
ndStruct.Visible:= ndStruct.Count > 0;
|
|
||||||
ndTmp.Visible := ndTmp.Count > 0;
|
|
||||||
ndUni.Visible := ndUni.Count > 0;
|
|
||||||
ndVar.Visible := ndVar.Count > 0;
|
|
||||||
end else
|
|
||||||
begin
|
|
||||||
ndAlias.Visible := true;
|
|
||||||
ndClass.Visible := true;
|
|
||||||
ndEnum.Visible := true;
|
|
||||||
ndFunc.Visible := true;
|
|
||||||
ndImp.Visible := true;
|
|
||||||
ndIntf.Visible := true;
|
|
||||||
ndMix.Visible := true;
|
|
||||||
ndStruct.Visible:= true;
|
|
||||||
ndTmp.Visible := true;
|
|
||||||
ndUni.Visible := true;
|
|
||||||
ndVar.Visible := true;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.clearTree;
|
|
||||||
begin
|
|
||||||
ndAlias.DeleteChildren;
|
|
||||||
ndClass.DeleteChildren;
|
|
||||||
ndEnum.DeleteChildren;
|
|
||||||
ndFunc.DeleteChildren;
|
|
||||||
ndImp.DeleteChildren;
|
|
||||||
ndIntf.DeleteChildren;
|
|
||||||
ndMix.DeleteChildren;
|
|
||||||
ndStruct.DeleteChildren;
|
|
||||||
ndTmp.DeleteChildren;
|
|
||||||
ndUni.DeleteChildren;
|
|
||||||
ndVar.DeleteChildren;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.TreeFilterEdit1AfterFilter(Sender: TObject);
|
|
||||||
begin
|
|
||||||
if TreeFilterEdit1.Filter ='' then
|
|
||||||
updateVisibleCat;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.TreeKeyPress(Sender: TObject; var Key: char);
|
|
||||||
begin
|
|
||||||
if Key = #13 then TreeDblClick(nil);
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.TreeDblClick(Sender: TObject);
|
|
||||||
var
|
|
||||||
line: Int64;
|
|
||||||
begin
|
|
||||||
if fDoc = nil then exit;
|
|
||||||
if Tree.Selected = nil then exit;
|
|
||||||
if Tree.Selected.Data = nil then exit;
|
|
||||||
//
|
|
||||||
line := PInt64(Tree.Selected.Data)^;
|
|
||||||
fDoc.CaretY := line;
|
|
||||||
fDoc.SelectLine;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.produceJsonInfo;
|
|
||||||
var
|
|
||||||
srcFname, itm: string;
|
|
||||||
i: Integer;
|
|
||||||
begin
|
|
||||||
if fDoc = nil then exit;
|
|
||||||
if fDoc.Lines.Count = 0 then exit;
|
|
||||||
|
|
||||||
// standard process options
|
|
||||||
killProcess(fDmdProc);
|
|
||||||
fDmdProc := TCheckedAsyncProcess.Create(nil);
|
|
||||||
fDmdProc.ShowWindow := swoHIDE;
|
|
||||||
fDmdProc.Options := [];
|
|
||||||
fDmdProc.Executable := 'dmd';
|
|
||||||
fDmdProc.OnTerminate := @jsonInfoProduced;
|
|
||||||
|
|
||||||
// focused source
|
|
||||||
fJsonFname := fDoc.tempFilename + '.json';
|
|
||||||
srcFname := fDoc.fileName;
|
|
||||||
if not fileExists(srcFname) or (srcFname = fDoc.tempFilename) then
|
|
||||||
fDoc.saveTempFile;
|
|
||||||
srcFname := fDoc.fileName;
|
|
||||||
|
|
||||||
//else fDoc.save; refreshonChange/autorefresh don't work until existing doc is saved
|
|
||||||
fDmdProc.Parameters.Add(srcFname);
|
|
||||||
|
|
||||||
// other project sources, -I, -J
|
|
||||||
if fProj <> nil then if fProj.isProjectSource(srcFname) then
|
|
||||||
begin
|
|
||||||
fDmdProc.CurrentDirectory := extractFilePath(fProj.fileName);
|
|
||||||
for i := 0 to fProj.Sources.Count-1 do begin
|
|
||||||
itm := fProj.getAbsoluteSourceName(i);
|
|
||||||
if dExtList.IndexOf(ExtractFileExt(itm)) = -1 then
|
|
||||||
continue;
|
|
||||||
if srcFname <> itm then fDmdProc.Parameters.Add(itm);
|
|
||||||
end;
|
|
||||||
for itm in fProj.currentConfiguration.pathsOptions.importModulePaths do
|
|
||||||
fDmdProc.Parameters.Add('-I' + symbolExpander.get(itm));
|
|
||||||
for itm in fProj.currentConfiguration.pathsOptions.importStringPaths do
|
|
||||||
fDmdProc.Parameters.Add('-J' + symbolExpander.get(itm));
|
|
||||||
end;
|
|
||||||
|
|
||||||
//adds the libman entries
|
|
||||||
LibMan.getLibFiles(nil, fDmdProc.Parameters);
|
|
||||||
LibMan.getLibSources(nil, fDmdProc.Parameters);
|
|
||||||
|
|
||||||
// option to produce the Json file.
|
|
||||||
fDmdProc.Parameters.Add('-c');
|
|
||||||
fDmdProc.Parameters.Add('-o-');
|
|
||||||
fDmdProc.Parameters.Add('-Xf' + fJsonFname);
|
|
||||||
|
|
||||||
fDmdProc.Execute;
|
|
||||||
end;
|
|
||||||
|
|
||||||
procedure TCEStaticExplorerWidget.jsonInfoProduced(sender: TObject);
|
|
||||||
var
|
|
||||||
str: TMemoryStream;
|
|
||||||
prs: TJsonParser;
|
|
||||||
dat: TJsonData;
|
|
||||||
memb: TJsonData;
|
|
||||||
ndCat: TTreeNode;
|
|
||||||
ln: PInt64;
|
|
||||||
nme, knd: string;
|
|
||||||
i: NativeInt;
|
|
||||||
|
|
||||||
// recursively display members, without master categories.
|
|
||||||
procedure digMembers(const srcDt: TJsonData; const srcNd: TTreeNode);
|
|
||||||
var
|
|
||||||
_memb: TJsonData;
|
|
||||||
_ln: PInt64;
|
|
||||||
_nme: string;
|
|
||||||
_i: NativeInt;
|
|
||||||
_nd: TTreeNode;
|
|
||||||
begin
|
|
||||||
_memb := srcDt.FindPath('members');
|
|
||||||
if _memb <> nil then for _i := 0 to _memb.Count-1 do
|
|
||||||
begin
|
|
||||||
_ln := new(PInt64);
|
|
||||||
_ln^ := _memb.Items[_i].GetPath('line').AsInt64;
|
|
||||||
_nme := _memb.Items[_i].GetPath('name').AsString;
|
|
||||||
_nd := Tree.Items.AddChildObject(srcNd, _nme, _ln);
|
|
||||||
digMembers(_memb.Items[_i], _nd);
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
|
|
||||||
begin
|
|
||||||
if ndAlias = nil then exit;
|
|
||||||
|
|
||||||
clearTree;
|
|
||||||
updateVisibleCat;
|
|
||||||
if fDoc = nil then exit;
|
|
||||||
|
|
||||||
if not FileExists(fJsonFname) then exit;
|
|
||||||
|
|
||||||
// load json
|
|
||||||
str := TMemoryStream.Create;
|
|
||||||
try
|
|
||||||
str.LoadFromFile(fJsonFname);
|
|
||||||
str.Position := 0;
|
|
||||||
prs := TJsonParser.Create(str);
|
|
||||||
try
|
|
||||||
dat := prs.Parse;
|
|
||||||
finally
|
|
||||||
prs.Free;
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
str.Free;
|
|
||||||
DeleteFile(fJsonFname);
|
|
||||||
end;
|
|
||||||
if dat.Count = 0 then exit;
|
|
||||||
|
|
||||||
// update tree
|
|
||||||
try
|
|
||||||
memb := dat.items[0].FindPath('members');
|
|
||||||
if memb <> nil then for i := 0 to memb.Count-1 do
|
|
||||||
begin
|
|
||||||
|
|
||||||
ndcat := nil;
|
|
||||||
// categories
|
|
||||||
ln := new(PInt64);
|
|
||||||
ln^ := memb.Items[i].GetPath('line').AsInt64;
|
|
||||||
nme := memb.Items[i].GetPath('name').AsString;
|
|
||||||
|
|
||||||
knd := memb.Items[i].GetPath('kind').AsString;
|
|
||||||
case knd of
|
|
||||||
'alias' :ndCat := Tree.Items.AddChildObject(ndAlias, nme, ln);
|
|
||||||
'class' :ndCat := Tree.Items.AddChildObject(ndClass, nme, ln);
|
|
||||||
'enum', 'enum member'
|
|
||||||
:ndCat := Tree.Items.AddChildObject(ndEnum, nme, ln);
|
|
||||||
'function' :ndCat := Tree.Items.AddChildObject(ndFunc, nme, ln);
|
|
||||||
'import', 'static import'
|
|
||||||
:ndCat := Tree.Items.AddChildObject(ndImp, nme, ln);
|
|
||||||
'interface' :ndCat := Tree.Items.AddChildObject(ndIntf, nme, ln);
|
|
||||||
'mixin' :ndCat := Tree.Items.AddChildObject(ndMix, nme, ln);
|
|
||||||
'struct' :ndCat := Tree.Items.AddChildObject(ndStruct, nme, ln);
|
|
||||||
'template' :ndCat := Tree.Items.AddChildObject(ndTmp, nme, ln);
|
|
||||||
'union' :ndCat := Tree.Items.AddChildObject(ndUni, nme, ln);
|
|
||||||
'variable' :ndCat := Tree.Items.AddChildObject(ndVar, nme, ln);
|
|
||||||
else fMsgs.message('static explorer does not handle this kind: '+ knd, nil, amcApp, amkWarn);
|
|
||||||
end;
|
|
||||||
|
|
||||||
if ndCat = nil then
|
|
||||||
begin
|
|
||||||
{$IFDEF DEBUG}
|
|
||||||
DebugLn(memb.Items[i].GetPath('kind').AsString);
|
|
||||||
{$ENDIF}
|
|
||||||
continue;
|
|
||||||
end;
|
|
||||||
|
|
||||||
ndCat.Parent.Visible := true;
|
|
||||||
|
|
||||||
//recursive
|
|
||||||
digMembers(memb.Items[i], ndCat);
|
|
||||||
|
|
||||||
end;
|
|
||||||
finally
|
|
||||||
if dat <> nil then
|
|
||||||
begin
|
|
||||||
dat.Clear;
|
|
||||||
dat.Free;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
end;
|
|
||||||
{$ENDREGION --------------------------------------------------------------------}
|
|
||||||
|
|
||||||
end.
|
|
Loading…
Reference in New Issue