bump product version to 4.1.6.2
[LibreOffice.git] / svl / source / items / visitem.cxx
blob5926d298d5c28f33d8b7b57ca54372221d0d491b
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 <svl/visitem.hxx>
21 #include <com/sun/star/uno/Any.hxx>
22 #include <tools/stream.hxx>
24 //============================================================================
26 // class SfxVisibilityItem
28 //============================================================================
30 DBG_NAME(SfxVisibilityItem)
32 //============================================================================
33 TYPEINIT1_AUTOFACTORY(SfxVisibilityItem, SfxPoolItem);
35 //============================================================================
36 SfxVisibilityItem::SfxVisibilityItem(sal_uInt16 which, SvStream & rStream):
37 SfxPoolItem(which)
39 DBG_CTOR(SfxVisibilityItem, 0);
40 sal_Bool bValue = 0;
41 rStream >> bValue;
42 m_nValue.bVisible = bValue;
45 //============================================================================
46 // virtual
47 int SfxVisibilityItem::operator ==(const SfxPoolItem & rItem) const
49 DBG_CHKTHIS(SfxVisibilityItem, 0);
50 DBG_ASSERT(SfxPoolItem::operator ==(rItem), "unequal type");
51 return m_nValue.bVisible == (static_cast< const SfxVisibilityItem * >(&rItem))->
52 m_nValue.bVisible;
55 //============================================================================
56 // virtual
57 int SfxVisibilityItem::Compare(const SfxPoolItem & rWith) const
59 DBG_ASSERT(rWith.ISA(SfxVisibilityItem), "SfxVisibilityItem::Compare(): Bad type");
60 return m_nValue.bVisible == static_cast< SfxVisibilityItem const * >(&rWith)->m_nValue.bVisible ?
61 0 : m_nValue.bVisible ? -1 : 1;
64 //============================================================================
65 // virtual
66 SfxItemPresentation SfxVisibilityItem::GetPresentation(SfxItemPresentation,
67 SfxMapUnit, SfxMapUnit,
68 OUString & rText,
69 const IntlWrapper *) const
71 rText = GetValueTextByVal(m_nValue.bVisible);
72 return SFX_ITEM_PRESENTATION_NAMELESS;
76 //============================================================================
77 // virtual
78 bool SfxVisibilityItem::QueryValue(com::sun::star::uno::Any& rVal, sal_uInt8) const
80 rVal <<= m_nValue;
81 return true;
84 //============================================================================
85 // virtual
86 bool SfxVisibilityItem::PutValue(const com::sun::star::uno::Any& rVal, sal_uInt8)
88 if (rVal >>= m_nValue)
89 return true;
91 OSL_FAIL( "SfxInt16Item::PutValue - Wrong type!" );
92 return false;
95 //============================================================================
96 // virtual
97 SfxPoolItem * SfxVisibilityItem::Create(SvStream & rStream, sal_uInt16) const
99 DBG_CHKTHIS(SfxVisibilityItem, 0);
100 return new SfxVisibilityItem(Which(), rStream);
103 //============================================================================
104 // virtual
105 SvStream & SfxVisibilityItem::Store(SvStream & rStream, sal_uInt16) const
107 DBG_CHKTHIS(SfxVisibilityItem, 0);
108 rStream << m_nValue.bVisible;
109 return rStream;
112 //============================================================================
113 // virtual
114 SfxPoolItem * SfxVisibilityItem::Clone(SfxItemPool *) const
116 DBG_CHKTHIS(SfxVisibilityItem, 0);
117 return new SfxVisibilityItem(*this);
120 //============================================================================
121 // virtual
122 sal_uInt16 SfxVisibilityItem::GetValueCount() const
124 return 2;
127 //============================================================================
128 // virtual
129 OUString SfxVisibilityItem::GetValueTextByVal(sal_Bool bTheValue) const
131 return bTheValue ? OUString("TRUE") : OUString("FALSE");
134 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */