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 .
19 #ifndef INCLUDED_CUI_SOURCE_INC_TEXTANIM_HXX
20 #define INCLUDED_CUI_SOURCE_INC_TEXTANIM_HXX
22 #include <vcl/field.hxx>
23 #include <sfx2/tabdlg.hxx>
24 #include <svx/svdattr.hxx>
25 #include <vcl/fixed.hxx>
26 #include <vcl/lstbox.hxx>
27 #include <vcl/group.hxx>
31 /*************************************************************************
33 |* Page for changing TextAnimations (running text etc.)
35 \************************************************************************/
37 class SvxTextAnimationPage
: public SfxTabPage
40 static const sal_uInt16 pRanges
[];
42 VclPtr
<ListBox
> m_pLbEffect
;
43 VclPtr
<VclBox
> m_pBoxDirection
;
44 VclPtr
<PushButton
> m_pBtnUp
;
45 VclPtr
<PushButton
> m_pBtnLeft
;
46 VclPtr
<PushButton
> m_pBtnRight
;
47 VclPtr
<PushButton
> m_pBtnDown
;
49 VclPtr
<VclFrame
> m_pFlProperties
;
50 VclPtr
<TriStateBox
> m_pTsbStartInside
;
51 VclPtr
<TriStateBox
> m_pTsbStopInside
;
53 VclPtr
<VclBox
> m_pBoxCount
;
54 VclPtr
<TriStateBox
> m_pTsbEndless
;
55 VclPtr
<NumericField
> m_pNumFldCount
;
57 VclPtr
<TriStateBox
> m_pTsbPixel
;
58 VclPtr
<MetricField
> m_pMtrFldAmount
;
60 VclPtr
<TriStateBox
> m_pTsbAuto
;
61 VclPtr
<MetricField
> m_pMtrFldDelay
;
63 const SfxItemSet
& rOutAttrs
;
64 SdrTextAniKind eAniKind
;
68 DECL_LINK( SelectEffectHdl_Impl
, void * );
69 DECL_LINK( ClickEndlessHdl_Impl
, void * );
70 DECL_LINK( ClickAutoHdl_Impl
, void * );
71 DECL_LINK( ClickPixelHdl_Impl
, void * );
72 DECL_LINK( ClickDirectionHdl_Impl
, ImageButton
* );
74 void SelectDirection( SdrTextAniDirection nValue
);
75 sal_uInt16
GetSelectedDirection();
78 SvxTextAnimationPage( vcl::Window
* pWindow
, const SfxItemSet
& rInAttrs
);
79 virtual ~SvxTextAnimationPage();
80 virtual void dispose() SAL_OVERRIDE
;
82 static VclPtr
<SfxTabPage
> Create( vcl::Window
*, const SfxItemSet
* );
83 static const sal_uInt16
* GetRanges() { return pRanges
; }
85 virtual bool FillItemSet( SfxItemSet
* ) SAL_OVERRIDE
;
86 virtual void Reset( const SfxItemSet
* ) SAL_OVERRIDE
;
91 /*************************************************************************
95 \************************************************************************/
96 class SvxTextTabDialog
: public SfxTabDialog
99 sal_uInt16 m_nTextAnimId
;
101 const SdrView
* pView
;
103 virtual void PageCreated( sal_uInt16 nId
, SfxTabPage
&rPage
) SAL_OVERRIDE
;
107 SvxTextTabDialog( vcl::Window
* pParent
, const SfxItemSet
* pAttr
,
108 const SdrView
* pView
);
112 #endif // INCLUDED_CUI_SOURCE_INC_TEXTANIM_HXX
114 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */