fdo#74697 Add Bluez 5 support for impress remote.
[LibreOffice.git] / autodoc / source / display / idl / hfi_singleton.cxx
blob23d17f904348fb9f14bda839d7b1b3db1027e697
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #include <precomp.h>
21 #include "hfi_singleton.hxx"
24 // NOT FULLY DEFINED SERVICES
25 #include <ary/idl/i_ce.hxx>
26 #include <ary/idl/ik_singleton.hxx>
27 #include <ary/idl/ik_sisingleton.hxx>
28 #include <toolkit/hf_docentry.hxx>
29 #include <toolkit/hf_linachain.hxx>
30 #include <toolkit/hf_title.hxx>
31 #include "hfi_navibar.hxx"
32 #include "hfi_typetext.hxx"
33 #include "hi_linkhelper.hxx"
37 extern const String
38 C_sCePrefix_Singleton("singleton");
40 const String
41 C_sAssociatedService("Associated Service");
42 const String
43 C_sImplementedInterface("Supported Interface");
47 HF_IdlSingleton::HF_IdlSingleton( Environment & io_rEnv,
48 Xml::Element & o_rOut )
49 : HtmlFactory_Idl(io_rEnv, &o_rOut)
53 HF_IdlSingleton::~HF_IdlSingleton()
58 typedef ::ary::idl::ifc_singleton::attr SingletonAttr;
59 typedef ::ary::idl::ifc_sglifcsingleton::attr SglIfcSingletonAttr;
61 void
62 HF_IdlSingleton::Produce_byData_ServiceBased( const client & i_ce ) const
64 make_Navibar(i_ce);
66 HF_TitleTable
67 aTitle(CurOut());
69 HF_LinkedNameChain
70 aNameChain(aTitle.Add_Row());
72 aNameChain.Produce_CompleteChain(Env().CurPosition(), nameChainLinker);
73 produce_Title(aTitle, C_sCePrefix_Singleton, i_ce);
75 HF_DocEntryList
76 aTopList( aTitle.Add_Row() );
77 aTopList.Produce_Term(C_sAssociatedService);
79 HF_IdlTypeText
80 aAssociatedService( Env(), aTopList.Produce_Definition() );
81 aAssociatedService.Produce_byData( SingletonAttr::AssociatedService(i_ce) );
83 CurOut() << new Html::HorizontalLine;
85 write_Docu(aTitle.Add_Row(), i_ce);
86 CurOut() << new Html::HorizontalLine();
89 void
90 HF_IdlSingleton::Produce_byData_InterfaceBased( const client & i_ce ) const
92 make_Navibar(i_ce);
94 HF_TitleTable
95 aTitle(CurOut());
97 HF_LinkedNameChain
98 aNameChain(aTitle.Add_Row());
100 aNameChain.Produce_CompleteChain(Env().CurPosition(), nameChainLinker);
101 produce_Title(aTitle, C_sCePrefix_Singleton, i_ce);
103 HF_DocEntryList
104 aTopList( aTitle.Add_Row() );
105 aTopList.Produce_Term(C_sImplementedInterface);
107 HF_IdlTypeText
108 aImplementedInterface( Env(), aTopList.Produce_Definition() );
109 aImplementedInterface.Produce_byData( SglIfcSingletonAttr::BaseInterface(i_ce) );
111 CurOut() << new Html::HorizontalLine;
113 write_Docu(aTitle.Add_Row(), i_ce);
114 CurOut() << new Html::HorizontalLine();
117 void
118 HF_IdlSingleton::make_Navibar( const client & i_ce ) const
120 HF_IdlNavigationBar
121 aNaviBar(Env(), CurOut());
122 aNaviBar.Produce_CeMainRow(i_ce,true); // true := avoid link to Use-page.
124 CurOut() << new Html::HorizontalLine();
127 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */