AutoIt_ClipboardSort

;==============================================================================

; Nom	:	ClipboardSort
; But	:	Trie le contenu du presse-papier
; Date	:	05/12/2005
; Auteur:	Fabrice Vado
;
; 0.0	:	05/12/2005	Création
;==============================================================================

#include <Array.au3>
Global $iMsgBoxAnswer


$strClipboard = ClipGet()

$avArray = StringSplit($strClipboard, @LF)

ArrayDisplaySave( $avArray, "UnSorted" )
If $iMsgBoxAnswer = 6 Then ;Yes
		_ArrayToClip ( $avArray, 1 )
		Exit
EndIf


_ArraySort( $avArray,0,1)  ; sort and start at 1.. skip array[0]
ArrayDisplaySave( $avArray, "Sorted Asc" )
If $iMsgBoxAnswer = 6 Then ;Yes
		_ArrayToClip ( $avArray, 1 )
		Exit
EndIf

_ArraySort( $avArray,1,1)  ; sort and start at 1.. skip array[0]
ArrayDisplaySave( $avArray, "Sorted Desc" )
If $iMsgBoxAnswer = 6 Then ;Yes
		_ArrayToClip ( $avArray, 1 )
EndIf

Exit

Func ArrayDisplaySave(ByRef $avArray, $sTitle)
	Local $iCounter = 0, $sMsg = ""
	
	If (Not IsArray($avArray)) Then
		SetError(1)
		Return 0
	EndIf
	
	For $iCounter = 1 To $avArray[0]
		$sMsg = $sMsg & StringStripCR($avArray[$iCounter]) & @CR
	Next

	Dim $iMsgBoxAnswer
	$iMsgBoxAnswer = MsgBox(36,$sTitle, $sMsg)

	SetError(0)
	Return $iMsgBoxAnswer 

EndFunc   ;==>ArrayDisplaySave