1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28 #ifndef ADC_ADOC_TOKINTPR_HXX 29 #define ADC_ADOC_TOKINTPR_HXX 30 31 32 33 // USED SERVICES 34 // BASE CLASSES 35 // COMPONENTS 36 // PARAMETERS 37 38 namespace adoc { 39 40 41 class Tok_at_std; 42 class Tok_at_base; 43 class Tok_at_exception; 44 class Tok_at_impl; 45 class Tok_at_key; 46 class Tok_at_param; 47 class Tok_at_see; 48 class Tok_at_template; 49 class Tok_at_interface; 50 class Tok_at_internal; 51 class Tok_at_obsolete; 52 class Tok_at_module; 53 class Tok_at_file; 54 class Tok_at_gloss; 55 class Tok_at_global; 56 class Tok_at_include; 57 class Tok_at_label; 58 class Tok_at_since; 59 class Tok_at_HTML; // Sets default to: Use HTML in DocuText 60 class Tok_at_NOHTML; // Sets default to: Don't use HTML in DocuText 61 62 class Tok_DocWord; 63 class Tok_LineStart; 64 class Tok_Whitespace; 65 class Tok_Eol; 66 class Tok_EoDocu; 67 68 69 #define DECL_TOK_HANDLER(token) \ 70 virtual void Hdl_##token( \ 71 const Tok_##token & i_rTok ) = 0 72 73 74 75 class TokenInterpreter 76 { 77 public: 78 virtual ~TokenInterpreter() {} 79 80 DECL_TOK_HANDLER(at_std); 81 DECL_TOK_HANDLER(at_base); 82 DECL_TOK_HANDLER(at_exception); 83 DECL_TOK_HANDLER(at_impl); 84 DECL_TOK_HANDLER(at_key); 85 DECL_TOK_HANDLER(at_param); 86 DECL_TOK_HANDLER(at_see); 87 DECL_TOK_HANDLER(at_template); 88 DECL_TOK_HANDLER(at_interface); 89 DECL_TOK_HANDLER(at_internal); 90 DECL_TOK_HANDLER(at_obsolete); 91 DECL_TOK_HANDLER(at_module); 92 DECL_TOK_HANDLER(at_file); 93 DECL_TOK_HANDLER(at_gloss); 94 DECL_TOK_HANDLER(at_global); 95 DECL_TOK_HANDLER(at_include); 96 DECL_TOK_HANDLER(at_label); 97 DECL_TOK_HANDLER(at_since); 98 DECL_TOK_HANDLER(at_HTML); 99 DECL_TOK_HANDLER(at_NOHTML); 100 DECL_TOK_HANDLER(DocWord); 101 DECL_TOK_HANDLER(Whitespace); 102 DECL_TOK_HANDLER(LineStart); 103 DECL_TOK_HANDLER(Eol); 104 DECL_TOK_HANDLER(EoDocu); 105 }; 106 107 #undef DECL_TOK_HANDLER 108 109 110 // IMPLEMENTATION 111 112 113 } // namespace adoc 114 115 116 #endif 117 118