1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ 2 /* 3 * This file is part of the LibreOffice project. 4 * 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 */ 9 10 #pragma once 11 12 #include <vcl/weld.hxx> 13 14 class CertPathDialog : public weld::GenericDialogController 15 { 16 std::unique_ptr<weld::Button> m_xManualButton; 17 std::unique_ptr<weld::Button> m_xOKButton; 18 std::unique_ptr<weld::TreeView> m_xCertPathList; 19 OUString m_sAddDialogText; 20 OUString m_sManualLabel; 21 OUString m_sManualPath; 22 23 DECL_LINK(CheckHdl_Impl, const weld::TreeView::iter_col&, void); 24 DECL_LINK(ManualHdl_Impl, weld::Button&, void); 25 DECL_LINK(OKHdl_Impl, weld::Button&, void); 26 27 void HandleEntryChecked(int nRow); 28 void AddCertPath(const OUString& rProfile, const OUString& rPath, bool bSelect = true); 29 void AddManualCertPath(const OUString& sUserSetCertPath, bool bSelect = true); 30 31 public: 32 explicit CertPathDialog(weld::Window* pParent); 33 virtual ~CertPathDialog() override; 34 35 void Init(); 36 37 // returns true, if the service currently uses the selected path or is not initialized 38 // yet and therefore has no active NSS path. 39 bool isActiveServicePath() const; 40 }; 41 42 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ 43