Code: Links in Listen rumschieben
Übersicht BlitzMax, BlitzMax NG Allgemein
DivineDominionBetreff: Code: Links in Listen rumschieben |
So, Jan 16, 2005 16:36 Antworten mit Zitat |
|
---|---|---|
Weiß net obs ins Archiv sollte...
Jedenfalls habe ich mir was geschrieben um Einträge in Listen umherzuschieben, weil ich da nix passendes fand und remove und addlast mir zu doof waren - obwohls wohl leichter wäre, aber am Ende ist es mit der suche nach dem value in TLink zu lahm oder sowas... Jedenfalls funktioniert das ganz nett Code: [AUSKLAPPEN] Strict Global liste:TList = New TList Global link:TLink = liste.AddLast("1") liste.AddLast("2") liste.AddLast("3") liste.AddLast("4") liste.AddLast("5") show( liste ) moveDown( link, liste ) show( liste ) moveUp( link, liste ) show( liste ) movetoEnd( link, liste ) show( liste ) movetoStart( link, liste ) show( liste ) Function moveDown( hLink:TLink, hList:TList ) Local hPred:TLink = hLink._pred Local hSucc:TLink = hLink._succ hPred._succ = hSucc hSucc._pred = hPred hLink._succ = hSucc._succ hLink._pred = hSucc hSucc._succ._pred = hLink hSucc._succ = hLink EndFunction Function moveup( hLink:TLink, hList:TList ) Local hPred:TLink = hLink._pred Local hSucc:TLink = hLink._succ hPred._succ = hSucc hSucc._pred = hPred hLink._pred = hPred._pred hLink._succ = hPred hPred._pred._succ = hLink hPred._pred = hLink EndFunction Function moveToStart( hLink:TLink, hList:TList ) Local hFirst:TLink = hList.FirsTLink( ) If hLink = hFirst Then Return hLink._succ._pred = hLink._pred hLink._pred._succ = hLink._succ hFirst._pred._succ = hLink hLink._pred = hFirst._pred hLink._succ = hFirst hFirst._pred = hLink EndFunction Function moveToEnd( hLink:TLink, hList:TList ) Local hLast:TLink = hList.LastLink() If hLink = hLast Then Return hLink._succ._pred = hLink._pred hLink._pred._succ = hLink._succ hLast._succ._pred = hLink hLink._succ = hLast._succ hLast._succ = hLink hLink._pred = hLast EndFunction Function show( hList:TList ) For Local t:string = EachIn hList Print t Next Print "-------------" EndFunction |
||
christian.tietze@gmail.com - https://christiantietze.de
macOS |
Übersicht BlitzMax, BlitzMax NG Allgemein
Powered by phpBB © 2001 - 2006, phpBB Group