1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_SC_SOURCE_UI_INC_SCUITPHFEDIT_HXX
21 #define INCLUDED_SC_SOURCE_UI_INC_SCUITPHFEDIT_HXX
23 #include "tphfedit.hxx"
36 ePageExtFileNameEntry
,
45 class ScHFEditPage
: public SfxTabPage
48 virtual bool FillItemSet ( SfxItemSet
* rCoreSet
) SAL_OVERRIDE
;
49 virtual void Reset ( const SfxItemSet
* rCoreSet
) SAL_OVERRIDE
;
51 void SetNumType(SvxNumType eNumType
);
52 void ClearTextAreas();
55 ScHFEditPage( vcl::Window
* pParent
,
56 const SfxItemSet
& rCoreSet
,
59 virtual ~ScHFEditPage();
60 virtual void dispose() SAL_OVERRIDE
;
63 VclPtr
<ScEditWindow
> m_pWndLeft
;
64 VclPtr
<ScEditWindow
> m_pWndCenter
;
65 VclPtr
<ScEditWindow
> m_pWndRight
;
66 VclPtr
<FixedText
> m_pFtDefinedHF
;
67 VclPtr
<ListBox
> m_pLbDefined
;
68 VclPtr
<FixedText
> m_pFtCustomHF
;
69 VclPtr
<PushButton
> m_pBtnText
;
70 VclPtr
<ScExtIButton
> m_pBtnFile
;
71 VclPtr
<PushButton
> m_pBtnTable
;
72 VclPtr
<PushButton
> m_pBtnPage
;
73 VclPtr
<PushButton
> m_pBtnLastPage
;
74 VclPtr
<PushButton
> m_pBtnDate
;
75 VclPtr
<PushButton
> m_pBtnTime
;
77 VclPtr
<FixedText
> m_pFtConfidential
;
78 VclPtr
<FixedText
> m_pFtPage
;
79 VclPtr
<FixedText
> m_pFtOfQuestion
;
80 VclPtr
<FixedText
> m_pFtOf
;
81 VclPtr
<FixedText
> m_pFtNone
;
82 VclPtr
<FixedText
> m_pFtCreatedBy
;
83 VclPtr
<FixedText
> m_pFtCustomized
;
88 DECL_LINK( ObjectSelectHdl
, ScEditWindow
* );
92 void InitPreDefinedList();
93 void ProcessDefinedListSel(ScHFEntryId eSel
, bool bTravelling
= false);
94 void InsertToDefinedList();
95 void RemoveFromDefinedList();
96 void SetSelectDefinedList();
97 bool IsPageEntry(EditEngine
*pEngine
, EditTextObject
* pTextObj
);
98 static bool IsDateEntry(EditTextObject
* pTextObj
);
99 static bool IsExtFileNameEntry(EditTextObject
* pTextObj
);
100 DECL_LINK( ListHdl_Impl
, ListBox
* );
101 DECL_LINK( ClickHdl
, PushButton
* );
102 DECL_STATIC_LINK( ScHFEditPage
, MenuHdl
, ScExtIButton
* );
105 class ScRightHeaderEditPage
: public ScHFEditPage
107 friend class VclPtr
<ScRightHeaderEditPage
>;
109 static VclPtr
<SfxTabPage
> Create( vcl::Window
* pParent
, const SfxItemSet
* rCoreSet
);
112 ScRightHeaderEditPage( vcl::Window
* pParent
, const SfxItemSet
& rSet
);
115 class ScLeftHeaderEditPage
: public ScHFEditPage
117 friend class VclPtr
<ScLeftHeaderEditPage
>;
119 static VclPtr
<SfxTabPage
> Create( vcl::Window
* pParent
, const SfxItemSet
* rCoreSet
);
122 ScLeftHeaderEditPage( vcl::Window
* pParent
, const SfxItemSet
& rSet
);
125 class ScRightFooterEditPage
: public ScHFEditPage
127 friend class VclPtr
<ScRightFooterEditPage
>;
129 static VclPtr
<SfxTabPage
> Create( vcl::Window
* pParent
, const SfxItemSet
* rCoreSet
);
132 ScRightFooterEditPage( vcl::Window
* pParent
, const SfxItemSet
& rSet
);
135 class ScLeftFooterEditPage
: public ScHFEditPage
137 friend class VclPtr
<ScLeftFooterEditPage
>;
139 static VclPtr
<SfxTabPage
> Create( vcl::Window
* pParent
, const SfxItemSet
* rCoreSet
);
142 ScLeftFooterEditPage( vcl::Window
* pParent
, const SfxItemSet
& rSet
);
147 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */