public boolean handleKeyword(String keyword){
  String item;
  boolean ignoreGroupIfUnknownKeywordSave=ignoreGroupIfUnknownKeyword;
  if (skippingCharacters > 0) {
    skippingCharacters--;
    return true;
  }
  ignoreGroupIfUnknownKeyword=false;
  if ((item=textKeywords.get(keyword)) != null) {
    handleText(item);
    return true;
  }
  if (keyword.equals("fonttbl")) {
    setRTFDestination(new FonttblDestination());
    return true;
  }
  if (keyword.equals("colortbl")) {
    setRTFDestination(new ColortblDestination());
    return true;
  }
  if (keyword.equals("stylesheet")) {
    setRTFDestination(new StylesheetDestination());
    return true;
  }
  if (keyword.equals("info")) {
    setRTFDestination(new InfoDestination());
    return false;
  }
  if (keyword.equals("mac")) {
    setCharacterSet("mac");
    return true;
  }
  if (keyword.equals("ansi")) {
    if (useNeXTForAnsi)     setCharacterSet("NeXT");
 else     setCharacterSet("ansi");
    return true;
  }
  if (keyword.equals("next")) {
    setCharacterSet("NeXT");
    return true;
  }
  if (keyword.equals("pc")) {
    setCharacterSet("cpg437");
    return true;
  }
  if (keyword.equals("pca")) {
    setCharacterSet("cpg850");
    return true;
  }
  if (keyword.equals("*")) {
    ignoreGroupIfUnknownKeyword=true;
    return true;
  }
  if (rtfDestination != null) {
    if (rtfDestination.handleKeyword(keyword))     return true;
  }
  if (keyword.equals("aftncn") || keyword.equals("aftnsep") || keyword.equals("aftnsepc")|| keyword.equals("annotation")|| keyword.equals("atnauthor")|| keyword.equals("atnicn")|| keyword.equals("atnid")|| keyword.equals("atnref")|| keyword.equals("atntime")|| keyword.equals("atrfend")|| keyword.equals("atrfstart")|| keyword.equals("bkmkend")|| keyword.equals("bkmkstart")|| keyword.equals("datafield")|| keyword.equals("do")|| keyword.equals("dptxbxtext")|| keyword.equals("falt")|| keyword.equals("field")|| keyword.equals("file")|| keyword.equals("filetbl")|| keyword.equals("fname")|| keyword.equals("fontemb")|| keyword.equals("fontfile")|| keyword.equals("footer")|| keyword.equals("footerf")|| keyword.equals("footerl")|| keyword.equals("footerr")|| keyword.equals("footnote")|| keyword.equals("ftncn")|| keyword.equals("ftnsep")|| keyword.equals("ftnsepc")|| keyword.equals("header")|| keyword.equals("headerf")|| keyword.equals("headerl")|| keyword.equals("headerr")|| keyword.equals("keycode")|| keyword.equals("nextfile")|| keyword.equals("object")|| keyword.equals("pict")|| keyword.equals("pn")|| keyword.equals("pnseclvl")|| keyword.equals("pntxtb")|| keyword.equals("pntxta")|| keyword.equals("revtbl")|| keyword.equals("rxe")|| keyword.equals("tc")|| keyword.equals("template")|| keyword.equals("txe")|| keyword.equals("xe")) {
    ignoreGroupIfUnknownKeywordSave=true;
  }
  if (ignoreGroupIfUnknownKeywordSave) {
    setRTFDestination(new DiscardingDestination());
  }
  return false;
}

public boolean handleKeyword ( String keyword ) { String item ; boolean ignoreGroupIfUnknownKeywordSave = ignoreGroupIfUnknownKeyword ; if ( skippingCharacters > 0 ) { skippingCharacters -- ; return true ; } ignoreGroupIfUnknownKeyword = false ; if ( ( item = textKeywords . get ( keyword ) ) != null ) { handleText ( item ) ; return true ; } if ( keyword . equals ( "fonttbl" ) ) { setRTFDestination ( new FonttblDestination ( ) ) ; return true ; } if ( keyword . equals ( "colortbl" ) ) { setRTFDestination ( new ColortblDestination ( ) ) ; return true ; } if ( keyword . equals ( "stylesheet" ) ) { setRTFDestination ( new StylesheetDestination ( ) ) ; return true ; } if ( keyword . equals ( "info" ) ) { setRTFDestination ( new InfoDestination ( ) ) ; return false ; } if ( keyword . equals ( "mac" ) ) { setCharacterSet ( "mac" ) ; return true ; } if ( keyword . equals ( "ansi" ) ) { if ( useNeXTForAnsi ) setCharacterSet ( "NeXT" ) ; else setCharacterSet ( "ansi" ) ; return true ; } if ( keyword . equals ( "next" ) ) { setCharacterSet ( "NeXT" ) ; return true ; } if ( keyword . equals ( "pc" ) ) { setCharacterSet ( "cpg437" ) ; return true ; } if ( keyword . equals ( "pca" ) ) { setCharacterSet ( "cpg850" ) ; return true ; } if ( keyword . equals ( "*" ) ) { ignoreGroupIfUnknownKeyword = true ; return true ; } if ( rtfDestination != null ) { if ( rtfDestination . handleKeyword ( keyword ) ) return true ; } if ( keyword . equals ( "aftncn" ) || keyword . equals ( "aftnsep" ) || keyword . equals ( "aftnsepc" ) || keyword . equals ( "annotation" ) || keyword . equals ( "atnauthor" ) || keyword . equals ( "atnicn" ) || keyword . equals ( "atnid" ) || keyword . equals ( "atnref" ) || keyword . equals ( "atntime" ) || keyword . equals ( "atrfend" ) || keyword . equals ( "atrfstart" ) || keyword . equals ( "bkmkend" ) || keyword . equals ( "bkmkstart" ) || keyword . equals ( "datafield" ) || keyword . equals ( "do" ) || keyword . equals ( "dptxbxtext" ) || keyword . equals ( "falt" ) || keyword . equals ( "field" ) || keyword . equals ( "file" ) || keyword . equals ( "filetbl" ) || keyword . equals ( "fname" ) || keyword . equals ( "fontemb" ) || keyword . equals ( "fontfile" ) || keyword . equals ( "footer" ) || keyword . equals ( "footerf" ) || keyword . equals ( "footerl" ) || keyword . equals ( "footerr" ) || keyword . equals ( "footnote" ) || keyword . equals ( "ftncn" ) || keyword . equals ( "ftnsep" ) || keyword . equals ( "ftnsepc" ) || keyword . equals ( "header" ) || keyword . equals ( "headerf" ) || keyword . equals ( "headerl" ) || keyword . equals ( "headerr" ) || keyword . equals ( "keycode" ) || keyword . equals ( "nextfile" ) || keyword . equals ( "object" ) || keyword . equals ( "pict" ) || keyword . equals ( "pn" ) || keyword . equals ( "pnseclvl" ) || keyword . equals ( "pntxtb" ) || keyword . equals ( "pntxta" ) || keyword . equals ( "revtbl" ) || keyword . equals ( "rxe" ) || keyword . equals ( "tc" ) || keyword . equals ( "template" ) || keyword . equals ( "txe" ) || keyword . equals ( "xe" ) ) { ignoreGroupIfUnknownKeywordSave = true ; } if ( ignoreGroupIfUnknownKeywordSave ) { setRTFDestination ( new DiscardingDestination ( ) ) ; } return false ; }
handles a parameterless rtf keyword . this is called by the superclass ( rtfparser ) when a keyword is found in the input stream .
