***************************************************************************************
* WinSwap subroutine for DOpusFuncs.s						      *
***************************************************************************************
WinSwap
	Tst.l	WinSwap_S(a5)
	Bne.s	WinSwap_DoIt
	RTS
WinSwap_DoIt
	Sub.l	d0,d0			Abort if there isn't a source lister.
	Bsr	GetSourceHandle		Get the source lister's handle -> Source_Handle

	Sub.l	d0,d0			Abort if there isn't a dest lister.
	Bsr	GetDestHandle		Get the dest lister's handle -> Dest_Handle
;-------------------------------------------------------------------------------------;
	Lea	Source_Handle(a5),a0	-.
	Lea	PathBuffer1(a5),a1	 |_ Source position
	Move.w	#PathBuffer1Len,d7	 |  of PathBuffer1
	Bsr	GetListerPosn		-'

	Lea	Dest_Handle(a5),a0	-.
	Lea	PathBuffer2(a5),a1	 |_ Dest position
	Move.w	#PathBuffer2Len,d7	 |  of PathBuffer2
	Bsr	GetListerPosn		-'
;-------------------------------------------------------------------------------------;
	Lea	Source_Handle(a5),a0		Handle,
	Lea	Set_Position_SubCommand(pc),a1	Position command
	Lea	PathBuffer2(a5),a2		Position to set
	Bsr	ListerSet

	Lea	Dest_Handle(a5),a0
	Lea	Set_Position_SubCommand(pc),a1
	Lea	PathBuffer1(a5),a2
	Bra	ListerSet
;;;;;;;	RTS for us.
