Bump version to 4.3-4
[LibreOffice.git] / cui / source / options / optaboutconfig.hxx
blob72ce9d9c4d077ca662854af394415f01ba3d03a3
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/.
8 */
10 #ifndef INCLUDED_CUI_SOURCE_OPTIONS_OPTABOUTCONFIG_HXX
11 #define INCLUDED_CUI_SOURCE_OPTIONS_OPTABOUTCONFIG_HXX
13 #include <com/sun/star/container/XNameAccess.hpp>
14 #include <com/sun/star/beans/NamedValue.hpp>
16 #include <sfx2/tabdlg.hxx>
17 #include <svtools/simptabl.hxx>
18 #include <vcl/edit.hxx>
20 #include <vector>
21 #include <boost/scoped_ptr.hpp>
22 #include <boost/shared_ptr.hpp>
24 namespace svx { class OptHeaderTabListBox; }
25 class CuiAboutConfigTabPage;
26 class CuiAboutConfigValueDialog;
27 struct Prop_Impl;
29 class CuiCustomMultilineEdit : public Edit
31 public:
32 bool bNumericOnly;
33 CuiCustomMultilineEdit( Window* pParent, WinBits nStyle )
34 : Edit( pParent, nStyle )
35 , bNumericOnly(false)
38 virtual void KeyInput( const KeyEvent& rKeyEvent ) SAL_OVERRIDE;
39 virtual Size GetOptimalSize() const SAL_OVERRIDE;
42 class CuiAboutConfigTabPage : public ModalDialog
44 private:
45 SvSimpleTableContainer* m_pPrefCtrl;
46 PushButton* m_pResetBtn;
47 PushButton* m_pEditBtn;
49 std::vector< boost::shared_ptr< Prop_Impl > > m_vectorOfModified;
50 boost::scoped_ptr< SvSimpleTable > m_pPrefBox;
52 void AddToModifiedVector( const boost::shared_ptr< Prop_Impl >& rProp );
53 std::vector< OUString > commaStringToSequence( const OUString& rCommaSepString );
55 DECL_LINK( StandardHdl_Impl, void * );
56 DECL_LINK( ResetBtnHdl_Impl, void * );
58 public:
59 CuiAboutConfigTabPage(Window* pParent);
60 void InsertEntry(const OUString& rProp, const OUString& rStatus, const OUString& rType, const OUString& rValue);
61 void Reset();
62 void FillItems(const com::sun::star::uno::Reference<com::sun::star::container::XNameAccess>& xNameAccess);
63 com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > getConfigAccess( const OUString& sNodePath, bool bUpdate );
64 bool FillItemSet();
67 class CuiAboutConfigValueDialog : public ModalDialog
69 private:
70 CuiCustomMultilineEdit* m_pEDValue;
72 public:
73 CuiAboutConfigValueDialog( Window* pWindow, const OUString& rValue , int limit = 0);
75 OUString getValue()
77 return m_pEDValue->GetText();
81 #endif
83 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */