summaryrefslogtreecommitdiff
path: root/src/TextSrc.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/TextSrc.h')
-rw-r--r--src/TextSrc.h237
1 files changed, 237 insertions, 0 deletions
diff --git a/src/TextSrc.h b/src/TextSrc.h
new file mode 100644
index 0000000..edd3153
--- /dev/null
+++ b/src/TextSrc.h
@@ -0,0 +1,237 @@
+/*
+ * $XConsortium: TextSrc.h,v 1.11 94/04/17 20:13:15 kaleb Exp $
+ */
+
+/***********************************************************
+
+Copyright (c) 1987, 1988, 1994 X Consortium
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of the X Consortium shall not be
+used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization from the X Consortium.
+
+
+Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
+
+ All Rights Reserved
+
+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 Digital not be
+used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+DIGITAL 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.
+
+******************************************************************/
+
+#ifndef _XawTextSrc_h
+#define _XawTextSrc_h
+
+/***********************************************************************
+ *
+ * TextSrc Object
+ *
+ ***********************************************************************/
+
+#include <X11/Xaw3d/Text.h>
+
+/* Resources:
+
+ Name Class RepType Default Value
+ ---- ----- ------- -------------
+ editType EditType XawTextEditType XawtextRead
+
+*/
+
+/* Class record constants */
+
+extern WidgetClass textSrcObjectClass;
+
+typedef struct _TextSrcClassRec *TextSrcObjectClass;
+typedef struct _TextSrcRec *TextSrcObject;
+
+typedef enum {XawstPositions, XawstWhiteSpace, XawstEOL, XawstParagraph,
+ XawstAll} XawTextScanType;
+typedef enum {Normal, Selected }highlightType;
+typedef enum {XawsmTextSelect, XawsmTextExtend} XawTextSelectionMode;
+typedef enum {XawactionStart, XawactionAdjust, XawactionEnd}
+ XawTextSelectionAction;
+
+/*
+ * Error Conditions:
+ */
+
+#define XawTextReadError -1
+#define XawTextScanError -1
+
+/************************************************************
+ *
+ * Public Functions.
+ *
+ ************************************************************/
+
+_XFUNCPROTOBEGIN
+
+/* Function Name: XawTextSourceRead
+ * Description: This function reads the source.
+ * Arguments: w - the TextSrc Object.
+ * pos - position of the text to retreive.
+ * RETURNED text - text block that will contain returned text.
+ * length - maximum number of characters to read.
+ * Returns: The number of characters read into the buffer.
+ */
+
+extern XawTextPosition XawTextSourceRead(
+#if NeedFunctionPrototypes
+ Widget /* w */,
+ XawTextPosition /* pos */,
+ XawTextBlock* /* text_return */,
+ int /* length */
+#endif
+);
+
+/* Function Name: XawTextSourceReplace.
+ * Description: Replaces a block of text with new text.
+ * Arguments: src - the Text Source Object.
+ * startPos, endPos - ends of text that will be removed.
+ * text - new text to be inserted into buffer at startPos.
+ * Returns: XawEditError or XawEditDone.
+ */
+
+extern int XawTextSourceReplace (
+#if NeedFunctionPrototypes
+ Widget /* w */,
+ XawTextPosition /* start */,
+ XawTextPosition /* end */,
+ XawTextBlock* /* text */
+#endif
+);
+
+/* Function Name: XawTextSourceScan
+ * Description: Scans the text source for the number and type
+ * of item specified.
+ * Arguments: w - the TextSrc Object.
+ * position - the position to start scanning.
+ * type - type of thing to scan for.
+ * dir - direction to scan.
+ * count - which occurance if this thing to search for.
+ * include - whether or not to include the character found in
+ * the position that is returned.
+ * Returns: The position of the text.
+ *
+ */
+
+extern XawTextPosition XawTextSourceScan(
+#if NeedFunctionPrototypes
+ Widget /* w */,
+ XawTextPosition /* position */,
+#if NeedWidePrototypes
+ /* XawTextScanType */ int /* type */,
+ /* XawTextScanDirection */ int /* dir */,
+#else
+ XawTextScanType /* type */,
+ XawTextScanDirection /* dir */,
+#endif
+ int /* count */,
+#if NeedWidePrototypes
+ /* Boolean */ int /* include */
+#else
+ Boolean /* include */
+#endif
+#endif
+);
+
+/* Function Name: XawTextSourceSearch
+ * Description: Searchs the text source for the text block passed
+ * Arguments: w - the TextSource Object.
+ * position - the position to start scanning.
+ * dir - direction to scan.
+ * text - the text block to search for.
+ * Returns: The position of the text we are searching for or
+ * XawTextSearchError.
+ */
+
+extern XawTextPosition XawTextSourceSearch(
+#if NeedFunctionPrototypes
+ Widget /* w */,
+ XawTextPosition /* position */,
+#if NeedWidePrototypes
+ /* XawTextScanDirection */ int /* dir */,
+#else
+ XawTextScanDirection /* dir */,
+#endif
+ XawTextBlock* /* text */
+#endif
+);
+
+/* Function Name: XawTextSourceConvertSelection
+ * Description: Dummy selection converter.
+ * Arguments: w - the TextSrc object.
+ * selection - the current selection atom.
+ * target - the current target atom.
+ * type - the type to conver the selection to.
+ * RETURNED value, length - the return value that has been converted.
+ * RETURNED format - the format of the returned value.
+ * Returns: TRUE if the selection has been converted.
+ *
+ */
+
+extern Boolean XawTextSourceConvertSelection(
+#if NeedFunctionPrototypes
+ Widget /* w */,
+ Atom* /* selection */,
+ Atom* /* target */,
+ Atom* /* type */,
+ XtPointer* /* value_return */,
+ unsigned long* /* length_return */,
+ int* /* format_return */
+#endif
+);
+
+/* Function Name: XawTextSourceSetSelection
+ * Description: allows special setting of the selection.
+ * Arguments: w - the TextSrc object.
+ * left, right - bounds of the selection.
+ * selection - the selection atom.
+ * Returns: none
+ */
+
+extern void XawTextSourceSetSelection(
+#if NeedFunctionPrototypes
+ Widget /* w */,
+ XawTextPosition /* start */,
+ XawTextPosition /* end */,
+ Atom /* selection */
+#endif
+);
+
+_XFUNCPROTOEND
+
+#endif /* _XawTextSrc_h */
+/* DON'T ADD STUFF AFTER THIS #endif */