/* 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   : Handlers.h                             */
/*                                                 */
/* Purpose: Event handlers for driving the browser */
/*          front-end.                             */
/*                                                 */
/* Author : A.D.Hodgkinson                         */
/*                                                 */
/* History: 07-Feb-97: Created from Main.h.        */
/***************************************************/

/* Function prototypes */

int handle_messages          (WimpMessage * m, void * handle);
int handle_ack               (int eventcode, WimpPollBlock * block, IdBlock * idb, void * handle);
int handle_send_helpreq      (int eventcode, WimpPollBlock * block, IdBlock * idb, void * handle);

int handle_keys              (int eventcode, WimpPollBlock * b, IdBlock * idb, void * handle);
int handle_keys_from_browser (int eventcode, WimpPollBlock * block, IdBlock * idb, browser_data * handle);
int handle_menus             (int eventcode, WimpPollBlock * block, IdBlock * idb, void * handle);
int handle_scroll_requests   (int eventcode, WimpPollBlock * b, IdBlock * idb, browser_data * handle);
int handle_clicks            (int eventcode, WimpPollBlock * b, IdBlock * idb, browser_data * handle);
int handle_link_clicks       (int eventcode, WimpPollBlock * b, IdBlock * idb, browser_data * handle);
int handle_drags             (int eventcode, WimpPollBlock * b, IdBlock * idb, browser_data * handle);

int handle_close_browser     (int eventcode, WimpPollBlock * b, IdBlock * idb, browser_data * handle);

int handle_home              (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_back              (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_forwards          (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_stop              (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_reload            (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_view_hotlist      (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_add_hotlist       (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_view_resources    (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_load_images       (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_view_source       (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_go_to             (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_go                (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_cancel            (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_bistate           (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_tristate          (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);

int handle_clear_url         (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_show_history_menu (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);

int handle_show_info         (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);
int handle_quit              (int eventcode, ToolboxEvent * event, IdBlock * idb, void * handle);

int handle_lose_caret        (int eventcode, WimpPollBlock * block, IdBlock * idb, void * handle);

int handle_dialler_display   (int eventcode, WimpPollBlock * b, IdBlock * idb, browser_data * handle);
int handle_dialler_service   (WimpMessage * m, void * handle);