1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: vclxfixedline.cxx,v $
13 * This file is part of OpenOffice.org.
15 * OpenOffice.org is free software: you can redistribute it and/or modify
16 * it under the terms of the GNU Lesser General Public License version 3
17 * only, as published by the Free Software Foundation.
19 * OpenOffice.org is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU Lesser General Public License version 3 for more details
23 * (a copy is included in the LICENSE file that accompanied this code).
25 * You should have received a copy of the GNU Lesser General Public License
26 * version 3 along with OpenOffice.org. If not, see
27 * <http://www.openoffice.org/license.html>
28 * for a copy of the LGPLv3 License.
30 ************************************************************************/
32 #include "vclxfixedline.hxx"
34 #include <com/sun/star/awt/PosSize.hpp>
35 #include <toolkit/helper/property.hxx>
36 #include <toolkit/helper/vclunohelper.hxx>
37 #include <tools/debug.hxx>
38 #include <vcl/fixed.hxx>
40 #include "forward.hxx"
45 using namespace ::com::sun::star::uno
;
46 using namespace ::com::sun::star::awt
;
47 using namespace ::com::sun::star::lang
;
48 using namespace ::com::sun::star::beans
;
49 using namespace ::com::sun::star
;
51 DBG_NAME( VCLXFixedLine
)
53 VCLXFixedLine::VCLXFixedLine()
56 DBG_CTOR( VCLXFixedLine
, NULL
);
59 VCLXFixedLine::~VCLXFixedLine()
61 DBG_DTOR( VCLXFixedLine
, NULL
);
64 IMPLEMENT_FORWARD_XTYPEPROVIDER1( VCLXFixedLine
, VCLXWindow
);
66 void SAL_CALL
VCLXFixedLine::dispose() throw(RuntimeException
)
69 ::vos::OGuard
aGuard( GetMutex() );
71 EventObject aDisposeEvent
;
72 aDisposeEvent
.Source
= W3K_EXPLICIT_CAST (*this);
75 VCLXWindow::dispose();
78 ::com::sun::star::awt::Size SAL_CALL
VCLXFixedLine::getMinimumSize()
79 throw(::com::sun::star::uno::RuntimeException
)
81 return awt::Size( 8, 8 );
84 void VCLXFixedLine::ProcessWindowEvent( const VclWindowEvent
& _rVclWindowEvent
)
86 ::vos::OClearableGuard
aGuard( GetMutex() );
88 switch ( _rVclWindowEvent.GetId() )
93 VCLXWindow::ProcessWindowEvent( _rVclWindowEvent
);
100 void SAL_CALL
VCLXFixedLine::setProperty( const ::rtl::OUString
& PropertyName
, const Any
&Value
) throw(RuntimeException
)
102 ::vos::OGuard
aGuard( GetMutex() );
107 sal_uInt16 nPropertyId = GetPropertyId( PropertyName );
108 switch ( nPropertyId )
112 VCLXWindow::setProperty( PropertyName
, Value
);
117 Any SAL_CALL
VCLXFixedLine::getProperty( const ::rtl::OUString
& PropertyName
) throw(RuntimeException
)
119 ::vos::OGuard
aGuard( GetMutex() );
125 sal_uInt16 nPropertyId = GetPropertyId( PropertyName );
126 switch ( nPropertyId )
130 aReturn
= VCLXWindow::getProperty( PropertyName
);
136 } // namespace layoutimpl