Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /*
3 : * This file is part of the LibreOffice project.
4 : *
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 : */
9 :
10 : #ifndef SC_DEFAULTSOPT_HXX
11 : #define SC_DEFAULTSOPT_HXX
12 :
13 : #include <svl/poolitem.hxx>
14 : #include <unotools/configitem.hxx>
15 : #include "formula/grammar.hxx"
16 : #include "scdllapi.h"
17 : #include "global.hxx"
18 :
19 : class SC_DLLPUBLIC ScDefaultsOptions
20 : {
21 : private:
22 : SCTAB nInitTabCount; // number of Tabs for new Spreadsheet doc
23 : OUString aInitTabPrefix; // The Tab prefix name in new Spreadsheet doc
24 :
25 : public:
26 : ScDefaultsOptions();
27 : ScDefaultsOptions( const ScDefaultsOptions& rCpy );
28 : ~ScDefaultsOptions();
29 :
30 : void SetDefaults();
31 :
32 0 : SCTAB GetInitTabCount() const { return nInitTabCount; }
33 0 : void SetInitTabCount( SCTAB nTabs) { nInitTabCount = nTabs; }
34 0 : void SetInitTabPrefix(const OUString& aPrefix) { aInitTabPrefix = aPrefix; }
35 0 : OUString GetInitTabPrefix() const { return aInitTabPrefix; }
36 :
37 : ScDefaultsOptions& operator= ( const ScDefaultsOptions& rCpy );
38 : bool operator== ( const ScDefaultsOptions& rOpt ) const;
39 : bool operator!= ( const ScDefaultsOptions& rOpt ) const;
40 :
41 : };
42 :
43 : // item for the dialog / options page
44 :
45 : class SC_DLLPUBLIC ScTpDefaultsItem : public SfxPoolItem
46 : {
47 : public:
48 : TYPEINFO_OVERRIDE();
49 : ScTpDefaultsItem( sal_uInt16 nWhich,
50 : const ScDefaultsOptions& rOpt );
51 : ScTpDefaultsItem( const ScTpDefaultsItem& rItem );
52 : virtual ~ScTpDefaultsItem();
53 :
54 : virtual OUString GetValueText() const;
55 : virtual bool operator==( const SfxPoolItem& ) const SAL_OVERRIDE;
56 : virtual SfxPoolItem* Clone( SfxItemPool *pPool = 0 ) const SAL_OVERRIDE;
57 :
58 0 : const ScDefaultsOptions& GetDefaultsOptions() const { return theOptions; }
59 :
60 : private:
61 : ScDefaultsOptions theOptions;
62 : };
63 :
64 : // config item
65 :
66 0 : class ScDefaultsCfg : public ScDefaultsOptions, public utl::ConfigItem
67 : {
68 : com::sun::star::uno::Sequence<OUString> GetPropertyNames();
69 : public:
70 : ScDefaultsCfg();
71 :
72 : void SetOptions( const ScDefaultsOptions& rNew );
73 :
74 : virtual void Commit() SAL_OVERRIDE;
75 : virtual void Notify( const ::com::sun::star::uno::Sequence< OUString >& aPropertyNames ) SAL_OVERRIDE;
76 : };
77 :
78 : #endif
79 :
80 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|