// 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. #include "ppapi/cpp/dev/cursor_control_dev.h" #include "ppapi/cpp/image_data.h" #include "ppapi/cpp/instance_handle.h" #include "ppapi/cpp/module.h" #include "ppapi/cpp/module_impl.h" #include "ppapi/cpp/point.h" namespace pp { namespace { template <> const char* interface_name() { return PPB_CURSOR_CONTROL_DEV_INTERFACE_0_4; } } // namespace bool CursorControl_Dev::SetCursor(const InstanceHandle& instance, PP_CursorType_Dev type, const ImageData& custom_image, const Point& hot_spot) { if (has_interface()) { return PP_ToBool(get_interface()->SetCursor( instance.pp_instance(), type, custom_image.pp_resource(), &hot_spot.pp_point())); } return false; } bool LockCursor(const InstanceHandle& instance) { if (has_interface()) { return PP_ToBool(get_interface()->LockCursor( instance.pp_instance())); } return false; } bool UnlockCursor(const InstanceHandle& instance) { if (has_interface()) { return PP_ToBool(get_interface()->UnlockCursor( instance.pp_instance())); } return false; } bool HasCursorLock(const InstanceHandle& instance) { if (has_interface()) { return PP_ToBool(get_interface()->HasCursorLock( instance.pp_instance())); } return false; } bool CanLockCursor(const InstanceHandle& instance) { if (has_interface()) { return PP_ToBool(get_interface()->CanLockCursor( instance.pp_instance())); } return false; } } // namespace pp