home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 18
/
aminetcdnumber181997.iso
/
Aminet
/
dev
/
e
/
EasyGUI_v33b2.lha
/
Src
/
Plugins
/
tapedeck.e
< prev
next >
Wrap
Text File
|
1997-02-02
|
3KB
|
88 lines
OPT MODULE
MODULE 'tools/EasyGUI', 'tools/ghost',
'intuition/intuition', 'intuition/gadgetclass',
'gadgets/tapedeck'
EXPORT OBJECT tapedeck OF plugin
mode
paused
disabled
PRIVATE
tapedeck:PTR TO gadget
tapedeckbase
ENDOBJECT
PROC tapedeck(mode=BUT_STOP,paused=FALSE,disabled=FALSE) OF tapedeck
self.tapedeckbase:=OpenLibrary('gadgets/tapedeck.gadget',39)
IF self.tapedeckbase=NIL THEN Raise("tape")
self.mode:=mode
self.paused:=paused
self.disabled:=disabled
ENDPROC
PROC end() OF tapedeck
IF self.tapedeckbase THEN CloseLibrary(self.tapedeckbase)
ENDPROC
PROC min_size(ta,fh) OF tapedeck
ENDPROC 201,15
PROC will_resize() OF tapedeck IS 0
PROC render(ta,x,y,xs,ys,w) OF tapedeck
self.tapedeck:=NewObjectA(NIL,'tapedeck.gadget',
[GA_TOP,y, GA_LEFT,x, GA_WIDTH,xs, GA_HEIGHT,ys,
TDECK_MODE,self.mode, TDECK_PAUSED,self.paused,
TDECK_TAPE,TRUE, GA_DISABLED,self.disabled,
GA_RELVERIFY,TRUE, NIL])
IF self.tapedeck=NIL THEN Raise("tape")
AddGList(w,self.tapedeck,-1,1,NIL)
RefreshGList(self.tapedeck,w,NIL,1)
IF self.disabled THEN ghost(w,self.x,self.y,self.xs,self.ys)
ENDPROC
PROC clear_render(win:PTR TO window) OF tapedeck
IF self.tapedeck
RemoveGList(win,self.tapedeck,1)
DisposeObject(self.tapedeck)
ENDIF
ENDPROC
PROC message_test(imsg:PTR TO intuimessage,win:PTR TO window) OF tapedeck
IF imsg.class=IDCMP_GADGETUP THEN RETURN imsg.iaddress=self.tapedeck
ENDPROC FALSE
PROC message_action(class,qual,code,win:PTR TO window) OF tapedeck
DEF x
GetAttr(TDECK_MODE,self.tapedeck,{x})
self.mode:=x
GetAttr(TDECK_PAUSED,self.tapedeck,{x})
self.paused:=IF x THEN TRUE ELSE FALSE
ENDPROC TRUE
PROC setmode(mode=BUT_STOP) OF tapedeck
self.mode:=mode
IF mode=BUT_PAUSE THEN self.paused:=self.paused=FALSE
SetGadgetAttrsA(self.tapedeck,self.gh.wnd,NIL,[TDECK_MODE,mode,NIL])
IF self.disabled THEN ghost(self.gh.wnd,self.x,self.y,self.xs,self.ys)
ENDPROC
PROC setpaused(paused=TRUE) OF tapedeck
IF self.paused<>paused
SetGadgetAttrsA(self.tapedeck,self.gh.wnd,NIL,[TDECK_MODE,BUT_PAUSE,NIL])
IF self.disabled THEN ghost(self.gh.wnd,self.x,self.y,self.xs,self.ys)
ENDIF
self.paused:=paused
ENDPROC
PROC setdisabled(disabled=TRUE) OF tapedeck
SetGadgetAttrsA(self.tapedeck,self.gh.wnd,NIL,[GA_DISABLED,disabled,NIL])
IF disabled
ghost(self.gh.wnd,self.x,self.y,self.xs,self.ys)
ELSE
unghost_clear(self.tapedeck,self.gh.wnd,self.x,self.y,self.xs,self.ys)
ENDIF
self.disabled:=disabled
ENDPROC