xref: /trunk/main/sw/source/ui/sidebar/PageMarginControl.cxx (revision 344957f76007126c8053525f8d780d21c982c6d4)
1ff0525f2SOliver-Rainer Wittmann /**************************************************************
2ff0525f2SOliver-Rainer Wittmann  *
3ff0525f2SOliver-Rainer Wittmann  * Licensed to the Apache Software Foundation (ASF) under one
4ff0525f2SOliver-Rainer Wittmann  * or more contributor license agreements.  See the NOTICE file
5ff0525f2SOliver-Rainer Wittmann  * distributed with this work for additional information
6ff0525f2SOliver-Rainer Wittmann  * regarding copyright ownership.  The ASF licenses this file
7ff0525f2SOliver-Rainer Wittmann  * to you under the Apache License, Version 2.0 (the
8ff0525f2SOliver-Rainer Wittmann  * "License"); you may not use this file except in compliance
9ff0525f2SOliver-Rainer Wittmann  * with the License.  You may obtain a copy of the License at
10ff0525f2SOliver-Rainer Wittmann  *
11ff0525f2SOliver-Rainer Wittmann  *   http://www.apache.org/licenses/LICENSE-2.0
12ff0525f2SOliver-Rainer Wittmann  *
13ff0525f2SOliver-Rainer Wittmann  * Unless required by applicable law or agreed to in writing,
14ff0525f2SOliver-Rainer Wittmann  * software distributed under the License is distributed on an
15ff0525f2SOliver-Rainer Wittmann  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16ff0525f2SOliver-Rainer Wittmann  * KIND, either express or implied.  See the License for the
17ff0525f2SOliver-Rainer Wittmann  * specific language governing permissions and limitations
18ff0525f2SOliver-Rainer Wittmann  * under the License.
19ff0525f2SOliver-Rainer Wittmann  *
20ff0525f2SOliver-Rainer Wittmann  *************************************************************/
21ff0525f2SOliver-Rainer Wittmann 
22*344957f7Smseidel 
23*344957f7Smseidel 
24ff0525f2SOliver-Rainer Wittmann #include "precompiled_sw.hxx"
25ff0525f2SOliver-Rainer Wittmann 
26ff0525f2SOliver-Rainer Wittmann #include "PageMarginControl.hxx"
27ff0525f2SOliver-Rainer Wittmann #include "PagePropertyPanel.hxx"
28ff0525f2SOliver-Rainer Wittmann #include "PagePropertyPanel.hrc"
29ff0525f2SOliver-Rainer Wittmann 
30ff0525f2SOliver-Rainer Wittmann #include <swtypes.hxx>
31ff0525f2SOliver-Rainer Wittmann 
32ff0525f2SOliver-Rainer Wittmann #include <svx/sidebar/ValueSetWithTextControl.hxx>
33ff0525f2SOliver-Rainer Wittmann 
34ff0525f2SOliver-Rainer Wittmann #define SWPAGE_LEFT_GVALUE      String("Sw_Page_Left", 12, RTL_TEXTENCODING_ASCII_US)
35ff0525f2SOliver-Rainer Wittmann #define SWPAGE_RIGHT_GVALUE     String("Sw_Page_Right", 13, RTL_TEXTENCODING_ASCII_US)
36ff0525f2SOliver-Rainer Wittmann #define SWPAGE_TOP_GVALUE       String("Sw_Page_Top", 11, RTL_TEXTENCODING_ASCII_US)
37ff0525f2SOliver-Rainer Wittmann #define SWPAGE_DOWN_GVALUE      String("Sw_Page_Down", 12, RTL_TEXTENCODING_ASCII_US)
38ff0525f2SOliver-Rainer Wittmann #define SWPAGE_MIRROR_GVALUE    String("Sw_Page_Mirrored", 16, RTL_TEXTENCODING_ASCII_US)
39ff0525f2SOliver-Rainer Wittmann 
40ff0525f2SOliver-Rainer Wittmann 
41ff0525f2SOliver-Rainer Wittmann namespace sw { namespace sidebar {
42ff0525f2SOliver-Rainer Wittmann 
PageMarginControl(Window * pParent,PagePropertyPanel & rPanel,const SvxLongLRSpaceItem & aPageLRMargin,const SvxLongULSpaceItem & aPageULMargin,const bool bMirrored,const Size aPageSize,const sal_Bool bLandscape,const FieldUnit eFUnit,const SfxMapUnit eUnit)43ff0525f2SOliver-Rainer Wittmann PageMarginControl::PageMarginControl(
44ff0525f2SOliver-Rainer Wittmann     Window* pParent,
45ff0525f2SOliver-Rainer Wittmann     PagePropertyPanel& rPanel,
46ff0525f2SOliver-Rainer Wittmann     const SvxLongLRSpaceItem& aPageLRMargin,
47ff0525f2SOliver-Rainer Wittmann     const SvxLongULSpaceItem& aPageULMargin,
48ff0525f2SOliver-Rainer Wittmann     const bool bMirrored,
49ff0525f2SOliver-Rainer Wittmann     const Size aPageSize,
50ff0525f2SOliver-Rainer Wittmann     const sal_Bool bLandscape,
51ff0525f2SOliver-Rainer Wittmann     const FieldUnit eFUnit,
52ff0525f2SOliver-Rainer Wittmann     const SfxMapUnit eUnit )
53ff0525f2SOliver-Rainer Wittmann     : ::svx::sidebar::PopupControl( pParent, SW_RES(RID_POPUP_SWPAGE_MARGIN) )
54ff0525f2SOliver-Rainer Wittmann     , mpMarginValueSet( new ::svx::sidebar::ValueSetWithTextControl( ::svx::sidebar::ValueSetWithTextControl::IMAGE_TEXT, this, SW_RES(VS_MARGIN) ) )
55ff0525f2SOliver-Rainer Wittmann     , maCustom(this, SW_RES(FT_CUSTOM))
56ff0525f2SOliver-Rainer Wittmann     , maLeft(this, SW_RES(FT_LEFT))
57ff0525f2SOliver-Rainer Wittmann     , maInner(this, SW_RES(FT_INNER))
58ff0525f2SOliver-Rainer Wittmann     , maLeftMarginEdit(this, SW_RES(MF_SWLEFT_MARGIN))
59ff0525f2SOliver-Rainer Wittmann     , maRight(this, SW_RES(FT_RIGHT))
60ff0525f2SOliver-Rainer Wittmann     , maOuter(this, SW_RES(FT_OUTER))
61ff0525f2SOliver-Rainer Wittmann     , maRightMarginEdit(this, SW_RES(MF_SWRIGHT_MARGIN))
62ff0525f2SOliver-Rainer Wittmann     , maTop(this, SW_RES(FT_TOP))
63ff0525f2SOliver-Rainer Wittmann     , maTopMarginEdit(this, SW_RES(MF_SWTOP_MARGIN))
64ff0525f2SOliver-Rainer Wittmann     , maBottom(this, SW_RES(FT_BOTTOM))
65ff0525f2SOliver-Rainer Wittmann     , maBottomMarginEdit(this, SW_RES(MF_SWBOTTOM_MARGIN))
66ff0525f2SOliver-Rainer Wittmann     , maWidthHeightField( this, SW_RES(FLD_WIDTH_HEIGHT) )
67ff0525f2SOliver-Rainer Wittmann     , mnPageLeftMargin( aPageLRMargin.GetLeft() )
68ff0525f2SOliver-Rainer Wittmann     , mnPageRightMargin( aPageLRMargin.GetRight() )
69ff0525f2SOliver-Rainer Wittmann     , mnPageTopMargin( aPageULMargin.GetUpper() )
70ff0525f2SOliver-Rainer Wittmann     , mnPageBottomMargin( aPageULMargin.GetLower() )
71ff0525f2SOliver-Rainer Wittmann     , mbMirrored( bMirrored )
72ff0525f2SOliver-Rainer Wittmann     , meUnit( eUnit )
732924af3dSOliver-Rainer Wittmann     , mbUserCustomValuesAvailable(false)
74ff0525f2SOliver-Rainer Wittmann     , mnUserCustomPageLeftMargin(0)
75ff0525f2SOliver-Rainer Wittmann     , mnUserCustomPageRightMargin(0)
76ff0525f2SOliver-Rainer Wittmann     , mnUserCustomPageTopMargin(0)
77ff0525f2SOliver-Rainer Wittmann     , mnUserCustomPageBottomMargin(0)
78ff0525f2SOliver-Rainer Wittmann     , mbUserCustomMirrored(false)
79ff0525f2SOliver-Rainer Wittmann     , mbCustomValuesUsed( false )
80ff0525f2SOliver-Rainer Wittmann     , mrPagePropPanel(rPanel)
81ff0525f2SOliver-Rainer Wittmann {
82ff0525f2SOliver-Rainer Wittmann     maWidthHeightField.Hide();
83ff0525f2SOliver-Rainer Wittmann     SetFieldUnit( maWidthHeightField, eFUnit );
84ff0525f2SOliver-Rainer Wittmann 
852924af3dSOliver-Rainer Wittmann     mbUserCustomValuesAvailable = GetUserCustomValues();
86ff0525f2SOliver-Rainer Wittmann 
87ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->SetStyle( mpMarginValueSet->GetStyle() | WB_3DLOOK | WB_NO_DIRECTSELECT );
88ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->SetColor( GetSettings().GetStyleSettings().GetMenuColor() );
89ff0525f2SOliver-Rainer Wittmann 
902924af3dSOliver-Rainer Wittmann     FillValueSet( bLandscape, mbUserCustomValuesAvailable );
91ff0525f2SOliver-Rainer Wittmann 
92ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->SetNoSelection();
93ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->SetSelectHdl( LINK(this, PageMarginControl,ImplMarginHdl ) );
94ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->Show();
95ff0525f2SOliver-Rainer Wittmann 
96ff0525f2SOliver-Rainer Wittmann     SelectValueSetItem();
97ff0525f2SOliver-Rainer Wittmann 
98ff0525f2SOliver-Rainer Wittmann     SetFieldUnit( maLeftMarginEdit, eFUnit );
99ff0525f2SOliver-Rainer Wittmann     Link aLinkLR = LINK( this, PageMarginControl, ModifyLRMarginHdl );
100ff0525f2SOliver-Rainer Wittmann     maLeftMarginEdit.SetModifyHdl( aLinkLR );
101ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maLeftMarginEdit, mnPageLeftMargin, meUnit );
102ff0525f2SOliver-Rainer Wittmann 
103ff0525f2SOliver-Rainer Wittmann     SetFieldUnit( maRightMarginEdit, eFUnit );
104ff0525f2SOliver-Rainer Wittmann     maRightMarginEdit.SetModifyHdl( aLinkLR );
105ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maRightMarginEdit, mnPageRightMargin, meUnit );
106ff0525f2SOliver-Rainer Wittmann 
107ff0525f2SOliver-Rainer Wittmann     Link aLinkUL = LINK( this, PageMarginControl, ModifyULMarginHdl );
108ff0525f2SOliver-Rainer Wittmann     SetFieldUnit( maTopMarginEdit, eFUnit );
109ff0525f2SOliver-Rainer Wittmann     maTopMarginEdit.SetModifyHdl( aLinkUL );
110ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maTopMarginEdit, mnPageTopMargin, meUnit );
111ff0525f2SOliver-Rainer Wittmann 
112ff0525f2SOliver-Rainer Wittmann     SetFieldUnit( maBottomMarginEdit, eFUnit );
113ff0525f2SOliver-Rainer Wittmann     maBottomMarginEdit.SetModifyHdl( aLinkUL );
114ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maBottomMarginEdit, mnPageBottomMargin, meUnit );
115ff0525f2SOliver-Rainer Wittmann 
116ff0525f2SOliver-Rainer Wittmann     SetMetricFieldMaxValues( aPageSize );
117ff0525f2SOliver-Rainer Wittmann 
118ff0525f2SOliver-Rainer Wittmann     if ( mbMirrored )
119ff0525f2SOliver-Rainer Wittmann     {
120ff0525f2SOliver-Rainer Wittmann         maLeft.Hide();
121ff0525f2SOliver-Rainer Wittmann         maRight.Hide();
122ff0525f2SOliver-Rainer Wittmann         maInner.Show();
123ff0525f2SOliver-Rainer Wittmann         maOuter.Show();
124ff0525f2SOliver-Rainer Wittmann     }
125ff0525f2SOliver-Rainer Wittmann     else
126ff0525f2SOliver-Rainer Wittmann     {
127ff0525f2SOliver-Rainer Wittmann         maLeft.Show();
128ff0525f2SOliver-Rainer Wittmann         maRight.Show();
129ff0525f2SOliver-Rainer Wittmann         maInner.Hide();
130ff0525f2SOliver-Rainer Wittmann         maOuter.Hide();
131ff0525f2SOliver-Rainer Wittmann     }
132ff0525f2SOliver-Rainer Wittmann 
133ff0525f2SOliver-Rainer Wittmann     FreeResource();
134ff0525f2SOliver-Rainer Wittmann }
135ff0525f2SOliver-Rainer Wittmann 
136ff0525f2SOliver-Rainer Wittmann 
~PageMarginControl(void)137ff0525f2SOliver-Rainer Wittmann PageMarginControl::~PageMarginControl(void)
138ff0525f2SOliver-Rainer Wittmann {
139ff0525f2SOliver-Rainer Wittmann     delete mpMarginValueSet;
140ff0525f2SOliver-Rainer Wittmann 
141ff0525f2SOliver-Rainer Wittmann     StoreUserCustomValues();
142ff0525f2SOliver-Rainer Wittmann }
143ff0525f2SOliver-Rainer Wittmann 
144ff0525f2SOliver-Rainer Wittmann 
SetMetricFieldMaxValues(const Size aPageSize)145ff0525f2SOliver-Rainer Wittmann void PageMarginControl::SetMetricFieldMaxValues( const Size aPageSize )
146ff0525f2SOliver-Rainer Wittmann {
147ff0525f2SOliver-Rainer Wittmann     const long nML = maLeftMarginEdit.Denormalize( maLeftMarginEdit.GetValue(FUNIT_TWIP) );
148ff0525f2SOliver-Rainer Wittmann     const long nMR = maRightMarginEdit.Denormalize( maRightMarginEdit.GetValue(FUNIT_TWIP) );
149ff0525f2SOliver-Rainer Wittmann     const long nMT = maTopMarginEdit.Denormalize(maTopMarginEdit.GetValue(FUNIT_TWIP) );
150ff0525f2SOliver-Rainer Wittmann     const long nMB = maBottomMarginEdit.Denormalize( maBottomMarginEdit.GetValue(FUNIT_TWIP) );
151ff0525f2SOliver-Rainer Wittmann 
152ff0525f2SOliver-Rainer Wittmann     const long nPH  = LogicToLogic( aPageSize.Height(), (MapUnit)meUnit, MAP_TWIP );
153ff0525f2SOliver-Rainer Wittmann     const long nPW  = LogicToLogic( aPageSize.Width(),  (MapUnit)meUnit, MAP_TWIP );
154ff0525f2SOliver-Rainer Wittmann 
155ff0525f2SOliver-Rainer Wittmann     // Left
156ff0525f2SOliver-Rainer Wittmann     long nMax = nPW - nMR - MINBODY;
157ff0525f2SOliver-Rainer Wittmann     maLeftMarginEdit.SetMax(maLeftMarginEdit.Normalize(nMax), FUNIT_TWIP);
158ff0525f2SOliver-Rainer Wittmann 
159ff0525f2SOliver-Rainer Wittmann     // Right
160ff0525f2SOliver-Rainer Wittmann     nMax = nPW - nML - MINBODY;
161ff0525f2SOliver-Rainer Wittmann     maRightMarginEdit.SetMax(maRightMarginEdit.Normalize(nMax), FUNIT_TWIP);
162ff0525f2SOliver-Rainer Wittmann 
163ff0525f2SOliver-Rainer Wittmann     // Top
164ff0525f2SOliver-Rainer Wittmann     nMax = nPH - nMB - MINBODY;
165ff0525f2SOliver-Rainer Wittmann     maTopMarginEdit.SetMax(maTopMarginEdit.Normalize(nMax), FUNIT_TWIP);
166ff0525f2SOliver-Rainer Wittmann 
167ff0525f2SOliver-Rainer Wittmann     // Bottom
168ff0525f2SOliver-Rainer Wittmann     nMax = nPH - nMT - MINBODY;
169ff0525f2SOliver-Rainer Wittmann     maBottomMarginEdit.SetMax(maTopMarginEdit.Normalize(nMax), FUNIT_TWIP);
170ff0525f2SOliver-Rainer Wittmann }
171ff0525f2SOliver-Rainer Wittmann 
172ff0525f2SOliver-Rainer Wittmann 
FillValueSet(const bool bLandscape,const bool bUserCustomValuesAvailable)173ff0525f2SOliver-Rainer Wittmann void PageMarginControl::FillValueSet(
174ff0525f2SOliver-Rainer Wittmann     const bool bLandscape,
175ff0525f2SOliver-Rainer Wittmann     const bool bUserCustomValuesAvailable )
176ff0525f2SOliver-Rainer Wittmann {
177ff0525f2SOliver-Rainer Wittmann     const XubString aLeft = SW_RES(STR_MARGIN_TOOLTIP_LEFT);
178ff0525f2SOliver-Rainer Wittmann     const XubString aRight = SW_RES(STR_MARGIN_TOOLTIP_RIGHT);
179ff0525f2SOliver-Rainer Wittmann     const XubString aTop = SW_RES(STR_MARGIN_TOOLTIP_TOP);
180ff0525f2SOliver-Rainer Wittmann     const XubString aBottom = SW_RES(STR_MARGIN_TOOLTIP_BOT);
181ff0525f2SOliver-Rainer Wittmann 
182ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maWidthHeightField, SWPAGE_NARROW_VALUE, meUnit );
183ff0525f2SOliver-Rainer Wittmann     const XubString aNarrowValText = maWidthHeightField.GetText();
184ff0525f2SOliver-Rainer Wittmann     XubString aHelpText = aLeft;
185ff0525f2SOliver-Rainer Wittmann     aHelpText += aNarrowValText;
186ff0525f2SOliver-Rainer Wittmann     aHelpText += aRight;
187ff0525f2SOliver-Rainer Wittmann     aHelpText += aNarrowValText;
188ff0525f2SOliver-Rainer Wittmann     aHelpText += aTop;
189ff0525f2SOliver-Rainer Wittmann     aHelpText += aNarrowValText;
190ff0525f2SOliver-Rainer Wittmann     aHelpText += aBottom;
191ff0525f2SOliver-Rainer Wittmann     aHelpText += aNarrowValText;
192ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->AddItem(
193ff0525f2SOliver-Rainer Wittmann         (bLandscape ? SW_RES(IMG_NARROW_L) : SW_RES(IMG_NARROW) ), 0,
194ff0525f2SOliver-Rainer Wittmann         SW_RES(STR_NARROW), &aHelpText );
195ff0525f2SOliver-Rainer Wittmann 
196ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maWidthHeightField, SWPAGE_NORMAL_VALUE, meUnit );
197ff0525f2SOliver-Rainer Wittmann     const XubString aNormalValText = maWidthHeightField.GetText();
198ff0525f2SOliver-Rainer Wittmann     aHelpText = aLeft;
199ff0525f2SOliver-Rainer Wittmann     aHelpText += aNormalValText;
200ff0525f2SOliver-Rainer Wittmann     aHelpText += aRight;
201ff0525f2SOliver-Rainer Wittmann     aHelpText += aNormalValText;
202ff0525f2SOliver-Rainer Wittmann     aHelpText += aTop;
203ff0525f2SOliver-Rainer Wittmann     aHelpText += aNormalValText;
204ff0525f2SOliver-Rainer Wittmann     aHelpText += aBottom;
205ff0525f2SOliver-Rainer Wittmann     aHelpText += aNormalValText;
206ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->AddItem(
207ff0525f2SOliver-Rainer Wittmann         (bLandscape ? SW_RES(IMG_NORMAL_L) : SW_RES(IMG_NORMAL) ), 0,
208ff0525f2SOliver-Rainer Wittmann         SW_RES(STR_NORMAL), &aHelpText );
209ff0525f2SOliver-Rainer Wittmann 
210ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maWidthHeightField, SWPAGE_WIDE_VALUE1, meUnit );
211ff0525f2SOliver-Rainer Wittmann     const XubString aWide1ValText = maWidthHeightField.GetText();
212ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maWidthHeightField, SWPAGE_WIDE_VALUE2, meUnit );
213ff0525f2SOliver-Rainer Wittmann     const XubString aWide2ValText = maWidthHeightField.GetText();
214ff0525f2SOliver-Rainer Wittmann     aHelpText = aLeft;
215ff0525f2SOliver-Rainer Wittmann     aHelpText += aWide2ValText;
216ff0525f2SOliver-Rainer Wittmann     aHelpText += aRight;
217ff0525f2SOliver-Rainer Wittmann     aHelpText += aWide2ValText;
218ff0525f2SOliver-Rainer Wittmann     aHelpText += aTop;
219ff0525f2SOliver-Rainer Wittmann     aHelpText += aWide1ValText;
220ff0525f2SOliver-Rainer Wittmann     aHelpText += aBottom;
221ff0525f2SOliver-Rainer Wittmann     aHelpText += aWide1ValText;
222ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->AddItem(
223ff0525f2SOliver-Rainer Wittmann         (bLandscape ? SW_RES(IMG_WIDE_L) : SW_RES(IMG_WIDE) ), 0,
224ff0525f2SOliver-Rainer Wittmann         SW_RES(STR_WIDE), &aHelpText );
225ff0525f2SOliver-Rainer Wittmann 
226ff0525f2SOliver-Rainer Wittmann     const XubString aInner = SW_RES(STR_MARGIN_TOOLTIP_INNER);
227ff0525f2SOliver-Rainer Wittmann     const XubString aOuter = SW_RES(STR_MARGIN_TOOLTIP_OUTER);
228ff0525f2SOliver-Rainer Wittmann 
229ff0525f2SOliver-Rainer Wittmann     SetMetricValue( maWidthHeightField, SWPAGE_WIDE_VALUE3, meUnit );
230ff0525f2SOliver-Rainer Wittmann     const XubString aWide3ValText = maWidthHeightField.GetText();
231ff0525f2SOliver-Rainer Wittmann     aHelpText = aInner;
232ff0525f2SOliver-Rainer Wittmann     aHelpText += aWide3ValText;
233ff0525f2SOliver-Rainer Wittmann     aHelpText += aOuter;
234ff0525f2SOliver-Rainer Wittmann     aHelpText += aWide3ValText;
235ff0525f2SOliver-Rainer Wittmann     aHelpText += aTop;
236ff0525f2SOliver-Rainer Wittmann     aHelpText += aWide1ValText;
237ff0525f2SOliver-Rainer Wittmann     aHelpText += aBottom;
238ff0525f2SOliver-Rainer Wittmann     aHelpText += aWide1ValText;
239ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->AddItem(
240ff0525f2SOliver-Rainer Wittmann         (bLandscape ? SW_RES(IMG_MIRRORED_L) : SW_RES(IMG_MIRRORED) ), 0,
241ff0525f2SOliver-Rainer Wittmann         SW_RES(STR_MIRRORED), &aHelpText );
242ff0525f2SOliver-Rainer Wittmann 
243ff0525f2SOliver-Rainer Wittmann     if ( bUserCustomValuesAvailable )
244ff0525f2SOliver-Rainer Wittmann     {
245ff0525f2SOliver-Rainer Wittmann         aHelpText = mbUserCustomMirrored ? aInner : aLeft;
246ff0525f2SOliver-Rainer Wittmann         SetMetricValue( maWidthHeightField, mnUserCustomPageLeftMargin, meUnit );
247ff0525f2SOliver-Rainer Wittmann         aHelpText += maWidthHeightField.GetText();
248ff0525f2SOliver-Rainer Wittmann         aHelpText += mbUserCustomMirrored ? aOuter : aRight;
249ff0525f2SOliver-Rainer Wittmann         SetMetricValue( maWidthHeightField, mnUserCustomPageRightMargin, meUnit );
250ff0525f2SOliver-Rainer Wittmann         aHelpText += maWidthHeightField.GetText();
251ff0525f2SOliver-Rainer Wittmann         aHelpText += aTop;
252ff0525f2SOliver-Rainer Wittmann         SetMetricValue( maWidthHeightField, mnUserCustomPageTopMargin, meUnit );
253ff0525f2SOliver-Rainer Wittmann         aHelpText += maWidthHeightField.GetText();
254ff0525f2SOliver-Rainer Wittmann         aHelpText += aBottom;
255ff0525f2SOliver-Rainer Wittmann         SetMetricValue( maWidthHeightField, mnUserCustomPageBottomMargin, meUnit );
256ff0525f2SOliver-Rainer Wittmann         aHelpText += maWidthHeightField.GetText();
257ff0525f2SOliver-Rainer Wittmann     }
258ff0525f2SOliver-Rainer Wittmann     else
259ff0525f2SOliver-Rainer Wittmann     {
260ff0525f2SOliver-Rainer Wittmann         aHelpText = XubString();
261ff0525f2SOliver-Rainer Wittmann     }
262ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->AddItem(
263ff0525f2SOliver-Rainer Wittmann         (bUserCustomValuesAvailable ? SW_RES(IMG_CUSTOM) : SW_RES(IMG_CUSTOM_DIS) ), 0,
264ff0525f2SOliver-Rainer Wittmann         SW_RES(STR_LCVALUE), &aHelpText );
265ff0525f2SOliver-Rainer Wittmann }
266ff0525f2SOliver-Rainer Wittmann 
267ff0525f2SOliver-Rainer Wittmann 
SelectValueSetItem()268ff0525f2SOliver-Rainer Wittmann void PageMarginControl::SelectValueSetItem()
269ff0525f2SOliver-Rainer Wittmann {
270ff0525f2SOliver-Rainer Wittmann     const long cTolerance = 5;
271ff0525f2SOliver-Rainer Wittmann 
272ff0525f2SOliver-Rainer Wittmann     if( abs(mnPageLeftMargin - SWPAGE_NARROW_VALUE) <= cTolerance &&
273ff0525f2SOliver-Rainer Wittmann         abs(mnPageRightMargin - SWPAGE_NARROW_VALUE) <= cTolerance &&
274ff0525f2SOliver-Rainer Wittmann         abs(mnPageTopMargin - SWPAGE_NARROW_VALUE) <= cTolerance &&
275ff0525f2SOliver-Rainer Wittmann         abs(mnPageBottomMargin - SWPAGE_NARROW_VALUE) <= cTolerance &&
276ff0525f2SOliver-Rainer Wittmann         !mbMirrored )
277ff0525f2SOliver-Rainer Wittmann     {
278ff0525f2SOliver-Rainer Wittmann         mpMarginValueSet->SelectItem(1);
279ff0525f2SOliver-Rainer Wittmann     }
280ff0525f2SOliver-Rainer Wittmann     else if( abs(mnPageLeftMargin - SWPAGE_NORMAL_VALUE) <= cTolerance &&
281ff0525f2SOliver-Rainer Wittmann         abs(mnPageRightMargin - SWPAGE_NORMAL_VALUE) <= cTolerance &&
282ff0525f2SOliver-Rainer Wittmann         abs(mnPageTopMargin - SWPAGE_NORMAL_VALUE) <= cTolerance &&
283ff0525f2SOliver-Rainer Wittmann         abs(mnPageBottomMargin - SWPAGE_NORMAL_VALUE) <= cTolerance &&
284ff0525f2SOliver-Rainer Wittmann         !mbMirrored )
285ff0525f2SOliver-Rainer Wittmann     {
286ff0525f2SOliver-Rainer Wittmann         mpMarginValueSet->SelectItem(2);
287ff0525f2SOliver-Rainer Wittmann     }
288ff0525f2SOliver-Rainer Wittmann     else if( abs(mnPageLeftMargin - SWPAGE_WIDE_VALUE2) <= cTolerance &&
289ff0525f2SOliver-Rainer Wittmann         abs(mnPageRightMargin - SWPAGE_WIDE_VALUE2) <= cTolerance &&
290ff0525f2SOliver-Rainer Wittmann         abs(mnPageTopMargin - SWPAGE_WIDE_VALUE1) <= cTolerance &&
291ff0525f2SOliver-Rainer Wittmann         abs(mnPageBottomMargin - SWPAGE_WIDE_VALUE1) <= cTolerance &&
292ff0525f2SOliver-Rainer Wittmann         !mbMirrored )
293ff0525f2SOliver-Rainer Wittmann     {
294ff0525f2SOliver-Rainer Wittmann         mpMarginValueSet->SelectItem(3);
295ff0525f2SOliver-Rainer Wittmann     }
296ff0525f2SOliver-Rainer Wittmann     else if( abs(mnPageLeftMargin - SWPAGE_WIDE_VALUE3) <= cTolerance &&
297ff0525f2SOliver-Rainer Wittmann         abs(mnPageRightMargin - SWPAGE_WIDE_VALUE1) <= cTolerance &&
298ff0525f2SOliver-Rainer Wittmann         abs(mnPageTopMargin - SWPAGE_WIDE_VALUE1) <= cTolerance &&
299ff0525f2SOliver-Rainer Wittmann         abs(mnPageBottomMargin - SWPAGE_WIDE_VALUE1) <= cTolerance &&
300ff0525f2SOliver-Rainer Wittmann         mbMirrored )
301ff0525f2SOliver-Rainer Wittmann     {
302ff0525f2SOliver-Rainer Wittmann         mpMarginValueSet->SelectItem(4);
303ff0525f2SOliver-Rainer Wittmann     }
304ff0525f2SOliver-Rainer Wittmann     else
305ff0525f2SOliver-Rainer Wittmann     {
306ff0525f2SOliver-Rainer Wittmann         mpMarginValueSet->SelectItem(0);
307ff0525f2SOliver-Rainer Wittmann     }
3082924af3dSOliver-Rainer Wittmann 
3092924af3dSOliver-Rainer Wittmann     mpMarginValueSet->Format();
3102924af3dSOliver-Rainer Wittmann     mpMarginValueSet->StartSelection();
311ff0525f2SOliver-Rainer Wittmann };
312ff0525f2SOliver-Rainer Wittmann 
313ff0525f2SOliver-Rainer Wittmann 
IMPL_LINK(PageMarginControl,ImplMarginHdl,void *,pControl)314ff0525f2SOliver-Rainer Wittmann IMPL_LINK(PageMarginControl, ImplMarginHdl, void *, pControl)
315ff0525f2SOliver-Rainer Wittmann {
316ff0525f2SOliver-Rainer Wittmann     if ( pControl == mpMarginValueSet )
317ff0525f2SOliver-Rainer Wittmann     {
318ff0525f2SOliver-Rainer Wittmann         const sal_uInt16 iPos = mpMarginValueSet->GetSelectItemId();
319ff0525f2SOliver-Rainer Wittmann         bool bMirrored = false;
3202924af3dSOliver-Rainer Wittmann         bool bApplyNewPageMargins = true;
321ff0525f2SOliver-Rainer Wittmann         switch ( iPos )
322ff0525f2SOliver-Rainer Wittmann         {
323ff0525f2SOliver-Rainer Wittmann         case 1:
324ff0525f2SOliver-Rainer Wittmann             mnPageLeftMargin = SWPAGE_NARROW_VALUE;
325ff0525f2SOliver-Rainer Wittmann             mnPageRightMargin = SWPAGE_NARROW_VALUE;
326ff0525f2SOliver-Rainer Wittmann             mnPageTopMargin = SWPAGE_NARROW_VALUE;
327ff0525f2SOliver-Rainer Wittmann             mnPageBottomMargin = SWPAGE_NARROW_VALUE;
328ff0525f2SOliver-Rainer Wittmann             bMirrored = false;
329ff0525f2SOliver-Rainer Wittmann             break;
330ff0525f2SOliver-Rainer Wittmann         case 2:
331ff0525f2SOliver-Rainer Wittmann             mnPageLeftMargin = SWPAGE_NORMAL_VALUE;
332ff0525f2SOliver-Rainer Wittmann             mnPageRightMargin = SWPAGE_NORMAL_VALUE;
333ff0525f2SOliver-Rainer Wittmann             mnPageTopMargin = SWPAGE_NORMAL_VALUE;
334ff0525f2SOliver-Rainer Wittmann             mnPageBottomMargin = SWPAGE_NORMAL_VALUE;
335ff0525f2SOliver-Rainer Wittmann             bMirrored = false;
336ff0525f2SOliver-Rainer Wittmann             break;
337ff0525f2SOliver-Rainer Wittmann         case 3:
338ff0525f2SOliver-Rainer Wittmann             mnPageLeftMargin = SWPAGE_WIDE_VALUE2;
339ff0525f2SOliver-Rainer Wittmann             mnPageRightMargin = SWPAGE_WIDE_VALUE2;
340ff0525f2SOliver-Rainer Wittmann             mnPageTopMargin = SWPAGE_WIDE_VALUE1;
341ff0525f2SOliver-Rainer Wittmann             mnPageBottomMargin = SWPAGE_WIDE_VALUE1;
342ff0525f2SOliver-Rainer Wittmann             bMirrored = false;
343ff0525f2SOliver-Rainer Wittmann             break;
344ff0525f2SOliver-Rainer Wittmann         case 4:
345ff0525f2SOliver-Rainer Wittmann             mnPageLeftMargin = SWPAGE_WIDE_VALUE3;
346ff0525f2SOliver-Rainer Wittmann             mnPageRightMargin = SWPAGE_WIDE_VALUE1;
347ff0525f2SOliver-Rainer Wittmann             mnPageTopMargin = SWPAGE_WIDE_VALUE1;
348ff0525f2SOliver-Rainer Wittmann             mnPageBottomMargin = SWPAGE_WIDE_VALUE1;
349ff0525f2SOliver-Rainer Wittmann             bMirrored = true;
350ff0525f2SOliver-Rainer Wittmann             break;
351ff0525f2SOliver-Rainer Wittmann         case 5:
3522924af3dSOliver-Rainer Wittmann             if ( mbUserCustomValuesAvailable )
3532924af3dSOliver-Rainer Wittmann             {
354ff0525f2SOliver-Rainer Wittmann                 mnPageLeftMargin = mnUserCustomPageLeftMargin;
355ff0525f2SOliver-Rainer Wittmann                 mnPageRightMargin = mnUserCustomPageRightMargin;
356ff0525f2SOliver-Rainer Wittmann                 mnPageTopMargin = mnUserCustomPageTopMargin;
357ff0525f2SOliver-Rainer Wittmann                 mnPageBottomMargin = mnUserCustomPageBottomMargin;
358ff0525f2SOliver-Rainer Wittmann                 bMirrored = mbUserCustomMirrored;
3592924af3dSOliver-Rainer Wittmann             }
3602924af3dSOliver-Rainer Wittmann             else
3612924af3dSOliver-Rainer Wittmann             {
3622924af3dSOliver-Rainer Wittmann                 bApplyNewPageMargins = false;
3632924af3dSOliver-Rainer Wittmann             }
364ff0525f2SOliver-Rainer Wittmann             break;
365ff0525f2SOliver-Rainer Wittmann         }
366ff0525f2SOliver-Rainer Wittmann 
3672924af3dSOliver-Rainer Wittmann         if ( bApplyNewPageMargins )
3682924af3dSOliver-Rainer Wittmann         {
369550fbbbdSOliver-Rainer Wittmann             mrPagePropPanel.StartUndo();
3702924af3dSOliver-Rainer Wittmann             mpMarginValueSet->SetNoSelection();
371ff0525f2SOliver-Rainer Wittmann             mrPagePropPanel.ExecuteMarginLRChange( mnPageLeftMargin, mnPageRightMargin );
372ff0525f2SOliver-Rainer Wittmann             mrPagePropPanel.ExecuteMarginULChange( mnPageTopMargin, mnPageBottomMargin );
373ff0525f2SOliver-Rainer Wittmann             if ( mbMirrored != bMirrored )
374ff0525f2SOliver-Rainer Wittmann             {
375ff0525f2SOliver-Rainer Wittmann                 mbMirrored = bMirrored;
376ff0525f2SOliver-Rainer Wittmann                 mrPagePropPanel.ExecutePageLayoutChange( mbMirrored );
377ff0525f2SOliver-Rainer Wittmann             }
378550fbbbdSOliver-Rainer Wittmann             mrPagePropPanel.EndUndo();
379ff0525f2SOliver-Rainer Wittmann 
380ff0525f2SOliver-Rainer Wittmann             mbCustomValuesUsed = false;
3812924af3dSOliver-Rainer Wittmann             mrPagePropPanel.ClosePageMarginPopup();
3822924af3dSOliver-Rainer Wittmann         }
3832924af3dSOliver-Rainer Wittmann         else
3842924af3dSOliver-Rainer Wittmann         {
3852924af3dSOliver-Rainer Wittmann             // back to initial selection
3862924af3dSOliver-Rainer Wittmann             SelectValueSetItem();
3872924af3dSOliver-Rainer Wittmann         }
388ff0525f2SOliver-Rainer Wittmann     }
389ff0525f2SOliver-Rainer Wittmann 
390ff0525f2SOliver-Rainer Wittmann     return 0;
391ff0525f2SOliver-Rainer Wittmann }
392ff0525f2SOliver-Rainer Wittmann 
393ff0525f2SOliver-Rainer Wittmann 
IMPL_LINK(PageMarginControl,ModifyLRMarginHdl,MetricField *,EMPTYARG)394ff0525f2SOliver-Rainer Wittmann IMPL_LINK( PageMarginControl, ModifyLRMarginHdl, MetricField *, EMPTYARG )
395ff0525f2SOliver-Rainer Wittmann {
396ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->SetNoSelection();
397ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->SelectItem(0);
398ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->Format();
399ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->StartSelection();
400ff0525f2SOliver-Rainer Wittmann 
401ff0525f2SOliver-Rainer Wittmann     mnPageLeftMargin = GetCoreValue( maLeftMarginEdit, meUnit );
402ff0525f2SOliver-Rainer Wittmann     mnPageRightMargin = GetCoreValue( maRightMarginEdit, meUnit );
403ff0525f2SOliver-Rainer Wittmann     mrPagePropPanel.ExecuteMarginLRChange( mnPageLeftMargin, mnPageRightMargin );
404ff0525f2SOliver-Rainer Wittmann     mbCustomValuesUsed = true;
405ff0525f2SOliver-Rainer Wittmann     return 0;
406ff0525f2SOliver-Rainer Wittmann }
407ff0525f2SOliver-Rainer Wittmann 
IMPL_LINK(PageMarginControl,ModifyULMarginHdl,MetricField *,EMPTYARG)408ff0525f2SOliver-Rainer Wittmann IMPL_LINK( PageMarginControl, ModifyULMarginHdl, MetricField *, EMPTYARG )
409ff0525f2SOliver-Rainer Wittmann {
410ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->SetNoSelection();
411ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->SelectItem(0);
412ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->Format();
413ff0525f2SOliver-Rainer Wittmann     mpMarginValueSet->StartSelection();
414ff0525f2SOliver-Rainer Wittmann 
415ff0525f2SOliver-Rainer Wittmann     mnPageTopMargin = GetCoreValue( maTopMarginEdit, meUnit );
416ff0525f2SOliver-Rainer Wittmann     mnPageBottomMargin = GetCoreValue( maBottomMarginEdit, meUnit );
417ff0525f2SOliver-Rainer Wittmann     mrPagePropPanel.ExecuteMarginULChange( mnPageTopMargin, mnPageBottomMargin );
418ff0525f2SOliver-Rainer Wittmann     mbCustomValuesUsed = true;
419ff0525f2SOliver-Rainer Wittmann     return 0;
420ff0525f2SOliver-Rainer Wittmann }
421ff0525f2SOliver-Rainer Wittmann 
422ff0525f2SOliver-Rainer Wittmann 
GetUserCustomValues()423ff0525f2SOliver-Rainer Wittmann bool PageMarginControl::GetUserCustomValues()
424ff0525f2SOliver-Rainer Wittmann {
425ff0525f2SOliver-Rainer Wittmann     bool bUserCustomValuesAvailable = false;
426ff0525f2SOliver-Rainer Wittmann 
427ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt( E_WINDOW, SWPAGE_LEFT_GVALUE );
428ff0525f2SOliver-Rainer Wittmann     if ( aWinOpt.Exists() )
429ff0525f2SOliver-Rainer Wittmann     {
430ff0525f2SOliver-Rainer Wittmann         ::com::sun::star::uno::Sequence < ::com::sun::star::beans::NamedValue > aSeq = aWinOpt.GetUserData();
431ff0525f2SOliver-Rainer Wittmann         ::rtl::OUString aTmp;
432ff0525f2SOliver-Rainer Wittmann         if ( aSeq.getLength())
433ff0525f2SOliver-Rainer Wittmann             aSeq[0].Value >>= aTmp;
434ff0525f2SOliver-Rainer Wittmann         String aWinData( aTmp );
435ff0525f2SOliver-Rainer Wittmann         mnUserCustomPageLeftMargin = aWinData.ToInt32();
436ff0525f2SOliver-Rainer Wittmann         bUserCustomValuesAvailable = true;
437ff0525f2SOliver-Rainer Wittmann     }
438ff0525f2SOliver-Rainer Wittmann 
439ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt2( E_WINDOW, SWPAGE_RIGHT_GVALUE );
440ff0525f2SOliver-Rainer Wittmann     if ( aWinOpt2.Exists() )
441ff0525f2SOliver-Rainer Wittmann     {
442ff0525f2SOliver-Rainer Wittmann         ::com::sun::star::uno::Sequence < ::com::sun::star::beans::NamedValue > aSeq = aWinOpt2.GetUserData();
443ff0525f2SOliver-Rainer Wittmann         ::rtl::OUString aTmp;
444ff0525f2SOliver-Rainer Wittmann         if ( aSeq.getLength())
445ff0525f2SOliver-Rainer Wittmann             aSeq[0].Value >>= aTmp;
446ff0525f2SOliver-Rainer Wittmann         String aWinData( aTmp );
447ff0525f2SOliver-Rainer Wittmann         mnUserCustomPageRightMargin = aWinData.ToInt32();
448ff0525f2SOliver-Rainer Wittmann         bUserCustomValuesAvailable = true;
449ff0525f2SOliver-Rainer Wittmann     }
450ff0525f2SOliver-Rainer Wittmann 
451ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt3( E_WINDOW, SWPAGE_TOP_GVALUE );
452ff0525f2SOliver-Rainer Wittmann     if ( aWinOpt3.Exists() )
453ff0525f2SOliver-Rainer Wittmann     {
454ff0525f2SOliver-Rainer Wittmann         ::com::sun::star::uno::Sequence < ::com::sun::star::beans::NamedValue > aSeq = aWinOpt3.GetUserData();
455ff0525f2SOliver-Rainer Wittmann         ::rtl::OUString aTmp;
456ff0525f2SOliver-Rainer Wittmann         if ( aSeq.getLength())
457ff0525f2SOliver-Rainer Wittmann             aSeq[0].Value >>= aTmp;
458ff0525f2SOliver-Rainer Wittmann         String aWinData( aTmp );
459ff0525f2SOliver-Rainer Wittmann         mnUserCustomPageTopMargin = aWinData.ToInt32();
460ff0525f2SOliver-Rainer Wittmann         bUserCustomValuesAvailable = true;
461ff0525f2SOliver-Rainer Wittmann     }
462ff0525f2SOliver-Rainer Wittmann 
463ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt4( E_WINDOW, SWPAGE_DOWN_GVALUE );
464ff0525f2SOliver-Rainer Wittmann     if ( aWinOpt4.Exists() )
465ff0525f2SOliver-Rainer Wittmann     {
466ff0525f2SOliver-Rainer Wittmann         ::com::sun::star::uno::Sequence < ::com::sun::star::beans::NamedValue > aSeq = aWinOpt4.GetUserData();
467ff0525f2SOliver-Rainer Wittmann         ::rtl::OUString aTmp;
468ff0525f2SOliver-Rainer Wittmann         if ( aSeq.getLength())
469ff0525f2SOliver-Rainer Wittmann             aSeq[0].Value >>= aTmp;
470ff0525f2SOliver-Rainer Wittmann         String aWinData( aTmp );
471ff0525f2SOliver-Rainer Wittmann         mnUserCustomPageBottomMargin = aWinData.ToInt32();
472ff0525f2SOliver-Rainer Wittmann         bUserCustomValuesAvailable = true;
473ff0525f2SOliver-Rainer Wittmann     }
474ff0525f2SOliver-Rainer Wittmann 
475ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt5( E_WINDOW, SWPAGE_MIRROR_GVALUE );
476ff0525f2SOliver-Rainer Wittmann     if ( aWinOpt5.Exists() )
477ff0525f2SOliver-Rainer Wittmann     {
478ff0525f2SOliver-Rainer Wittmann         ::com::sun::star::uno::Sequence < ::com::sun::star::beans::NamedValue > aSeq = aWinOpt5.GetUserData();
479ff0525f2SOliver-Rainer Wittmann         ::rtl::OUString aTmp;
480ff0525f2SOliver-Rainer Wittmann         if ( aSeq.getLength())
481ff0525f2SOliver-Rainer Wittmann             aSeq[0].Value >>= aTmp;
482ff0525f2SOliver-Rainer Wittmann         String aWinData( aTmp );
483ff0525f2SOliver-Rainer Wittmann         mbUserCustomMirrored = aWinData.ToInt32() == 0 ? false : true;
484ff0525f2SOliver-Rainer Wittmann         bUserCustomValuesAvailable = true;
485ff0525f2SOliver-Rainer Wittmann     }
486ff0525f2SOliver-Rainer Wittmann 
487ff0525f2SOliver-Rainer Wittmann     return bUserCustomValuesAvailable;
488ff0525f2SOliver-Rainer Wittmann }
489ff0525f2SOliver-Rainer Wittmann 
StoreUserCustomValues()490ff0525f2SOliver-Rainer Wittmann void PageMarginControl::StoreUserCustomValues()
491ff0525f2SOliver-Rainer Wittmann {
492ff0525f2SOliver-Rainer Wittmann     if ( !mbCustomValuesUsed )
493ff0525f2SOliver-Rainer Wittmann     {
494ff0525f2SOliver-Rainer Wittmann         return;
495ff0525f2SOliver-Rainer Wittmann     }
496ff0525f2SOliver-Rainer Wittmann 
497ff0525f2SOliver-Rainer Wittmann     ::com::sun::star::uno::Sequence < ::com::sun::star::beans::NamedValue > aSeq(1);
498ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt( E_WINDOW, SWPAGE_LEFT_GVALUE );
499ff0525f2SOliver-Rainer Wittmann 
500ff0525f2SOliver-Rainer Wittmann     aSeq[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("mnPageLeftMargin") );
501ff0525f2SOliver-Rainer Wittmann     aSeq[0].Value <<= ::rtl::OUString( String::CreateFromInt64( mnPageLeftMargin ));
502ff0525f2SOliver-Rainer Wittmann     aWinOpt.SetUserData( aSeq );
503ff0525f2SOliver-Rainer Wittmann 
504ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt2( E_WINDOW, SWPAGE_RIGHT_GVALUE );
505ff0525f2SOliver-Rainer Wittmann     aSeq[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("mnPageRightMargin") );
506ff0525f2SOliver-Rainer Wittmann     aSeq[0].Value <<= ::rtl::OUString( String::CreateFromInt64( mnPageRightMargin ));
507ff0525f2SOliver-Rainer Wittmann     aWinOpt2.SetUserData( aSeq );
508ff0525f2SOliver-Rainer Wittmann 
509ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt3( E_WINDOW, SWPAGE_TOP_GVALUE );
510ff0525f2SOliver-Rainer Wittmann     aSeq[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("mnPageTopMargin") );
511ff0525f2SOliver-Rainer Wittmann     aSeq[0].Value <<= ::rtl::OUString( String::CreateFromInt64( mnPageTopMargin ));
512ff0525f2SOliver-Rainer Wittmann     aWinOpt3.SetUserData( aSeq );
513ff0525f2SOliver-Rainer Wittmann 
514ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt4( E_WINDOW, SWPAGE_DOWN_GVALUE );
515ff0525f2SOliver-Rainer Wittmann     aSeq[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("mnPageBottomMargin") );
516ff0525f2SOliver-Rainer Wittmann     aSeq[0].Value <<= ::rtl::OUString( String::CreateFromInt64( mnPageBottomMargin ));
517ff0525f2SOliver-Rainer Wittmann     aWinOpt4.SetUserData( aSeq );
518ff0525f2SOliver-Rainer Wittmann 
519ff0525f2SOliver-Rainer Wittmann     SvtViewOptions aWinOpt5( E_WINDOW, SWPAGE_MIRROR_GVALUE );
520ff0525f2SOliver-Rainer Wittmann     aSeq[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("mbMirrored") );
521ff0525f2SOliver-Rainer Wittmann     aSeq[0].Value <<= ::rtl::OUString( String::CreateFromInt64( (mbMirrored ? 1 : 0) ));
522ff0525f2SOliver-Rainer Wittmann     aWinOpt5.SetUserData( aSeq );
523ff0525f2SOliver-Rainer Wittmann }
524ff0525f2SOliver-Rainer Wittmann 
525ff0525f2SOliver-Rainer Wittmann 
526ff0525f2SOliver-Rainer Wittmann } } // end of namespace sw::sidebar
527ff0525f2SOliver-Rainer Wittmann 
528*344957f7Smseidel /* vim: set noet sw=4 ts=4: */
529