campo-sirio/xi/xiutils.h
alex ebabab8c26 This commit was generated by cvs2svn to compensate for changes in r5761,
which included commits to RCS files with non-trunk default branches.

git-svn-id: svn://10.65.10.50/trunk@5762 c028cbd2-c16b-5b4b-a496-9718f37d4682
1997-12-17 12:57:49 +00:00

134 lines
5.5 KiB
C
Executable File

/*******************************************************************************
* Copyright 1991-1996 by ORCA Software, Inc. *
* *
* All rights reserved. May not be reproduced or distributed, in printed or *
* electronic form, without permission of ORCA Software, Inc. May not be *
* distributed as object code, separately or linked with other object modules, *
* without permission. *
*******************************************************************************/
extern XinBrush ltgray_cbrush;
extern XinBrush gray_cbrush;
extern XinBrush hollow_cbrush;
extern XinFont *xi_sysfont;
extern XinRect big_clip;
/* DIMENSIONS FOR FIELD OBJET BORDER */
#define XI_FLD_XBORDER XI_FU_MULTIPLE /* may change for OL implementation */
#define XI_MULTILINE_SCROLLBAR_CID 31000
XinRect *adjust_rect( XinRect * rct, int pwid );
int clip( int val, int mn, int mx );
void dbg_rct( char *tag, XinRect * rct );
void order_ints( int *ip1, int *ip2 );
/*
char* gstrncpy(char *dst, char *src, int n);
*/
char *tstrncpy( char *dst, char *src, int n );
void xi_adjust_sb_vir_itf( XinWindow win, XI_OBJ * itf );
void xi_button_rect_calc( XI_OBJ * btn_obj, int sequence );
void
xi_container_rect_calc( XI_OBJ * cnt_obj, int max_text_len,
XI_BTN_TYPE btn_type );
XinFont *xi_def_get_font( XI_OBJ_DEF * obj_def );
BOOLEAN xi_get_xil_pref( XI_OBJ * obj );
void
xi_draw_clipped_text( XinWindow win, XinFont * font, char *s,
XinRect * bound_rct,
XinRect * clip_rct, unsigned long attrib,
BOOLEAN set_the_cpen, int rule_and_space,
int len, char mnemonic, short mnemonic_instance, int *baseline );
void xi_dbg( char *buf );
void
xi_draw_button( XI_OBJ * xi_obj, XinRect * rct,
BOOLEAN enabled, BOOLEAN visible, BOOLEAN focus,
BOOLEAN down, BOOLEAN dflt, BOOLEAN checked, BOOLEAN box_only,
BOOLEAN draw_border );
BOOLEAN xi_eh( XinWindow win, XinEvent * ep );
void xi_even_fu( int *f );
void xi_even_fu_pnt( XinPoint * p );
XinRect *xi_inflate_rect( XinRect * rct, int amount );
void xi_fu_to_pu_font( XinFont * font, XinPoint * pnt, int nbr_pnts );
XinRect *xi_get_enclosing_rect( XinRect * dst, XinRect * src1, XinRect * src2 );
void
xi_get_font_metrics_font( XinFont * font, int *leading, int *ascent,
int *descent, int *char_width );
int xi_get_fu_height( XI_OBJ * itf );
int xi_get_fu_height_font( XinFont * font );
int xi_get_fu_width( XI_OBJ * itf );
int xi_get_fu_width_font( XinFont * font );
void xi_get_hsb_rect( XI_OBJ * xi_obj, XinRect * rctp );
XI_OBJ *xi_get_itf_from_id( int id );
XinRect *
xi_get_rect_internal( XI_OBJ * xi_obj, XinRect * rctp, XinRect * old_win_rct,
XinRect * new_win_rct );
void xi_get_sb_rect( XI_OBJ * xi_obj, XinRect * rctp );
void xi_move_to( XinWindow win, XinPoint pnt );
void xi_draw_line( XinWindow win, XinPoint pnt );
void xi_scroll_rect( XinWindow win, XinRect * rct, int delta_x, int delta_y );
BOOLEAN xi_pt_in_rect( XinRect * rct, XinPoint pnt );
BOOLEAN xi_half_baked( XinWindow win );
void xi_init_sysvals( void );
void xi_make_obj_visible( XI_OBJ * xi_obj );
void xi_menu_enable( XI_OBJ * itf, int tag, BOOLEAN enable );
void
xi_move_column_internal( XI_OBJ * column, int position,
BOOLEAN in_hscrolling );
void xi_move_list_hscroll_bar( XI_OBJ * xi_obj );
void xi_move_list_scroll_bar( XI_OBJ * xi_obj );
int xi_obj_to_idx( XI_OBJ * xi_obj );
void xi_realloc_array( void **ptr, int nbr, size_t sz, void *parent );
void xi_set_sysval( XI_SV_TYPE valtype, int value );
void xi_set_trap_obj( XI_OBJ * obj );
void xi_set_update_obj( XI_OBJ * xi_obj );
int xi_get_text_width( XinFont * font, char *s, int len, unsigned long attrib );
char *xi_get_text_string( char *src, unsigned long attrib );
BOOLEAN xi_cr_is_ok( XI_OBJ * xi_obj );
BOOLEAN xi_focus_obj_is_cell_button( XI_OBJ * focus_obj );
void xi_draw_foc_and_dflt( XI_OBJ * focus_obj );
void xi_draw_foc_and_dflt_if_necessary( XI_OBJ * focus_obj, XI_OBJ * next_obj );
BOOLEAN xi_get_native_controls( XI_OBJ * obj );
BOOLEAN xi_XinWindowPaintNeeds( XinWindow win, XinRect * rct );
#ifdef TREEDEBUG
#define xi_tree_realloc2(o, s, p) xi_tree_realloc_d2(o, s, p, __LINE__, __FILE__)
char *
xi_tree_realloc_d2( char *oldp, size_t size, char *parent, int line,
char *filename );
#else
char *xi_tree_realloc2( char *oldp, size_t size, char *parent );
#endif
void
xi_draw_icon( XinWindow win, int x, int y, int rid, XinColor fore_color,
XinColor back_color );
void
xi_draw_text( XinWindow win, XinFont * font, int x, int y, char *s,
int len );
BOOLEAN font_compare( XinFont * f1, XinFont * f2 );
#ifdef XI_USE_TX_SUPPORT
void xi_caret_off( XinWindow win );
#endif
void xi_caret_on( XinWindow win, int x, int y, int height, XinRect * clip_rect );
void xi_set_clip( XinWindow win, XinRect * clip );
void xi_draw_dotted_rect( XinWindow win, XinRect * rctp );
XI_OBJ* xi_get_drag_list_obj( void );
void xi_set_drag_list_obj( XI_OBJ* obj );
BOOLEAN xi_is_obj( XI_OBJ* obj, XI_OBJ* itf );
/*********************************************************************/
extern XinPen hollow_cpen;
extern XinPen black_cpen;
extern XinPen rubber_cpen;
extern XinBrush white_cbrush;
extern XinBrush hollow_cbrush;
extern XinFont normal_font;
/*********************************************************************/