+ * @brief Enumeration for settings that can be changed in the system Input Method.
+ *
+ * Key types of map to change virtual keyboard settings in INPUT_METHOD_SETTINGS property.
+ * @SINCE_1_3.20
+ */
+namespace Category
+{
+/**
+* @brief Enumeration for Category type.
+*
+* @SINCE_1_3.20
+*/
+enum Type
+{
+ PANEL_LAYOUT, ///< Set Keyboard layout @SINCE_1_3.20
+ BUTTON_ACTION, ///< Set Button Action @SINCE_1_3.20
+ AUTO_CAPITALIZE, ///< Set Auto capitalize of input @SINCE_1_3.20
+ VARIATION ///< Set variation @SINCE_1_3.20
+};
+
+} // namespace Category
+
+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+/////////////////////////// The enumerations below is to set each type of Category. ///////////////////////////////////
+///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
+
+/**
+ * @brief Sets Input panel (virtual keyboard) layout types.
+ *
+ * @SINCE_1_3.20
+ */
+namespace PanelLayout
+{
+/**
+* @brief Enumeration for PanelLayout type.
+*
+* @SINCE_1_3.20
+*/
+enum Type
+{
+ NORMAL, ///< Default layout @SINCE_1_3.20
+ NUMBER, ///< Number layout @SINCE_1_3.20
+ EMAIL, ///< Email layout @SINCE_1_3.20
+ URL, ///< URL layout @SINCE_1_3.20
+ PHONENUMBER, ///< Phone Number layout @SINCE_1_3.20
+ IP, ///< IP layout @SINCE_1_3.20
+ MONTH, ///< Month layout @SINCE_1_3.20
+ NUMBER_ONLY, ///< Number Only layout @SINCE_1_3.20
+ HEX, ///< Hexadecimal layout @SINCE_1_3.20
+ TERMINAL, ///< Command-line terminal layout including ESC, Alt, Ctrl key, so on (no auto-correct, no auto-capitalization) @SINCE_1_3.20
+ PASSWORD, ///< Like normal, but no auto-correct, no auto-capitalization etc @SINCE_1_3.20
+ DATE_TIME, ///< Date and time layout @SINCE_1_3.20
+ EMOTICON ///< Emoticon layout @SINCE_1_3.20
+};
+
+} // namespace PanelLayout
+
+/**