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/.
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>
27 class SVT_DLLPUBLIC PlaceEditDialog
: public ModalDialog
31 Edit
* m_pEDServerName
;
32 ListBox
* m_pLBServerType
;
33 boost::shared_ptr
< DetailsContainer
> m_pCurrentDetails
;
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
47 std::vector
< boost::shared_ptr
< DetailsContainer
> > m_aDetailsContainers
;
51 PlaceEditDialog( Window
* pParent
);
52 PlaceEditDialog(Window
* pParent
, const boost::shared_ptr
<Place
> &pPlace
);
55 // Returns a place instance with given information
56 boost::shared_ptr
<Place
> GetPlace();
58 OUString
GetServerName() { return m_pEDServerName
->GetText(); }
59 OUString
GetServerUrl();
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: */