fix baseline build (old cairo) - 'cairo_rectangle_int_t' does not name a type
[LibreOffice.git] / sc / source / ui / optdlg / calcoptionsdlg.hxx
bloba2af6c723c79c8c24cfdf96e9c55c93b88bce11e
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
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/.
8 */
10 #ifndef INCLUDED_SC_SOURCE_UI_OPTDLG_CALCOPTIONSDLG_HXX
11 #define INCLUDED_SC_SOURCE_UI_OPTDLG_CALCOPTIONSDLG_HXX
13 #include <config_features.h>
15 #include <vcl/dialog.hxx>
16 #include <vcl/button.hxx>
17 #include <vcl/edit.hxx>
18 #include <vcl/field.hxx>
19 #include <vcl/fixed.hxx>
20 #include <vcl/layout.hxx>
21 #include <vcl/lstbox.hxx>
23 #include <svx/checklbx.hxx>
25 #include <svtools/treelistbox.hxx>
27 #include "calcconfig.hxx"
29 #if HAVE_FEATURE_OPENCL
30 #include <opencl/openclconfig.hxx>
31 #include <opencl/platforminfo.hxx>
32 #endif
34 class ScCalcOptionsDialog : public ModalDialog
36 public:
37 ScCalcOptionsDialog(vcl::Window* pParent, const ScCalcConfig& rConfig);
38 virtual ~ScCalcOptionsDialog();
39 virtual void dispose() SAL_OVERRIDE;
41 DECL_LINK( BtnAutomaticSelectHdl, void* );
42 DECL_LINK( DeviceSelHdl, void* );
43 DECL_LINK( NumModifiedHdl, void * );
44 DECL_LINK( EditModifiedHdl, Edit * );
45 DECL_STATIC_LINK( ScCalcOptionsDialog, TestClickHdl, PushButton* );
46 DECL_LINK( AsZeroModifiedHdl, CheckBox*);
47 DECL_LINK( ConversionModifiedHdl, ListBox*);
48 DECL_LINK( SyntaxModifiedHdl, ListBox*);
49 DECL_LINK( CBUseOpenCLHdl, CheckBox*);
50 DECL_LINK( SpinOpenCLMinSizeHdl, NumericField*);
52 const ScCalcConfig& GetConfig() const { return maConfig;}
54 private:
55 void OpenCLAutomaticSelectionChanged();
56 void SelectedDeviceChanged();
57 void CoupleEmptyAsZeroToStringConversion();
59 SvTreeListEntry *createItem(const OUString &rCaption, const OUString& sValue) const;
60 void setValueAt(size_t nPos, const OUString &rString);
61 #if HAVE_FEATURE_OPENCL
62 OpenCLConfig::ImplMatcherSet& CurrentWhiteOrBlackList();
63 const OpenCLConfig::ImplMatcher& CurrentWhiteOrBlackListEntry();
64 #endif
66 private:
67 VclPtr<CheckBox> mpEmptyAsZero;
68 VclPtr<ListBox> mpConversion;
69 VclPtr<ListBox> mpSyntax;
71 VclPtr<CheckBox> mpUseOpenCL;
72 VclPtr<NumericField> mpSpinButton;
73 VclPtr<VclMultiLineEdit> mpEditField;
74 VclPtr<PushButton> mpTestButton;
76 VclPtr<FixedText> mpFtFrequency;
77 VclPtr<FixedText> mpFtComputeUnits;
78 VclPtr<FixedText> mpFtMemory;
80 VclPtr<SvTreeListBox> mpOpenclInfoList;
81 VclPtr<RadioButton> mpBtnAutomaticSelectionTrue;
82 VclPtr<RadioButton> mpBtnAutomaticSelectionFalse;
84 OUString maSoftware;
86 ScCalcConfig maConfig;
87 #if HAVE_FEATURE_OPENCL
88 std::vector<OpenCLPlatformInfo> maPlatformInfo;
89 #endif
91 bool mbSelectedEmptyStringAsZero;
94 #endif
96 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */