1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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 <svx/svxids.hrc>
22 #include <comphelper/fileformat.h>
23 #include <comphelper/classids.hxx>
24 #include <sfx2/objface.hxx>
25 #include <tools/globname.hxx>
26 #include <osl/diagnose.h>
28 #include <sfx2/msg.hxx>
29 #include <swtypes.hxx>
32 #include <strings.hrc>
34 // needed for -fsanitize=function visibility of typeinfo for functions of
35 // type void(SfxShell*,SfxRequest&) defined in swslots.hxx
36 #define ShellClass_SwWebDocShell
37 #include <swslots.hxx>
39 SFX_IMPL_SUPERCLASS_INTERFACE(SwWebDocShell
, SfxObjectShell
)
41 void SwWebDocShell::InitInterface_Impl()
46 SFX_IMPL_OBJECTFACTORY(SwWebDocShell
, SvGlobalName(SO3_SWWEB_CLASSID
), "swriter/web" )
48 SwWebDocShell::SwWebDocShell()
49 : SwDocShell(SfxObjectCreateMode::STANDARD
)
54 SwWebDocShell::~SwWebDocShell()
58 void SwWebDocShell::FillClass( SvGlobalName
* pClassName
,
59 SotClipboardFormatId
* pClipFormat
,
60 OUString
* pLongUserName
,
62 bool bTemplate
/* = false */) const
64 OSL_ENSURE( !bTemplate
, "No template for Writer Web" );
66 if (nVersion
== SOFFICE_FILEFORMAT_60
)
68 *pClassName
= SvGlobalName( SO3_SWWEB_CLASSID_60
);
69 *pClipFormat
= SotClipboardFormatId::STARWRITERWEB_60
;
70 *pLongUserName
= SwResId(STR_WRITER_WEBDOC_FULLTYPE
);
72 else if (nVersion
== SOFFICE_FILEFORMAT_8
)
74 *pClassName
= SvGlobalName( SO3_SWWEB_CLASSID_60
);
75 *pClipFormat
= SotClipboardFormatId::STARWRITERWEB_8
;
76 *pLongUserName
= SwResId(STR_WRITER_WEBDOC_FULLTYPE
);
80 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */