masterfix DEV300: #i10000# build fix
[LibreOffice.git] / extensions / source / propctrlr / formbrowsertools.hxx
blob619c48cb4d6b12e32751e2de48804fddd8ae4e14
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
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.
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).
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.
26 ************************************************************************/
28 #ifndef _EXTENSIONS_FORMSCTRLR_FORMBROWSERTOOLS_HXX_
29 #define _EXTENSIONS_FORMSCTRLR_FORMBROWSERTOOLS_HXX_
31 #include <com/sun/star/uno/Any.hxx>
32 #include <com/sun/star/beans/Property.hpp>
33 #include <rtl/ustring.hxx>
35 #include <functional>
36 #include <set>
38 //............................................................................
39 namespace pcr
41 //............................................................................
43 ::rtl::OUString GetUIHeadlineName(sal_Int16 _nClassId, const ::com::sun::star::uno::Any& _rUnoObject);
44 sal_Int16 classifyComponent( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxComponent );
46 //========================================================================
47 struct FindPropertyByHandle : public ::std::unary_function< ::com::sun::star::beans::Property, bool >
49 private:
50 sal_Int32 m_nId;
52 public:
53 FindPropertyByHandle( sal_Int32 _nId ) : m_nId ( _nId ) { }
54 bool operator()( const ::com::sun::star::beans::Property& _rProp ) const
56 return m_nId == _rProp.Handle;
60 //========================================================================
61 struct FindPropertyByName : public ::std::unary_function< ::com::sun::star::beans::Property, bool >
63 private:
64 ::rtl::OUString m_sName;
66 public:
67 FindPropertyByName( const ::rtl::OUString& _rName ) : m_sName( _rName ) { }
68 bool operator()( const ::com::sun::star::beans::Property& _rProp ) const
70 return m_sName == _rProp.Name;
74 //========================================================================
75 struct PropertyLessByName
76 :public ::std::binary_function < ::com::sun::star::beans::Property,
77 ::com::sun::star::beans::Property,
78 bool
81 bool operator() (::com::sun::star::beans::Property _rLhs, ::com::sun::star::beans::Property _rRhs) const
83 return _rLhs.Name < _rRhs.Name ? true : false;
87 //========================================================================
88 struct TypeLessByName
89 :public ::std::binary_function < ::com::sun::star::uno::Type,
90 ::com::sun::star::uno::Type,
91 bool
94 bool operator() (::com::sun::star::uno::Type _rLhs, ::com::sun::star::uno::Type _rRhs) const
96 return _rLhs.getTypeName() < _rRhs.getTypeName() ? true : false;
100 //========================================================================
101 typedef ::std::set< ::com::sun::star::beans::Property, PropertyLessByName > PropertyBag;
103 //............................................................................
104 } // namespace pcr
105 //............................................................................
107 #endif // _EXTENSIONS_FORMSCTRLR_FORMBROWSERTOOLS_HXX_