void StrucViewItem::expandNode( int index ) //----------------------------------------- { VerboseListBox * listbox = _parent->getListBox(); WVList * listobjs = _parent->getObjs(); int childIndex = index + 1; int i; initState(); if( _expandState == Collapsed ) { _expandState=Expanded; } else { return; } char * tmp = name(); listbox->deleteString( index ); listbox->insertString( tmp, index ); delete tmp; listobjs->removeAt( index ); listobjs->insertAt( index, this ); for( i = 0; i < _kids.count(); i++ ) { char *tmp = ((StrucViewItem *)_kids[i])->name(); listbox->insertString( tmp, childIndex ); delete tmp; listobjs->insertAt( childIndex, _kids[i] ); childIndex ++; } listbox->select( index ); return; }
void MItem::pruneStates( WVList& states ) { for( int i=states.count(); i>0; ) { i--; MState* s = (MState*)states[i]; if( !s->legal() ) { delete states.removeAt( i ); } } }
void FunctionSym::callers( WVList & list ) //---------------------------------------- { int i; getModule()->findRefSyms( &list, this ); for( i = 0; i < list.count(); i += 1 ) { Symbol * sym = (Symbol *) list[ i ]; if( sym->symtype() != DR_SYM_FUNCTION ) { list.removeAt( i ); } } }
void StrucViewItem::collapseNode( int &index ) //-------------------------------------------- { WVList * listobjs = _parent->getObjs(); VerboseListBox * listbox = _parent->getListBox(); initState(); if( _expandState == Expanded ) { index += 1; for( int i = 0; i < _kids.count(); i++ ) { ((StrucViewItem *)_kids[ i ])->collapseNode( index ); } index -= 1; } listobjs->removeAt( index ); listbox->deleteString( index ); if( _expandState == Expanded ) { _expandState = Collapsed; } }