|
|
1.1 ! root 1: .TH XTEXT 3X "August 12 1985" "X Version 10" ! 2: .SH NAME ! 3: Xtext \- routines to provide simple text output windows ! 4: .SH SYNOPSIS ! 5: .nf ! 6: .B #include <X/Xlib.h> ! 7: .B #include <X/Xtext.h> ! 8: .PP ! 9: .fi ! 10: .B TextWindow *TextCreate(width, height, x, y, parent, fontname, bwidth, ! 11: .br ! 12: .B fgpixel, bgpixel, bordercolor, fastscroll); ! 13: .br ! 14: .B int height, width, x, y, ! 15: .B bwidth, fgpixel, bgpixel, fastscroll; ! 16: .nf ! 17: .B Window parent; ! 18: .B char *fontname; ! 19: .B Pixmap bordercolor; ! 20: .PP ! 21: .B TextDestroy(t); ! 22: .B TextWindow *t; ! 23: .PP ! 24: .B TextClear(t); ! 25: .B TextWindow *t; ! 26: .PP ! 27: .B TextRedisplay(t); ! 28: .B TextWindow *t; ! 29: .PP ! 30: .B int TextEvent(t, e); ! 31: .B TextWindow *t; ! 32: .B XEvent *e; ! 33: .PP ! 34: .B TextPutString(t, str); ! 35: .B TextWindow *t; ! 36: .B char *str; ! 37: .PP ! 38: .B TextPutChar(t, ch); ! 39: .B TextWindow *t; ! 40: .B char ch; ! 41: .PP ! 42: .fi ! 43: .B TextPrintf(t, format ! 44: .B [ , arg ] ... ) ! 45: .nf ! 46: .B TextWindow *t; ! 47: .B char *format; ! 48: .SH DESCRIPTION ! 49: These functions provide a simple interface to text output windows. ! 50: .PP ! 51: .I TextCreate ! 52: creates a window that is ! 53: .I width ! 54: characters wide and ! 55: .I height ! 56: characters high. It is located with its upper left hand corner located ! 57: at the point ! 58: .I x, y ! 59: in the window ! 60: .I parent. ! 61: The foreground (i.e. the characters) is in the color ! 62: .I fgpixel ! 63: and the background is the color ! 64: .I bgpixel. ! 65: The border is ! 66: .I bwidth ! 67: pixels wide and filled with the Pixmap ! 68: .I bordercolor. ! 69: If ! 70: .I fastscroll ! 71: is nonzero, text containing multiple newlines is displayed with a single ! 72: jump scroll rather than with a single scroll for each newline. ! 73: .PP ! 74: The structure ! 75: .I TextWindow ! 76: is defined in ! 77: \fI/usr/include/X/Xtext.h\fP. ! 78: The only field that should be of interest to most applications is ! 79: .I w, ! 80: the X Window id of the created window. This is quite useful if the ! 81: application wishes to map the created window. ! 82: .PP ! 83: .I TextDestroy ! 84: destroys the window described by its argument. The window is also ! 85: destroyed automatically if the process creating it is terminated. ! 86: .PP ! 87: .I TextClear ! 88: clears the window described by its argument. ! 89: .PP ! 90: .I TextRedisplay ! 91: redisplays the window described by its argument. ! 92: .PP ! 93: .I TextEvent ! 94: handles the event passed to it. It returns 0 if it was an event ! 95: the library knows how to deal with, and 1 if it was an event of an ! 96: unknown type; the latter should only happen if the application has ! 97: changed the event mask for the window. Any event that the application ! 98: receives that has as its ! 99: .I window ! 100: the window id of the text window should be passed to ! 101: .I TextEvent ! 102: for handling. Scrolling text generates an event per line of events, so the ! 103: application should check for them frequently. ! 104: .PP ! 105: .I TextPutString ! 106: prints its string in its window. The character '\\n' (newline) is ! 107: treated specially, and any other character is taken from the font. ! 108: If the string contains multiple newlines, a single scroll is done for ! 109: each line unless the ! 110: .I fastscroll ! 111: argument was non-zero in the call to ! 112: .I TextCreate. ! 113: .PP ! 114: .I TextPutChar ! 115: is similar to ! 116: .I TextPutString ! 117: but only prints a single character. Again, newline is treated ! 118: specially. ! 119: .PP ! 120: .I TextPrintf ! 121: is similar to the standard function ! 122: .I printf ! 123: except that it prints its result in the specified window. The ! 124: resulting string is passed to ! 125: .I TextPutString. ! 126: See also the ! 127: .B BUGS ! 128: section at the end of this page. ! 129: .SH "SEE ALSO" ! 130: printf(3S), xterm(1), X(8C) ! 131: .SH AUTHOR ! 132: Paul Asente, Stanford University ! 133: .SH BUGS ! 134: \fITextPrintf\fP will truncate the output if the resulting string is more than ! 135: 2048 characters long. ! 136: .PP ! 137: Since X operates asynchronously, it is possible to get way ahead of the ! 138: server. This means that it may be quite a while between when a scroll ! 139: happens on the screen and when \fIXtext\fP gets around to filling in areas ! 140: that couldn't be scrolled normally. This should only happen if the ! 141: application issues a great many output requests very quickly, or if it ! 142: doesn't get around to receiving the events \fIXtext\fP needs to fill these ! 143: areas in. Also, some strange TCP bugs are invoked if an application ! 144: which has gotten far ahead of the X server is stopped (as with a ! 145: control-Z).
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.