Merge "Updated CAPI documentation style."
[platform/core/uifw/dali-adaptor.git] / capi / dali / public-api / adaptor-framework / common / clipboard.h
1 #ifndef  __DALI_CLIPBOARD_H__
2 #define  __DALI_CLIPBOARD_H__
3
4 //
5 // Copyright (c) 2014 Samsung Electronics Co., Ltd.
6 //
7 // Licensed under the Flora License, Version 1.0 (the License);
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
10 //
11 //     http://floralicense.org/license/
12 //
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an AS IS BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
18 //
19
20
21 /**
22  * @addtogroup CAPI_DALI_ADAPTOR_MODULE
23  * @{
24  */
25
26 // EXTERNAL INCLUDES
27 #include <dali/public-api/math/rect.h>
28 #include <dali/public-api/object/base-handle.h>
29
30
31 namespace Dali DALI_IMPORT_API
32 {
33
34 namespace Internal DALI_INTERNAL
35 {
36
37 namespace Adaptor
38 {
39 class Clipboard;
40 }
41 }
42
43 /**
44  * @brief Interface to the device's clipboard.
45  *
46  * Clipboard can manage it's item and set show / hide status.
47  */
48
49 class Clipboard : public BaseHandle
50 {
51 public:
52   /**
53    * @brief Create an uninitialized Clipboard.
54    *
55    * this can be initialized with one of the derived Clipboard' New() methods
56    */
57   Clipboard();
58
59   /**
60    * @brief Virtual destructor.
61    */
62   virtual ~Clipboard();
63
64   /**
65    * @brief This constructor is used by Adaptor::GetClipboard().
66    *
67    * @param[in] clipboard A pointer to the clipboard.
68    */
69   Clipboard( Internal::Adaptor::Clipboard* clipboard );
70
71   /**
72    * @brief Retrieve a handle to the ClipboardEventNotifier instance.
73    *
74    * @return A handle to the Clipboard
75    */
76   static Clipboard Get();
77
78   /**
79    * @brief Send the given string to the clipboard.
80    *
81    * @param[in] itemData string to send to clip board
82    * @return bool true if the internal clip board sending was successful.
83    */
84   bool SetItem( const std::string& itemData );
85
86   /**
87    * @brief Retreive the string at the given index in the clipboard.
88    *
89    * @param[in] index item in clipboard list to retrieve
90    * @return string the text item at the current index.
91    */
92   std::string GetItem( unsigned int index );
93
94   /**
95    * @brief Returns the number of item currently in the clipboard.
96    *
97    * @return unsigned int number of clipboard items
98    */
99   unsigned int NumberOfItems();
100
101   /**
102    * @brief Show the clipboard window.
103    */
104   void ShowClipboard();
105
106   /**
107    * @brief Hide the clipboard window.
108    */
109   void HideClipboard();
110
111 };
112 } // namespace Dali
113
114 /**
115  * @}
116  */
117 #endif // __DALI_CLIPBOARD_H__