home *** CD-ROM | disk | FTP | other *** search
- OPT MODULE
- OPT EXPORT
-
- MODULE 'afc/nodemaster','afc/stringnode'
-
- OBJECT listv OF stringnode
- ENDOBJECT
-
- PROC moveitemfirst() OF listv
- DEF oldpos
- oldpos:=self.pos()
- self.add(self.obj(),NM_ADD_HEAD)
- self.item(oldpos+1)
- self.del()
- self.first()
- ENDPROC 0
-
- PROC moveitemup() OF listv
- DEF pos,s1,s2
- pos:=self.pos()
- IF pos>0
- self.item(pos-1)
- s1:=String(StrLen(self.obj()))
- StrCopy(s1,self.obj())
- self.item(pos)
- s2:=String(StrLen(self.obj()))
- StrCopy(s2,self.obj())
- self.change(s1)
- DisposeLink(s1)
- self.item(pos-1)
- self.change(s2)
- DisposeLink(s2)
- ENDIF
- ENDPROC self.pos()
-
- PROC moveitemdown() OF listv
- DEF pos,s1,s2
- pos:=self.pos()
- IF pos<(self.numitems()-1)
- self.item(pos+1)
- s1:=String(StrLen(self.obj()))
- StrCopy(s1,self.obj())
- self.item(pos)
- s2:=String(StrLen(self.obj()))
- StrCopy(s2,self.obj())
- self.change(s1)
- DisposeLink(s1)
- self.item(pos+1)
- self.change(s2)
- DisposeLink(s2)
- ENDIF
- ENDPROC self.pos()
-
- PROC moveitemlast() OF listv
- DEF oldpos
- oldpos:=self.pos()
- self.add(self.obj(),NM_ADD_TAIL)
- self.item(oldpos)
- self.del()
- self.item(self.numitems()-1)
- ENDPROC self.pos()
-
- PROC insert(string) OF listv
- IF self.pos()=(self.numitems()-1)
- self.add(string,NM_ADD_TAIL)
- ELSE
- SUPER self.insert(string)
- self.succ()
- ENDIF
- ENDPROC self.pos()
-
- PROC change2(pos,string) OF listv
- DEF oldpos
- oldpos:=self.pos()
- self.item(pos)
- self.change(string)
- self.item(oldpos)
- ENDPROC
-