/* Copyright 1997 Acorn Computers Ltd
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
/***************************************************/
/* File   : Mouse.h                                */
/*                                                 */
/* Purpose: Mouse pointer related functions for    */
/*          the browser.                           */
/*                                                 */
/* Author : A.D.Hodgkinson                         */
/*                                                 */
/* History: 14-Mar-97: Created.                    */
/***************************************************/

/* Shape definitions */

#define Mouse_Shape_Off       0
#define Mouse_Shape_Normal    1
#define Mouse_Shape_Link      2
#define Mouse_Shape_Map       3
#define Mouse_Shape_UD        4
#define Mouse_Shape_LR        5
#define Mouse_Shape_UDLR      6
#define Mouse_Shape_NoResize  7
#define Mouse_Shape_ToScroll  8
#define Mouse_Shape_Scrolling 9

/* Function prototypes */

void   mouse_watch_pointer_control (int on);
int    mouse_watch_pointer         (int eventcode, WimpPollBlock * block, IdBlock * idb, void * handle);

void   mouse_pointer_on            (void);
void   mouse_pointer_off           (void);
void   mouse_force_unused          (void);

void   mouse_set_pointer_shape     (int shape);

int    mouse_pointer_is_on         (void);

void   mouse_to                    (int x, int y, int now);
BBox * mouse_rectangle             (BBox * rect, int now);