home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaMiscModsCD3.iso / _PROGRAMME / PLAYER / GUI / EasyPlayer.lha / EYP / Source / modsrc / listv.e next >
Encoding:
Text File  |  1999-09-22  |  1.4 KB  |  79 lines

  1. OPT MODULE
  2. OPT EXPORT
  3.  
  4. MODULE 'afc/nodemaster','afc/stringnode'
  5.  
  6. OBJECT listv OF stringnode
  7. ENDOBJECT
  8.  
  9. PROC moveitemfirst() OF listv
  10. DEF oldpos
  11.     oldpos:=self.pos()
  12.     self.add(self.obj(),NM_ADD_HEAD)
  13.     self.item(oldpos+1)
  14.     self.del()
  15.     self.first()
  16. ENDPROC 0
  17.  
  18. PROC moveitemup() OF listv
  19. DEF pos,s1,s2
  20.     pos:=self.pos()
  21.     IF pos>0
  22.         self.item(pos-1)
  23.         s1:=String(StrLen(self.obj()))
  24.         StrCopy(s1,self.obj())
  25.         self.item(pos)
  26.         s2:=String(StrLen(self.obj()))
  27.         StrCopy(s2,self.obj())
  28.         self.change(s1)
  29.         DisposeLink(s1)    
  30.         self.item(pos-1)
  31.         self.change(s2)
  32.         DisposeLink(s2)
  33.     ENDIF
  34. ENDPROC self.pos()
  35.  
  36. PROC moveitemdown() OF listv
  37. DEF pos,s1,s2
  38.     pos:=self.pos()
  39.     IF pos<(self.numitems()-1)
  40.         self.item(pos+1)
  41.         s1:=String(StrLen(self.obj()))
  42.         StrCopy(s1,self.obj())
  43.         self.item(pos)
  44.         s2:=String(StrLen(self.obj()))
  45.         StrCopy(s2,self.obj())
  46.         self.change(s1)
  47.         DisposeLink(s1)    
  48.         self.item(pos+1)
  49.         self.change(s2)
  50.         DisposeLink(s2)
  51.     ENDIF
  52. ENDPROC self.pos()
  53.  
  54. PROC moveitemlast() OF listv
  55. DEF oldpos
  56.     oldpos:=self.pos()
  57.     self.add(self.obj(),NM_ADD_TAIL)
  58.     self.item(oldpos)
  59.     self.del()
  60.     self.item(self.numitems()-1)
  61. ENDPROC self.pos()
  62.  
  63. PROC insert(string) OF listv
  64.     IF self.pos()=(self.numitems()-1)
  65.         self.add(string,NM_ADD_TAIL)
  66.     ELSE
  67.         SUPER self.insert(string)
  68.         self.succ()
  69.     ENDIF
  70. ENDPROC self.pos()
  71.  
  72. PROC change2(pos,string) OF listv
  73. DEF oldpos
  74.     oldpos:=self.pos()
  75.     self.item(pos)
  76.     self.change(string)
  77.     self.item(oldpos)
  78. ENDPROC
  79.