fdo#74697 Add Bluez 5 support for impress remote.
[LibreOffice.git] / include / svtools / PlaceEditDialog.hxx
blob87d940e364532f009812599b676d8fb2b2bfb20c
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 _PLACEEDITDIALOG_HXX
11 #define _PLACEEDITDIALOG_HXX
13 #include "ServerDetailsControls.hxx"
15 #include <vcl/button.hxx>
16 #include <vcl/dialog.hxx>
17 #include <vcl/edit.hxx>
18 #include <vcl/fixed.hxx>
19 #include <vcl/lstbox.hxx>
21 #include <svtools/inettbc.hxx>
22 #include <svtools/place.hxx>
24 #include <boost/shared_ptr.hpp>
25 #include <vector>
27 class SVT_DLLPUBLIC PlaceEditDialog : public ModalDialog
29 private :
31 Edit* m_pEDServerName;
32 ListBox* m_pLBServerType;
33 boost::shared_ptr< DetailsContainer > m_pCurrentDetails;
35 Edit* m_pEDUsername;
36 OKButton* m_pBTOk;
37 CancelButton* m_pBTCancel;
39 PushButton* m_pBTDelete;
41 /** Vector holding the details UI control for each server type.
43 The elements in this vector need to match the order in the type listbox, e.g.
44 the m_aDetailsContainer[0] will be shown for the type corresponding to entry 0
45 in the listbox.
47 std::vector< boost::shared_ptr< DetailsContainer > > m_aDetailsContainers;
49 public :
51 PlaceEditDialog( Window* pParent);
52 PlaceEditDialog(Window* pParent, const boost::shared_ptr<Place> &pPlace );
53 ~PlaceEditDialog();
55 // Returns a place instance with given information
56 boost::shared_ptr<Place> GetPlace();
58 OUString GetServerName() { return m_pEDServerName->GetText(); }
59 OUString GetServerUrl();
61 private:
63 void InitDetails( );
65 DECL_LINK ( OKHdl, Button * );
66 DECL_LINK ( DelHdl, Button * );
67 DECL_LINK ( EditHdl, void * );
68 DECL_LINK ( SelectTypeHdl, void * );
69 DECL_LINK ( EditUsernameHdl, void * );
73 #endif //_PLACEEDITDIALOG_HXX
74 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */