|
|
1.1 root 1: #ifndef lint
2: static char rcs_id[] = "$Header: util.c,v 1.6 87/09/11 08:22:16 toddb Exp $";
3: #endif
4:
5: /*
6: * COPYRIGHT 1987
7: * DIGITAL EQUIPMENT CORPORATION
8: * MAYNARD, MASSACHUSETTS
9: * ALL RIGHTS RESERVED.
10: *
11: * THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT NOTICE AND
12: * SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION.
13: * DIGITAL MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THIS SOFTWARE FOR
14: * ANY PURPOSE. IT IS SUPPLIED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY.
15: *
16: * IF THE SOFTWARE IS MODIFIED IN A MANNER CREATING DERIVATIVE COPYRIGHT RIGHTS,
17: * APPROPRIATE LEGENDS MAY BE PLACED ON THE DERIVATIVE WORK IN ADDITION TO THAT
18: * SET FORTH ABOVE.
19: *
20: *
21: * Permission to use, copy, modify, and distribute this software and its
22: * documentation for any purpose and without fee is hereby granted, provided
23: * that the above copyright notice appear in all copies and that both that
24: * copyright notice and this permission notice appear in supporting documentation,
25: * and that the name of Digital Equipment Corporation not be used in advertising
26: * or publicity pertaining to distribution of the software without specific,
27: * written prior permission.
28: */
29:
30: #include "xedit.h"
31:
32: XeditPrintf(fmt, arg1, arg2, arg3, arg4)
33: char *fmt;
34: {
35: char buf[1024];
36: XtTextBlock text;
37:
38: XtTextPosition pos = (*messsource->scan)(messsource, 0, XtstFile, XtsdRight,1,0);
39: sprintf(buf, fmt, arg1, arg2, arg3, arg4);
40: text.length = strlen(buf);
41: text.ptr = buf;
42: QXtTextReplace(CurDpy, messwindow, pos, pos, &text);
43: QXtTextSetInsertionPoint(CurDpy, messwindow, pos + text.length);
44: }
45:
46: Window makeCommandButton(box, name, function)
47: Window box;
48: char *name;
49: int (*function)();
50: {
51: int numargs;
52: Arg args[3];
53: numargs = 0;
54: MakeArg(XtNlabel, (caddr_t)name);
55: MakeArg(XtNfunction, (caddr_t)function);
56: MakeArg(XtNname, (caddr_t)name);
57: return(QXtCommandCreate(CurDpy, box, args, numargs));
58: }
59: /*
60: Window makeBooleanButton(box, name, value)
61: Window box;
62: char *name;
63: int *value;
64: {
65: Arg args[2];
66: int numargs;
67: numargs = 0;
68: MakeArg(XtNlabel, (caddr_t)name);
69: MakeArg(XtNvalue, (caddr_t)value);
70: return(QXtBooleanCreate(CurDpy, box, args, numargs));
71: }
72: */
73:
74: Window makeStringBox(parentBox, string, length)
75: Window parentBox;
76: char *string;
77: {
78: XtEditType edittype;
79: Arg args[4];
80: Window StringW;
81: int numargs;
82: numargs = 0;
83: MakeArg(XtNtextOptions, (caddr_t)(/* editable |*/ resizeWidth));
84: MakeArg(XtNeditType, (caddr_t)XttextEdit);
85: MakeArg(XtNstring,(caddr_t)string);
86: MakeArg(XtNwidth, (caddr_t)length);
87: StringW = QXtTextStringCreate(CurDpy, parentBox, args, numargs);
88: return(StringW);
89: }
90:
91: FixScreen(from)
92: XtTextPosition from;
93: {
94: XtTextPosition to;
95: if(from >= 0){
96: to = (*source->getLastPos)(source) + 10;
97: QXtTextInvalidate(CurDpy,textwindow, (from > 0 ) ? from -1 : from, to);
98: QXtTextSetInsertionPoint(CurDpy, textwindow, from);
99: } else {
100: Feep();
101: }
102: }
103:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.