1 #ifndef SOXT_THUMBWHEEL_H_PRIVATE 2 #define SOXT_THUMBWHEEL_H_PRIVATE 3 4 /**************************************************************************\ 5 * 6 * This file is part of the Coin 3D visualization library. 7 * Copyright (C) by Kongsberg Oil & Gas Technologies. 8 * 9 * This library is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License 11 * ("GPL") version 2 as published by the Free Software Foundation. 12 * See the file LICENSE.GPL at the root directory of this source 13 * distribution for additional information about the GNU GPL. 14 * 15 * For using Coin with software that can not be combined with the GNU 16 * GPL, and for taking advantage of the additional benefits of our 17 * support services, please contact Kongsberg Oil & Gas Technologies 18 * about acquiring a Coin Professional Edition License. 19 * 20 * See http://www.coin3d.org/ for more information. 21 * 22 * Kongsberg Oil & Gas Technologies, Bygdoy Alle 5, 0257 Oslo, NORWAY. 23 * http://www.sim.no/ sales@sim.no coin-support@coin3d.org 24 * 25 \**************************************************************************/ 26 27 /* $Id$ */ 28 29 #include <Xm/Xm.h> 30 #include <Xm/PrimitiveP.h> 31 32 #include <Inventor/Xt/widgets/SoXtThumbWheel.h> 33 34 #ifdef __cplusplus 35 extern "C" { 36 #endif /* __cplusplus */ 37 38 /* ********************************************************************** */ 39 40 typedef struct _SoXtThumbWheelClassPart { 41 XtPointer extension; 42 } SoXtThumbWheelClassPart; 43 44 typedef struct _SoXtThumbWheelClassRec { 45 CoreClassPart core_class; 46 XmPrimitiveClassPart primitive_class; 47 SoXtThumbWheelClassPart thumbwheel_class; 48 } SoXtThumbWheelClassRec; 49 50 /* ********************************************************************** */ 51 52 typedef struct _SoXtThumbWheelPart { 53 /* resources */ 54 int orientation; 55 // Pixel sensitive_color; // ABGR format 56 // Pixel insensitive_color; // ABGR format 57 Boolean refresh; 58 XtCallbackList arm_callback; 59 XtCallbackList disarm_callback; 60 XtCallbackList valuechanged_callback; 61 62 /* private data */ 63 float value; 64 GC context; 65 Pixmap * pixmaps; 66 int numpixmaps; // or null-terminate? 67 int currentpixmap; 68 Boolean armed; 69 float arm_value; 70 float prev_value; 71 int arm_position; 72 int prev_position; 73 void * thumbwheel; 74 75 } SoXtThumbWheelPart; 76 77 typedef struct _SoXtThumbWheelRec { 78 CorePart core; 79 XmPrimitivePart primitive; 80 SoXtThumbWheelPart thumbwheel; 81 } SoXtThumbWheelRec; 82 83 #ifndef SoXtNrefresh 84 #define SoXtNrefresh "refresh" 85 #endif 86 87 #ifndef SoXtCRefresh 88 #define SoXtCRefresh "Refresh" 89 #endif 90 91 /* ********************************************************************** */ 92 93 #ifdef __cplusplus 94 } /* extern "C" */ 95 #endif /* __cplusplus */ 96 97 #endif /* ! SOXT_THUMBWHEEL_H_PRIVATE */ 98