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

📄 utils.c

📁 如果RH
💻 C
字号:
/***************************************************************************** * *  xdbx - X Window System interface to the dbx debugger * *  Copyright 1989 The University of Texas at Austin *  Copyright 1990 Microelectronics and Computer Technology Corporation * *  Permission to use, copy, modify, and distribute this software and its *  documentation for any purpose and without fee is hereby granted, *  provided that the above copyright notice appear in all copies and that *  both that copyright notice and this permission notice appear in *  supporting documentation, and that the name of The University of Texas *  and Microelectronics and Computer Technology Corporation (MCC) not be  *  used in advertising or publicity pertaining to distribution of *  the software without specific, written prior permission.  The *  University of Texas and MCC makes no representations about the  *  suitability of this software for any purpose.  It is provided "as is"  *  without express or implied warranty. * *  THE UNIVERSITY OF TEXAS AND MCC DISCLAIMS ALL WARRANTIES WITH REGARD TO *  THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND *  FITNESS, IN NO EVENT SHALL THE UNIVERSITY OF TEXAS OR MCC BE LIABLE FOR *  ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER *  RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF *  CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN *  CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * *  Author:  	Po Cheung *  Created:   	March 10, 1989 * *****************************************************************************//*  utils.c * *    Contain common routines used by other functions. * *    TextGetLastPos():		Get the last insertion position of text. *    TextPositionToLine(): 	Return text position give a line number. *    LineToStopNo():		Return the stop number given a line number. *    DisableWindowResize():	Fix the size of a window inside vpane. *    bell():			Ring the bell. *    concat():			Concatenate two strings together */#include "global.h"XawTextPosition TextGetLastPos(w)    Widget w;{    TextWidget ctx = (TextWidget) w;    return (ctx->text.lastPos);}/* * Get the line number where the caret is. */int TextPositionToLine(pos)XawTextPosition pos;{    int line;    if (displayedFile) {	if (pos >= displayedFile->linepos[displayedFile->topline]) {	    for (line = displayedFile->topline;		 pos > displayedFile->linepos[line]; line++);	    return (pos == displayedFile->linepos[line] ? line : line-1);	}	else {	    for (line = 1; pos > displayedFile->linepos[line]; line++);	    return (pos == displayedFile->linepos[line] ? line : line-1);	}    }    else        return 0;}/* *  Return the stop number associated with a given line number. *  Return 0 if stop number not found. */int LineToStop_no(line)int line;{    int i;    for (i=1; i <= nstops; i++)        if (stops[i].line == line && stops[i].file && displayedFile &&            strcmp(stops[i].file, displayedFile->pathname) == 0) {            return i;        }    return 0;}void DisableWindowResize(w)Widget w;{    Arg args[MAXARGS];    Cardinal n;    Dimension height;    n = 0;    XtSetArg(args[n], XtNheight, &height);                       n++;    XtGetValues(w, args, n);    XawPanedSetMinMax(w, height, height);    XawPanedAllowResize(w, False);}void bell(volume)int volume;{	if (debug)		fprintf (stderr, "ring the bell\n");    XBell(XtDisplay(toplevel), volume);}/* append string s2 to end of string s1 and return the result */char *concat(s1, s2)char *s1, *s2;{    if (s2) {        if (s1 == NULL) {            s1 = XtMalloc((strlen(s2)+1)*sizeof(char));            strcpy(s1, s2);        }        else {            s1 = XtRealloc(s1, strlen(s1)+strlen(s2)+2);            strcat(s1, s2);        }    }#if 0	/*(PW)4DEC90 : bug ! if s2 is null, there is no reason to set s1 to 0 */    else        s1 = NULL;#endif    return (s1);}

⌨️ 快捷键说明

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