xref: /trunk/main/cui/source/options/optsave.hxx (revision cdf0e10c)
1 /*************************************************************************
2  *
3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4  *
5  * Copyright 2000, 2010 Oracle and/or its affiliates.
6  *
7  * OpenOffice.org - a multi-platform office productivity suite
8  *
9  * This file is part of OpenOffice.org.
10  *
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.
14  *
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).
20  *
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.
25  *
26  ************************************************************************/
27 #ifndef _SVX_OPTSAVE_HXX
28 #define _SVX_OPTSAVE_HXX
29 
30 // include ---------------------------------------------------------------
31 
32 #include <vcl/group.hxx>
33 #include <vcl/field.hxx>
34 #include <vcl/fixed.hxx>
35 #include <vcl/lstbox.hxx>
36 #include <sfx2/tabdlg.hxx>
37 #include <com/sun/star/uno/Reference.h>
38 #include <readonlyimage.hxx>
39 
40 namespace com { namespace sun { namespace star {
41   namespace beans {
42     struct PropertyValue;
43 }}}}
44 
45 // define ----------------------------------------------------------------
46 
47 #define SfxSaveTabPage SvxSaveTabPage
48 
49 // class SvxSaveTabPage --------------------------------------------------
50 
51 struct SvxSaveTabPage_Impl;
52 
53 class SvxSaveTabPage : public SfxTabPage
54 {
55 private:
56     FixedLine               aLoadFL;
57     CheckBox                aLoadUserSettingsCB;
58     CheckBox                aLoadDocPrinterCB;
59 
60     FixedLine               aSaveFL;
61     CheckBox                aDocInfoCB;
62     ReadOnlyImage           aBackupFI;
63     CheckBox                aBackupCB;
64     CheckBox                aAutoSaveCB;
65     NumericField            aAutoSaveEdit;
66     FixedText               aMinuteFT;
67     CheckBox                aRelativeFsysCB;
68     CheckBox                aRelativeInetCB;
69 
70     FixedLine               aDefaultFormatFL;
71     FixedText               aODFVersionFT;
72     ListBox                 aODFVersionLB;
73     CheckBox                aSizeOptimizationCB;
74     CheckBox                aWarnAlienFormatCB;
75     FixedText               aDocTypeFT;
76     ListBox                 aDocTypeLB;
77     FixedText               aSaveAsFT;
78     ReadOnlyImage           aSaveAsFI;
79     ListBox                 aSaveAsLB;
80     FixedImage              aODFWarningFI;
81     FixedText               aODFWarningFT;
82 
83     SvxSaveTabPage_Impl*    pImpl;
84 
85 #ifdef _SVX_OPTSAVE_CXX
86 	DECL_LINK( AutoClickHdl_Impl, CheckBox * );
87     DECL_LINK( FilterHdl_Impl, ListBox * );
88     DECL_LINK( ODFVersionHdl_Impl, ListBox * );
89 
90     bool    AcceptFilter( sal_uInt16 nPos );
91     void    DetectHiddenControls();
92 #endif
93 
94 public:
95 	SvxSaveTabPage( Window* pParent, const SfxItemSet& rSet );
96 	virtual ~SvxSaveTabPage();
97 
98 	static SfxTabPage*	Create( Window* pParent, const SfxItemSet& rAttrSet );
99 
100 	virtual	sal_Bool 		FillItemSet( SfxItemSet& rSet );
101 	virtual	void 		Reset( const SfxItemSet& rSet );
102 };
103 
104 #endif	// #ifndef _SVX_OPTSAVE_HXX
105 
106