xref: /aoo41x/main/sw/source/ui/fldui/fldpage.hxx (revision cdf0e10c)
1*cdf0e10cSrcweir /*************************************************************************
2*cdf0e10cSrcweir  *
3*cdf0e10cSrcweir  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4*cdf0e10cSrcweir  *
5*cdf0e10cSrcweir  * Copyright 2000, 2010 Oracle and/or its affiliates.
6*cdf0e10cSrcweir  *
7*cdf0e10cSrcweir  * OpenOffice.org - a multi-platform office productivity suite
8*cdf0e10cSrcweir  *
9*cdf0e10cSrcweir  * This file is part of OpenOffice.org.
10*cdf0e10cSrcweir  *
11*cdf0e10cSrcweir  * OpenOffice.org is free software: you can redistribute it and/or modify
12*cdf0e10cSrcweir  * it under the terms of the GNU Lesser General Public License version 3
13*cdf0e10cSrcweir  * only, as published by the Free Software Foundation.
14*cdf0e10cSrcweir  *
15*cdf0e10cSrcweir  * OpenOffice.org is distributed in the hope that it will be useful,
16*cdf0e10cSrcweir  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17*cdf0e10cSrcweir  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18*cdf0e10cSrcweir  * GNU Lesser General Public License version 3 for more details
19*cdf0e10cSrcweir  * (a copy is included in the LICENSE file that accompanied this code).
20*cdf0e10cSrcweir  *
21*cdf0e10cSrcweir  * You should have received a copy of the GNU Lesser General Public License
22*cdf0e10cSrcweir  * version 3 along with OpenOffice.org.  If not, see
23*cdf0e10cSrcweir  * <http://www.openoffice.org/license.html>
24*cdf0e10cSrcweir  * for a copy of the LGPLv3 License.
25*cdf0e10cSrcweir  *
26*cdf0e10cSrcweir  ************************************************************************/
27*cdf0e10cSrcweir #ifndef _SWFLDPAGE_HXX
28*cdf0e10cSrcweir #define _SWFLDPAGE_HXX
29*cdf0e10cSrcweir 
30*cdf0e10cSrcweir #include <sfx2/tabdlg.hxx>
31*cdf0e10cSrcweir #include <fldmgr.hxx>
32*cdf0e10cSrcweir 
33*cdf0e10cSrcweir class ListBox;
34*cdf0e10cSrcweir 
35*cdf0e10cSrcweir /*--------------------------------------------------------------------
36*cdf0e10cSrcweir    Beschreibung:
37*cdf0e10cSrcweir  --------------------------------------------------------------------*/
38*cdf0e10cSrcweir 
39*cdf0e10cSrcweir const int coLBCount = 3;
40*cdf0e10cSrcweir 
41*cdf0e10cSrcweir class SwFldPage : public SfxTabPage
42*cdf0e10cSrcweir {
43*cdf0e10cSrcweir     String              m_aLstStrArr[ coLBCount ];
44*cdf0e10cSrcweir     SwFldMgr            m_aMgr;
45*cdf0e10cSrcweir     SwField             *m_pCurFld;
46*cdf0e10cSrcweir     SwWrtShell*         m_pWrtShell;
47*cdf0e10cSrcweir     sal_uInt16              m_nPageId;
48*cdf0e10cSrcweir     sal_uInt16              m_nTypeSel;
49*cdf0e10cSrcweir     sal_uInt16              m_nSelectionSel;
50*cdf0e10cSrcweir     sal_Bool                m_bFldEdit;
51*cdf0e10cSrcweir     sal_Bool                m_bInsert;
52*cdf0e10cSrcweir     sal_Bool                m_bFldDlgHtmlMode;
53*cdf0e10cSrcweir     sal_Bool                m_bRefresh;
54*cdf0e10cSrcweir     sal_Bool                m_bFirstHTMLInit;
55*cdf0e10cSrcweir 
56*cdf0e10cSrcweir protected:
57*cdf0e10cSrcweir 
58*cdf0e10cSrcweir     sal_uInt16              GetTypeSel() const          { return m_nTypeSel;}
59*cdf0e10cSrcweir     void                SetTypeSel(sal_uInt16 nSet)     { m_nTypeSel = nSet;}
60*cdf0e10cSrcweir     sal_uInt16              GetSelectionSel() const     { return m_nSelectionSel;}
61*cdf0e10cSrcweir     void                SetSelectionSel(sal_uInt16 nSet){ m_nSelectionSel = nSet;}
62*cdf0e10cSrcweir     sal_Bool                IsFldDlgHtmlMode() const    { return m_bFldDlgHtmlMode;}
63*cdf0e10cSrcweir     sal_Bool                IsRefresh() const           { return m_bRefresh;}
64*cdf0e10cSrcweir     SwField*            GetCurField()               { return m_pCurFld;}
65*cdf0e10cSrcweir     SwWrtShell*         GetWrtShell() { return m_pWrtShell;}
66*cdf0e10cSrcweir 
67*cdf0e10cSrcweir 	DECL_LINK( InsertHdl, Button *pBtn = 0 );
68*cdf0e10cSrcweir 	DECL_LINK( NumFormatHdl, ListBox *pBtn = 0 );
69*cdf0e10cSrcweir 
70*cdf0e10cSrcweir 	void				Init();
71*cdf0e10cSrcweir 	void				SavePos( const ListBox* pLst1,
72*cdf0e10cSrcweir 								 const ListBox* pLst2 = 0,
73*cdf0e10cSrcweir 								 const ListBox* pLst3 = 0);
74*cdf0e10cSrcweir 	void				RestorePos( ListBox* pLst1, ListBox* pLst2 = 0,
75*cdf0e10cSrcweir 									ListBox* pLst3 = 0 );
76*cdf0e10cSrcweir 	void				EnableInsert(sal_Bool bEnable = sal_True);
77*cdf0e10cSrcweir     inline sal_Bool         IsFldEdit() const   { return m_bFldEdit; }
78*cdf0e10cSrcweir 
79*cdf0e10cSrcweir 	// Feld einfuegen
80*cdf0e10cSrcweir 	sal_Bool 				InsertFld( 	sal_uInt16 nTypeId,
81*cdf0e10cSrcweir 									sal_uInt16 nSubType,
82*cdf0e10cSrcweir 									const String& rPar1,
83*cdf0e10cSrcweir 									const String& rPar2,
84*cdf0e10cSrcweir 									sal_uLong nFormatId,
85*cdf0e10cSrcweir                                     sal_Unicode cDelim = ' ',
86*cdf0e10cSrcweir                                     sal_Bool bIsAutomaticLanguage = sal_True);
87*cdf0e10cSrcweir 
88*cdf0e10cSrcweir     using SfxTabPage::ActivatePage;
89*cdf0e10cSrcweir 
90*cdf0e10cSrcweir public:
91*cdf0e10cSrcweir 						SwFldPage(	Window *pParent,
92*cdf0e10cSrcweir 									const ResId &rId,
93*cdf0e10cSrcweir 									const SfxItemSet &rAttrSet );
94*cdf0e10cSrcweir 
95*cdf0e10cSrcweir 						virtual ~SwFldPage();
96*cdf0e10cSrcweir 
97*cdf0e10cSrcweir 	virtual void		ActivatePage();
98*cdf0e10cSrcweir 
99*cdf0e10cSrcweir     inline SwFldMgr&    GetFldMgr()         { return m_aMgr; }
100*cdf0e10cSrcweir     void                SetWrtShell( SwWrtShell* m_pWrtShell );
101*cdf0e10cSrcweir 	void				EditNewField( sal_Bool bOnlyActivate = sal_False );
102*cdf0e10cSrcweir 	virtual sal_uInt16		GetGroup() = 0;
103*cdf0e10cSrcweir };
104*cdf0e10cSrcweir 
105*cdf0e10cSrcweir 
106*cdf0e10cSrcweir #endif
107*cdf0e10cSrcweir 
108