/* $Id: TextFieldP.h,v 1.2 1997/05/01 12:06:00 archer Exp $
 *	TEXTFIELDP.H - Private structures needed by textfields
 *
 * Editable field is very nice
 */
#ifndef _widget_textfieldp_h_included
#define _widget_textfieldp_h_included
#include <Widget/WidgetsP.h>
#include <Widget/fontsP.h>
#include <Widget/TextField.h>
#include <Widget/Signal.h>


/**
 ** Private types
 **/
typedef struct {
	x11__core	core;
/*
 * textfield-specific
 */
	X11_string_call	on_modify;
	XFontStruct	*font;
	void		*userdata;
/*
 * Storage
 */
	char		*storage;
	int		max_length,
			current_length;
/*
 * View what?
 */
	int		x_start,
			y_base;
	int		s_offset;
/*
 * Selection
 */
	int		x_select,
			w_select;
	int		insert_point,
			replace_size;
	int		x_button,
			s_button;
/*
 * Cursor
 */
	int		x_cursor;
/*
 * Visuals
 */
	X11_timer	flash;
	Time		last_click;
	int		double_click_time;
	char		number_of_clicks;
	boolean		cursor_off;
	boolean		selecting;
} x11__textfield;
#define W_TEXTFIELD	((x11__textfield *)wdg)


#endif /*_widget_textfieldp_h_included*/
