1 /* 2 * Motif 3 * 4 * Copyright (c) 1987-2012, The Open Group. All rights reserved. 5 * 6 * These libraries and programs are free software; you can 7 * redistribute them and/or modify them under the terms of the GNU 8 * Lesser General Public License as published by the Free Software 9 * Foundation; either version 2 of the License, or (at your option) 10 * any later version. 11 * 12 * These libraries and programs are distributed in the hope that 13 * they will be useful, but WITHOUT ANY WARRANTY; without even the 14 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 15 * PURPOSE. See the GNU Lesser General Public License for more 16 * details. 17 * 18 * You should have received a copy of the GNU Lesser General Public 19 * License along with these librararies and programs; if not, write 20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth 21 * Floor, Boston, MA 02110-1301 USA 22 */ 23 24 #ifndef _SLIDECP_H 25 #define _SLIDECP_H 26 27 #include <Xm/SlideC.h> 28 #include <X11/IntrinsicP.h> 29 #include <X11/ObjectP.h> 30 #include <Xm/XmP.h> 31 32 #ifdef __cplusplus 33 extern "C" { 34 #endif 35 36 #ifndef XmUNSPECIFIED_POSITION 37 #define XmUNSPECIFIED_POSITION (-1) 38 #endif 39 40 typedef struct { 41 XtPointer extension; 42 } XmSlideContextClassPart; 43 44 typedef struct _XmSlideContextClassRec { 45 ObjectClassPart object_class; 46 XmSlideContextClassPart slide_class; 47 } XmSlideContextClassRec; 48 49 extern XmSlideContextClassRec xmSlideContextClassRec; 50 51 typedef struct _XmSlideContextPart { 52 XtIntervalId id; 53 XtCallbackList slideFinishCallback; 54 XtCallbackList slideMotionCallback; 55 Widget slide_widget; 56 unsigned long interval; 57 Dimension dest_width; 58 Dimension dest_height; 59 Position dest_x; 60 Position dest_y; 61 } XmSlideContextPart; 62 63 typedef struct _XmSlideContextRec { 64 ObjectPart object; 65 XmSlideContextPart slide; 66 } XmSlideContextRec; 67 68 #define Slide_Id(w) (((XmSlideContextWidget)w)->slide.id) 69 #define Slide_Widget(w) (((XmSlideContextWidget)w)->slide.slide_widget) 70 #define Slide_Interval(w) (((XmSlideContextWidget)w)->slide.interval) 71 #define Slide_DestWidth(w) (((XmSlideContextWidget)w)->slide.dest_width) 72 #define Slide_DestHeight(w) (((XmSlideContextWidget)w)->slide.dest_height) 73 #define Slide_DestX(w) (((XmSlideContextWidget)w)->slide.dest_x) 74 #define Slide_DestY(w) (((XmSlideContextWidget)w)->slide.dest_y) 75 #define Slide_FinishCallback(w) (((XmSlideContextWidget)w)->slide.slideFinishCallback) 76 #define Slide_MotionCallback(w) (((XmSlideContextWidget)w)->slide.slideMotionCallback) 77 78 #ifdef __cplusplus 79 } 80 #endif 81 82 #endif 83