/* 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   : Frames.h                               */
/* Purpose: Frame handling functions for the       */
/*          browser.                               */
/* Author : A.D.Hodgkinson                         */
/* History: 19-Mar-97: Created                     */
/***************************************************/

/* Function prototypes */

_kernel_oserror * frames_define_frameset    (browser_data * b, HStream * token);
_kernel_oserror * frames_define_frame       (browser_data * b, HStream * token);
_kernel_oserror * frames_resize_frameset    (browser_data * b, WimpOpenWindowBlock * o);

void              frames_get_rc_info        (browser_data * parent, int child, int * retrows, int * retcols, int * retrow, int * retcol);

int               frames_can_resize_top     (browser_data * parent, int child);
int               frames_can_resize_bottom  (browser_data * parent, int child);
int               frames_can_resize_left    (browser_data * parent, int child);
int               frames_can_resize_right   (browser_data * parent, int child);

int               frames_fetching           (browser_data * b);
void              frames_abort_fetching     (browser_data * b, int stop_images);
void              frames_collapse_set       (browser_data * b);

browser_data    * frames_find_named         (browser_data * parent, char * name);
browser_data    * frames_find_target        (browser_data * b, HStream * t);

browser_data    * frames_find_another_frame (browser_data * current, int dir);

_kernel_oserror * frames_highlight_frame    (browser_data * b);
_kernel_oserror * frames_remove_highlight   (void);