diff options
Diffstat (limited to 'ppapi/cpp/dev/text_input_dev.h')
-rw-r--r-- | ppapi/cpp/dev/text_input_dev.h | 39 |
1 files changed, 34 insertions, 5 deletions
diff --git a/ppapi/cpp/dev/text_input_dev.h b/ppapi/cpp/dev/text_input_dev.h index af21a90..ea75597 100644 --- a/ppapi/cpp/dev/text_input_dev.h +++ b/ppapi/cpp/dev/text_input_dev.h @@ -1,27 +1,56 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef PPAPI_CPP_DEV_TEXT_INPUT_DEV_H_ #define PPAPI_CPP_DEV_TEXT_INPUT_DEV_H_ +#include <string> + #include "ppapi/c/dev/ppb_text_input_dev.h" #include "ppapi/cpp/instance_handle.h" -/// @file -/// This file defines the API for controlling text input methods. namespace pp { class Rect; - +class Instance; + +// This class allows you to associate the PPP_TextInput_Dev and +// PPB_TextInput_Dev C-based interfaces with an object. It associates itself +// with the given instance, and registers as the global handler for handling the +// PPP_TextInput_Dev interface that the browser calls. +// +// You would typically use this either via inheritance on your instance: +// class MyInstance : public pp::Instance, public pp::TextInput_Dev { +// MyInstance() : pp::TextInput_Dev(this) { +// } +// ... +// }; +// +// or by composition: +// class MyTextInput : public pp::TextInput_Dev { +// ... +// }; +// +// class MyInstance : public pp::Instance { +// MyInstance() : text_input_(this) { +// } +// +// MyTextInput text_input_; +// }; class TextInput_Dev { public: - explicit TextInput_Dev(const InstanceHandle& instance); + explicit TextInput_Dev(Instance* instance); virtual ~TextInput_Dev(); + virtual void RequestSurroundingText(uint32_t desired_number_of_characters); + void SetTextInputType(PP_TextInput_Type type); void UpdateCaretPosition(const Rect& caret, const Rect& bounding_box); void CancelCompositionText(); + void SelectionChanged(); + void UpdateSurroundingText(const std::string& text, + uint32_t caret, uint32_t anchor); private: InstanceHandle instance_; |