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 AUTODOC_DSP_HTML_STD_HXX 29 #define AUTODOC_DSP_HTML_STD_HXX 30 31 32 33 namespace ary 34 { 35 namespace cpp 36 { 37 class Gate; 38 } 39 namespace idl 40 { 41 class Gate; 42 } 43 } 44 45 namespace display 46 { 47 class CorporateFrame; 48 } 49 50 51 namespace autodoc 52 { 53 54 55 class HtmlDisplay_UdkStd 56 { 57 public: 58 virtual ~HtmlDisplay_UdkStd() {} 59 60 /** Displays the names of several C++ code entities within the 61 given namespace (or the global namespace as default). All 62 subnamespaces are included. 63 64 Output has following format: 65 66 ========================================================================= 67 OutputDirectory 68 index.html 69 def-all.html 70 prj\ 71 sal\ 72 index.html // Overview about project 73 74 f-FileName[1,2,...] // Overview about file 75 f-OtherFileName[1,2,...] 76 ... 77 def-FileName[1,2,...] // #defines and macros in file 78 def-OtherFileName[1,2,...] 79 ... 80 rtl\ 81 ... 82 cppu\ 83 ... 84 cppuhelper\ 85 ... 86 ... 87 ix\ 88 ix-a.html 89 ix-b.html 90 ... 91 ix-z.html 92 ix-_.html 93 ix-other.html 94 95 cpp\ 96 index.html // Overview about global namespace 97 98 Namespace_A\ 99 Namespace_C\ 100 index.html // Overview about namespace C 101 ... 102 ... 103 104 index.html // Overview about namespace A 105 106 c-ClassName_X.html // Description of class 107 ... 108 e-EnumName.html // Description of enum 109 ... 110 t-TypedefName.html // Description of typedef 111 ... 112 o-Filename.html // Descriptions of operations in this file in this namespace 113 ... 114 d-Filename.html // Descriptions of data in this file in this namespace 115 ... 116 117 ClassName_X\ 118 c-ClassName_Y.html 119 e-EnumName.html 120 t-TypedefName.html 121 o.html // Descriptions of operations in class X 122 d.html // Descriptions of data in class X 123 124 ClassName_Y\ 125 ... 126 ... 127 128 idl\ 129 ... 130 java\ 131 ... 132 ========================================================================= 133 134 135 @param i_sOutputDirectory 136 Directory for output. Path must be given in correct 137 syntax for the actual operating system without final 138 path delimiter. If this is 0 or "", the current 139 working directory is chosen. 140 @param i_rAryGate 141 The access to the Autodoc Repository. 142 @param i_rLayout 143 Gives parameters for the appearance of the HTML output. 144 @param i_pProjectList 145 If this is != 0, then only code entities which are declared 146 in this projects are displayed. 147 */ 148 void Run( 149 const char * i_sOutputDirectory, 150 const ary::cpp::Gate & 151 i_rAryGate, 152 const display::CorporateFrame & 153 i_rLayout ); 154 private: 155 virtual void do_Run( 156 const char * i_sOutputDirectory, 157 const ary::cpp::Gate & 158 i_rAryGate, 159 const display::CorporateFrame & 160 i_rLayout ) = 0; 161 }; 162 163 // IMPLEMENTATION 164 165 inline void 166 HtmlDisplay_UdkStd::Run( const char * i_sOutputDirectory, 167 const ary::cpp::Gate & i_rAryGate, 168 const display::CorporateFrame & i_rLayout ) 169 { 170 do_Run( i_sOutputDirectory, i_rAryGate, i_rLayout ); 171 } 172 173 174 175 // class HtmlDisplay_Idl_Ifc 176 177 class HtmlDisplay_Idl_Ifc 178 { 179 public: 180 virtual ~HtmlDisplay_Idl_Ifc() {} 181 182 void Run( 183 const char * i_sOutputDirectory, 184 const ary::idl::Gate & 185 i_rAryGate, 186 const display::CorporateFrame & 187 i_rLayout ); 188 private: 189 virtual void do_Run( 190 const char * i_sOutputDirectory, 191 const ary::idl::Gate & 192 i_rAryGate, 193 const display::CorporateFrame & 194 i_rLayout ) = 0; 195 }; 196 197 198 199 200 // IMPLEMENTATION 201 inline void 202 HtmlDisplay_Idl_Ifc::Run( const char * i_sOutputDirectory, 203 const ary::idl::Gate & i_rAryGate, 204 const display::CorporateFrame & i_rLayout ) 205 { 206 do_Run( i_sOutputDirectory, i_rAryGate, i_rLayout ); 207 } 208 209 210 211 212 } // namespace autodoc 213 #endif 214