fw4spl
ISelectorDialog.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2018.
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 #pragma once
8 
9 #include "fwGui/config.hpp"
10 #include "fwGui/container/fwContainer.hpp"
11 #include "fwGui/GuiBaseObject.hpp"
12 
13 #include <vector>
14 
15 namespace fwGui
16 {
17 namespace dialog
18 {
19 //------------------------------------------------------------------------------
20 
24 class FWGUI_CLASS_API ISelectorDialog : public ::fwGui::GuiBaseObject
25 {
26 
27 public:
28 
30 
31  typedef std::string FactoryRegistryKeyType;
32 
34  FWGUI_API static const FactoryRegistryKeyType REGISTRY_KEY;
35 
39  FWGUI_API ISelectorDialog();
40 
42  FWGUI_API virtual ~ISelectorDialog();
43 
47  FWGUI_API virtual void setSelections(std::vector< std::string > _selections) = 0;
48 
52  FWGUI_API virtual void setTitle(std::string _title) = 0;
53 
57  FWGUI_API virtual std::string show() = 0;
58 
60  FWGUI_API virtual void setMessage(const std::string& msg) = 0;
61 
63  FWGUI_API virtual void addCustomButton(const std::string& label, std::function<void()> clickedFn) = 0;
64 };
65 
66 } //namespace dialog
67 } //namespace fwGui
#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.
ISelectorDialog allows the choice of an element among several (_selections)
Base class for all fwGui&#39;s classes.