Renamed TouchSignal to TouchedSignal
[platform/core/uifw/dali-core.git] / dali / public-api / signals / dali-signal.h
index 03a8354..4812ca9 100644 (file)
@@ -1,8 +1,8 @@
-#ifndef __DALI_SIGNAL_H__
-#define __DALI_SIGNAL_H__
+#ifndef DALI_SIGNAL_H
+#define DALI_SIGNAL_H
 
 /*
- * Copyright (c) 2015 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -19,7 +19,8 @@
  */
 
 /**
- * The class should implement Dali::ConnectionTrackerInterface, or inherit from Dali::ConnectionTracker.
+ * @brief The class should implement Dali::ConnectionTrackerInterface, or inherit from Dali::ConnectionTracker.
+ *
  * This enforces automatic disconnection when an object is destroyed, so you don't have
  * to manually disconnect from signals.
  *
@@ -48,6 +49,7 @@
  *   }
  * }
  * @endcode
+ * @SINCE_1_0.0
  */
 
 // INTERNAL INCLUDES
 
 namespace Dali
 {
+/**
+ * @addtogroup dali_core_signals
+ * @{
+ */
 
 /**
  * @brief Base Template class to provide signals.
@@ -124,6 +130,7 @@ namespace Dali
  *   ...
  * };
  * @endcode
+ * @SINCE_1_0.0
  */
 template< typename _Signature >
 class Signal
@@ -132,6 +139,7 @@ class Signal
 
 /**
  * @brief A template for Signals with no parameters or return value.
+ * @SINCE_1_0.0
  */
 template <>
 class Signal< void () >
@@ -140,6 +148,7 @@ public:
 
   /**
    * @brief Default constructor.
+   * @SINCE_1_0.0
    */
   Signal()
   {
@@ -147,15 +156,17 @@ public:
 
   /**
    * @brief Non-virtual destructor.
+   * @SINCE_1_0.0
    */
   ~Signal()
   {
   }
 
   /**
-   * @brief Query whether there are any connected slots.
+   * @brief Queries whether there are any connected slots.
    *
-   * @return True if there are any slots connected to the signal.
+   * @SINCE_1_0.0
+   * @return True if there are any slots connected to the signal
    */
   bool Empty() const
   {
@@ -163,9 +174,10 @@ public:
   }
 
   /**
-   * @brief Query the number of slots.
+   * @brief Queries the number of slots.
    *
-   * @return The number of slots connected to this signal.
+   * @SINCE_1_0.0
+   * @return The number of slots connected to this signal
    */
   std::size_t GetConnectionCount() const
   {
@@ -173,9 +185,10 @@ public:
   }
 
   /**
-   * @brief Connect a function.
+   * @brief Connects a function.
    *
-   * @param[in] func The function to connect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to connect
    */
   void Connect( void (*func)() )
   {
@@ -183,9 +196,10 @@ public:
   }
 
   /**
-   * @brief Disconnect a function.
+   * @brief Disconnects a function.
    *
-   * @param[in] func The function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to disconnect
    */
   void Disconnect( void (*func)() )
   {
@@ -193,10 +207,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( X* obj, void (X::*func)() )
@@ -205,10 +220,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( X* obj, void (X::*func)() )
@@ -217,10 +233,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( SlotDelegate<X>& delegate, void (X::*func)() )
@@ -229,10 +246,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( SlotDelegate<X>& delegate, void (X::*func)() )
@@ -241,10 +259,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object.
+   * @brief Connects a function object.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] func The function object to copy.
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] func The function object to copy
    */
   template<class X>
   void Connect( ConnectionTrackerInterface* connectionTracker, const X& func )
@@ -253,10 +272,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object using FunctorDelegate.
+   * @brief Connects a function object using FunctorDelegate.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken).
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken)
    */
   void Connect( ConnectionTrackerInterface* connectionTracker, FunctorDelegate* delegate )
   {
@@ -264,7 +284,8 @@ public:
   }
 
   /**
-   * @brief Emit the signal.
+   * @brief Emits the signal.
+   * @SINCE_1_0.0
    */
   void Emit()
   {
@@ -273,8 +294,10 @@ public:
 
 private:
 
-  Signal( const Signal& );                   ///< undefined copy constructor, signals don't support copying.
-  Signal& operator=( const Signal& );        ///< undefined assignment operator
+  Signal( const Signal& ) = delete; ///< Deleted copy constructor, signals don't support copying. @SINCE_1_0.0
+  Signal( Signal&& ) = delete; ///< Deleted move constructor, signals don't support moving. @SINCE_1_9.25
+  Signal& operator=( const Signal& ) = delete; ///< Deleted copy assignment operator @SINCE_1_0.0
+  Signal& operator=( Signal&& ) = delete; ///< Deleted move assignment operator @SINCE_1_9.25
 
 private:
 
@@ -284,6 +307,7 @@ private:
 
 /**
  * @brief A template for Signals with no parameters and a return value.
+ * @SINCE_1_0.0
  */
 template < typename Ret >
 class Signal< Ret() >
@@ -292,6 +316,7 @@ public:
 
   /**
    * @brief Default constructor.
+   * @SINCE_1_0.0
    */
   Signal()
   {
@@ -299,15 +324,17 @@ public:
 
   /**
    * @brief Non-virtual destructor.
+   * @SINCE_1_0.0
    */
   ~Signal()
   {
   }
 
   /**
-   * @brief Query whether there are any connected slots.
+   * @brief Queries whether there are any connected slots.
    *
-   * @return True if there are any slots connected to the signal.
+   * @SINCE_1_0.0
+   * @return True if there are any slots connected to the signal
    */
   bool Empty() const
   {
@@ -315,18 +342,20 @@ public:
   }
 
   /**
-   * @brief Query the number of slots.
+   * @brief Queries the number of slots.
    *
-   * @return The number of slots connected to this signal.
+   * @SINCE_1_0.0
+   * @return The number of slots connected to this signal
    */
   std::size_t GetConnectionCount() const
   {
     return mImpl.GetConnectionCount();
   }
   /**
-   * @brief Connect a function.
+   * @brief Connects a function.
    *
-   * @param[in] func The function to connect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to connect
    */
   void Connect( Ret (*func)() )
   {
@@ -334,9 +363,10 @@ public:
   }
 
   /**
-   * @brief Disconnect a function.
+   * @brief Disconnects a function.
    *
-   * @param[in] func The function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to disconnect
    */
   void Disconnect( Ret (*func)() )
   {
@@ -344,10 +374,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( X* obj, Ret (X::*func)() )
@@ -356,10 +387,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( X* obj, Ret (X::*func)() )
@@ -368,10 +400,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( SlotDelegate<X>& delegate, Ret (X::*func)() )
@@ -380,10 +413,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( SlotDelegate<X>& delegate, Ret (X::*func)() )
@@ -392,10 +426,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object.
+   * @brief Connects a function object.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] func The function object to copy.
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] func The function object to copy
    */
   template<class X>
   void Connect( ConnectionTrackerInterface* connectionTracker, const X& func )
@@ -404,10 +439,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object using FunctorDelegate.
+   * @brief Connects a function object using FunctorDelegate.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken).
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken)
    */
   void Connect( ConnectionTrackerInterface* connectionTracker, FunctorDelegate* delegate )
   {
@@ -415,9 +451,10 @@ public:
   }
 
   /**
-   * @brief Emit the signal.
+   * @brief Emits the signal.
    *
-   * @return The value returned by the last callback, or a default constructed value if no callbacks are connected.
+   * @SINCE_1_0.0
+   * @return The value returned by the last callback, or a default constructed value if no callbacks are connected
    */
   Ret Emit()
   {
@@ -426,8 +463,10 @@ public:
 
 private:
 
-  Signal( const Signal& );                   ///< undefined copy constructor, signals don't support copying.
-  Signal& operator=( const Signal& );        ///< undefined assignment operator
+  Signal( const Signal& ) = delete; ///< Deleted copy constructor, signals don't support copying. @SINCE_1_0.0
+  Signal( Signal&& ) = delete; ///< Deleted move constructor, signals don't support moving. @SINCE_1_9.25
+  Signal& operator=( const Signal& ) = delete; ///< Deleted copy assignment operator @SINCE_1_0.0
+  Signal& operator=( Signal&& ) = delete; ///< Deleted move assignment operator @SINCE_1_9.25
 
 private:
 
@@ -437,6 +476,7 @@ private:
 
 /**
  * @brief A template for Signals with 1 parameter.
+ * @SINCE_1_0.0
  */
 template < typename Arg0 >
 class Signal< void ( Arg0 ) >
@@ -445,6 +485,7 @@ public:
 
   /**
    * @brief Default constructor.
+   * @SINCE_1_0.0
    */
   Signal()
   {
@@ -452,15 +493,17 @@ public:
 
   /**
    * @brief Non-virtual destructor.
+   * @SINCE_1_0.0
    */
   ~Signal()
   {
   }
 
   /**
-   * @brief Query whether there are any connected slots.
+   * @brief Queries whether there are any connected slots.
    *
-   * @return True if there are any slots connected to the signal.
+   * @SINCE_1_0.0
+   * @return True if there are any slots connected to the signal
    */
   bool Empty() const
   {
@@ -468,18 +511,20 @@ public:
   }
 
   /**
-   * @brief Query the number of slots.
+   * @brief Queries the number of slots.
    *
-   * @return The number of slots connected to this signal.
+   * @SINCE_1_0.0
+   * @return The number of slots connected to this signal
    */
   std::size_t GetConnectionCount() const
   {
     return mImpl.GetConnectionCount();
   }
   /**
-   * @brief Connect a function.
+   * @brief Connects a function.
    *
-   * @param[in] func The function to connect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to connect
    */
   void Connect( void (*func)( Arg0 arg0 ) )
   {
@@ -487,9 +532,10 @@ public:
   }
 
   /**
-   * @brief Disconnect a function.
+   * @brief Disconnects a function.
    *
-   * @param[in] func The function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to disconnect
    */
   void Disconnect( void (*func)( Arg0 arg0 ) )
   {
@@ -497,10 +543,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( X* obj, void (X::*func)( Arg0 arg0 ) )
@@ -509,10 +556,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( X* obj, void (X::*func)( Arg0 arg0 ) )
@@ -521,10 +569,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( SlotDelegate<X>& delegate, void (X::*func)( Arg0 arg0 ) )
@@ -533,10 +582,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( SlotDelegate<X>& delegate, void (X::*func)( Arg0 arg0 ) )
@@ -545,10 +595,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object.
+   * @brief Connects a function object.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] func The function object to copy.
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] func The function object to copy
    */
   template<class X>
   void Connect( ConnectionTrackerInterface* connectionTracker, const X& func )
@@ -557,10 +608,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object using FunctorDelegate.
+   * @brief Connects a function object using FunctorDelegate.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken).
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken)
    */
   void Connect( ConnectionTrackerInterface* connectionTracker, FunctorDelegate* delegate )
   {
@@ -568,9 +620,10 @@ public:
   }
 
   /**
-   * @brief Emit the signal.
+   * @brief Emits the signal.
    *
-   * @param[in] arg0 The first value to pass to callbacks.
+   * @SINCE_1_0.0
+   * @param[in] arg0 The first value to pass to callbacks
    */
   void Emit( Arg0 arg0 )
   {
@@ -579,8 +632,10 @@ public:
 
 private:
 
-  Signal( const Signal& );                   ///< undefined copy constructor, signals don't support copying.
-  Signal& operator=( const Signal& );        ///< undefined assignment operator
+  Signal( const Signal& ) = delete; ///< Deleted copy constructor, signals don't support copying. @SINCE_1_0.0
+  Signal( Signal&& ) = delete; ///< Deleted move constructor, signals don't support moving. @SINCE_1_9.25
+  Signal& operator=( const Signal& ) = delete; ///< Deleted copy assignment operator @SINCE_1_0.0
+  Signal& operator=( Signal&& ) = delete; ///< Deleted move assignment operator @SINCE_1_9.25
 
 private:
 
@@ -590,6 +645,7 @@ private:
 
 /**
  * @brief A template for Signals with 1 parameter and a return value.
+ * @SINCE_1_0.0
  */
 template < typename Ret, typename Arg0 >
 class Signal< Ret( Arg0 ) >
@@ -598,6 +654,7 @@ public:
 
   /**
    * @brief Default constructor.
+   * @SINCE_1_0.0
    */
   Signal()
   {
@@ -605,15 +662,17 @@ public:
 
   /**
    * @brief Non-virtual destructor.
+   * @SINCE_1_0.0
    */
   ~Signal()
   {
   }
 
   /**
-   * @brief Query whether there are any connected slots.
+   * @brief Queries whether there are any connected slots.
    *
-   * @return True if there are any slots connected to the signal.
+   * @SINCE_1_0.0
+   * @return True if there are any slots connected to the signal
    */
   bool Empty() const
   {
@@ -621,18 +680,20 @@ public:
   }
 
   /**
-   * @brief Query the number of slots.
+   * @brief Queries the number of slots.
    *
-   * @return The number of slots connected to this signal.
+   * @SINCE_1_0.0
+   * @return The number of slots connected to this signal
    */
   std::size_t GetConnectionCount() const
   {
     return mImpl.GetConnectionCount();
   }
   /**
-   * @brief Connect a function.
+   * @brief Connects a function.
    *
-   * @param[in] func The function to connect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to connect
    */
   void Connect( Ret (*func)( Arg0 arg0 ) )
   {
@@ -640,9 +701,10 @@ public:
   }
 
   /**
-   * @brief Disconnect a function.
+   * @brief Disconnects a function.
    *
-   * @param[in] func The function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to disconnect
    */
   void Disconnect( Ret (*func)( Arg0 arg0 ) )
   {
@@ -650,10 +712,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( X* obj, Ret (X::*func)( Arg0 arg0 ) )
@@ -662,10 +725,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( X* obj, Ret (X::*func)( Arg0 arg0 ) )
@@ -674,10 +738,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( SlotDelegate<X>& delegate, Ret (X::*func)( Arg0 arg0 ) )
@@ -686,10 +751,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( SlotDelegate<X>& delegate, Ret (X::*func)( Arg0 arg0 ) )
@@ -698,10 +764,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object.
+   * @brief Connects a function object.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] func The function object to copy.
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] func The function object to copy
    */
   template<class X>
   void Connect( ConnectionTrackerInterface* connectionTracker, const X& func )
@@ -710,10 +777,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object using FunctorDelegate.
+   * @brief Connects a function object using FunctorDelegate.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken).
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken)
    */
   void Connect( ConnectionTrackerInterface* connectionTracker, FunctorDelegate* delegate )
   {
@@ -721,10 +789,11 @@ public:
   }
 
   /**
-   * @brief Emit the signal.
+   * @brief Emits the signal.
    *
-   * @param[in] arg0 The first value to pass to callbacks.
-   * @return The value returned by the last callback, or a default constructed value if no callbacks are connected.
+   * @SINCE_1_0.0
+   * @param[in] arg0 The first value to pass to callbacks
+   * @return The value returned by the last callback, or a default constructed value if no callbacks are connected
    */
   Ret Emit( Arg0 arg0 )
   {
@@ -733,8 +802,10 @@ public:
 
 private:
 
-  Signal( const Signal& );                   ///< undefined copy constructor, signals don't support copying.
-  Signal& operator=( const Signal& );        ///< undefined assignment operator
+  Signal( const Signal& ) = delete; ///< Deleted copy constructor, signals don't support copying. @SINCE_1_0.0
+  Signal( Signal&& ) = delete; ///< Deleted move constructor, signals don't support moving. @SINCE_1_9.25
+  Signal& operator=( const Signal& ) = delete; ///< Deleted copy assignment operator @SINCE_1_0.0
+  Signal& operator=( Signal&& ) = delete; ///< Deleted move assignment operator @SINCE_1_9.25
 
 private:
 
@@ -745,6 +816,7 @@ private:
 /**
  * @brief A template for Signals with 2 parameters.
  *
+ * @SINCE_1_0.0
  */
 template < typename Arg0, typename Arg1 >
 class Signal< void ( Arg0, Arg1 ) >
@@ -754,6 +826,7 @@ public:
   /**
    * @brief Default constructor.
    *
+   * @SINCE_1_0.0
    */
   Signal()
   {
@@ -762,15 +835,17 @@ public:
   /**
    * @brief Non-virtual destructor.
    *
+   * @SINCE_1_0.0
    */
   ~Signal()
   {
   }
 
   /**
-   * @brief Query whether there are any connected slots.
+   * @brief Queries whether there are any connected slots.
    *
-   * @return True if there are any slots connected to the signal.
+   * @SINCE_1_0.0
+   * @return True if there are any slots connected to the signal
    */
   bool Empty() const
   {
@@ -778,18 +853,20 @@ public:
   }
 
   /**
-   * @brief Query the number of slots.
+   * @brief Queries the number of slots.
    *
-   * @return The number of slots connected to this signal.
+   * @SINCE_1_0.0
+   * @return The number of slots connected to this signal
    */
   std::size_t GetConnectionCount() const
   {
     return mImpl.GetConnectionCount();
   }
   /**
-   * @brief Connect a function.
+   * @brief Connects a function.
    *
-   * @param[in] func The function to connect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to connect
    */
   void Connect( void (*func)( Arg0 arg0, Arg1 arg1 ) )
   {
@@ -797,9 +874,10 @@ public:
   }
 
   /**
-   * @brief Disconnect a function.
+   * @brief Disconnects a function.
    *
-   * @param[in] func The function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to disconnect
    */
   void Disconnect( void (*func)( Arg0 arg0, Arg1 arg1 ) )
   {
@@ -807,10 +885,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( X* obj, void (X::*func)( Arg0 arg0, Arg1 arg1 ) )
@@ -819,10 +898,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( X* obj, void (X::*func)( Arg0 arg0, Arg1 arg1 ) )
@@ -831,10 +911,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( SlotDelegate<X>& delegate, void (X::*func)( Arg0 arg0, Arg1 arg1 ) )
@@ -843,10 +924,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( SlotDelegate<X>& delegate, void (X::*func)( Arg0 arg0, Arg1 arg1 ) )
@@ -855,10 +937,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object.
+   * @brief Connects a function object.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] func The function object to copy.
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] func The function object to copy
    */
   template<class X>
   void Connect( ConnectionTrackerInterface* connectionTracker, const X& func )
@@ -867,10 +950,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object using FunctorDelegate.
+   * @brief Connects a function object using FunctorDelegate.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken).
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken)
    */
   void Connect( ConnectionTrackerInterface* connectionTracker, FunctorDelegate* delegate )
   {
@@ -878,10 +962,11 @@ public:
   }
 
   /**
-   * @brief Emit the signal.
+   * @brief Emits the signal.
    *
-   * @param[in] arg0 The first value to pass to callbacks.
-   * @param[in] arg1 The second value to pass to callbacks.
+   * @SINCE_1_0.0
+   * @param[in] arg0 The first value to pass to callbacks
+   * @param[in] arg1 The second value to pass to callbacks
    */
   void Emit( Arg0 arg0, Arg1 arg1 )
   {
@@ -890,8 +975,10 @@ public:
 
 private:
 
-  Signal( const Signal& );                   ///< undefined copy constructor, signals don't support copying.
-  Signal& operator=( const Signal& );        ///< undefined assignment operator
+  Signal( const Signal& ) = delete; ///< Deleted copy constructor, signals don't support copying. @SINCE_1_0.0
+  Signal( Signal&& ) = delete; ///< Deleted move constructor, signals don't support moving. @SINCE_1_9.25
+  Signal& operator=( const Signal& ) = delete; ///< Deleted copy assignment operator @SINCE_1_0.0
+  Signal& operator=( Signal&& ) = delete; ///< Deleted move assignment operator @SINCE_1_9.25
 
 private:
 
@@ -901,6 +988,7 @@ private:
 
 /**
  * @brief A template for Signals with 2 parameters and a return value.
+ * @SINCE_1_0.0
  */
 template < typename Ret, typename Arg0, typename Arg1 >
 class Signal< Ret( Arg0, Arg1 ) >
@@ -909,6 +997,7 @@ public:
 
   /**
    * @brief Default constructor.
+   * @SINCE_1_0.0
    */
   Signal()
   {
@@ -916,15 +1005,17 @@ public:
 
   /**
    * @brief Non-virtual destructor.
+   * @SINCE_1_0.0
    */
   ~Signal()
   {
   }
 
   /**
-   * @brief Query whether there are any connected slots.
+   * @brief Queries whether there are any connected slots.
    *
-   * @return True if there are any slots connected to the signal.
+   * @SINCE_1_0.0
+   * @return True if there are any slots connected to the signal
    */
   bool Empty() const
   {
@@ -932,17 +1023,19 @@ public:
   }
 
   /**
-   * @brief Query the number of slots.
+   * @brief Queries the number of slots.
    *
-   * @return The number of slots connected to this signal.
+   * @SINCE_1_0.0
+   * @return The number of slots connected to this signal
    */
   std::size_t GetConnectionCount() const
   {
     return mImpl.GetConnectionCount();
   }
   /**
-   * @brief Connect a function.
-   * @param[in] func The function to connect.
+   * @brief Connects a function.
+   * @SINCE_1_0.0
+   * @param[in] func The function to connect
    */
   void Connect( Ret (*func)( Arg0 arg0, Arg1 arg1 ) )
   {
@@ -950,9 +1043,10 @@ public:
   }
 
   /**
-   * @brief Disconnect a function.
+   * @brief Disconnects a function.
    *
-   * @param[in] func The function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to disconnect
    */
   void Disconnect( Ret (*func)( Arg0 arg0, Arg1 arg1 ) )
   {
@@ -960,10 +1054,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( X* obj, Ret (X::*func)( Arg0 arg0, Arg1 arg1 ) )
@@ -972,10 +1067,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( X* obj, Ret (X::*func)( Arg0 arg0, Arg1 arg1 ) )
@@ -984,10 +1080,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( SlotDelegate<X>& delegate, Ret (X::*func)( Arg0 arg0, Arg1 arg1 ) )
@@ -996,10 +1093,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( SlotDelegate<X>& delegate, Ret (X::*func)( Arg0 arg0, Arg1 arg1 ) )
@@ -1008,10 +1106,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object.
+   * @brief Connects a function object.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] func The function object to copy.
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] func The function object to copy
    */
   template<class X>
   void Connect( ConnectionTrackerInterface* connectionTracker, const X& func )
@@ -1020,10 +1119,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object using FunctorDelegate.
+   * @brief Connects a function object using FunctorDelegate.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken).
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken)
    */
   void Connect( ConnectionTrackerInterface* connectionTracker, FunctorDelegate* delegate )
   {
@@ -1031,11 +1131,12 @@ public:
   }
 
   /**
-   * @brief Emit the signal.
+   * @brief Emits the signal.
    *
-   * @param[in] arg0 The first value to pass to callbacks.
-   * @param[in] arg1 The second value to pass to callbacks.
-   * @return The value returned by the last callback, or a default constructed value if no callbacks are connected.
+   * @SINCE_1_0.0
+   * @param[in] arg0 The first value to pass to callbacks
+   * @param[in] arg1 The second value to pass to callbacks
+   * @return The value returned by the last callback, or a default constructed value if no callbacks are connected
    */
   Ret Emit( Arg0 arg0, Arg1 arg1 )
   {
@@ -1044,8 +1145,10 @@ public:
 
 private:
 
-  Signal( const Signal& );                   ///< undefined copy constructor, signals don't support copying.
-  Signal& operator=( const Signal& );        ///< undefined assignment operator
+  Signal( const Signal& ) = delete; ///< Deleted copy constructor, signals don't support copying. @SINCE_1_0.0
+  Signal( Signal&& ) = delete; ///< Deleted move constructor, signals don't support moving. @SINCE_1_9.25
+  Signal& operator=( const Signal& ) = delete; ///< Deleted copy assignment operator @SINCE_1_0.0
+  Signal& operator=( Signal&& ) = delete; ///< Deleted move assignment operator @SINCE_1_9.25
 
 private:
 
@@ -1055,6 +1158,7 @@ private:
 
 /**
  * @brief A template for Signals with 3 parameters.
+ * @SINCE_1_0.0
  */
 template < typename Arg0, typename Arg1, typename Arg2 >
 class Signal< void ( Arg0, Arg1, Arg2 ) >
@@ -1063,6 +1167,7 @@ public:
 
   /**
    * @brief Default constructor.
+   * @SINCE_1_0.0
    */
   Signal()
   {
@@ -1070,15 +1175,17 @@ public:
 
   /**
    * @brief Non-virtual destructor.
+   * @SINCE_1_0.0
    */
   ~Signal()
   {
   }
 
   /**
-   * @brief Query whether there are any connected slots.
+   * @brief Queries whether there are any connected slots.
    *
-   * @return True if there are any slots connected to the signal.
+   * @SINCE_1_0.0
+   * @return True if there are any slots connected to the signal
    */
   bool Empty() const
   {
@@ -1086,18 +1193,20 @@ public:
   }
 
   /**
-   * @brief Query the number of slots.
+   * @brief Queries the number of slots.
    *
-   * @return The number of slots connected to this signal.
+   * @SINCE_1_0.0
+   * @return The number of slots connected to this signal
    */
   std::size_t GetConnectionCount() const
   {
     return mImpl.GetConnectionCount();
   }
   /**
-   * @brief Connect a function.
+   * @brief Connects a function.
    *
-   * @param[in] func The function to connect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to connect
    */
   void Connect( void (*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
   {
@@ -1105,9 +1214,10 @@ public:
   }
 
   /**
-   * @brief Disconnect a function.
+   * @brief Disconnects a function.
    *
-   * @param[in] func The function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to disconnect
    */
   void Disconnect( void (*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
   {
@@ -1115,10 +1225,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( X* obj, void (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
@@ -1127,10 +1238,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( X* obj, void (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
@@ -1139,10 +1251,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( SlotDelegate<X>& delegate, void (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
@@ -1151,10 +1264,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( SlotDelegate<X>& delegate, void (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
@@ -1163,10 +1277,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object.
+   * @brief Connects a function object.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] func The function object to copy.
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] func The function object to copy
    */
   template<class X>
   void Connect( ConnectionTrackerInterface* connectionTracker, const X& func )
@@ -1175,10 +1290,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object using FunctorDelegate.
+   * @brief Connects a function object using FunctorDelegate.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken).
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken)
    */
   void Connect( ConnectionTrackerInterface* connectionTracker, FunctorDelegate* delegate )
   {
@@ -1186,11 +1302,12 @@ public:
   }
 
   /**
-   * @brief Emit the signal.
+   * @brief Emits the signal.
    *
-   * @param[in] arg0 The first value to pass to callbacks.
-   * @param[in] arg1 The second value to pass to callbacks.
-   * @param[in] arg2 The third value to pass to callbacks.
+   * @SINCE_1_0.0
+   * @param[in] arg0 The first value to pass to callbacks
+   * @param[in] arg1 The second value to pass to callbacks
+   * @param[in] arg2 The third value to pass to callbacks
    */
   void Emit( Arg0 arg0, Arg1 arg1, Arg2 arg2 )
   {
@@ -1199,8 +1316,10 @@ public:
 
 private:
 
-  Signal( const Signal& );                   ///< undefined copy constructor, signals don't support copying.
-  Signal& operator=( const Signal& );        ///< undefined assignment operator
+  Signal( const Signal& ) = delete; ///< Deleted copy constructor, signals don't support copying. @SINCE_1_0.0
+  Signal( Signal&& ) = delete; ///< Deleted move constructor, signals don't support moving. @SINCE_1_9.25
+  Signal& operator=( const Signal& ) = delete; ///< Deleted copy assignment operator @SINCE_1_0.0
+  Signal& operator=( Signal&& ) = delete; ///< Deleted move assignment operator @SINCE_1_9.25
 
 private:
 
@@ -1210,6 +1329,7 @@ private:
 
 /**
  * @brief A template for Signals with 2 parameters and a return value.
+ * @SINCE_1_0.0
  */
 template < typename Ret, typename Arg0, typename Arg1, typename Arg2 >
 class Signal< Ret( Arg0, Arg1, Arg2 ) >
@@ -1218,6 +1338,7 @@ public:
 
   /**
    * @brief Default constructor.
+   * @SINCE_1_0.0
    */
   Signal()
   {
@@ -1225,15 +1346,17 @@ public:
 
   /**
    * @brief Non-virtual destructor.
+   * @SINCE_1_0.0
    */
   ~Signal()
   {
   }
 
   /**
-   * @brief Query whether there are any connected slots.
+   * @brief Queries whether there are any connected slots.
    *
-   * @return True if there are any slots connected to the signal.
+   * @SINCE_1_0.0
+   * @return True if there are any slots connected to the signal
    */
   bool Empty() const
   {
@@ -1241,9 +1364,10 @@ public:
   }
 
   /**
-   * @brief Query the number of slots.
+   * @brief Queries the number of slots.
    *
-   * @return The number of slots connected to this signal.
+   * @SINCE_1_0.0
+   * @return The number of slots connected to this signal
    */
   std::size_t GetConnectionCount() const
   {
@@ -1251,9 +1375,10 @@ public:
   }
 
   /**
-   * @brief Connect a function.
+   * @brief Connects a function.
    *
-   * @param[in] func The function to connect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to connect
    */
   void Connect( Ret (*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
   {
@@ -1261,9 +1386,10 @@ public:
   }
 
   /**
-   * @brief Disconnect a function.
+   * @brief Disconnects a function.
    *
-   * @param[in] func The function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] func The function to disconnect
    */
   void Disconnect( Ret (*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
   {
@@ -1271,10 +1397,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( X* obj, Ret (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
@@ -1283,10 +1410,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] obj An object which must implement the ConnectionTrackerInterface.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] obj An object which must implement the ConnectionTrackerInterface
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( X* obj, Ret (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
@@ -1295,10 +1423,11 @@ public:
   }
 
   /**
-   * @brief Connect a member function.
+   * @brief Connects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to connect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to connect
    */
   template<class X>
   void Connect( SlotDelegate<X>& delegate, Ret (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
@@ -1307,10 +1436,11 @@ public:
   }
 
   /**
-   * @brief Disconnect a member function.
+   * @brief Disconnects a member function.
    *
-   * @param[in] delegate A slot delegate.
-   * @param[in] func The member function to disconnect.
+   * @SINCE_1_0.0
+   * @param[in] delegate A slot delegate
+   * @param[in] func The member function to disconnect
    */
   template<class X>
   void Disconnect( SlotDelegate<X>& delegate, Ret (X::*func)( Arg0 arg0, Arg1 arg1, Arg2 arg2 ) )
@@ -1319,10 +1449,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object.
+   * @brief Connects a function object.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] func The function object to copy.
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] func The function object to copy
    */
   template<class X>
   void Connect( ConnectionTrackerInterface* connectionTracker, const X& func )
@@ -1331,10 +1462,11 @@ public:
   }
 
   /**
-   * @brief Connect a function object using FunctorDelegate.
+   * @brief Connects a function object using FunctorDelegate.
    *
-   * @param[in] connectionTracker A connection tracker which can be used to disconnect.
-   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken).
+   * @SINCE_1_0.0
+   * @param[in] connectionTracker A connection tracker which can be used to disconnect
+   * @param[in] delegate A newly allocated FunctorDelegate (ownership is taken)
    */
   void Connect( ConnectionTrackerInterface* connectionTracker, FunctorDelegate* delegate )
   {
@@ -1342,12 +1474,13 @@ public:
   }
 
   /**
-   * @brief Emit the signal.
+   * @brief Emits the signal.
    *
-   * @param[in] arg0 The first value to pass to callbacks.
-   * @param[in] arg1 The second value to pass to callbacks.
-   * @param[in] arg2 The third value to pass to callbacks.
-   * @return The value returned by the last callback, or a default constructed value if no callbacks are connected.
+   * @SINCE_1_0.0
+   * @param[in] arg0 The first value to pass to callbacks
+   * @param[in] arg1 The second value to pass to callbacks
+   * @param[in] arg2 The third value to pass to callbacks
+   * @return The value returned by the last callback, or a default constructed value if no callbacks are connected
    */
   Ret Emit( Arg0 arg0, Arg1 arg1, Arg2 arg2 )
   {
@@ -1356,8 +1489,10 @@ public:
 
 private:
 
-  Signal( const Signal& );                   ///< undefined copy constructor, signals don't support copying.
-  Signal& operator=( const Signal& );        ///< undefined assignment operator
+  Signal( const Signal& ) = delete; ///< Deleted copy constructor, signals don't support copying. @SINCE_1_0.0
+  Signal( Signal&& ) = delete; ///< Deleted move constructor, signals don't support moving. @SINCE_1_9.25
+  Signal& operator=( const Signal& ) = delete; ///< Deleted copy assignment operator @SINCE_1_0.0
+  Signal& operator=( Signal&& ) = delete; ///< Deleted move assignment operator @SINCE_1_9.25
 
 private:
 
@@ -1365,6 +1500,9 @@ private:
   BaseSignal mImpl; ///< Implementation
 };
 
+/**
+ * @}
+ */
 } // namespace Dali
 
-#endif // __DALI_SIGNAL_H__
+#endif // DALI_SIGNAL_H