⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 textsw_impl.h

📁 操作系统SunOS 4.1.3版本的源码
💻 H
📖 第 1 页 / 共 2 页
字号:
#define TXTSW_MISC_UNUSED	0x8000000c	/* Bit flags for Textsw_handle->caret_state */#define TXTSW_CARET_FLASHING	0x0001#define TXTSW_CARET_ON		0x0002#define TXTSW_CARET_MUST_SHOW	0x0004#define	TXTSW_CARET_UNUSED	0xfff8	/* Bit flags for Textsw_handle->func_state */#define TXTSW_FUNC_AGAIN	0x00000001#define TXTSW_FUNC_DELETE	0x00000002#define TXTSW_FUNC_FIELD	0x00000004#define TXTSW_FUNC_FILTER	0x00000008#define TXTSW_FUNC_FIND		0x00000010#define TXTSW_FUNC_GET		0x00000020#define TXTSW_FUNC_PUT		0x00000040#define TXTSW_FUNC_UNDO		0x00000080#define TXTSW_FUNC_ALL		(TXTSW_FUNC_AGAIN | TXTSW_FUNC_DELETE | \				 TXTSW_FUNC_FIELD | TXTSW_FUNC_FILTER | \				 TXTSW_FUNC_FIND  | TXTSW_FUNC_GET    | \				 TXTSW_FUNC_PUT   | TXTSW_FUNC_UNDO)#define	TXTSW_FUNC_SVC_SAW(flags)	\				((flags) << 8)#define	TXTSW_FUNC_SVC_SAW_ALL	TXTSW_FUNC_SVC_SAW(TXTSW_FUNC_ALL)#define	TXTSW_FUNC_EXECUTE	0x01000000#define TXTSW_FUNC_SVC_REQUEST	0x10000000#define	TXTSW_FUNC_SVC_ALL	(TXTSW_FUNC_SVC_SAW_ALL | \				 TXTSW_FUNC_SVC_REQUEST)#define TXTSW_FUNCTION_UNUSED	0xeeff8080	/* Bit flags for Textsw_handle->holder_state */#define TXTSW_HOLDER_OF_CARET	0x0001#define TXTSW_HOLDER_OF_PSEL	0x0002#define TXTSW_HOLDER_OF_SSEL	0x0004#define TXTSW_HOLDER_OF_SHELF	0x0008#define TXTSW_HOLDER_OF_ALL	(TXTSW_HOLDER_OF_CARET | \				 TXTSW_HOLDER_OF_PSEL  | \				 TXTSW_HOLDER_OF_SSEL  | \				 TXTSW_HOLDER_OF_SHELF)#define TXTSW_HOLDER_UNUSED	0xfff0	/* Bit flags for Textsw_handle->track_state */#define TXTSW_TRACK_ADJUST	0x0001#define TXTSW_TRACK_ADJUST_END	0x0002#define TXTSW_TRACK_POINT	0x0004#define TXTSW_TRACK_SECONDARY	0x0008#define TXTSW_TRACK_ALL		(TXTSW_TRACK_ADJUST|TXTSW_TRACK_ADJUST_END|\				 TXTSW_TRACK_POINT|TXTSW_TRACK_SECONDARY)#define TXTSW_TRACK_UNUSED	0xfff0#define	TXTSW_IS_BUSY(textsw)				\	((textsw->state & TXTSW_PENDING_DELETE) ||	\	 (textsw->func_state & TXTSW_FUNC_ALL) ||	\	 (textsw->track_state & TXTSW_TRACK_ALL))#define	TXTSW_IS_READ_ONLY(textsw)			\	(textsw->state & (TXTSW_READ_ONLY_ESH | TXTSW_READ_ONLY_SW))	/* Flags for textsw_flush_caches */#define TFC_INSERT		0x01#define TFC_DO_PD		0x02#define	TFC_SEL			0x04#define TFC_PD_SEL		(TFC_DO_PD|TFC_SEL)#define TFC_PD_IFF_INSERT	0x08		/* Delete selection iff chars will be inserted. */#define TFC_SEL_IFF_INSERT	0x10		/* Clear selection iff chars will be inserted. */#define TFC_IFF_INSERTING	(TFC_PD_IFF_INSERT | TFC_SEL_IFF_INSERT | \				 TFC_INSERT)#define TFC_ALL			(TFC_IFF_INSERTING|TFC_PD_SEL)#define TFC_STD			TFC_ALL	/* Flags for textsw_find_selection_and_normalize *//* These flags potentially include an EV_SEL_BASE_TYPE */#define	TFSAN_BACKWARD		EV_SEL_CLIENT_FLAG(0x0001)#define	TFSAN_REG_EXP		EV_SEL_CLIENT_FLAG(0x0002)#define	TFSAN_SHELF_ALSO	EV_SEL_CLIENT_FLAG(0x0004)#define	TFSAN_TAG		EV_SEL_CLIENT_FLAG(0x0008)#define SET_TEXTSW_TIMER(_timer_h)					\	(_timer_h)->tv_sec = 0; (_timer_h)->tv_usec = 500000;#define TIMER_EXPIRED(timer)						\	(*timer && ((*timer)->tv_sec == 0) && ((*timer)->tv_usec == 0))#define SCROLLBAR_ENTER_FEEDBACK	1/* For caret motion */typedef enum {	TXTSW_CHAR_BACKWARD, 	TXTSW_CHAR_FORWARD,	TXTSW_DOCUMENT_END,	TXTSW_DOCUMENT_START,	TXTSW_LINE_END,	TXTSW_LINE_START,	TXTSW_NEXT_LINE_START,	TXTSW_NEXT_LINE,	TXTSW_PREVIOUS_LINE,	TXTSW_WORD_BACKWARD,	TXTSW_WORD_FORWARD,	TXTSW_WORD_END} Textsw_Caret_Direction;pkg_private voidtextsw_begin_function( /* textsw, function */ );#							ifdef notdef	register Textsw_handle	textsw;	unsigned		function;#							endifpkg_private voidtextsw_end_function( /* textsw, function */ );#							ifdef notdef	register Textsw_handle	textsw;	unsigned		function;#							endifpkg_private inttextsw_adjust_delete_span( /* folio, first, last_plus_one */ );#							ifdef notdef	Textsw_folio	 folio;	Es_index	*first, *last_plus_one;#							endif#define	TXTSW_PE_ADJUSTED	0x10000#define	TXTSW_PE_EMPTY_INTERVAL	0x20000pkg_private Es_indextextsw_delete_span( /* folio, first, last_plus_one, flags */ );#							ifdef notdef	register Textsw_folio	folio;	Es_index		first, last_plus_one;	unsigned		flags;#							endif#define	TXTSW_DS_DEFAULT		 EV_SEL_CLIENT_FLAG(0x0)#define	TXTSW_DS_ADJUST			 EV_SEL_CLIENT_FLAG(0x1)#define	TXTSW_DS_CLEAR_IF_ADJUST(sel)	(EV_SEL_CLIENT_FLAG(0x2)|(sel))#define	TXTSW_DS_SHELVE			 EV_SEL_CLIENT_FLAG(0x4)#define	TXTSW_DS_RECORD			 EV_SEL_CLIENT_FLAG(0x8)pkg_private Es_indextextsw_do_input( /* view, buf, buf_len, flag */ );#							ifdef notdef	Textsw_view		 view;	char			*buf;	long int		 buf_len;	unsigned		 flag;#							endifpkg_private Es_indextextsw_input_after( /* view, old_insert_pos, old_length, record */ );#							ifdef notdef	Textsw_view		view;	Es_index		old_insert_pos, old_length;	int			record;#							endifpkg_private Es_indextextsw_do_pending_delete( /* view, type, flags */ );#							ifdef notdef	Textsw_view		view;	unsigned		type;	int			flags;#							endifpkg_private inttextsw_normalize_internal( /*	view, first, last_plus_one, upper_context, lower_context, flags */ );#							ifdef notdef        register Textsw_view	view;	Es_index		first, last_plus_one;	int			upper_context, lower_context;	register unsigned	flags;#							endif#define	TXTSW_NI_DEFAULT		 EV_SEL_CLIENT_FLAG(0x0)#define	TXTSW_NI_AT_BOTTOM		 EV_SEL_CLIENT_FLAG(0x1)#define	TXTSW_NI_MARK			 EV_SEL_CLIENT_FLAG(0x2)#define	TXTSW_NI_NOT_IF_IN_VIEW		 EV_SEL_CLIENT_FLAG(0x4)#define	TXTSW_NI_SELECT(sel)		(EV_SEL_CLIENT_FLAG(0x8)|(sel))pkg_private Es_indextextsw_set_insert( /* textsw, pos */ );#							ifdef notdef	Textsw_folio	textsw;	Es_index	pos;#							endifpkg_private voidtextsw_add_timer( /* textsw, timeout */ );#							ifdef notdef	register Textsw_folio	 textsw;	register struct timeval	*timeout;#							endifpkg_private Notify_valuetextsw_timer_expired( /* textsw, which */ );#							ifdef notdef	register Textsw_folio	 textsw;	int			 which;#							endifpkg_private voidtextsw_remove_timer( /* textsw */ );#							ifdef notdef	register Textsw_handle	textsw;#							endifpkg_private voidtextsw_invert_caret( /* textsw */ );#							ifdef notdef	register Textsw_handle	textsw;#							endifpkg_private voidtextsw_take_down_caret( /* textsw */ );#							ifdef notdef	register Textsw_handle	textsw;#							endifpkg_private voidtextsw_may_win_exit( /* textsw */ );#							ifdef notdef	Textsw_handle	  textsw;#							endifpkg_private voidtextsw_notify( /* folio_or_view, attributes */ );#							ifdef notdef	Textsw_opaque	folio_or_view;	Attr_avlist	attributes;#							endifpkg_private voidtextsw_read_only_msg( /* textsw, locx, locy */ );#							ifdef notdef	Textsw_folio	textsw;	int		locx, locy;#							endifpkg_private Textsw_statustextsw_set_internal( /* view, attrs */ );#							ifdef notdef	Textsw_view		view;	Attr_avlist		attrs;#							endif#define	TEXTSW_CONSUME_ATTRS	TEXTSW_ATTR(ATTR_BOOLEAN, 240)pkg_private Es_statustextsw_checkpoint( /* folio */ );#							ifdef notdef	Text_folio		folio;#							endifextern caddr_ttextsw_checkpoint_undo( /* abstract, undo_mark */ );#							ifdef notdef	Textsw			abstract;	caddr_t			undo_mark;#							endifextern voidtextsw_display( /* abstract */ );#							ifdef notdef	Textsw			abstract;#							endifextern voidtextsw_display_view( /* abstract, rect */ );#							ifdef notdef	Textsw			 abstract;	register Rect		*rect;#							endifpkg_private voidtextsw_display_view_margins( /* abstract, rect */ );#							ifdef notdef	Textsw			 abstract;	register Rect		*rect;#							endifpkg_private inttextsw_is_seln_nonzero( /* textsw, type */ );#							ifdef notdef	register Text_folio	textsw;	unsigned		type;#							endifpkg_private Es_indextextsw_find_mark_internal( /* textsw, mark */ );#							ifdef notdef	Textsw_folio	textsw;	Ev_mark_object	mark;#							endifpkg_private Es_indextextsw_get_saved_insert( /* textsw */ );#							ifdef notdef	register Textsw_folio	textsw;#							endifpkg_private Es_indextextsw_read_only_boundary_is_at( /* folio */ );#							ifdef notdef	register Textsw_folio	folio;#							endifpkg_private Es_indextextsw_insert_pieces( /* view, pos, pieces */ );#							ifdef notdef	Textsw_view		view;	register Es_index	pos;	Es_handle		pieces;#							endifextern unsignedtextsw_save( /* abstract, locx, locy */ );#							ifdef notdef	Textsw		abstract;	int		locx, locy;#							endifextern unsignedtextsw_store_file( /* abstract, filename, locx, locy */ );#							ifdef notdef	Textsw		abstract;	char		*filename;	int		locx, locy;#							endifpkg_private Es_statustextsw_store_to_selection( /* textsw, locx, locy */ );#							ifdef notdef	Textsw_folio		textsw;	int			locx, locy;#							endifextern caddr_ttextsw_get( /* textsw, attributes */ );#							ifdef notdef	Textsw		  textsw;	char		**attributes;#							endifextern Textsw_status textsw_set();pkg_private unsigned textsw_determine_selection_type();pkg_private void textsw_clear_secondary_selection();pkg_private void textsw_init_selection_object();pkg_private void textsw_update_scrollbars();pkg_private void textsw_display_view_margins();pkg_private void textsw_give_shelf_to_svc();pkg_private Seln_rank seln_rank_from_textsw_info();pkg_private void textsw_set_scroll_mark();pkg_private void textsw_input_before();pkg_private Key_map_handle textsw_do_filter();pkg_private Seln_rank textsw_acquire_seln();pkg_private void textsw_notify_replaced();pkg_private void textsw_remove_mark_internal();#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -