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 #include <precomp.h>
29 #include "pm_start.hxx"
30 
31 
32 // NOT FULLY DEFINED SERVICES
33 #include <ary/ary.hxx>
34 #include "hd_chlst.hxx"
35 #include "hd_docu.hxx"
36 #include "navibar.hxx"
37 #include "html_kit.hxx"
38 #include "opageenv.hxx"
39 #include "pagemake.hxx"
40 #include "strconst.hxx"
41 
42 
43 using namespace csi;
44 using csi::html::Paragraph;
45 using csi::html::HorizontalLine;
46 using csi::html::AlignAttr;
47 using csi::html::Bold;
48 using csi::html::Link;
49 using csi::html::Sbr;
50 using csi::html::LineBreak;
51 
52 
53 
54 PageMaker_Overview::PageMaker_Overview( PageDisplay & io_rPage )
55     :   SpecializedPageMaker(io_rPage),
56         pNavi(0)
57 {
58 }
59 
60 PageMaker_Overview::~PageMaker_Overview()
61 {
62 }
63 
64 void
65 PageMaker_Overview::MakePage()
66 {
67     pNavi = new NavigationBar( Env(), NavigationBar::LOC_Overview );
68     Write_NavBar();
69 
70     Write_TopArea();
71     Write_DocuArea();
72 }
73 
74 void
75 PageMaker_Overview::Write_NavBar()
76 {
77     pNavi->Write( CurOut() );
78     CurOut() << new HorizontalLine;
79 }
80 
81 void
82 PageMaker_Overview::Write_TopArea()
83 {
84     adcdisp::PageTitle_Std fTitle;
85     fTitle( CurOut(), Env().RepositoryTitle(), "" );
86 
87     CurOut()
88         >> *new Paragraph
89             << new html::StyleAttr("font-size:14pt;")
90             << "This is a reference documentation for the C++ source code."
91             << new LineBreak
92             << new LineBreak
93             << "Points to start:";
94 
95     html::SimpleList &
96         rList = *new html::SimpleList;
97     CurOut() >> rList;
98 
99     html::ListItem & rNamedObjsItem =
100         rList.AddItem();
101 
102     StreamLock sNspDir(50);
103     rNamedObjsItem
104             << new html::StyleAttr("font-size:14pt;")
105             >> *new Link( sNspDir() << C_sDIR_NamespacesCpp
106                                     << "/"
107                                     << C_sHFN_Namespace
108                                     << c_str )
109                     >> *new Bold
110                         << "Named Objects";
111     rNamedObjsItem << " (classes, functions, namespaces, etc.)"
112                    << new html::LineBreak;
113     rList.AddItem()
114             << new html::StyleAttr("font-size:14pt;")
115             >> *new Link( "def-all.html" )
116                     >> *new Bold
117                         << "Defines and Macros"
118                         << new html::LineBreak;
119     StreamLock sIndexDir(50);
120     rList.AddItem()
121             << new html::StyleAttr("font-size:14pt;")
122             >> *new Link( sIndexDir() << C_sDIR_Index
123                                       << "/index-1.html"
124                                       << c_str )
125                     >> *new Bold
126                         << "Global Index"
127                         << new html::LineBreak;
128 }
129 
130 void
131 PageMaker_Overview::Write_DocuArea()
132 {
133     CurOut() << new HorizontalLine;
134 }
135 
136 
137 
138