1 /**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements. See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership. The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License. You may obtain a copy of the License at
10 *
11 * http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied. See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22 #include <precomp.h>
23 #include "pm_start.hxx"
24
25
26 // NOT FULLY DEFINED SERVICES
27 #include <ary/ary.hxx>
28 #include "hd_chlst.hxx"
29 #include "hd_docu.hxx"
30 #include "navibar.hxx"
31 #include "html_kit.hxx"
32 #include "opageenv.hxx"
33 #include "pagemake.hxx"
34 #include "strconst.hxx"
35
36
37 using namespace csi;
38 using csi::html::Paragraph;
39 using csi::html::HorizontalLine;
40 using csi::html::AlignAttr;
41 using csi::html::Bold;
42 using csi::html::Link;
43 using csi::html::Sbr;
44 using csi::html::LineBreak;
45
46
47
PageMaker_Overview(PageDisplay & io_rPage)48 PageMaker_Overview::PageMaker_Overview( PageDisplay & io_rPage )
49 : SpecializedPageMaker(io_rPage),
50 pNavi(0)
51 {
52 }
53
~PageMaker_Overview()54 PageMaker_Overview::~PageMaker_Overview()
55 {
56 }
57
58 void
MakePage()59 PageMaker_Overview::MakePage()
60 {
61 pNavi = new NavigationBar( Env(), NavigationBar::LOC_Overview );
62 Write_NavBar();
63
64 Write_TopArea();
65 Write_DocuArea();
66 }
67
68 void
Write_NavBar()69 PageMaker_Overview::Write_NavBar()
70 {
71 pNavi->Write( CurOut() );
72 CurOut() << new HorizontalLine;
73 }
74
75 void
Write_TopArea()76 PageMaker_Overview::Write_TopArea()
77 {
78 adcdisp::PageTitle_Std fTitle;
79 fTitle( CurOut(), Env().RepositoryTitle(), "" );
80
81 CurOut()
82 >> *new Paragraph
83 << new html::StyleAttr("font-size:14pt;")
84 << "This is a reference documentation for the C++ source code."
85 << new LineBreak
86 << new LineBreak
87 << "Points to start:";
88
89 html::SimpleList &
90 rList = *new html::SimpleList;
91 CurOut() >> rList;
92
93 html::ListItem & rNamedObjsItem =
94 rList.AddItem();
95
96 StreamLock sNspDir(50);
97 rNamedObjsItem
98 << new html::StyleAttr("font-size:14pt;")
99 >> *new Link( sNspDir() << C_sDIR_NamespacesCpp
100 << "/"
101 << C_sHFN_Namespace
102 << c_str )
103 >> *new Bold
104 << "Named Objects";
105 rNamedObjsItem << " (classes, functions, namespaces, etc.)"
106 << new html::LineBreak;
107 rList.AddItem()
108 << new html::StyleAttr("font-size:14pt;")
109 >> *new Link( "def-all.html" )
110 >> *new Bold
111 << "Defines and Macros"
112 << new html::LineBreak;
113 StreamLock sIndexDir(50);
114 rList.AddItem()
115 << new html::StyleAttr("font-size:14pt;")
116 >> *new Link( sIndexDir() << C_sDIR_Index
117 << "/index-1.html"
118 << c_str )
119 >> *new Bold
120 << "Global Index"
121 << new html::LineBreak;
122 }
123
124 void
Write_DocuArea()125 PageMaker_Overview::Write_DocuArea()
126 {
127 CurOut() << new HorizontalLine;
128 }
129
130
131
132