;/*Die Datenstruktur und die einstellbaren Flags wurden vom
;FileRequester Aufruf der REQUESTER.Library übernommen, so daß
;eine Umstellung auf den RCT-File-Requester sehr einfach gemacht
;werden kann.*/

* Definitionen für RCT-FileRequester */

* DSIZE ist die Definition für die Größe des Pfadnamen-Arrays.		*/
* FCHARS steht für die Größe des Dateinamen-Arrays.						*/
* WILDLENGTH ist die länge des Stings für den Hide- und Showtext.	*/

* Durch folgende Flags kann das Aussehen und die Art des Requesters */
* verändert werden: 																*/

* FRQCACHINGM 	 Wenn das eingelesene Verzeichnis
*		 zwischengespeichert und beim nächsten Aufruf
*		 des Requesters wieder aufgerufen werden soll */
* FRQABSOLUTEXYM  in den Felder WindowLeftEdge, WindowTopEdge
*		 werden Koordianten angegeben anderenfalls wird
*		 der Requester zentiert */
* FRQCACHEPURGEM  Das zwischengespeicherte Verzeichnis wird
*		 neu geladen wenn sich das Datum des Verzeichnisses geändert hat */
* FRQNOHALFCACHEM Die eingelesenen Dateien werden nicht bis zum
*		 nächsten Aufruf zwischengespeichert, wenn sie nicht vollständig
*		 eingelesen werden konnten */
* FRQNOSORTM		 Die Dateinamen sollen unsortiert angezeigt
*						 werden */
* FRQNODRAGM		 Der Requester kann nciht verschoben oder in
*			 den Hinter-/Vordergrund geholt werden */
* FRQSAVINGM		 Im "OK-Gadget" wird der Text "SAVE" angezeigt */
* FRQLOADINGM 	 Im "OK-Gadget" wird der text "LOAD" angezeigt */
* FRQNODEPTHM 	 Das Fenster soll zwar verschiebbar aber nicht
*		 in der Vorder-/Hintergrund stellbar sein. */


;ifndef	DSIZE
;define	DSIZE 130
;define	FCHARS	30
;endif	/* ifndef DSIZE */

;define	WILDLENGTH	30

;define	FRQSHOWINFOB	  0
;define	FRQEXTSELECTB	  1
;define	FRQCACHINGB 	  2
;define	FRQGETFONTSB	  3
;define	FRQINFOGADGETB   4
;define	FRQHIDEWILDSB	  5
;define	FRQABSOLUTEXYB   6
;define	FRQCACHEPURGEB   7
;define	FRQNOHALFCACHEB  8
;define	FRQNOSORTB		  9
;define	FRQNODRAGB		 10
;define	FRQSAVINGB		 11
;define	FRQLOADINGB 	 12
;define	FRQDIRONLYB 	 13
;define	FRQNODEPTHB 	 14

;define	FRQSHOWINFOM	(1<<FRQSHOWINFOB)
;define	FRQEXTSELECTM	(1<<FRQEXTSELECTB)
;define	FRQCACHINGM 	(1<<FRQCACHINGB)
;define	FRQGETFONTSM	(1<<FRQGETFONTSB)
;define	FRQINFOGADGETM (1<<FRQINFOGADGETB)
;define	FRQHIDEWILDSM	(1<<FRQHIDEWILDSB)
;define	FRQABSOLUTEXYM (1<<FRQABSOLUTEXYB)
;define	FRQCACHEPURGEM (1<<FRQCACHEPURGEB)
;define	FRQNOHALFCACHEM	(1<<FRQNOHALFCACHEB)
;define	FRQNOSORTM		(1<<FRQNOSORTB)
;define	FRQNODRAGM		(1<<FRQNODRAGB)
;define	FRQSAVINGM		(1<<FRQSAVINGB)
;define	FRQLOADINGM 	(1<<FRQLOADINGB)
;define	FRQDIRONLYM 	(1<<FRQDIRONLYB)
;define	FRQNODEPTHM 	(1<<FRQNODEPTHB)







	bra	main
	include "rctdef.asm"
main:
	bsr	openrct
	tst.l	d0
	beq	error
	lea	filerdef,a0
	jsr	filer
	bsr	closerct
error:
	rts
filerdef:

	dc.w	0											 
	dc.l	filertitle											 
	dc.l	filerpath
	dc.l	filername
	dc.l	pathname
filerwindow:
	dc.l	0								
	dc.w	0,0,0,0
	dc.l	%001000000000000 ;Flags (Load ein)
											 
	dc.w	0,0,0,0,0,0,0,0,0,0,0,0,0
	ds.w	18
	ds.b	12

	dc.w	100,0	;left top
	dc.w	0,0
	dc.l	0

hide:
	dc.b	".info"	;Nicht anzeigen											 
	ds.b	32-5
show:
	dc.b	"#?"
	ds.b	32-2	;anzeigen Wildcards											 

  	dc.w	0 	;FileBufferPos;		 /* Werte für Stringgadgets */
  	dc.w	0	;FileDispPos;
  	dc.w	0	;DirBufferPos;
  	dc.w	0	;DirDispPos;
  	dc.w	0	;HideBufferPos;
  	dc.w	0	;HideDispPos;
  	dc.w	0	;ShowBufferPos;
  	dc.w	0	;ShowDispPos;


	dc.l	0,0,0,0,0
	dc.w	0,0,0,0
 

filertitle:
	dc.b	"RCT-Dateiauswahlfenster",0
	even
filerpath:
	dc.b	"SYS:"
	ds.b	130-4
	even
filername:
	ds.b	30
pathname:
	ds.b	160

