home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1995 November / PCWK1195.iso / inne / win95 / sieciowe / hotja32.lzh / hotjava / classsrc / browser / anchorstyle.java < prev    next >
Text File  |  1995-08-11  |  2KB  |  55 lines

  1. /*
  2.  * @(#)AnchorStyle.java    1.7 95/03/14 Jonathan Payne
  3.  *
  4.  * Copyright (c) 1994 Sun Microsystems, Inc. All Rights Reserved.
  5.  *
  6.  * Permission to use, copy, modify, and distribute this software
  7.  * and its documentation for NON-COMMERCIAL purposes and without
  8.  * fee is hereby granted provided that this copyright notice
  9.  * appears in all copies. Please refer to the file "copyright.html"
  10.  * for further important copyright and licensing information.
  11.  *
  12.  * SUN MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF
  13.  * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
  14.  * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
  15.  * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. SUN SHALL NOT BE LIABLE FOR
  16.  * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR
  17.  * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.
  18.  */
  19.  
  20. package browser;
  21.  
  22. import java.io.*;
  23. import awt.*;
  24. import java.util.*;
  25. import net.www.html.*;
  26.  
  27. /**
  28.  * Class AnchorStyle is a BasicStyle that pushes an anchor onto the
  29.  * anchor stack associated with the formatter.  This doesn't apply
  30.  * the BasicStyle if this anchor is not a link.
  31.  * @version 1.7, 14 Mar 1995
  32.  * @author Jonathan Payne
  33.  */
  34.  
  35. public class AnchorStyle extends BasicStyle {
  36.     public AnchorStyle(String spec) {
  37.     super(spec);
  38.     }
  39.  
  40.     public void start(WRFormatter f, TagRef ref) {
  41.     if (((AnchorTagRef) ref).isLink()) {
  42.         super.start(f, ref);
  43.     }
  44.     f.pushAnchor(ref);
  45.     }
  46.  
  47.     public void finish(WRFormatter f, TagRef ref) {
  48.     AnchorTagRef    atr = (AnchorTagRef) f.popAnchor();
  49.  
  50.     if (atr != null && atr.isLink()) {
  51.         super.finish(f, ref);
  52.     }
  53.     }
  54. }
  55.