fdo#74697 Add Bluez 5 support for impress remote.
[LibreOffice.git] / sd / source / ui / inc / tpoption.hxx
blobe64e621745097c770d58ce460b86d3e78a1cea7d
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/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef _SD_TPOPTION_HXX
21 #define _SD_TPOPTION_HXX
24 #include <vcl/lstbox.hxx>
25 #include <vcl/group.hxx>
26 #include <vcl/fixed.hxx>
27 #include <vcl/field.hxx>
28 #include <vcl/button.hxx>
29 #include <svtools/stdctrl.hxx>
30 #include <sfx2/tabdlg.hxx>
31 #include <svx/optgrid.hxx>
33 /**
34 * Option-Tab-Page: Snap
36 class SdTpOptionsSnap : public SvxGridTabPage
38 public:
39 SdTpOptionsSnap( Window* pParent, const SfxItemSet& rInAttrs );
40 ~SdTpOptionsSnap();
42 static SfxTabPage* Create( Window*, const SfxItemSet& );
43 virtual sal_Bool FillItemSet( SfxItemSet& );
44 virtual void Reset( const SfxItemSet & );
48 /**
49 * Option-Tab-Page: Contents
51 class SdTpOptionsContents : public SfxTabPage
53 private:
54 FixedLine aGrpDisplay;
55 CheckBox aCbxRuler;
56 CheckBox aCbxDragStripes;
57 CheckBox aCbxHandlesBezier;
58 CheckBox aCbxMoveOutline;
61 public:
62 SdTpOptionsContents( Window* pParent, const SfxItemSet& rInAttrs );
63 ~SdTpOptionsContents();
65 static SfxTabPage* Create( Window*, const SfxItemSet& );
66 virtual sal_Bool FillItemSet( SfxItemSet& );
67 virtual void Reset( const SfxItemSet & );
70 /**
71 * Option-Tab-Page: View
73 class SdModule;
74 class SdTpOptionsMisc : public SfxTabPage
76 friend class SdModule;
78 private:
79 FixedLine aGrpText;
80 CheckBox aCbxQuickEdit;
81 CheckBox aCbxPickThrough;
83 FixedLine aGrpProgramStart;
84 CheckBox aCbxStartWithTemplate;
86 FixedLine aGrpSettings;
87 CheckBox aCbxMasterPageCache;
88 CheckBox aCbxCopy;
89 CheckBox aCbxMarkedHitMovesAlways;
90 CheckBox aCbxCrookNoContortion;
92 FixedText aTxtMetric;
93 ListBox aLbMetric;
94 FixedText aTxtTabstop;
95 MetricField aMtrFldTabstop;
97 CheckBox aCbxStartWithActualPage;
98 FixedLine aGrpStartWithActualPage;
99 CheckBox aCbxEnableSdremote;
100 CheckBox aCbxEnablePresenterScreen;
101 FixedLine aTxtCompatibility;
102 CheckBox aCbxUsePrinterMetrics;
103 CheckBox aCbxCompatibility;
105 //Scale
106 FixedLine aGrpScale;
107 FixedText aFtScale;
108 ComboBox aCbScale;
110 FixedText aFtOriginal;
111 FixedText aFtEquivalent;
113 FixedText aFtPageWidth;
114 FixedInfo aFiInfo1;
115 MetricField aMtrFldOriginalWidth;
117 FixedText aFtPageHeight;
118 FixedInfo aFiInfo2;
119 MetricField aMtrFldOriginalHeight;
121 MetricField aMtrFldInfo1;
122 MetricField aMtrFldInfo2;
124 sal_uInt32 nWidth;
125 sal_uInt32 nHeight;
126 String aInfo1;
127 String aInfo2;
129 SfxMapUnit ePoolUnit;
131 String GetScale( sal_Int32 nX, sal_Int32 nY );
132 sal_Bool SetScale( const String& aScale, sal_Int32& rX, sal_Int32& rY );
134 DECL_LINK( SelectMetricHdl_Impl, void * );
136 /** Enable or disable the controls in the compatibility section of the
137 'general' tab page depending on whether there is at least one
138 document.
140 void UpdateCompatibilityControls (void);
142 protected:
143 virtual void ActivatePage( const SfxItemSet& rSet );
144 virtual int DeactivatePage( SfxItemSet* pSet );
146 public:
147 SdTpOptionsMisc( Window* pParent, const SfxItemSet& rInAttrs );
148 ~SdTpOptionsMisc();
150 static SfxTabPage* Create( Window*, const SfxItemSet& );
151 virtual sal_Bool FillItemSet( SfxItemSet& );
152 virtual void Reset( const SfxItemSet & );
154 /** Hide Impress specific controls, make Draw specific controls visible
155 and arrange the visible controls. Do not call this method or the
156 <member>SetImpressMode()</member> method more than once.
158 void SetDrawMode (void);
160 /** Hide Draw specific controls, make Impress specific controls visible
161 and arrange the visible controls. Do not call this method or the
162 <member>SetDrawMode()</member> method more than once.
164 void SetImpressMode (void);
165 virtual void PageCreated (SfxAllItemSet aSet);
167 using TabPage::ActivatePage;
168 using TabPage::DeactivatePage;
169 using OutputDevice::SetDrawMode;
174 #endif // _SD_TPOPTION_HXX
176 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */