home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgLangD.iso / VCAFE.3.0A / Main.bin / VisualObjectListener.java < prev    next >
Text File  |  1998-10-25  |  4KB  |  97 lines

  1. /*
  2.  * Copyright 1998 Symantec Corporation, All Rights Reserved.
  3.  */
  4.  
  5. package com.symantec.itools.vcafe.openapi;
  6.  
  7.  
  8. /**
  9.  * The listener interface for receiving notification when a change has occurred to
  10.  * a <code>VisualObject</code>.
  11.  * To be notified of changes, a plug-in implements this interface then calls
  12.  * <code>VisualObject.addVisualObjectListener</code> to place itself on the notification
  13.  * list.  When the <code>VisualObject</code> changes, the appropriate method of this interface
  14.  * is called.
  15.  * If you are only interested in a subset of the notification methods, you can extend the
  16.  * <code>VisualObjectAdapter</code> class rather than implement all the methods yourself.
  17.  *
  18.  * @see VisualObject#addVisualObjectListener
  19.  * @see VisualObject#removeVisualObjectListener
  20.  * @see VisualCafe#removeVisualObjectListener
  21.  * @see VisualObjectAdapter
  22.  *
  23.  * @author Symantec Internet Tools Division
  24.  * @version 1.0
  25.  * @since VCafe 3.0
  26.  */
  27. public interface VisualObjectListener
  28. {
  29.     /**
  30.      * This method is called when a property of the <code>VisualObject</code> is changed.
  31.      *
  32.      * @param visualObject      the <code>VisualObject</code> which had the change.
  33.      * @param index                the zero-based index of the property that has changed.
  34.      */
  35.     public void propertyChanged(VisualObject visualObject, short index);
  36.  
  37.     /**
  38.      * This method is called when a child is added to the <code>VisualObject</code>.
  39.      *
  40.      * @param visualObject      the <code>VisualObject</code> which had the change.
  41.      * @param childVisualObject    the child <code>VisualObject</code> that was added.
  42.      */
  43.     public void childAdded(VisualObject visualObject, VisualObject childVisualObject);
  44.  
  45.     /**
  46.      * This method is called when a child is removed from the <code>VisualObject</code>.
  47.      *
  48.      * @param visualObject      the <code>VisualObject</code> which had the change.
  49.      * @param childVisualObject    the child <code>VisualObject</code> that was removed.
  50.      */
  51.     public void childDeleted(VisualObject visualObject, VisualObject childVisualObject);
  52.  
  53.     /**
  54.      * This method is called when a VisualObject's internal data structures are replaced.
  55.      *
  56.      * @param visualObject            the parent <code>VisualObject</code> which had the change.
  57.      * @param replacedVisualObject    the child <code>VisualObject</code> that was replaced.
  58.      */
  59.     public void objectReplaced(VisualObject visualObject, VisualObject replacedVisualObject);
  60.  
  61.     /**
  62.      * This method is called before the <code>VisualObject</code> is removed from the repository.
  63.      * (The object is still valid.)
  64.      *
  65.      * @param visualObject        the <code>VisualObject</code> that has been deleted.
  66.      */
  67.     public void objectDeleted(VisualObject visualObject);
  68.  
  69.     /**
  70.      * This method is called when the description of the <code>VisualObject</code> is changed.
  71.      *
  72.      * @param visualObject        the <code>VisualObject</code> whose description has been changed.
  73.      */
  74.     public void descriptionChanged(VisualObject visualObject);
  75.  
  76.     /**
  77.      * This method is called when the <code>VisualObject</code> is added to the repository.
  78.      *
  79.      * @param visualObject        the <code>VisualObject</code> that was added.
  80.      */
  81.     public void objectAdded(VisualObject visualObject);
  82.  
  83.     /**
  84.      * This method is called after the <code>VisualObject</code> is removed from the repository
  85.      *
  86.      * @param visualObject        the <code>VisualObject</code> that was removed.
  87.      */
  88.     public void objectRemoved(VisualObject visualObject);
  89.  
  90.     /**
  91.      * This method is called when a property is added or removed from the <code>VisualObject</code>
  92.      *
  93.      * @param visualObject        the <code>VisualObject</code> which had the change.
  94.      */
  95.     public void propertyAddedDeleted(VisualObject visualObject);
  96. }
  97.