1 /**************************************************************************\ 2 * 3 * This file is part of the Coin 3D visualization library. 4 * Copyright (C) by Kongsberg Oil & Gas Technologies. 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public License 8 * ("GPL") version 2 as published by the Free Software Foundation. 9 * See the file LICENSE.GPL at the root directory of this source 10 * distribution for additional information about the GNU GPL. 11 * 12 * For using Coin with software that can not be combined with the GNU 13 * GPL, and for taking advantage of the additional benefits of our 14 * support services, please contact Kongsberg Oil & Gas Technologies 15 * about acquiring a Coin Professional Edition License. 16 * 17 * See http://www.coin3d.org/ for more information. 18 * 19 * Kongsberg Oil & Gas Technologies, Bygdoy Alle 5, 0257 Oslo, NORWAY. 20 * http://www.sim.no/ sales@sim.no coin-support@coin3d.org 21 * 22 \**************************************************************************/ 23 24 #ifndef SOXTFULLVIEWERP_H 25 #define SOXTFULLVIEWERP_H 26 27 #include <Inventor/SbBasic.h> 28 #include <Inventor/Xt/viewers/SoGuiFullViewerP.h> 29 30 class SoXtFullViewer; 31 32 // ************************************************************************ 33 34 // This class contains private data and methods used within the 35 // SoXtFullViewer class. 36 37 class SoXtFullViewerP : public SoGuiFullViewerP 38 { 39 public: 40 SoXtFullViewerP(SoXtFullViewer * publ); 41 ~SoXtFullViewerP(); 42 43 static void setThumbWheelValue(void * wheel, float val); 44 45 static void leftWheelStartCB(Widget, XtPointer, XtPointer); 46 static void leftWheelMotionCB(Widget, XtPointer, XtPointer); 47 static void leftWheelFinishCB(Widget, XtPointer, XtPointer); 48 49 static void bottomWheelStartCB(Widget, XtPointer, XtPointer); 50 static void bottomWheelMotionCB(Widget, XtPointer, XtPointer); 51 static void bottomWheelFinishCB(Widget, XtPointer, XtPointer); 52 53 static void rightWheelStartCB(Widget, XtPointer, XtPointer); 54 static void rightWheelMotionCB(Widget, XtPointer, XtPointer); 55 static void rightWheelFinishCB(Widget, XtPointer, XtPointer); 56 57 void selectedViewing(void); 58 void selectedDecoration(void); 59 void selectedHeadlight(void); 60 61 static void interactbuttonCB(Widget, XtPointer, XtPointer); 62 static void examinebuttonCB(Widget, XtPointer, XtPointer); 63 static void homebuttonCB(Widget, XtPointer, XtPointer); 64 static void sethomebuttonCB(Widget, XtPointer, XtPointer); 65 static void viewallbuttonCB(Widget, XtPointer, XtPointer); 66 static void seekbuttonCB(Widget, XtPointer, XtPointer); 67 68 void seekbuttonClicked(void); 69 70 static void increaseInteractiveCountCB(Widget, XtPointer, XtPointer); 71 static void decreaseInteractiveCountCB(Widget, XtPointer, XtPointer); 72 73 Widget incspeedbutton, decspeedbutton; 74 static void speedIncCB(Widget, XtPointer, XtPointer); 75 static void speedDecCB(Widget, XtPointer, XtPointer); 76 77 SbBool decorations; 78 79 Widget viewerbase, canvas; 80 81 Widget mainlayout; 82 void showDecorationWidgets(SbBool enable); 83 84 Widget buildAppButtonsForm(Widget parent); 85 Widget appButtonsForm; 86 SbPList * appButtonsList; 87 void resetAppPushButtons(void); 88 void layoutAppPushButtons(void); 89 90 Widget viewerButtonsForm; 91 92 struct { 93 Widget pick, view, home, set_home, view_all, seek; 94 } viewerbuttons; 95 96 struct { 97 Pixmap pick, pick_ins; 98 Pixmap view, view_ins; 99 Pixmap home, home_ins; 100 Pixmap set_home, set_home_ins; 101 Pixmap view_all, view_all_ins; 102 Pixmap seek, seek_ins; 103 } pixmaps; 104 105 struct { 106 Widget leftwheel, bottomwheel, rightwheel; 107 } labels; 108 }; 109 110 // ************************************************************************ 111 112 #endif // ! SOXTFULLVIEWERP_H 113