# WimpWorks Information File
# WimpWorks  Jaffa Software 1997. All rights reserved.

DEF TASKdetails
	Name		AAterm
	Purpose		Interface to ActiveApps
	Author		 Jaffa Software 1997
	Licence		
	Version		1.00 (13-Dec-1997)
	Compress	False
	Memory		0K
	IconbarSide	Right
	IconbarPriority	&00000000
	IconbarSprite	!aaterm
	IconbarText	
ENDTASK

DEF WEMinclude
ENDWEM

DEF MENUiconMenu%
	AAterm
	Info
		S(infoWindow%)
		
	Quit
		
		CLOSEDOWN
ENDMENU

DEF SUBR_PROCiconbar_click
	Event	3
	Every	-1
DEF PROCiconbar_click(button%)
  IF button%=4 THEN OPENWINDOW(display):OPENWINDOW(command)
ENDPROC
ENDSUBR

DEF SUBR_PROCicon_click
	Event	12
	Every	-1
DEF PROCicon_click(window%, icon%, button%)
  LOCAL ref%,task$,cmd$

  IF window%<>command OR button%<>4 THEN ENDPROC
  CASE icon% OF
    WHEN command_OK
      task$=READICON(command, command_task)
      cmd$=READICON(command, command_command)
      ref%=COMMAND(task$,cmd$)

    WHEN command_clear
      CLWIN(display)
      SETSIZE(display,-1,512)
      CurrentY%=-16
  ENDCASE
ENDPROC
ENDSUBR

DEF SUBR_PROCstart
	Event	0
	Every	-1
DEF PROCstart
  CurrentX%=16:CurrentY%=-16
ENDPROC
ENDSUBR

DEF SUBR_FNkey_press
	Event	7
	Every	-1
DEF FNkey_press(window%, icon%, key%)
  IF window%=command AND icon%=command_command AND key%=13 THEN PROCicon_click(command, command_OK, 4)
=TRUE
ENDSUBR

DEF SUBR_PROCpoll_called
	Event	18
	Every	-1
DEF PROCpoll_called(block%, action%)
  LOCAL fao$, from$, data$, ptr%, display$, height%
  
  ' Is it a user message?
  IF action%<>17 AND action%<>18 THEN ENDPROC

  ' ActiveApps_Command or ActiveApps_Reply
  IF block%!16<>&50300 AND block%!16<>&50301 THEN ENDPROC

  ptr%=24
  fao$=FNzstring(block%+ptr%):ptr%+=1+LEN(fao$)
  from$=FNzstring(block%+ptr%):ptr%+=1+LEN(from$)
  data$=FNzstring(block%+ptr%)
  IF fao$<>"" AND (fao$<>"AAterm" AND from$<>"AAterm") AND READSTATE(command, command_all)=FALSE THEN ENDPROC

  IF fao$="" THEN fao$="ALL"
  display$=STR$~(block%!20)+" "+from$+" to "+fao$+": "+data$

  ptr%=&FF000000:IF block%!16=&50301 THEN ptr%=&00008000
  TEXT(display,CurrentX%,CurrentY%,display$,ptr%)
  CurrentY%-=36
  IF CurrentY%>-512 THEN height%=512 ELSE height%=ABS(CurrentY%)
  SETSIZE(display,-1,height%)
ENDPROC
ENDSUBR

