fw4spl
IMultiSelectorDialog.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2015.
3  * Distributed under the terms of the GNU Lesser General Public License (LGPL) as
4  * published by the Free Software Foundation.
5  * ****** END LICENSE BLOCK ****** */
6 
7 #ifndef __FWGUI_DIALOG_IMULTISELECTORDIALOG_HPP__
8 #define __FWGUI_DIALOG_IMULTISELECTORDIALOG_HPP__
9 
10 #include <map>
11 #include <vector>
12 
13 #include "fwGui/GuiBaseObject.hpp"
14 #include "fwGui/container/fwContainer.hpp"
15 #include "fwGui/config.hpp"
16 
17 namespace fwGui
18 {
19 namespace dialog
20 {
21 //------------------------------------------------------------------------------
22 
29 class FWGUI_CLASS_API IMultiSelectorDialog : public ::fwGui::GuiBaseObject
30 {
31 
32 public:
33 
35 
36  typedef std::map< std::string, bool > Selections;
37  typedef std::string FactoryRegistryKeyType;
38 
40  FWGUI_API static const FactoryRegistryKeyType REGISTRY_KEY;
41 
45  FWGUI_API IMultiSelectorDialog();
46 
48  FWGUI_API virtual ~IMultiSelectorDialog();
49 
53  FWGUI_API virtual void setSelections(Selections _selections) = 0;
54 
58  FWGUI_API virtual void setTitle(std::string _title) = 0;
59 
63  FWGUI_API virtual Selections show() = 0;
64 
66  FWGUI_API virtual void setMessage(const std::string &msg) = 0;
67 };
68 
69 } //namespace dialog
70 } //namespace fwGui
71 
72 #endif /*__FWGUI_DIALOG_IMULTISELECTORDIALOG_HPP__*/
#define fwCoreNonInstanciableClassDefinitionsMacro(_classinfo_)
Generate common code for Non Instanciable classes (Interfaces, Abstract classes, ...)
The namespace fwGui contains the base interface for IHM services.
Definition: SJobBar.hpp:23
STL namespace.
IMultiSelectorDialog allows the choice of some elements among several (_selections) ...
Base class for all fwGui&#39;s classes.