1eaef79e5Smrg/* 2eaef79e5Smrg 3eaef79e5SmrgCopyright 1989, 1998 The Open Group 4eaef79e5Smrg 5eaef79e5SmrgPermission to use, copy, modify, distribute, and sell this software and its 6eaef79e5Smrgdocumentation for any purpose is hereby granted without fee, provided that 7eaef79e5Smrgthe above copyright notice appear in all copies and that both that 8eaef79e5Smrgcopyright notice and this permission notice appear in supporting 9eaef79e5Smrgdocumentation. 10eaef79e5Smrg 11eaef79e5SmrgThe above copyright notice and this permission notice shall be included 12eaef79e5Smrgin all copies or substantial portions of the Software. 13eaef79e5Smrg 14eaef79e5SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15eaef79e5SmrgOR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16eaef79e5SmrgMERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 17eaef79e5SmrgIN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR 18eaef79e5SmrgOTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 19eaef79e5SmrgARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 20eaef79e5SmrgOTHER DEALINGS IN THE SOFTWARE. 21eaef79e5Smrg 22eaef79e5SmrgExcept as contained in this notice, the name of The Open Group shall 23eaef79e5Smrgnot be used in advertising or otherwise to promote the sale, use or 24eaef79e5Smrgother dealings in this Software without prior written authorization 25eaef79e5Smrgfrom The Open Group. 26eaef79e5Smrg 27eaef79e5Smrg*/ 28eaef79e5Smrg 29eaef79e5Smrg/* 30eaef79e5Smrg * Author: Davor Matic, MIT X Consortium 31eaef79e5Smrg */ 32eaef79e5Smrg 33eaef79e5Smrg#ifndef _Requests_h 34eaef79e5Smrg#define _Requests_h 35eaef79e5Smrg 36eaef79e5Smrgtypedef int (*DrawOnePointProc)(Widget, Position, Position, int); 37eaef79e5Smrgtypedef int (*DrawTwoPointProc)(Widget, Position, Position, 38eaef79e5Smrg Position, Position, int); 39eaef79e5Smrgtypedef int (*InterfaceProc)(Widget); 40eaef79e5Smrg 41eaef79e5Smrgtypedef struct { 42eaef79e5Smrg Boolean success; 43eaef79e5Smrg Position at_x, at_y; 44eaef79e5Smrg Position from_x, from_y, 45eaef79e5Smrg to_x, to_y; 46eaef79e5Smrg XtPointer draw; 47eaef79e5Smrg int value; 48eaef79e5Smrg Time btime; 49eaef79e5Smrg int state; 50eaef79e5Smrg} BWStatus; 51eaef79e5Smrg 52eaef79e5Smrgextern void OnePointEngage ( Widget w, BWStatus *status, XtPointer draw, int *state ); 53eaef79e5Smrgextern void OnePointTerminate ( Widget w, BWStatus *status, XtPointer draw ); 54eaef79e5Smrgextern void OnePointTerminateTransparent ( Widget w, BWStatus *status, XtPointer draw ); 55eaef79e5Smrgextern void DragOnePointEngage ( Widget w, BWStatus *status, XtPointer draw, int *state ); 56eaef79e5Smrgextern void DragOnePointTerminate ( Widget w, BWStatus *status, XtPointer client_data ); 57eaef79e5Smrgextern void TwoPointsEngage ( Widget w, BWStatus *status, XtPointer draw, int *state ); 58eaef79e5Smrgextern void TwoPointsTerminate ( Widget w, BWStatus *status, XtPointer draw ); 59eaef79e5Smrgextern void TwoPointsTerminateTransparent ( Widget w, BWStatus *status, XtPointer draw ); 60eaef79e5Smrgextern void TwoPointsTerminateTimed ( Widget w, BWStatus *status, XtPointer draw ); 61eaef79e5Smrgextern void DragTwoPointsEngage ( Widget w, BWStatus *status, XtPointer draw, int *state ); 62eaef79e5Smrgextern void DragTwoPointsTerminate ( Widget w, BWStatus *status, XtPointer draw ); 63eaef79e5Smrgextern void Interface ( Widget w, BWStatus *status, XtPointer action ); 64eaef79e5Smrgextern void Paste ( Widget w, Position at_x, Position at_y, int value ); 65eaef79e5Smrg 66eaef79e5Smrgextern void BWDragMarked(Widget w, Position at_x, Position at_y); 67eaef79e5Smrgextern void BWDragStored(Widget w, Position at_x, Position at_y); 68eaef79e5Smrgextern void BWCopy(Widget w, Position at_x, Position at_y, int value); 69eaef79e5Smrgextern void BWMove(Widget w, Position at_x, Position at_y, int value); 70eaef79e5Smrgextern void BWRestore(Widget w, Position at_x, Position at_y, int value); 71eaef79e5Smrgextern void BWDrawPoint(Widget w, Position x, Position y, bit value); 72cbc4e2beSmrgextern void BWBlindLine(Widget w, Position from_x, Position from_y, 73eaef79e5Smrg Position to_x, Position to_y, int value); 74eaef79e5Smrgextern void BWDrawHotSpot(Widget w, Position x, Position y, int value); 75cbc4e2beSmrgextern void BWZoomIn(Widget w, Position from_x, Position from_y, 76eaef79e5Smrg Position to_x, Position to_y); 77eaef79e5Smrg 78cbc4e2beSmrgextern void OnePointHandler(Widget w, XtPointer client_data, 79eaef79e5Smrg XEvent *event, Boolean *cont); 80cbc4e2beSmrgextern void TwoPointsHandler(Widget w, XtPointer client_data, 81eaef79e5Smrg XEvent *event, Boolean *cont); 82cbc4e2beSmrgextern void DragTwoPointsHandler(Widget w, XtPointer client_data, 83eaef79e5Smrg XEvent *event, Boolean *cont); 84eaef79e5Smrg 85eaef79e5Smrg#endif /* _Requests_h */ 86