1b3f79822SAndrew Rist /**************************************************************
2cdf0e10cSrcweir *
3b3f79822SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4b3f79822SAndrew Rist * or more contributor license agreements. See the NOTICE file
5b3f79822SAndrew Rist * distributed with this work for additional information
6b3f79822SAndrew Rist * regarding copyright ownership. The ASF licenses this file
7b3f79822SAndrew Rist * to you under the Apache License, Version 2.0 (the
8b3f79822SAndrew Rist * "License"); you may not use this file except in compliance
9b3f79822SAndrew Rist * with the License. You may obtain a copy of the License at
10b3f79822SAndrew Rist *
11b3f79822SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0
12b3f79822SAndrew Rist *
13b3f79822SAndrew Rist * Unless required by applicable law or agreed to in writing,
14b3f79822SAndrew Rist * software distributed under the License is distributed on an
15b3f79822SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16b3f79822SAndrew Rist * KIND, either express or implied. See the License for the
17b3f79822SAndrew Rist * specific language governing permissions and limitations
18b3f79822SAndrew Rist * under the License.
19b3f79822SAndrew Rist *
20b3f79822SAndrew Rist *************************************************************/
21b3f79822SAndrew Rist
22b3f79822SAndrew Rist
23cdf0e10cSrcweir
24cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove
25*b77af630Sdamjan #include "precompiled_scui.hxx"
26cdf0e10cSrcweir
27cdf0e10cSrcweir
28cdf0e10cSrcweir
29cdf0e10cSrcweir
30cdf0e10cSrcweir //------------------------------------------------------------------
31cdf0e10cSrcweir
32cdf0e10cSrcweir #define _TPHFEDIT_CXX
33cdf0e10cSrcweir #include "scitems.hxx"
34cdf0e10cSrcweir #include <editeng/eeitem.hxx>
35cdf0e10cSrcweir
36cdf0e10cSrcweir //CHINA001 #include <svx/chardlg.hxx>
37cdf0e10cSrcweir #include <editeng/editobj.hxx>
38cdf0e10cSrcweir #include <editeng/editstat.hxx>
39cdf0e10cSrcweir #include <editeng/editview.hxx>
40cdf0e10cSrcweir #include <editeng/flditem.hxx>
41cdf0e10cSrcweir #include <sfx2/basedlgs.hxx>
42cdf0e10cSrcweir #include <sfx2/objsh.hxx>
43cdf0e10cSrcweir #include <vcl/msgbox.hxx>
44cdf0e10cSrcweir #include <vcl/svapp.hxx>
45cdf0e10cSrcweir #include <unotools/useroptions.hxx>
46cdf0e10cSrcweir #define _SVSTDARR_USHORTS
47cdf0e10cSrcweir #include <svl/svstdarr.hxx>
48cdf0e10cSrcweir
49cdf0e10cSrcweir //CHINA001 #include "tphfedit.hxx"
50cdf0e10cSrcweir #include "editutil.hxx"
51cdf0e10cSrcweir #include "global.hxx"
52cdf0e10cSrcweir #include "attrib.hxx"
53cdf0e10cSrcweir #include "patattr.hxx"
54cdf0e10cSrcweir #include "scresid.hxx"
55cdf0e10cSrcweir #include "sc.hrc"
56cdf0e10cSrcweir #include "globstr.hrc"
57cdf0e10cSrcweir #include "tabvwsh.hxx"
58cdf0e10cSrcweir #include "prevwsh.hxx"
59cdf0e10cSrcweir #include "hfedtdlg.hrc"
60cdf0e10cSrcweir #include "textdlgs.hxx"
61cdf0e10cSrcweir #include "AccessibleEditObject.hxx"
62cdf0e10cSrcweir
63cdf0e10cSrcweir #include "scuitphfedit.hxx" //CHINA001
64cdf0e10cSrcweir #include <memory> // header file for auto_ptr
65cdf0e10cSrcweir
66cdf0e10cSrcweir // STATIC DATA -----------------------------------------------------------
67cdf0e10cSrcweir
68cdf0e10cSrcweir static sal_uInt16 pPageRightHeaderRanges[] = { SID_SCATTR_PAGE_HEADERRIGHT,
69cdf0e10cSrcweir SID_SCATTR_PAGE_HEADERRIGHT,
70cdf0e10cSrcweir 0 };
71cdf0e10cSrcweir
72cdf0e10cSrcweir static sal_uInt16 pPageRightFooterRanges[] = { SID_SCATTR_PAGE_FOOTERRIGHT,
73cdf0e10cSrcweir SID_SCATTR_PAGE_FOOTERRIGHT,
74cdf0e10cSrcweir 0 };
75cdf0e10cSrcweir
76cdf0e10cSrcweir static sal_uInt16 pPageLeftHeaderRanges[] = { SID_SCATTR_PAGE_HEADERLEFT,
77cdf0e10cSrcweir SID_SCATTR_PAGE_HEADERLEFT,
78cdf0e10cSrcweir 0 };
79cdf0e10cSrcweir
80cdf0e10cSrcweir static sal_uInt16 pPageLeftFooterRanges[] = { SID_SCATTR_PAGE_FOOTERLEFT,
81cdf0e10cSrcweir SID_SCATTR_PAGE_FOOTERLEFT,
82cdf0e10cSrcweir 0 };
83cdf0e10cSrcweir
84cdf0e10cSrcweir
85cdf0e10cSrcweir static ScEditWindow* pActiveEdWnd = NULL;
86cdf0e10cSrcweir
87cdf0e10cSrcweir
88cdf0e10cSrcweir //========================================================================
89cdf0e10cSrcweir // class ScHFEditPage
90cdf0e10cSrcweir //
91cdf0e10cSrcweir
ScHFEditPage(Window * pParent,sal_uInt16 nResId,const SfxItemSet & rCoreAttrs,sal_uInt16 nWhichId,bool bHeader)92cdf0e10cSrcweir ScHFEditPage::ScHFEditPage( Window* pParent,
93cdf0e10cSrcweir sal_uInt16 nResId,
94cdf0e10cSrcweir const SfxItemSet& rCoreAttrs,
95cdf0e10cSrcweir sal_uInt16 nWhichId,
96cdf0e10cSrcweir bool bHeader )
97cdf0e10cSrcweir
98cdf0e10cSrcweir : SfxTabPage ( pParent, ScResId( nResId ), rCoreAttrs ),
99cdf0e10cSrcweir
100cdf0e10cSrcweir aFtLeft ( this, ScResId( FT_LEFT ) ),
101cdf0e10cSrcweir aWndLeft ( this, ScResId( WND_LEFT ), Left ),
102cdf0e10cSrcweir aFtCenter ( this, ScResId( FT_CENTER ) ),
103cdf0e10cSrcweir aWndCenter ( this, ScResId( WND_CENTER ), Center ),
104cdf0e10cSrcweir aFtRight ( this, ScResId( FT_RIGHT ) ),
105cdf0e10cSrcweir aWndRight ( this, ScResId( WND_RIGHT ), Right ),
106cdf0e10cSrcweir maFtDefinedHF ( this, ScResId( FT_HF_DEFINED ) ),
107cdf0e10cSrcweir maLbDefined ( this, ScResId( LB_DEFINED ) ),
108cdf0e10cSrcweir maFtCustomHF ( this, ScResId( FT_HF_CUSTOM ) ),
109cdf0e10cSrcweir aBtnText ( this, ScResId( BTN_TEXT ) ),
110cdf0e10cSrcweir aBtnFile ( this, ScResId( BTN_FILE ) ),
111cdf0e10cSrcweir aBtnTable ( this, ScResId( BTN_TABLE ) ),
112cdf0e10cSrcweir aBtnPage ( this, ScResId( BTN_PAGE ) ),
113cdf0e10cSrcweir aBtnLastPage ( this, ScResId( BTN_PAGES ) ),
114cdf0e10cSrcweir aBtnDate ( this, ScResId( BTN_DATE ) ),
115cdf0e10cSrcweir aBtnTime ( this, ScResId( BTN_TIME ) ),
116cdf0e10cSrcweir aFlInfo ( this, ScResId( FL_INFO ) ),
117cdf0e10cSrcweir aFtInfo ( this, ScResId( FT_INFO ) ),
118cdf0e10cSrcweir aPopUpFile ( ScResId( RID_POPUP_FCOMMAND) ),
119cdf0e10cSrcweir nWhich ( nWhichId )
120cdf0e10cSrcweir {
121cdf0e10cSrcweir //! use default style from current document?
122cdf0e10cSrcweir //! if font color is used, header/footer background color must be set
123cdf0e10cSrcweir
124cdf0e10cSrcweir ScPatternAttr aPatAttr( rCoreAttrs.GetPool() );
125cdf0e10cSrcweir
126cdf0e10cSrcweir
127cdf0e10cSrcweir aBtnFile.SetPopupMenu(&aPopUpFile);
128cdf0e10cSrcweir
129cdf0e10cSrcweir maLbDefined.SetSelectHdl( LINK( this, ScHFEditPage, ListHdl_Impl ) );
130cdf0e10cSrcweir aBtnFile.SetMenuHdl( LINK( this, ScHFEditPage, MenuHdl ) );
131cdf0e10cSrcweir aBtnText .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) );
132cdf0e10cSrcweir aBtnPage .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) );
133cdf0e10cSrcweir aBtnLastPage.SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) );
134cdf0e10cSrcweir aBtnDate .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) );
135cdf0e10cSrcweir aBtnTime .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) );
136cdf0e10cSrcweir aBtnFile .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) );
137cdf0e10cSrcweir aBtnTable .SetClickHdl( LINK( this, ScHFEditPage, ClickHdl ) );
138cdf0e10cSrcweir
139cdf0e10cSrcweir aBtnText .SetModeImage( Image( ScResId( IMG_TEXT_H ) ), BMP_COLOR_HIGHCONTRAST );
140cdf0e10cSrcweir aBtnFile .SetModeImage( Image( ScResId( IMG_FILE_H ) ), BMP_COLOR_HIGHCONTRAST );
141cdf0e10cSrcweir aBtnTable .SetModeImage( Image( ScResId( IMG_TABLE_H ) ), BMP_COLOR_HIGHCONTRAST );
142cdf0e10cSrcweir aBtnPage .SetModeImage( Image( ScResId( IMG_PAGE_H ) ), BMP_COLOR_HIGHCONTRAST );
143cdf0e10cSrcweir aBtnLastPage.SetModeImage( Image( ScResId( IMG_PAGES_H ) ), BMP_COLOR_HIGHCONTRAST );
144cdf0e10cSrcweir aBtnDate .SetModeImage( Image( ScResId( IMG_DATE_H ) ), BMP_COLOR_HIGHCONTRAST );
145cdf0e10cSrcweir aBtnTime .SetModeImage( Image( ScResId( IMG_TIME_H ) ), BMP_COLOR_HIGHCONTRAST );
146cdf0e10cSrcweir
147cdf0e10cSrcweir if(!bHeader)
148cdf0e10cSrcweir {
149cdf0e10cSrcweir maFtDefinedHF.SetText(ScGlobal::GetRscString( STR_FOOTER ));
150cdf0e10cSrcweir maFtCustomHF.SetText(ScGlobal::GetRscString( STR_HF_CUSTOM_FOOTER ));
151cdf0e10cSrcweir }
152cdf0e10cSrcweir if( Application::GetSettings().GetLayoutRTL() )
153cdf0e10cSrcweir {
154cdf0e10cSrcweir Point pt1 = aWndLeft.GetPosPixel();
155cdf0e10cSrcweir Point pt2 = aWndRight.GetPosPixel();
156cdf0e10cSrcweir aWndLeft.SetPosPixel(pt2);
157cdf0e10cSrcweir aWndRight.SetPosPixel(pt1);
158cdf0e10cSrcweir
159cdf0e10cSrcweir pt1 = aFtLeft.GetPosPixel();
160cdf0e10cSrcweir pt2 = aFtRight.GetPosPixel();
161cdf0e10cSrcweir aFtLeft.SetPosPixel(pt2);
162cdf0e10cSrcweir aFtRight.SetPosPixel(pt1);
163cdf0e10cSrcweir }
164cdf0e10cSrcweir aWndLeft. SetFont( aPatAttr );
165cdf0e10cSrcweir aWndCenter. SetFont( aPatAttr );
166cdf0e10cSrcweir aWndRight. SetFont( aPatAttr );
167cdf0e10cSrcweir
1680deba7fbSSteve Yin aWndLeft.SetObjectSelectHdl( LINK(this,ScHFEditPage,ObjectSelectHdl) );
1690deba7fbSSteve Yin aWndCenter.SetObjectSelectHdl( LINK(this,ScHFEditPage,ObjectSelectHdl) );
1700deba7fbSSteve Yin aWndRight.SetObjectSelectHdl( LINK(this,ScHFEditPage,ObjectSelectHdl) );
1710deba7fbSSteve Yin aBtnText.SetAccessibleRelationMemberOf( &maFtCustomHF );
1720deba7fbSSteve Yin aBtnFile.SetAccessibleRelationMemberOf( &maFtCustomHF );
1730deba7fbSSteve Yin aBtnTable.SetAccessibleRelationMemberOf( &maFtCustomHF );
1740deba7fbSSteve Yin aBtnPage.SetAccessibleRelationMemberOf( &maFtCustomHF );
1750deba7fbSSteve Yin aBtnLastPage.SetAccessibleRelationMemberOf( &maFtCustomHF );
1760deba7fbSSteve Yin aBtnDate.SetAccessibleRelationMemberOf( &maFtCustomHF );
1770deba7fbSSteve Yin aBtnTime.SetAccessibleRelationMemberOf( &maFtCustomHF );
178cdf0e10cSrcweir FillCmdArr();
179cdf0e10cSrcweir
180cdf0e10cSrcweir aWndLeft.GrabFocus();
181cdf0e10cSrcweir
182cdf0e10cSrcweir InitPreDefinedList();
183cdf0e10cSrcweir
184cdf0e10cSrcweir FreeResource();
185cdf0e10cSrcweir }
IMPL_LINK(ScHFEditPage,ObjectSelectHdl,ScEditWindow *,pEdit)1860deba7fbSSteve Yin IMPL_LINK( ScHFEditPage, ObjectSelectHdl, ScEditWindow*, pEdit )
1870deba7fbSSteve Yin {
1880deba7fbSSteve Yin (void)pEdit;
1890deba7fbSSteve Yin aBtnText.GrabFocus();
1900deba7fbSSteve Yin return NULL;
1910deba7fbSSteve Yin }
192cdf0e10cSrcweir
193cdf0e10cSrcweir // -----------------------------------------------------------------------
194cdf0e10cSrcweir
~ScHFEditPage()195cdf0e10cSrcweir __EXPORT ScHFEditPage::~ScHFEditPage()
196cdf0e10cSrcweir {
197cdf0e10cSrcweir }
198cdf0e10cSrcweir
SetNumType(SvxNumType eNumType)199cdf0e10cSrcweir void ScHFEditPage::SetNumType(SvxNumType eNumType)
200cdf0e10cSrcweir {
201cdf0e10cSrcweir aWndLeft.SetNumType(eNumType);
202cdf0e10cSrcweir aWndCenter.SetNumType(eNumType);
203cdf0e10cSrcweir aWndRight.SetNumType(eNumType);
204cdf0e10cSrcweir }
205cdf0e10cSrcweir
206cdf0e10cSrcweir // -----------------------------------------------------------------------
207cdf0e10cSrcweir
208cdf0e10cSrcweir #define IS_AVAILABLE(w)(rCoreSet.GetItemState( (w) ) >= SFX_ITEM_AVAILABLE)
209cdf0e10cSrcweir
Reset(const SfxItemSet & rCoreSet)210cdf0e10cSrcweir void __EXPORT ScHFEditPage::Reset( const SfxItemSet& rCoreSet )
211cdf0e10cSrcweir {
212cdf0e10cSrcweir if ( IS_AVAILABLE( nWhich ) )
213cdf0e10cSrcweir {
214cdf0e10cSrcweir const ScPageHFItem& rItem = (const ScPageHFItem&)(rCoreSet.Get( nWhich ));
215cdf0e10cSrcweir
216cdf0e10cSrcweir if( const EditTextObject* pLeft = rItem.GetLeftArea() )
217cdf0e10cSrcweir aWndLeft.SetText( *pLeft );
218cdf0e10cSrcweir if( const EditTextObject* pCenter = rItem.GetCenterArea() )
219cdf0e10cSrcweir aWndCenter.SetText( *pCenter );
220cdf0e10cSrcweir if( const EditTextObject* pRight = rItem.GetRightArea() )
221cdf0e10cSrcweir aWndRight.SetText( *pRight );
222cdf0e10cSrcweir
223cdf0e10cSrcweir SetSelectDefinedList();
224cdf0e10cSrcweir }
225cdf0e10cSrcweir }
226cdf0e10cSrcweir
227cdf0e10cSrcweir #undef IS_AVAILABLE
228cdf0e10cSrcweir
229cdf0e10cSrcweir // -----------------------------------------------------------------------
230cdf0e10cSrcweir
FillItemSet(SfxItemSet & rCoreSet)231cdf0e10cSrcweir sal_Bool __EXPORT ScHFEditPage::FillItemSet( SfxItemSet& rCoreSet )
232cdf0e10cSrcweir {
233cdf0e10cSrcweir ScPageHFItem aItem( nWhich );
234cdf0e10cSrcweir EditTextObject* pLeft = aWndLeft .CreateTextObject();
235cdf0e10cSrcweir EditTextObject* pCenter = aWndCenter.CreateTextObject();
236cdf0e10cSrcweir EditTextObject* pRight = aWndRight .CreateTextObject();
237cdf0e10cSrcweir
238cdf0e10cSrcweir aItem.SetLeftArea ( *pLeft );
239cdf0e10cSrcweir aItem.SetCenterArea( *pCenter );
240cdf0e10cSrcweir aItem.SetRightArea ( *pRight );
241cdf0e10cSrcweir delete pLeft;
242cdf0e10cSrcweir delete pCenter;
243cdf0e10cSrcweir delete pRight;
244cdf0e10cSrcweir
245cdf0e10cSrcweir rCoreSet.Put( aItem );
246cdf0e10cSrcweir
247cdf0e10cSrcweir return sal_True;
248cdf0e10cSrcweir }
249cdf0e10cSrcweir
250cdf0e10cSrcweir // -----------------------------------------------------------------------
251cdf0e10cSrcweir
252cdf0e10cSrcweir #define SET_CMD(i,id) \
253cdf0e10cSrcweir aCmd = aDel; \
254cdf0e10cSrcweir aCmd += ScGlobal::GetRscString( id ); \
255cdf0e10cSrcweir aCmd += aDel; \
256cdf0e10cSrcweir aCmdArr[i] = aCmd;
257cdf0e10cSrcweir
258cdf0e10cSrcweir // -----------------------------------------------------------------------
259cdf0e10cSrcweir
FillCmdArr()260cdf0e10cSrcweir void ScHFEditPage::FillCmdArr()
261cdf0e10cSrcweir {
262cdf0e10cSrcweir String aDel( ScGlobal::GetRscString( STR_HFCMD_DELIMITER ) );
263cdf0e10cSrcweir String aCmd;
264cdf0e10cSrcweir
265cdf0e10cSrcweir SET_CMD( 0, STR_HFCMD_PAGE )
266cdf0e10cSrcweir SET_CMD( 1, STR_HFCMD_PAGES )
267cdf0e10cSrcweir SET_CMD( 2, STR_HFCMD_DATE )
268cdf0e10cSrcweir SET_CMD( 3, STR_HFCMD_TIME )
269cdf0e10cSrcweir SET_CMD( 4, STR_HFCMD_FILE )
270cdf0e10cSrcweir SET_CMD( 5, STR_HFCMD_TABLE )
271cdf0e10cSrcweir }
272cdf0e10cSrcweir
273cdf0e10cSrcweir #undef SET_CMD
274cdf0e10cSrcweir
InitPreDefinedList()275cdf0e10cSrcweir void ScHFEditPage::InitPreDefinedList()
276cdf0e10cSrcweir {
277cdf0e10cSrcweir SvtUserOptions aUserOpt;
278cdf0e10cSrcweir
279cdf0e10cSrcweir Color* pTxtColour = NULL;
280cdf0e10cSrcweir Color* pFldColour = NULL;
281cdf0e10cSrcweir
282cdf0e10cSrcweir // Get the all field values at the outset.
283cdf0e10cSrcweir String aPageFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour));
284cdf0e10cSrcweir String aSheetFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour));
285cdf0e10cSrcweir String aFileFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxFileField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour));
286cdf0e10cSrcweir String aExtFileFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxExtFileField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour));
287cdf0e10cSrcweir String aDateFieldValue(aWndLeft.GetEditEngine()->CalcFieldValue(SvxFieldItem(SvxDateField(), EE_FEATURE_FIELD), 0,0, pTxtColour, pFldColour));
288cdf0e10cSrcweir
289cdf0e10cSrcweir maLbDefined.Clear();
290cdf0e10cSrcweir
291cdf0e10cSrcweir maLbDefined.InsertEntry( ScGlobal::GetRscString( STR_HF_NONE_IN_BRACKETS ));
292cdf0e10cSrcweir
293cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
294cdf0e10cSrcweir aPageEntry += ' ';
295cdf0e10cSrcweir aPageEntry += aPageFieldValue;
296cdf0e10cSrcweir maLbDefined.InsertEntry(aPageEntry);
297cdf0e10cSrcweir
298cdf0e10cSrcweir String aPageOfEntry(aPageEntry);
299cdf0e10cSrcweir aPageOfEntry += ' ';
300cdf0e10cSrcweir aPageOfEntry += ScGlobal::GetRscString( STR_HF_OF_QUESTION );
301cdf0e10cSrcweir maLbDefined.InsertEntry( aPageOfEntry);
302cdf0e10cSrcweir
303cdf0e10cSrcweir maLbDefined.InsertEntry(aSheetFieldValue);
304cdf0e10cSrcweir
305cdf0e10cSrcweir String aConfidentialEntry(aUserOpt.GetCompany());
306cdf0e10cSrcweir aConfidentialEntry += ' ';
307cdf0e10cSrcweir aConfidentialEntry += ScGlobal::GetRscString( STR_HF_CONFIDENTIAL );
308cdf0e10cSrcweir aConfidentialEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
309cdf0e10cSrcweir aConfidentialEntry += aDateFieldValue;
310cdf0e10cSrcweir aConfidentialEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
311cdf0e10cSrcweir aConfidentialEntry += aPageEntry;
312cdf0e10cSrcweir maLbDefined.InsertEntry( aConfidentialEntry);
313cdf0e10cSrcweir
314cdf0e10cSrcweir String aFileNamePageEntry(aFileFieldValue);
315cdf0e10cSrcweir aFileNamePageEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
316cdf0e10cSrcweir aFileNamePageEntry += aPageEntry;
317cdf0e10cSrcweir maLbDefined.InsertEntry( aFileNamePageEntry);
318cdf0e10cSrcweir
319cdf0e10cSrcweir maLbDefined.InsertEntry( aExtFileFieldValue);
320cdf0e10cSrcweir
321cdf0e10cSrcweir String aPageSheetNameEntry(aPageEntry);
322cdf0e10cSrcweir aPageSheetNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
323cdf0e10cSrcweir aPageSheetNameEntry += aSheetFieldValue;
324cdf0e10cSrcweir maLbDefined.InsertEntry( aPageSheetNameEntry);
325cdf0e10cSrcweir
326cdf0e10cSrcweir String aPageFileNameEntry(aPageEntry);
327cdf0e10cSrcweir aPageFileNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
328cdf0e10cSrcweir aPageFileNameEntry += aFileFieldValue;
329cdf0e10cSrcweir maLbDefined.InsertEntry( aPageFileNameEntry);
330cdf0e10cSrcweir
331cdf0e10cSrcweir String aPagePathNameEntry(aPageEntry);
332cdf0e10cSrcweir aPagePathNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
333cdf0e10cSrcweir aPagePathNameEntry += aExtFileFieldValue;
334cdf0e10cSrcweir maLbDefined.InsertEntry( aPagePathNameEntry);
335cdf0e10cSrcweir
336cdf0e10cSrcweir String aUserNameEntry(aUserOpt.GetFirstName());
337cdf0e10cSrcweir aUserNameEntry += ' ';
338cdf0e10cSrcweir aUserNameEntry += (String)aUserOpt.GetLastName();
339cdf0e10cSrcweir aUserNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
340cdf0e10cSrcweir aUserNameEntry += aPageEntry;
341cdf0e10cSrcweir aUserNameEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
342cdf0e10cSrcweir aUserNameEntry += aDateFieldValue;
343cdf0e10cSrcweir maLbDefined.InsertEntry( aUserNameEntry);
344cdf0e10cSrcweir
345cdf0e10cSrcweir String aCreatedByEntry(ScGlobal::GetRscString( STR_HF_CREATED_BY ) );
346cdf0e10cSrcweir aCreatedByEntry += ' ';
347cdf0e10cSrcweir aCreatedByEntry += (String)aUserOpt.GetFirstName();
348cdf0e10cSrcweir aCreatedByEntry += ' ';
349cdf0e10cSrcweir aCreatedByEntry += (String)aUserOpt.GetLastName();
350cdf0e10cSrcweir aCreatedByEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
351cdf0e10cSrcweir aCreatedByEntry += aDateFieldValue;
352cdf0e10cSrcweir aCreatedByEntry.AppendAscii(RTL_CONSTASCII_STRINGPARAM(", "));
353cdf0e10cSrcweir aCreatedByEntry += aPageEntry;
354cdf0e10cSrcweir maLbDefined.InsertEntry( aCreatedByEntry);
355cdf0e10cSrcweir }
356cdf0e10cSrcweir
InsertToDefinedList()357cdf0e10cSrcweir void ScHFEditPage::InsertToDefinedList()
358cdf0e10cSrcweir {
359cdf0e10cSrcweir sal_uInt16 nCount = maLbDefined.GetEntryCount();
360cdf0e10cSrcweir if(nCount == eEntryCount)
361cdf0e10cSrcweir {
362cdf0e10cSrcweir String aCustomizedEntry(ScGlobal::GetRscString( STR_HF_CUSTOMIZED ) );
363cdf0e10cSrcweir maLbDefined.InsertEntry( aCustomizedEntry);
364cdf0e10cSrcweir maLbDefined.SelectEntryPos(eEntryCount);
365cdf0e10cSrcweir }
366cdf0e10cSrcweir }
367cdf0e10cSrcweir
RemoveFromDefinedList()368cdf0e10cSrcweir void ScHFEditPage::RemoveFromDefinedList()
369cdf0e10cSrcweir {
370cdf0e10cSrcweir sal_uInt16 nCount = maLbDefined.GetEntryCount();
371cdf0e10cSrcweir if(nCount > eEntryCount )
372cdf0e10cSrcweir maLbDefined.RemoveEntry( nCount-1);
373cdf0e10cSrcweir }
374cdf0e10cSrcweir
375cdf0e10cSrcweir // determine if the header/footer exists in our predefined list and set select to it.
SetSelectDefinedList()376cdf0e10cSrcweir void ScHFEditPage::SetSelectDefinedList()
377cdf0e10cSrcweir {
378cdf0e10cSrcweir SvtUserOptions aUserOpt;
379cdf0e10cSrcweir
380cdf0e10cSrcweir // default to customized
381cdf0e10cSrcweir ScHFEntryId eSelectEntry = eEntryCount;
382cdf0e10cSrcweir
383cdf0e10cSrcweir ::std::auto_ptr< EditTextObject > pLeftObj;
384cdf0e10cSrcweir ::std::auto_ptr< EditTextObject > pCenterObj;
385cdf0e10cSrcweir ::std::auto_ptr< EditTextObject > pRightObj;
386cdf0e10cSrcweir
387cdf0e10cSrcweir XubString aLeftEntry;
388cdf0e10cSrcweir XubString aCenterEntry;
389cdf0e10cSrcweir XubString aRightEntry;
390cdf0e10cSrcweir
391cdf0e10cSrcweir pLeftObj.reset(aWndLeft.GetEditEngine()->CreateTextObject());
392cdf0e10cSrcweir pCenterObj.reset(aWndCenter.GetEditEngine()->CreateTextObject());
393cdf0e10cSrcweir pRightObj.reset(aWndRight.GetEditEngine()->CreateTextObject());
394cdf0e10cSrcweir
395cdf0e10cSrcweir bool bFound = false;
396cdf0e10cSrcweir
397cdf0e10cSrcweir sal_uInt16 i;
398cdf0e10cSrcweir sal_uInt16 nCount = maLbDefined.GetEntryCount();
399cdf0e10cSrcweir for(i = 0; i < nCount && !bFound; i++)
400cdf0e10cSrcweir {
401cdf0e10cSrcweir switch(static_cast<ScHFEntryId>(i))
402cdf0e10cSrcweir {
403cdf0e10cSrcweir case eNoneEntry:
404cdf0e10cSrcweir {
405cdf0e10cSrcweir aLeftEntry = pLeftObj->GetText(0);
406cdf0e10cSrcweir aCenterEntry = pCenterObj->GetText(0);
407cdf0e10cSrcweir aRightEntry = pRightObj->GetText(0);
408cdf0e10cSrcweir if(aLeftEntry == EMPTY_STRING && aCenterEntry == EMPTY_STRING
409cdf0e10cSrcweir && aRightEntry == EMPTY_STRING)
410cdf0e10cSrcweir {
411cdf0e10cSrcweir eSelectEntry = eNoneEntry;
412cdf0e10cSrcweir bFound = true;
413cdf0e10cSrcweir }
414cdf0e10cSrcweir }
415cdf0e10cSrcweir break;
416cdf0e10cSrcweir
417cdf0e10cSrcweir case ePageEntry:
418cdf0e10cSrcweir {
419cdf0e10cSrcweir aLeftEntry = pLeftObj->GetText(0);
420cdf0e10cSrcweir aRightEntry = pRightObj->GetText(0);
421cdf0e10cSrcweir if(aLeftEntry == EMPTY_STRING && aRightEntry == EMPTY_STRING)
422cdf0e10cSrcweir {
423cdf0e10cSrcweir if(IsPageEntry(aWndCenter.GetEditEngine(), pCenterObj.get()))
424cdf0e10cSrcweir {
425cdf0e10cSrcweir eSelectEntry = ePageEntry;
426cdf0e10cSrcweir bFound = true;
427cdf0e10cSrcweir }
428cdf0e10cSrcweir }
429cdf0e10cSrcweir }
430cdf0e10cSrcweir break;
431cdf0e10cSrcweir
432cdf0e10cSrcweir
433cdf0e10cSrcweir //TODO
434cdf0e10cSrcweir case ePagesEntry:
435cdf0e10cSrcweir {
436cdf0e10cSrcweir }
437cdf0e10cSrcweir break;
438cdf0e10cSrcweir
439cdf0e10cSrcweir case eSheetEntry:
440cdf0e10cSrcweir {
441cdf0e10cSrcweir aLeftEntry = pLeftObj->GetText(0);
442cdf0e10cSrcweir aRightEntry = pRightObj->GetText(0);
443cdf0e10cSrcweir if(aLeftEntry == EMPTY_STRING && aRightEntry == EMPTY_STRING)
444cdf0e10cSrcweir {
445cdf0e10cSrcweir if(pCenterObj->IsFieldObject())
446cdf0e10cSrcweir {
447cdf0e10cSrcweir const SvxFieldItem* pFieldItem = pCenterObj->GetField();
448cdf0e10cSrcweir if(pFieldItem)
449cdf0e10cSrcweir {
450cdf0e10cSrcweir const SvxFieldData* pField = pFieldItem->GetField();
451cdf0e10cSrcweir if(pField && pField->ISA(SvxTableField))
452cdf0e10cSrcweir {
453cdf0e10cSrcweir eSelectEntry = eSheetEntry;
454cdf0e10cSrcweir bFound = true;
455cdf0e10cSrcweir }
456cdf0e10cSrcweir }
457cdf0e10cSrcweir }
458cdf0e10cSrcweir }
459cdf0e10cSrcweir }
460cdf0e10cSrcweir break;
461cdf0e10cSrcweir
462cdf0e10cSrcweir case eConfidentialEntry:
463cdf0e10cSrcweir {
464cdf0e10cSrcweir if(IsDateEntry(pCenterObj.get()) && IsPageEntry(aWndRight.GetEditEngine(), pRightObj.get()))
465cdf0e10cSrcweir {
466cdf0e10cSrcweir String aConfidentialEntry(aUserOpt.GetCompany());
467cdf0e10cSrcweir aConfidentialEntry += ' ';
468cdf0e10cSrcweir aConfidentialEntry += ScGlobal::GetRscString( STR_HF_CONFIDENTIAL );
469cdf0e10cSrcweir if(aConfidentialEntry == aWndLeft.GetEditEngine()->GetText(0))
470cdf0e10cSrcweir {
471cdf0e10cSrcweir eSelectEntry = eConfidentialEntry;
472cdf0e10cSrcweir bFound = true;
473cdf0e10cSrcweir }
474cdf0e10cSrcweir }
475cdf0e10cSrcweir }
476cdf0e10cSrcweir break;
477cdf0e10cSrcweir
478cdf0e10cSrcweir //TODO
479cdf0e10cSrcweir case eFileNamePageEntry:
480cdf0e10cSrcweir {
481cdf0e10cSrcweir }
482cdf0e10cSrcweir break;
483cdf0e10cSrcweir
484cdf0e10cSrcweir case eExtFileNameEntry:
485cdf0e10cSrcweir {
486cdf0e10cSrcweir aLeftEntry = pLeftObj->GetText(0);
487cdf0e10cSrcweir aRightEntry = pRightObj->GetText(0);
488cdf0e10cSrcweir if(IsExtFileNameEntry(pCenterObj.get()) && aLeftEntry == EMPTY_STRING
489cdf0e10cSrcweir && aRightEntry == EMPTY_STRING)
490cdf0e10cSrcweir {
491cdf0e10cSrcweir eSelectEntry = eExtFileNameEntry;
492cdf0e10cSrcweir bFound = true;
493cdf0e10cSrcweir }
494cdf0e10cSrcweir }
495cdf0e10cSrcweir break;
496cdf0e10cSrcweir
497cdf0e10cSrcweir //TODO
498cdf0e10cSrcweir case ePageSheetEntry:
499cdf0e10cSrcweir {
500cdf0e10cSrcweir }
501cdf0e10cSrcweir break;
502cdf0e10cSrcweir
503cdf0e10cSrcweir //TODO
504cdf0e10cSrcweir case ePageFileNameEntry:
505cdf0e10cSrcweir {
506cdf0e10cSrcweir }
507cdf0e10cSrcweir break;
508cdf0e10cSrcweir
509cdf0e10cSrcweir case ePageExtFileNameEntry:
510cdf0e10cSrcweir {
511cdf0e10cSrcweir aLeftEntry = pLeftObj->GetText(0);
512cdf0e10cSrcweir if(IsPageEntry(aWndCenter.GetEditEngine(), pCenterObj.get()) &&
513cdf0e10cSrcweir IsExtFileNameEntry(pRightObj.get()) && aLeftEntry == EMPTY_STRING)
514cdf0e10cSrcweir {
515cdf0e10cSrcweir eSelectEntry = ePageExtFileNameEntry;
516cdf0e10cSrcweir bFound = true;
517cdf0e10cSrcweir }
518cdf0e10cSrcweir }
519cdf0e10cSrcweir break;
520cdf0e10cSrcweir
521cdf0e10cSrcweir case eUserNameEntry:
522cdf0e10cSrcweir {
523cdf0e10cSrcweir if(IsDateEntry(pRightObj.get()) && IsPageEntry(aWndCenter.GetEditEngine(), pCenterObj.get()))
524cdf0e10cSrcweir {
525cdf0e10cSrcweir String aUserNameEntry(aUserOpt.GetFirstName());
526cdf0e10cSrcweir aUserNameEntry += ' ';
527cdf0e10cSrcweir aUserNameEntry += (String)aUserOpt.GetLastName();
528cdf0e10cSrcweir if(aUserNameEntry == aWndLeft.GetEditEngine()->GetText(0))
529cdf0e10cSrcweir {
530cdf0e10cSrcweir eSelectEntry = eUserNameEntry;
531cdf0e10cSrcweir bFound = true;
532cdf0e10cSrcweir }
533cdf0e10cSrcweir }
534cdf0e10cSrcweir }
535cdf0e10cSrcweir break;
536cdf0e10cSrcweir
537cdf0e10cSrcweir case eCreatedByEntry:
538cdf0e10cSrcweir {
539cdf0e10cSrcweir if(IsDateEntry(pCenterObj.get()) && IsPageEntry(aWndRight.GetEditEngine(), pRightObj.get()))
540cdf0e10cSrcweir {
541cdf0e10cSrcweir String aCreatedByEntry(ScGlobal::GetRscString( STR_HF_CREATED_BY ) );
542cdf0e10cSrcweir aCreatedByEntry += ' ';
543cdf0e10cSrcweir aCreatedByEntry += (String)aUserOpt.GetFirstName();
544cdf0e10cSrcweir aCreatedByEntry += ' ';
545cdf0e10cSrcweir aCreatedByEntry += (String)aUserOpt.GetLastName();
546cdf0e10cSrcweir if(aCreatedByEntry == aWndLeft.GetEditEngine()->GetText(0))
547cdf0e10cSrcweir {
548cdf0e10cSrcweir eSelectEntry = eCreatedByEntry;
549cdf0e10cSrcweir bFound = true;
550cdf0e10cSrcweir }
551cdf0e10cSrcweir }
552cdf0e10cSrcweir }
553cdf0e10cSrcweir break;
554cdf0e10cSrcweir
555cdf0e10cSrcweir default:
556cdf0e10cSrcweir {
557cdf0e10cSrcweir // added to avoid warnings
558cdf0e10cSrcweir }
559cdf0e10cSrcweir }
560cdf0e10cSrcweir }
561cdf0e10cSrcweir
562cdf0e10cSrcweir if(eSelectEntry == eEntryCount)
563cdf0e10cSrcweir InsertToDefinedList();
564cdf0e10cSrcweir
565cdf0e10cSrcweir maLbDefined.SelectEntryPos( sal::static_int_cast<sal_uInt16>( eSelectEntry ) );
566cdf0e10cSrcweir }
567cdf0e10cSrcweir
IsPageEntry(EditEngine * pEngine,EditTextObject * pTextObj)568cdf0e10cSrcweir bool ScHFEditPage::IsPageEntry(EditEngine*pEngine, EditTextObject* pTextObj)
569cdf0e10cSrcweir {
570cdf0e10cSrcweir if(!pEngine && !pTextObj)
571cdf0e10cSrcweir return false;
572cdf0e10cSrcweir
573cdf0e10cSrcweir bool bReturn = false;
574cdf0e10cSrcweir
575cdf0e10cSrcweir if(!pTextObj->IsFieldObject())
576cdf0e10cSrcweir {
577cdf0e10cSrcweir SvUShorts aPosList;
578cdf0e10cSrcweir pEngine->GetPortions(0,aPosList);
579cdf0e10cSrcweir if(aPosList.Count() == 2)
580cdf0e10cSrcweir {
581cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
582cdf0e10cSrcweir aPageEntry += ' ';
583cdf0e10cSrcweir ESelection aSel(0,0,0,0);
584cdf0e10cSrcweir aSel.nEndPos = aPageEntry.Len();
585cdf0e10cSrcweir if(aPageEntry == pEngine->GetText(aSel))
586cdf0e10cSrcweir {
587cdf0e10cSrcweir aSel.nStartPos = aSel.nEndPos;
588cdf0e10cSrcweir aSel.nEndPos++;
589cdf0e10cSrcweir ::std::auto_ptr< EditTextObject > pPageObj;
590cdf0e10cSrcweir pPageObj.reset(pEngine->CreateTextObject(aSel));
591cdf0e10cSrcweir if(pPageObj.get() && pPageObj->IsFieldObject() )
592cdf0e10cSrcweir {
593cdf0e10cSrcweir const SvxFieldItem* pFieldItem = pPageObj->GetField();
594cdf0e10cSrcweir if(pFieldItem)
595cdf0e10cSrcweir {
596cdf0e10cSrcweir const SvxFieldData* pField = pFieldItem->GetField();
597cdf0e10cSrcweir if(pField && pField->ISA(SvxPageField))
598cdf0e10cSrcweir bReturn = true;
599cdf0e10cSrcweir }
600cdf0e10cSrcweir }
601cdf0e10cSrcweir }
602cdf0e10cSrcweir }
603cdf0e10cSrcweir }
604cdf0e10cSrcweir return bReturn;
605cdf0e10cSrcweir }
606cdf0e10cSrcweir
IsDateEntry(EditTextObject * pTextObj)607cdf0e10cSrcweir bool ScHFEditPage::IsDateEntry(EditTextObject* pTextObj)
608cdf0e10cSrcweir {
609cdf0e10cSrcweir if(!pTextObj)
610cdf0e10cSrcweir return false;
611cdf0e10cSrcweir
612cdf0e10cSrcweir bool bReturn = false;
613cdf0e10cSrcweir if(pTextObj->IsFieldObject())
614cdf0e10cSrcweir {
615cdf0e10cSrcweir const SvxFieldItem* pFieldItem = pTextObj->GetField();
616cdf0e10cSrcweir if(pFieldItem)
617cdf0e10cSrcweir {
618cdf0e10cSrcweir const SvxFieldData* pField = pFieldItem->GetField();
619cdf0e10cSrcweir if(pField && pField->ISA(SvxDateField))
620cdf0e10cSrcweir bReturn = true;
621cdf0e10cSrcweir }
622cdf0e10cSrcweir }
623cdf0e10cSrcweir return bReturn;
624cdf0e10cSrcweir }
625cdf0e10cSrcweir
IsExtFileNameEntry(EditTextObject * pTextObj)626cdf0e10cSrcweir bool ScHFEditPage::IsExtFileNameEntry(EditTextObject* pTextObj)
627cdf0e10cSrcweir {
628cdf0e10cSrcweir if(!pTextObj)
629cdf0e10cSrcweir return false;
630cdf0e10cSrcweir bool bReturn = false;
631cdf0e10cSrcweir if(pTextObj->IsFieldObject())
632cdf0e10cSrcweir {
633cdf0e10cSrcweir const SvxFieldItem* pFieldItem = pTextObj->GetField();
634cdf0e10cSrcweir if(pFieldItem)
635cdf0e10cSrcweir {
636cdf0e10cSrcweir const SvxFieldData* pField = pFieldItem->GetField();
637cdf0e10cSrcweir if(pField && pField->ISA(SvxExtFileField))
638cdf0e10cSrcweir bReturn = true;
639cdf0e10cSrcweir }
640cdf0e10cSrcweir }
641cdf0e10cSrcweir return bReturn;
642cdf0e10cSrcweir }
643cdf0e10cSrcweir
ProcessDefinedListSel(ScHFEntryId eSel,bool bTravelling)644cdf0e10cSrcweir void ScHFEditPage::ProcessDefinedListSel(ScHFEntryId eSel, bool bTravelling)
645cdf0e10cSrcweir {
646cdf0e10cSrcweir SvtUserOptions aUserOpt;
647cdf0e10cSrcweir ::std::auto_ptr< EditTextObject > pTextObj;
648cdf0e10cSrcweir
649cdf0e10cSrcweir switch(eSel)
650cdf0e10cSrcweir {
651cdf0e10cSrcweir case eNoneEntry:
652cdf0e10cSrcweir ClearTextAreas();
653cdf0e10cSrcweir if(!bTravelling)
654cdf0e10cSrcweir aWndLeft.GrabFocus();
655cdf0e10cSrcweir break;
656cdf0e10cSrcweir
657cdf0e10cSrcweir case ePageEntry:
658cdf0e10cSrcweir {
659cdf0e10cSrcweir ClearTextAreas();
660cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
661cdf0e10cSrcweir aPageEntry += ' ';
662cdf0e10cSrcweir aWndCenter.GetEditEngine()->SetText(aPageEntry);
663cdf0e10cSrcweir aWndCenter.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) );
664cdf0e10cSrcweir if(!bTravelling)
665cdf0e10cSrcweir aWndCenter.GrabFocus();
666cdf0e10cSrcweir }
667cdf0e10cSrcweir break;
668cdf0e10cSrcweir
669cdf0e10cSrcweir case ePagesEntry:
670cdf0e10cSrcweir {
671cdf0e10cSrcweir ClearTextAreas();
672cdf0e10cSrcweir ESelection aSel(0,0,0,0);
673cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
674cdf0e10cSrcweir aPageEntry += ' ';
675cdf0e10cSrcweir aWndCenter.GetEditEngine()->SetText(aPageEntry);
676cdf0e10cSrcweir aSel.nEndPos = aPageEntry.Len();
677cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
678cdf0e10cSrcweir ++aSel.nEndPos;
679cdf0e10cSrcweir String aPageOfEntry = ' ';
680cdf0e10cSrcweir aPageOfEntry += ScGlobal::GetRscString( STR_HF_OF );
681cdf0e10cSrcweir aPageOfEntry += ' ';
682cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertText(aPageOfEntry,ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
683cdf0e10cSrcweir aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aPageOfEntry.Len() );
684cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPagesField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
685cdf0e10cSrcweir pTextObj.reset(aWndCenter.GetEditEngine()->CreateTextObject());
686cdf0e10cSrcweir aWndCenter.SetText(*pTextObj);
687cdf0e10cSrcweir XubString aEntry(pTextObj.get()->GetText(0));
688cdf0e10cSrcweir if(!bTravelling)
689cdf0e10cSrcweir aWndCenter.GrabFocus();
690cdf0e10cSrcweir }
691cdf0e10cSrcweir break;
692cdf0e10cSrcweir
693cdf0e10cSrcweir case eSheetEntry:
694cdf0e10cSrcweir ClearTextAreas();
695cdf0e10cSrcweir aWndCenter.InsertField( SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD) );
696cdf0e10cSrcweir if(!bTravelling)
697cdf0e10cSrcweir aWndCenter.GrabFocus();
698cdf0e10cSrcweir break;
699cdf0e10cSrcweir
700cdf0e10cSrcweir case eConfidentialEntry:
701cdf0e10cSrcweir {
702cdf0e10cSrcweir ClearTextAreas();
703cdf0e10cSrcweir String aConfidentialEntry(aUserOpt.GetCompany());
704cdf0e10cSrcweir aConfidentialEntry += ' ';
705cdf0e10cSrcweir aConfidentialEntry += ScGlobal::GetRscString( STR_HF_CONFIDENTIAL );
706cdf0e10cSrcweir aWndLeft.GetEditEngine()->SetText(aConfidentialEntry);
707cdf0e10cSrcweir aWndCenter.InsertField( SvxFieldItem(SvxDateField(Date(),SVXDATETYPE_VAR), EE_FEATURE_FIELD) );
708cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
709cdf0e10cSrcweir aPageEntry += ' ';
710cdf0e10cSrcweir aWndRight.GetEditEngine()->SetText(aPageEntry);
711cdf0e10cSrcweir aWndRight.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) );
712cdf0e10cSrcweir if(!bTravelling)
713cdf0e10cSrcweir aWndRight.GrabFocus();
714cdf0e10cSrcweir }
715cdf0e10cSrcweir break;
716cdf0e10cSrcweir
717cdf0e10cSrcweir case eFileNamePageEntry:
718cdf0e10cSrcweir {
719cdf0e10cSrcweir ClearTextAreas();
720cdf0e10cSrcweir ESelection aSel(0,0,0,0);
721cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem( SvxFileField(), EE_FEATURE_FIELD ), aSel );
722cdf0e10cSrcweir ++aSel.nEndPos;
723cdf0e10cSrcweir String aPageEntry(RTL_CONSTASCII_STRINGPARAM(", "));
724cdf0e10cSrcweir aPageEntry += ScGlobal::GetRscString( STR_PAGE ) ;
725cdf0e10cSrcweir aPageEntry += ' ';
726cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertText(aPageEntry, ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
727cdf0e10cSrcweir aSel.nStartPos = aSel.nEndPos;
728cdf0e10cSrcweir aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aPageEntry.Len() );
729cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara,aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
730cdf0e10cSrcweir pTextObj.reset(aWndCenter.GetEditEngine()->CreateTextObject());
731cdf0e10cSrcweir aWndCenter.SetText(*pTextObj);
732cdf0e10cSrcweir XubString aEntry2(pTextObj.get()->GetText(0));
733cdf0e10cSrcweir if(!bTravelling)
734cdf0e10cSrcweir aWndCenter.GrabFocus();
735cdf0e10cSrcweir }
736cdf0e10cSrcweir break;
737cdf0e10cSrcweir
738cdf0e10cSrcweir case eExtFileNameEntry:
739cdf0e10cSrcweir ClearTextAreas();
740cdf0e10cSrcweir aWndCenter.InsertField( SvxFieldItem( SvxExtFileField(
741cdf0e10cSrcweir EMPTY_STRING, SVXFILETYPE_VAR, SVXFILEFORMAT_FULLPATH ), EE_FEATURE_FIELD ) );
742cdf0e10cSrcweir if(!bTravelling)
743cdf0e10cSrcweir aWndCenter.GrabFocus();
744cdf0e10cSrcweir break;
745cdf0e10cSrcweir
746cdf0e10cSrcweir case ePageSheetEntry:
747cdf0e10cSrcweir {
748cdf0e10cSrcweir ClearTextAreas();
749cdf0e10cSrcweir ESelection aSel(0,0,0,0);
750cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
751cdf0e10cSrcweir aPageEntry += ' ';
752cdf0e10cSrcweir aWndCenter.GetEditEngine()->SetText(aPageEntry);
753cdf0e10cSrcweir aSel.nEndPos = aPageEntry.Len();
754cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
755cdf0e10cSrcweir ++aSel.nEndPos;
756cdf0e10cSrcweir String aCommaSpace(RTL_CONSTASCII_STRINGPARAM(", "));
757cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertText(aCommaSpace,ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
758cdf0e10cSrcweir aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aCommaSpace.Len() );
759cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertField( SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
760cdf0e10cSrcweir pTextObj.reset(aWndCenter.GetEditEngine()->CreateTextObject());
761cdf0e10cSrcweir aWndCenter.SetText(*pTextObj);
762cdf0e10cSrcweir if(!bTravelling)
763cdf0e10cSrcweir aWndCenter.GrabFocus();
764cdf0e10cSrcweir }
765cdf0e10cSrcweir break;
766cdf0e10cSrcweir
767cdf0e10cSrcweir case ePageFileNameEntry:
768cdf0e10cSrcweir {
769cdf0e10cSrcweir ClearTextAreas();
770cdf0e10cSrcweir ESelection aSel(0,0,0,0);
771cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
772cdf0e10cSrcweir aPageEntry += ' ';
773cdf0e10cSrcweir aWndCenter.GetEditEngine()->SetText(aPageEntry);
774cdf0e10cSrcweir aSel.nEndPos = aPageEntry.Len();
775cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertField(SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
776cdf0e10cSrcweir ++aSel.nEndPos;
777cdf0e10cSrcweir String aCommaSpace(RTL_CONSTASCII_STRINGPARAM(", "));
778cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertText(aCommaSpace,ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
779cdf0e10cSrcweir aSel.nEndPos = sal::static_int_cast<xub_StrLen>( aSel.nEndPos + aCommaSpace.Len() );
780cdf0e10cSrcweir aWndCenter.GetEditEngine()->QuickInsertField( SvxFieldItem(SvxFileField(), EE_FEATURE_FIELD), ESelection(aSel.nEndPara, aSel.nEndPos, aSel.nEndPara, aSel.nEndPos));
781cdf0e10cSrcweir pTextObj.reset(aWndCenter.GetEditEngine()->CreateTextObject());
782cdf0e10cSrcweir aWndCenter.SetText(*pTextObj);
783cdf0e10cSrcweir if(!bTravelling)
784cdf0e10cSrcweir aWndCenter.GrabFocus();
785cdf0e10cSrcweir }
786cdf0e10cSrcweir break;
787cdf0e10cSrcweir
788cdf0e10cSrcweir case ePageExtFileNameEntry:
789cdf0e10cSrcweir {
790cdf0e10cSrcweir ClearTextAreas();
791cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
792cdf0e10cSrcweir aPageEntry += ' ';
793cdf0e10cSrcweir aWndCenter.GetEditEngine()->SetText(aPageEntry);
794cdf0e10cSrcweir aWndCenter.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) );
795cdf0e10cSrcweir aWndRight.InsertField( SvxFieldItem( SvxExtFileField(
796cdf0e10cSrcweir EMPTY_STRING, SVXFILETYPE_VAR, SVXFILEFORMAT_FULLPATH ), EE_FEATURE_FIELD ) );
797cdf0e10cSrcweir if(!bTravelling)
798cdf0e10cSrcweir aWndRight.GrabFocus();
799cdf0e10cSrcweir }
800cdf0e10cSrcweir break;
801cdf0e10cSrcweir
802cdf0e10cSrcweir case eUserNameEntry:
803cdf0e10cSrcweir {
804cdf0e10cSrcweir ClearTextAreas();
805cdf0e10cSrcweir String aUserNameEntry(aUserOpt.GetFirstName());
806cdf0e10cSrcweir aUserNameEntry += ' ';
807cdf0e10cSrcweir aUserNameEntry += (String)aUserOpt.GetLastName();
808cdf0e10cSrcweir aWndLeft.GetEditEngine()->SetText(aUserNameEntry);
809cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
810cdf0e10cSrcweir aPageEntry += ' ';
811cdf0e10cSrcweir aWndCenter.GetEditEngine()->SetText(aPageEntry);
812cdf0e10cSrcweir aWndCenter.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) );
813cdf0e10cSrcweir aWndRight.InsertField( SvxFieldItem(SvxDateField(Date(),SVXDATETYPE_VAR), EE_FEATURE_FIELD) );
814cdf0e10cSrcweir if(!bTravelling)
815cdf0e10cSrcweir aWndRight.GrabFocus();
816cdf0e10cSrcweir }
817cdf0e10cSrcweir break;
818cdf0e10cSrcweir
819cdf0e10cSrcweir case eCreatedByEntry:
820cdf0e10cSrcweir {
821cdf0e10cSrcweir ClearTextAreas();
822cdf0e10cSrcweir String aCreatedByEntry(ScGlobal::GetRscString( STR_HF_CREATED_BY ) );
823cdf0e10cSrcweir aCreatedByEntry += ' ';
824cdf0e10cSrcweir aCreatedByEntry += (String)aUserOpt.GetFirstName();
825cdf0e10cSrcweir aCreatedByEntry += ' ';
826cdf0e10cSrcweir aCreatedByEntry += (String)aUserOpt.GetLastName();
827cdf0e10cSrcweir aWndLeft.GetEditEngine()->SetText(aCreatedByEntry);
828cdf0e10cSrcweir aWndCenter.InsertField( SvxFieldItem(SvxDateField(Date(),SVXDATETYPE_VAR), EE_FEATURE_FIELD) );
829cdf0e10cSrcweir String aPageEntry(ScGlobal::GetRscString( STR_PAGE ) );
830cdf0e10cSrcweir aPageEntry += ' ';
831cdf0e10cSrcweir aWndRight.GetEditEngine()->SetText(aPageEntry);
832cdf0e10cSrcweir aWndRight.InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) );
833cdf0e10cSrcweir if(!bTravelling)
834cdf0e10cSrcweir aWndRight.GrabFocus();
835cdf0e10cSrcweir }
836cdf0e10cSrcweir break;
837cdf0e10cSrcweir
838cdf0e10cSrcweir default :
839cdf0e10cSrcweir break;
840cdf0e10cSrcweir }
841cdf0e10cSrcweir }
842cdf0e10cSrcweir
ClearTextAreas()843cdf0e10cSrcweir void ScHFEditPage::ClearTextAreas()
844cdf0e10cSrcweir {
845cdf0e10cSrcweir aWndLeft.GetEditEngine()->SetText(EMPTY_STRING);
846cdf0e10cSrcweir aWndLeft.Invalidate();
847cdf0e10cSrcweir aWndCenter.GetEditEngine()->SetText(EMPTY_STRING);
848cdf0e10cSrcweir aWndCenter.Invalidate();
849cdf0e10cSrcweir aWndRight.GetEditEngine()->SetText(EMPTY_STRING);
850cdf0e10cSrcweir aWndRight.Invalidate();
851cdf0e10cSrcweir }
852cdf0e10cSrcweir
853cdf0e10cSrcweir //-----------------------------------------------------------------------
854cdf0e10cSrcweir // Handler:
855cdf0e10cSrcweir //-----------------------------------------------------------------------
856cdf0e10cSrcweir
IMPL_LINK(ScHFEditPage,ListHdl_Impl,ListBox *,pList)857cdf0e10cSrcweir IMPL_LINK( ScHFEditPage, ListHdl_Impl, ListBox*, pList )
858cdf0e10cSrcweir {
859cdf0e10cSrcweir if ( pList && pList == &maLbDefined )
860cdf0e10cSrcweir {
861cdf0e10cSrcweir ScHFEntryId eSel = static_cast<ScHFEntryId>(maLbDefined.GetSelectEntryPos());
862cdf0e10cSrcweir if(!maLbDefined.IsTravelSelect())
863cdf0e10cSrcweir {
864cdf0e10cSrcweir ProcessDefinedListSel(eSel);
865cdf0e10cSrcweir
866cdf0e10cSrcweir // check if we need to remove the customized entry.
867cdf0e10cSrcweir if(eSel < eEntryCount)
868cdf0e10cSrcweir RemoveFromDefinedList();
869cdf0e10cSrcweir }
870cdf0e10cSrcweir else
871cdf0e10cSrcweir {
872cdf0e10cSrcweir ProcessDefinedListSel(eSel, true);
873cdf0e10cSrcweir }
874cdf0e10cSrcweir }
875cdf0e10cSrcweir return 0;
876cdf0e10cSrcweir }
877cdf0e10cSrcweir
IMPL_LINK(ScHFEditPage,ClickHdl,ImageButton *,pBtn)878cdf0e10cSrcweir IMPL_LINK( ScHFEditPage, ClickHdl, ImageButton*, pBtn )
879cdf0e10cSrcweir {
880cdf0e10cSrcweir pActiveEdWnd = ::GetScEditWindow(); //CHINA001
881cdf0e10cSrcweir if ( !pActiveEdWnd )
882cdf0e10cSrcweir return 0;
883cdf0e10cSrcweir
884cdf0e10cSrcweir if ( pBtn == &aBtnText )
885cdf0e10cSrcweir {
886cdf0e10cSrcweir pActiveEdWnd->SetCharAttriutes();
887cdf0e10cSrcweir }
888cdf0e10cSrcweir else
889cdf0e10cSrcweir {
890cdf0e10cSrcweir if ( pBtn == &aBtnPage )
891cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem(SvxPageField(), EE_FEATURE_FIELD) );
892cdf0e10cSrcweir else if ( pBtn == &aBtnLastPage )
893cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem(SvxPagesField(), EE_FEATURE_FIELD) );
894cdf0e10cSrcweir else if ( pBtn == &aBtnDate )
895cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem(SvxDateField(Date(),SVXDATETYPE_VAR), EE_FEATURE_FIELD) );
896cdf0e10cSrcweir else if ( pBtn == &aBtnTime )
897cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem(SvxTimeField(), EE_FEATURE_FIELD) );
898cdf0e10cSrcweir else if ( pBtn == &aBtnFile )
899cdf0e10cSrcweir {
900cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem( SvxFileField(), EE_FEATURE_FIELD ) );
901cdf0e10cSrcweir }
902cdf0e10cSrcweir else if ( pBtn == &aBtnTable )
903cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem(SvxTableField(), EE_FEATURE_FIELD) );
904cdf0e10cSrcweir }
905cdf0e10cSrcweir InsertToDefinedList();
906cdf0e10cSrcweir pActiveEdWnd->GrabFocus();
907cdf0e10cSrcweir
908cdf0e10cSrcweir return 0;
909cdf0e10cSrcweir }
910cdf0e10cSrcweir
IMPL_LINK(ScHFEditPage,MenuHdl,ScExtIButton *,pBtn)911cdf0e10cSrcweir IMPL_LINK( ScHFEditPage, MenuHdl, ScExtIButton*, pBtn )
912cdf0e10cSrcweir {
913cdf0e10cSrcweir pActiveEdWnd = ::GetScEditWindow(); //CHINA001
914cdf0e10cSrcweir if ( !pActiveEdWnd )
915cdf0e10cSrcweir return 0;
916cdf0e10cSrcweir
917cdf0e10cSrcweir if(pBtn!=NULL)
918cdf0e10cSrcweir {
919cdf0e10cSrcweir switch(pBtn->GetSelected())
920cdf0e10cSrcweir {
921cdf0e10cSrcweir case FILE_COMMAND_TITEL:
922cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem( SvxFileField(), EE_FEATURE_FIELD ) );
923cdf0e10cSrcweir break;
924cdf0e10cSrcweir case FILE_COMMAND_FILENAME:
925cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem( SvxExtFileField(
926cdf0e10cSrcweir EMPTY_STRING, SVXFILETYPE_VAR, SVXFILEFORMAT_NAME_EXT ), EE_FEATURE_FIELD ) );
927cdf0e10cSrcweir break;
928cdf0e10cSrcweir case FILE_COMMAND_PATH:
929cdf0e10cSrcweir pActiveEdWnd->InsertField( SvxFieldItem( SvxExtFileField(
930cdf0e10cSrcweir EMPTY_STRING, SVXFILETYPE_VAR, SVXFILEFORMAT_FULLPATH ), EE_FEATURE_FIELD ) );
931cdf0e10cSrcweir break;
932cdf0e10cSrcweir }
933cdf0e10cSrcweir }
934cdf0e10cSrcweir return 0;
935cdf0e10cSrcweir }
936cdf0e10cSrcweir
937cdf0e10cSrcweir //========================================================================
938cdf0e10cSrcweir // class ScRightHeaderEditPage
939cdf0e10cSrcweir //========================================================================
940cdf0e10cSrcweir
ScRightHeaderEditPage(Window * pParent,const SfxItemSet & rCoreSet)941cdf0e10cSrcweir ScRightHeaderEditPage::ScRightHeaderEditPage( Window* pParent, const SfxItemSet& rCoreSet )
942cdf0e10cSrcweir : ScHFEditPage( pParent, RID_SCPAGE_HFED_HR, rCoreSet,
943cdf0e10cSrcweir rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_HEADERRIGHT ), true )
944cdf0e10cSrcweir {}
945cdf0e10cSrcweir
946cdf0e10cSrcweir // -----------------------------------------------------------------------
947cdf0e10cSrcweir
GetRanges()948cdf0e10cSrcweir sal_uInt16* __EXPORT ScRightHeaderEditPage::GetRanges()
949cdf0e10cSrcweir { return pPageRightHeaderRanges; }
950cdf0e10cSrcweir
951cdf0e10cSrcweir // -----------------------------------------------------------------------
952cdf0e10cSrcweir
Create(Window * pParent,const SfxItemSet & rCoreSet)953cdf0e10cSrcweir SfxTabPage* __EXPORT ScRightHeaderEditPage::Create( Window* pParent, const SfxItemSet& rCoreSet )
954cdf0e10cSrcweir { return ( new ScRightHeaderEditPage( pParent, rCoreSet ) ); };
955cdf0e10cSrcweir
956cdf0e10cSrcweir
957cdf0e10cSrcweir //========================================================================
958cdf0e10cSrcweir // class ScLeftHeaderEditPage
959cdf0e10cSrcweir //========================================================================
960cdf0e10cSrcweir
ScLeftHeaderEditPage(Window * pParent,const SfxItemSet & rCoreSet)961cdf0e10cSrcweir ScLeftHeaderEditPage::ScLeftHeaderEditPage( Window* pParent, const SfxItemSet& rCoreSet )
962cdf0e10cSrcweir : ScHFEditPage( pParent, RID_SCPAGE_HFED_HL, rCoreSet,
963cdf0e10cSrcweir rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_HEADERLEFT ), true )
964cdf0e10cSrcweir {}
965cdf0e10cSrcweir
966cdf0e10cSrcweir // -----------------------------------------------------------------------
967cdf0e10cSrcweir
GetRanges()968cdf0e10cSrcweir sal_uInt16* __EXPORT ScLeftHeaderEditPage::GetRanges()
969cdf0e10cSrcweir { return pPageLeftHeaderRanges; }
970cdf0e10cSrcweir
971cdf0e10cSrcweir // -----------------------------------------------------------------------
972cdf0e10cSrcweir
Create(Window * pParent,const SfxItemSet & rCoreSet)973cdf0e10cSrcweir SfxTabPage* __EXPORT ScLeftHeaderEditPage::Create( Window* pParent, const SfxItemSet& rCoreSet )
974cdf0e10cSrcweir { return ( new ScLeftHeaderEditPage( pParent, rCoreSet ) ); };
975cdf0e10cSrcweir
976cdf0e10cSrcweir //========================================================================
977cdf0e10cSrcweir // class ScRightFooterEditPage
978cdf0e10cSrcweir //========================================================================
979cdf0e10cSrcweir
ScRightFooterEditPage(Window * pParent,const SfxItemSet & rCoreSet)980cdf0e10cSrcweir ScRightFooterEditPage::ScRightFooterEditPage( Window* pParent, const SfxItemSet& rCoreSet )
981cdf0e10cSrcweir : ScHFEditPage( pParent, RID_SCPAGE_HFED_FR, rCoreSet,
982cdf0e10cSrcweir rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_FOOTERRIGHT ), false )
983cdf0e10cSrcweir {}
984cdf0e10cSrcweir
985cdf0e10cSrcweir // -----------------------------------------------------------------------
986cdf0e10cSrcweir
GetRanges()987cdf0e10cSrcweir sal_uInt16* __EXPORT ScRightFooterEditPage::GetRanges()
988cdf0e10cSrcweir { return pPageRightFooterRanges; }
989cdf0e10cSrcweir
990cdf0e10cSrcweir // -----------------------------------------------------------------------
991cdf0e10cSrcweir
Create(Window * pParent,const SfxItemSet & rCoreSet)992cdf0e10cSrcweir SfxTabPage* __EXPORT ScRightFooterEditPage::Create( Window* pParent, const SfxItemSet& rCoreSet )
993cdf0e10cSrcweir { return ( new ScRightFooterEditPage( pParent, rCoreSet ) ); };
994cdf0e10cSrcweir
995cdf0e10cSrcweir //========================================================================
996cdf0e10cSrcweir // class ScLeftFooterEditPage
997cdf0e10cSrcweir //========================================================================
998cdf0e10cSrcweir
ScLeftFooterEditPage(Window * pParent,const SfxItemSet & rCoreSet)999cdf0e10cSrcweir ScLeftFooterEditPage::ScLeftFooterEditPage( Window* pParent, const SfxItemSet& rCoreSet )
1000cdf0e10cSrcweir : ScHFEditPage( pParent, RID_SCPAGE_HFED_FL, rCoreSet,
1001cdf0e10cSrcweir rCoreSet.GetPool()->GetWhich(SID_SCATTR_PAGE_FOOTERLEFT ), false )
1002cdf0e10cSrcweir {}
1003cdf0e10cSrcweir
1004cdf0e10cSrcweir // -----------------------------------------------------------------------
1005cdf0e10cSrcweir
GetRanges()1006cdf0e10cSrcweir sal_uInt16* __EXPORT ScLeftFooterEditPage::GetRanges()
1007cdf0e10cSrcweir { return pPageLeftFooterRanges; }
1008cdf0e10cSrcweir
1009cdf0e10cSrcweir // -----------------------------------------------------------------------
1010cdf0e10cSrcweir
Create(Window * pParent,const SfxItemSet & rCoreSet)1011cdf0e10cSrcweir SfxTabPage* __EXPORT ScLeftFooterEditPage::Create( Window* pParent, const SfxItemSet& rCoreSet )
1012cdf0e10cSrcweir { return ( new ScLeftFooterEditPage( pParent, rCoreSet ) ); };
1013