X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=adaptors%2Fdevel-api%2Fadaptor-framework%2Fimf-manager.h;h=2780d9a365ac5efa7b706cded66c3e8c567ebe56;hb=refs%2Fchanges%2F69%2F154769%2F1;hp=b3ead5cf5aa098877f5eb0aeaf00ca0acc89332f;hpb=c374b4e9228657117409c8761063dd3cba715b07;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git diff --git a/adaptors/devel-api/adaptor-framework/imf-manager.h b/adaptors/devel-api/adaptor-framework/imf-manager.h index b3ead5c..2780d9a 100644 --- a/adaptors/devel-api/adaptor-framework/imf-manager.h +++ b/adaptors/devel-api/adaptor-framework/imf-manager.h @@ -61,7 +61,28 @@ public: PREEDIT, ///< Pre-Edit changed COMMIT, ///< Commit recieved DELETESURROUNDING, ///< Event to delete a range of characters from the string - GETSURROUNDING ///< Event to query string and cursor position + GETSURROUNDING, ///< Event to query string and cursor position + PRIVATECOMMAND ///< Private command sent from the input panel + }; + + /** + * @brief Enumeration for state of the input panel. + */ + enum State + { + DEFAULT = 0, ///< Unknown state + SHOW, ///< Input panel is shown + HIDE, ///< Input panel is hidden + WILL_SHOW ///< Input panel in process of being shown + }; + + /** + * @brief Enumeration for the type of Keyboard. + */ + enum KeyboardType + { + SOFTWARE_KEYBOARD, ///< Software keyboard (Virtual keyboard) is default + HARDWARE_KEYBOARD ///< Hardware keyboard }; /** @@ -144,6 +165,7 @@ public: typedef Signal< ImfCallbackData ( ImfManager&, const ImfEventData& ) > ImfEventSignalType; ///< keyboard events typedef Signal< void () > VoidSignalType; typedef Signal< void (bool) > StatusSignalType; + typedef Signal< void (KeyboardType) > KeyboardTypeSignalType; ///< keyboard type public: @@ -253,6 +275,67 @@ public: */ void ApplyOptions( const InputMethodOptions& options ); + /** + * @brief Sets up the input-panel specific data. + * @param[in] data The specific data to be set to the input panel + */ + void SetInputPanelData( const std::string& data ); + + /** + * @brief Gets the specific data of the current active input panel. + * + * Input Panel Data is not always the data which is set by SetInputPanelData(). + * Data can be changed internally in the input panel. + * It is just used to get a specific data from the input panel to an application. + * @param[in] data The specific data to be got from the input panel + */ + void GetInputPanelData( std::string& data ); + + /** + * @brief Gets the state of the current active input panel. + * @return The state of the input panel. + */ + State GetInputPanelState(); + + /** + * @brief Sets the return key on the input panel to be visible or invisible. + * + * The default is true. + * @param[in] visible True if the return key is visible(enabled), false otherwise. + */ + void SetReturnKeyState( bool visible ); + + /** + * @brief Enable to show the input panel automatically when focused. + * @param[in] enabled If true, the input panel will be shown when focused + */ + void AutoEnableInputPanel( bool enabled ); + + /** + * @brief Shows the input panel. + */ + void ShowInputPanel(); + + /** + * @brief Hides the input panel. + */ + void HideInputPanel(); + + /** + * @brief Gets the keyboard type. + * + * The default keyboard type is SOFTWARE_KEYBOARD. + * @return The keyboard type + */ + KeyboardType GetKeyboardType(); + + /** + * @brief Gets the current language locale of the input panel. + * + * ex) en_US, en_GB, en_PH, fr_FR, ... + * @return The current language locale of the input panel + */ + std::string GetInputPanelLocale(); public: @@ -309,6 +392,18 @@ public: */ VoidSignalType& LanguageChangedSignal(); + /** + * @brief Connect to this signal to be notified when the keyboard type is changed. + * + * A callback of the following type may be connected: + * @code + * void YourCallbackName( KeyboardType keyboard ); + * @endcode + * + * @return The signal to connect to. + */ + KeyboardTypeSignalType& KeyboardTypeChangedSignal(); + // Construction & Destruction /**