From 272e57235cd60a2e65ac8258d96a02eb3939b687 Mon Sep 17 00:00:00 2001 From: marha Date: Fri, 25 Mar 2011 10:41:05 +0000 Subject: git update until 25 Mar 2011 xserver fontconfig glproto libXau libXft libXmu libfontenc libxcb mesa mkfontscale pixman randrproto xkeyboard-config xtrans xwininfo updated following packages: xproto-7.0.21 xineramaproto-1.2.1 libXt-1.1.1 libxkbfile-1.0.7 libXpm-3.5.9 libXfont-1.4.3 libXaw-1.0.9 bdftopcf-1.0.3 encodings-1.0.4 fixesproto-5.0 font-adobe-100dpi-1.0.3 font-adobe-75dpi-1.0.3 font-adobe-utopia-100dpi-1.0.4 font-adobe-utopia-75dpi-1.0.4 font-adobe-utopia-type1-1.0.4 font-alias-1.0.3 font-arabic-misc-1.0.3 font-bh-100dpi-1.0.3 font-bh-75dpi-1.0.3 font-bh-lucidatypewriter-100dpi-1.0.3 font-bh-lucidatypewriter-75dpi-1.0.3 font-bh-ttf-1.0.3 font-bh-type1-1.0.3 font-bitstream-100dpi-1.0.3 font-bitstream-75dpi-1.0.3 font-bitstream-speedo-1.0.2 font-bitstream-type1-1.0.3 font-cronyx-cyrillic-1.0.3 font-cursor-misc-1.0.3 font-daewoo-misc-1.0.3 font-dec-misc-1.0.3 font-ibm-type1-1.0.3 font-isas-misc-1.0.3 font-jis-misc-1.0.3 font-micro-misc-1.0.3 font-misc-cyrillic-1.0.3 font-misc-ethiopic-1.0.3 font-misc-meltho-1.0.3 font-misc-misc-1.1.2 font-mutt-misc-1.0.3 font-schumacher-misc-1.1.2 font-screen-cyrillic-1.0.4 font-sony-misc-1.0.3 font-sun-misc-1.0.3 font-util-1.2.0 font-winitzki-cyrillic-1.0.3 font-xfree86-type1-1.0.4 --- libXaw/specs/TextSource.xml | 620 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 620 insertions(+) create mode 100644 libXaw/specs/TextSource.xml (limited to 'libXaw/specs/TextSource.xml') diff --git a/libXaw/specs/TextSource.xml b/libXaw/specs/TextSource.xml new file mode 100644 index 000000000..51b9ae0c3 --- /dev/null +++ b/libXaw/specs/TextSource.xml @@ -0,0 +1,620 @@ + +TextSrc Object + +Application Header file <X11/Xaw/TextSrc.h> +Class Header file <X11/Xaw/TextSrcP.h> +Class textSrcObjectClass +Class Name TextSrc +Superclass Object + + + + +The TextSrc object is the root object for all text sources. Any new text +source objects should be subclasses of the TextSrc Object. The +TextSrc Class contains all methods the Text widget expects a text +source to export. + + + + +Since all text sources will have some resources in common the +TextSrc defines a few new resources. + + + +Resources + +When creating an TextSrc object instance, the following resources are +retrieved from the argument list or from the resource database: + + + + + + + + + + + + Name + Class + Type + Notes + Default Value + + + + + destroyCallback + Callback + XtCallbackList + + NULL + + + editType + EditType + EditMode + + NULL + + + + + + + +Subclassing the TextSrc + +The only purpose of the TextSrc Object is to be subclassed. It contains +the minimum set of class methods that all text sources must have. All +class methods of the TextSrc must be defined, as the Text widget uses +them all. While all may be inherited, the direct descendant of TextSrc +must specify some of them as TextSrc does not contain enough +information to be a valid text source by itself. Do not try to use the +TextSrc as a valid source for the Text widget; it is not intended to be +used as a source by itself and bad things will probably happen. + + + + + + + + + + + Function + Inherit with + Public Interface + must specify + + + + + Read + XtInheritRead + XawTextSourceRead + yes + + + Replace + XtInheritReplace + XawTextSourceReplace + no + + + Scan + XtInheritScan + XawTextSourceScan + yes + + + Search + XtInheritSearch + XawTextSourceSearch + no + + + SetSelection + XtInheritSetSelection + XawTextSourceSetSelection + no + + + ConvertSelection + XtInheritConvertSelection + XawTextSourceConvertSelection + no + + + + + + +Reading Text. + + +To read the text in a text source use the Read function: + + + + + XawTextPosition Read + Widget w + XawTextPosition pos + XawTextBlock *text_return + int length + + + + + + + + w + + + +Specifies the TextSrc object. + + + + + + pos + + + +Specifies the position of the first character to be read from the text buffer. + + + + + text + + +Returns the text read from the source. + + + + + + length + + + +Specifies the maximum number of characters the TextSrc should +return to the application in text_return. + + + + + + +This function returns the text position immediately after the +characters read from the +text buffer. The function is not required to read length +characters if that many characters are in the file, it may break at +any point that is convenient to the internal structure of the +source. It may take several calls to Read before the desired +portion of the text buffer is fully retrieved. + + + + +Replacing Text. + +To replace or edit the text in a text buffer use the Replace function: + + + + + XawTextPosition Replace + Widget w + XawTextPositionstart, end + XawTextBlock *text + + + + + + w + + +Specifies the TextSrc object. + + + + + start + + +Specifies the position of the first character to be removed from the text +buffer. This is also the location to begin inserting the new text. + + + + + end + + +Specifies the position immediately after the last character to be +removed from the text buffer. + + + + + text + + +Specifies the text to be added to the text source. + + + + + + +This function can return any of the following values: + + + + + XawEditDone + + +The text replacement was successful. + + + + + XawPositionError + + + +The edit mode is XawtextAppend and start is not the last +character of the source. + + + + + XawEditError + + + +Either the Source was read-only or the range to be deleted is larger +than the length of the Source. + + + + + + + +The Replace arguments start and end represent the +text source character positions for the existing text that is to be +replaced by the text in the text block. The characters from +start up to but not including end are deleted, and the +buffer specified by the text block is inserted in their +place. If start and end are equal, no text is deleted and +the new text is inserted after start. + + + + +Scanning the TextSrc + +To search the text source for one of the predefined boundary types use +the Scan function: + + + + + XawTextPosition Scan + Widget w + XawTextPosition position + XawTextScanType type + XawTextScanDirection dir + int count + Boolean include + + + + + + + w + + +Specifies the TextSrc object. + + + + + position + + +Specifies the position to begin scanning the source. + + + + + type + + +Specifies the type of boundary to scan for, may be one of: +XawstPosition, XawstWhiteSpace, XawstEOL, +XawstParagraph, XawstAll. The exact meaning of these +boundaries is left up to the individual text source. + + + + + dir + + +Specifies the direction to scan, may be either XawsdLeft to search + +backward, or XawsdRight to search forward. + + + + + + count + + +Specifies the number of boundaries to scan for. + + + + + include + + +Specifies whether the boundary itself should be included in the scan. + + + + + + + +The Scan function returns the position in the text source of the desired +boundary. It is expected to return a valid address for +all calls made to it, thus if a particular request is made that would take +the text widget beyond the end of the source it must return the +position of that end. + + + + +Searching through a TextSrc + +To search for a particular string use the Search function. + + + + + XawTextPosition Search + Widget w + XawTextPosition position + XawTextScanDirection dir + XawTextBlock *text + + + + + + w + + +Specifies the TextSrc object. + + + + + position + + +Specifies the position to begin the search. + + + + + dir + + +Specifies the direction to search, may be either XawsdLeft to search + +backward, or XawsdRight to search forward. + + + + + + text + + +Specifies a text block containing the text to search for. + + + + + + +This function will search through the text buffer attempting to find a +match for the string in the text block. If a match is found in the +direction specified, then the character location of the first character +in the string is returned. If no text was found then +XawTextSearchError is returned. + + + + + +Text Selections + + + +While many selection types are handled by the Text widget, text sources +may have selection types unknown to the Text widget. When a selection +conversion is requested by the X server the Text widget will first call +the ConvertSelection function, to attempt the selection +conversion. + + + + + Boolean ConvertSelections + Widget w + Atom*selection,*target, *type + caddr_t *value_return + unsignedlong *length_return + int *format_return + + + + + + + w + + + +Specifies the TextSrc object. + + + + + + selection + + + +Specifies the type of selection that was requested (e.g. PRIMARY). + + + + + + target + + + +Specifies the type of the selection that has been requested, which +indicates the desired information about the selection (e.g. Filename, +Text, Window). + + + + + + type + + + +Specifies a pointer to the atom into which the property type of the converted +value of the selection is to be stored. For instance, either file +name or text might have property type XA_STRING. + + + + + + value_return + + + +Returns a pointer into which a pointer to the converted value of the +selection +is to be stored. The selection owner is responsible for allocating +this storage. The memory is considered owned by the toolkit, and is +freed by XtFree when the Intrinsics selection mechanism is done with it. + + + + + + length_return + + + +Returns a pointer into which the number of elements in value is to be stored. +The size of each element is determined by format. + + + + + + format_return + + + +Returns a pointer into which the size in bits of the data elements of the +selection value is to be stored. + + + + + + +If this function returns True then the Text widget will assume +that the source has taken care of converting the selection, Otherwise the +Text widget will attempt to convert the selection itself. + + + +If the source needs to know when the text selection is modified it +should define a SetSelection procedure: + + + + + void SetSelection + Widget w + XawTextPositionstart, end + Atom selection + + + + + + w + + +Specifies the TextSrc object. + + + + + start + + +Specifies the character position of the beginning of the new text selection. + + + + + end + + +Specifies the character position of the end of the new text selection. + + + + + selection + + +Specifies the type of selection that was requested (e.g. PRIMARY). + + + + + + + + -- cgit v1.2.3