1 2 /*- 3 # X-BASED SKEWB 4 # 5 # Skewb.h 6 # 7 ### 8 # 9 # Copyright (c) 1994 - 99 David Albert Bagley, bagleyd@tux.org 10 # 11 # All Rights Reserved 12 # 13 # Permission to use, copy, modify, and distribute this software and 14 # its documentation for any purpose and without fee is hereby granted, 15 # provided that the above copyright notice appear in all copies and 16 # that both that copyright notice and this permission notice appear in 17 # supporting documentation, and that the name of the author not be 18 # used in advertising or publicity pertaining to distribution of the 19 # software without specific, written prior permission. 20 # 21 # This program is distributed in the hope that it will be "playable", 22 # but WITHOUT ANY WARRANTY; without even the implied warranty of 23 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 24 # 25 */ 26 27 /* Public header file for Skewb */ 28 29 #ifndef _XtSkewb_h 30 #define _XtSkewb_h 31 32 /*********************************************************************** 33 * 34 * Skewb Widget 35 * 36 ***********************************************************************/ 37 38 #define XtNselectCallback "selectCallback" 39 #define XtNuserName "userName" 40 #define XtNorient "orient" 41 #define XtNmono "mono" 42 #define XtNreverse "reverse" 43 #define XtNface "face" 44 #define XtNpos "position" 45 #define XtNdirection "direction" 46 #define XtNpractice "practice" 47 #define XtNstart "start" 48 #define XtNpieceBorder "pieceBorder" 49 #define XtNfaceColor0 "faceColor0" 50 #define XtNfaceColor1 "faceColor1" 51 #define XtNfaceColor2 "faceColor2" 52 #define XtNfaceColor3 "faceColor3" 53 #define XtNfaceColor4 "faceColor4" 54 #define XtNfaceColor5 "faceColor5" 55 #define XtCUserName "UserName" 56 #define XtCOrient "Orient" 57 #define XtCMono "Mono" 58 #define XtCReverse "Reverse" 59 #define XtCFace "Face" 60 #define XtCPos "Position" 61 #define XtCDirection "Direction" 62 63 #define SKEWB_RESTORE (-4) 64 #define SKEWB_RESET (-3) 65 #define SKEWB_ILLEGAL (-1) 66 #define SKEWB_IGNORE (-1) 67 #define SKEWB_MOVED 0 68 #define SKEWB_CONTROL 1 69 #define SKEWB_SOLVED 2 70 #define SKEWB_PRACTICE 3 71 #define SKEWB_RANDOMIZE 4 72 #define SKEWB_DEC 5 73 #define SKEWB_ORIENT 6 74 #define SKEWB_INC 7 75 #define SKEWB_COMPUTED 8 76 #define SKEWB_UNDO 9 77 78 typedef struct _SkewbClassRec *SkewbWidgetClass; 79 typedef struct _SkewbRec *SkewbWidget; 80 81 extern WidgetClass skewbWidgetClass; 82 83 typedef struct { 84 XEvent *event; 85 int reason; 86 int face, position, direction; 87 } skewbCallbackStruct; 88 89 #endif /* _XtSkewb_h */ 90 /* DON'T ADD STUFF AFTER THIS #endif */ 91