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_REFFACT_HXX
21 #define INCLUDED_SC_SOURCE_UI_INC_REFFACT_HXX
23 #include <sfx2/childwin.hxx>
24 #include "ChildWindowWrapper.hxx"
30 #define DECL_WRAPPER_WITHID(Class) \
31 class Class : public SfxChildWindow \
34 Class( vcl::Window*, sal_uInt16, SfxBindings*, SfxChildWinInfo* ); \
35 SFX_DECL_CHILDWINDOW_WITHID(Class); \
38 DECL_WRAPPER_WITHID(ScNameDlgWrapper
)
39 DECL_WRAPPER_WITHID(ScNameDefDlgWrapper
)
40 DECL_WRAPPER_WITHID(ScSolverDlgWrapper
)
41 DECL_WRAPPER_WITHID(ScOptSolverDlgWrapper
)
42 DECL_WRAPPER_WITHID(ScXMLSourceDlgWrapper
)
43 DECL_WRAPPER_WITHID(ScPivotLayoutWrapper
)
44 DECL_WRAPPER_WITHID(ScTabOpDlgWrapper
)
45 DECL_WRAPPER_WITHID(ScFilterDlgWrapper
)
46 DECL_WRAPPER_WITHID(ScSpecialFilterDlgWrapper
)
47 DECL_WRAPPER_WITHID(ScDbNameDlgWrapper
)
48 DECL_WRAPPER_WITHID(ScConsolidateDlgWrapper
)
49 DECL_WRAPPER_WITHID(ScPrintAreasDlgWrapper
)
50 DECL_WRAPPER_WITHID(ScColRowNameRangesDlgWrapper
)
51 DECL_WRAPPER_WITHID(ScFormulaDlgWrapper
)
52 DECL_WRAPPER_WITHID(ScHighlightChgDlgWrapper
)
53 DECL_WRAPPER_WITHID(ScCondFormatDlgWrapper
)
55 class ScDescriptiveStatisticsDialogWrapper
:
56 public ChildWindowWrapper
<SID_DESCRIPTIVE_STATISTICS_DIALOG
>
59 ScDescriptiveStatisticsDialogWrapper() = delete;
62 class ScSamplingDialogWrapper
:
63 public ChildWindowWrapper
<SID_SAMPLING_DIALOG
>
66 ScSamplingDialogWrapper() = delete;
69 class ScRandomNumberGeneratorDialogWrapper
:
70 public ChildWindowWrapper
<SID_RANDOM_NUMBER_GENERATOR_DIALOG
>
73 ScRandomNumberGeneratorDialogWrapper() = delete;
76 class ScAnalysisOfVarianceDialogWrapper
:
77 public ChildWindowWrapper
<SID_ANALYSIS_OF_VARIANCE_DIALOG
>
80 ScAnalysisOfVarianceDialogWrapper() = delete;
83 class ScCorrelationDialogWrapper
:
84 public ChildWindowWrapper
<SID_CORRELATION_DIALOG
>
87 ScCorrelationDialogWrapper() = delete;
90 class ScCovarianceDialogWrapper
:
91 public ChildWindowWrapper
<SID_COVARIANCE_DIALOG
>
94 ScCovarianceDialogWrapper() = delete;
97 class ScExponentialSmoothingDialogWrapper
:
98 public ChildWindowWrapper
<SID_EXPONENTIAL_SMOOTHING_DIALOG
>
101 ScExponentialSmoothingDialogWrapper() = delete;
104 class ScMovingAverageDialogWrapper
:
105 public ChildWindowWrapper
<SID_MOVING_AVERAGE_DIALOG
>
108 ScMovingAverageDialogWrapper() = delete;
111 class ScRegressionDialogWrapper
:
112 public ChildWindowWrapper
<SID_REGRESSION_DIALOG
>
115 ScRegressionDialogWrapper() = delete;
118 class ScTTestDialogWrapper
:
119 public ChildWindowWrapper
<SID_TTEST_DIALOG
>
122 ScTTestDialogWrapper() = delete;
125 class ScFTestDialogWrapper
:
126 public ChildWindowWrapper
<SID_FTEST_DIALOG
>
129 ScFTestDialogWrapper() = delete;
132 class ScZTestDialogWrapper
:
133 public ChildWindowWrapper
<SID_ZTEST_DIALOG
>
136 ScZTestDialogWrapper() = delete;
139 class ScChiSquareTestDialogWrapper
:
140 public ChildWindowWrapper
<SID_CHI_SQUARE_TEST_DIALOG
>
143 ScChiSquareTestDialogWrapper() = delete;
146 class ScAcceptChgDlgWrapper
: public SfxChildWindow
149 ScAcceptChgDlgWrapper( vcl::Window
*,
154 SFX_DECL_CHILDWINDOW_WITHID(Class
);
159 class ScSimpleRefDlgWrapper
: public SfxChildWindow
162 ScSimpleRefDlgWrapper( vcl::Window
*,
167 SFX_DECL_CHILDWINDOW_WITHID(Class
);
169 static void SetDefaultPosSize(Point aPos
, Size aSize
);
170 void SetRefString(const OUString
& rStr
);
171 void SetCloseHdl( const Link
<const OUString
*,void>& rLink
);
172 void SetUnoLinks( const Link
<const OUString
&,void>& rDone
, const Link
<const OUString
&,void>& rAbort
,
173 const Link
<const OUString
&,void>& rChange
);
174 void SetFlags( bool bCloseOnButtonUp
, bool bSingleCell
, bool bMultiSelection
);
175 static void SetAutoReOpen(bool bFlag
);
177 void StartRefInput();
180 class SC_DLLPUBLIC ScValidityRefChildWin
: public SfxChildWindow
182 bool m_bVisibleLock
:1;
183 bool m_bFreeWindowLock
:1;
184 VclPtr
<vcl::Window
> m_pSavedWndParent
;
186 ScValidityRefChildWin( vcl::Window
*, sal_uInt16
, SfxBindings
*, SfxChildWinInfo
* );
187 SFX_DECL_CHILDWINDOW_WITHID(ScValidityRefChildWin
);
188 virtual ~ScValidityRefChildWin();
189 bool LockVisible( bool bLock
){ bool bVis
= m_bVisibleLock
; m_bVisibleLock
= bLock
; return bVis
; }
190 bool LockFreeWindow( bool bLock
){ bool bFreeWindow
= m_bFreeWindowLock
; m_bFreeWindowLock
= bLock
; return bFreeWindow
; }
191 void Hide() override
{ if( !m_bVisibleLock
) SfxChildWindow::Hide(); }
192 void Show( ShowFlags nFlags
) override
{ if( !m_bVisibleLock
) SfxChildWindow::Show( nFlags
); }
195 #endif // INCLUDED_SC_SOURCE_UI_INC_REFFACT_HXX
197 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */