serial Default %Library.TMFormClass %Library.TMForm %TMGroupBox %TMGroupBox %TMGroupBox %Library.String 0 %Library.String 1 %Library.String 1 %Library.String 1 %TMButton %TMButton %TMSpeedButton %TMSpeedButton %TMButton %TMSpeedButton %TMSpeedButton %TMCheckBox %TMCheckBox %TMCheckBox %TMCheckBox %TMCheckBox %TMImageList %TMLabel %TMLabel %TMListView %TMMemo %TMPopupMenu %TMRadioButton %TMRadioButton %TMEdit initvalue:%String 0 %Status 0 ; Font.Charset = ANSI_CHARSET ; Font.Color = clWindowText ; Font.Height = -11 ; Font.Name = 'Fixedsys' ; Font.Style = [] ; FlatScrollBars = True ; GridLines = True ; HideSelection = False ; HotTrackStyles = [] ; IconOptions.Arrangement = iaLeft ; RowSelect = True ; ParentFont = False ; TabOrder = 5 ; ViewStyle = vsReport ; OnDblClick = lvResultsDblClick ; OnSelectItem = lvResultsSelectItem ; end ; object btnCallSpy: CButton ; Left = 502 ; Top = 113 ; Width = 75 ; Height = 17 ; Anchors = [akTop, akRight] ; Caption = 'Get the spy...' ; Enabled = False ; TabOrder = 6 ; OnClick = btnCallSpyClick ; end ; object btnPurgeList: CButton ; Left = 502 ; Top = 87 ; Width = 75 ; Height = 17 ; Anchors = [akTop, akRight] ; Caption = 'Purge list' ; TabOrder = 7 ; OnClick = btnPurgeListClick ; end ; end ; object GroupBox3: CGroupBox ; Left = 446 ; Top = 7 ; Width = 153 ; Height = 97 ; Anchors = [akTop, akRight] ; Caption = ' Options ' ; TabOrder = 2 ; object txtFilter: CEdit ; Left = 68 ; Top = 16 ; Width = 73 ; Height = 21 ; Anchors = [akTop, akRight] ; TabOrder = 0 ; Text = '%' ; end ; object chkUseFilter: CCheckBox ; Left = 12 ; Top = 18 ; Width = 49 ; Height = 17 ; Anchors = [akTop, akRight] ; Caption = 'Filter' ; Checked = True ; State = cbChecked ; TabOrder = 1 ; OnClick = chkUseFilterClick ; end ; object rbRemoveFilter: CRadioButton ; Left = 28 ; Top = 45 ; Width = 113 ; Height = 17 ; Anchors = [akTop, akRight] ; Caption = 'Remove ' ; Checked = True ; TabOrder = 2 ; TabStop = True ; end ; object rbLeaveFilter: CRadioButton ; Left = 28 ; Top = 67 ; Width = 113 ; Height = 17 ; Anchors = [akTop, akRight] ; Caption = 'Leave' ; TabOrder = 3 ; end ; end ; object chkAllocated: CCheckBox ; Left = 133 ; Top = 149 ; Width = 73 ; Height = 17 ; Caption = 'Allocated' ; Checked = True ; State = cbChecked ; TabOrder = 3 ; end ; object ilResults: CImageList ; Left = 373 ; Top = 127 ; end ; object pmSnapShots: CPopupMenu ; OnPopup = pmSnapShotsPopup ; Left = 398 ; Top = 17 ; end ;end ]]> 0 initvalue:%String 0 MApplication initvalue:%String 0 %Library.Status Args:%String 0 Args:%String 0 Args:%String 0 "_..aSnapShot2(S1Loop)) ... Set ReUseCnt=ReUseCnt+1 .. Kill ..aSnapShot2(S1Loop) . Else Do .. Do:(..chkDisposed.Checked="True") AddToList("-",S1Loop,..aSnapShot1(S1Loop)) .. Set DisCnt=DisCnt+1 New S2Loop Set S2Loop="" For Set S2Loop=$O(..aSnapShot2(S2Loop)) Quit:(S2Loop="") Do . Do:(..chkAllocated.Checked="True") AddToList("+",S2Loop,..aSnapShot2(S2Loop)) . Set AllocCnt=AllocCnt+1 Do ..mmoResult.Lines.Insert(0,"[~] RE-USE OREF: "_ReUseCnt) Do ..mmoResult.Lines.Insert(0,"[-] DISPOSED : "_DisCnt) Do ..mmoResult.Lines.Insert(0,"[+] ALLOCATED : "_AllocCnt) Do ..mmoResult.Lines.Insert(0,"[=] RESIDENT : "_ResCnt) Do ..lvResults.Items.EndUpdate() m ..aSnapShot2=..aCopySnapShot2 Set ..btnCompare.Enabled="True" Set MApplication.ScreenCursor=$$$crDefault ;End of user code s Args=$lb(Sender) q ;----------------------------------------------------------------------------- AddToList(Type,ORef,ClassName) New tmpItem Set tmpItem=..lvResults.Items.Add() Set tmpItem.Caption=" ["_Type_"]" /* If Type="=" Do . Set tmpItem.Caption=" =" Else If Type="+" Do . Set tmpItem.Caption=" +" Else If Type="-" Do . Set tmpItem.Caption="-" Else If Type="~" Do . Set tmpItem.Caption="~ ~" */ Do tmpItem.SubItems.Add(ORef) Do tmpItem.SubItems.Add(ClassName) If $$IsPersistent^vhLib(ORef) Do . If ORef.%Id()="" Do .. Do tmpItem.SubItems.Add("(new)") . Else Do .. Do tmpItem.SubItems.Add(ORef.%Id()) quit ]]> Args:%String 0 Args:%String 0 Args:%String 0 Args:%String 0 Args:%String 0 0 Args:%String 0 Args:%String 0 Args:%String 0 %Library.CacheSerialState "%Library.TMFormClass" Address Form GroupBox1 GroupBox2 btnSnapShot1 btnSnapShot2 lblSnapShot1 lblSnapShot2 GroupBox3 chkUseFilter txtFilter rbLeaveFilter rbRemoveFilter btnCompare mmoResult CheckBox1 CheckBox2 CheckBox3 CheckBox4 chkAllocated chkDisposed chkReUse chkResident lvResults ilResults Button1 COS btnCallSpy btnPurgeList SpeedButton1 SpeedButton2 pmSnapShots btnLoadSnap1 btnLoadSnap2 ViaLoad