Coin Logo http://www.sim.no
http://www.coin3d.org

SoQtCursor.h

00001 #ifndef SOQT_CURSOR_H
00002 #define SOQT_CURSOR_H
00003 
00004 // src/Inventor/Qt/SoQtCursor.h.  Generated from SoGuiCursor.h.in by configure.
00005 
00006 /**************************************************************************\
00007  *
00008  *  This file is part of the Coin 3D visualization library.
00009  *  Copyright (C) by Kongsberg Oil & Gas Technologies.
00010  *
00011  *  This library is free software; you can redistribute it and/or
00012  *  modify it under the terms of the GNU General Public License
00013  *  ("GPL") version 2 as published by the Free Software Foundation.
00014  *  See the file LICENSE.GPL at the root directory of this source
00015  *  distribution for additional information about the GNU GPL.
00016  *
00017  *  For using Coin with software that can not be combined with the GNU
00018  *  GPL, and for taking advantage of the additional benefits of our
00019  *  support services, please contact Kongsberg Oil & Gas Technologies
00020  *  about acquiring a Coin Professional Edition License.
00021  *
00022  *  See http://www.coin3d.org/ for more information.
00023  *
00024  *  Kongsberg Oil & Gas Technologies, Bygdoy Alle 5, 0257 Oslo, NORWAY.
00025  *  http://www.sim.no/  sales@sim.no  coin-support@coin3d.org
00026  *
00027 \**************************************************************************/
00028 
00029 #include <Inventor/SbLinear.h>
00030 #include <Inventor/Qt/SoQtBasic.h>
00031 
00032 class SOQT_DLL_API SoQtCursor {
00033 public:
00034   static void initClass(void);
00035 
00036   struct CustomCursor {
00037     SbVec2s dim;
00038     SbVec2s hotspot;
00039     unsigned char * bitmap;
00040     unsigned char * mask;
00041   };
00042 
00043 
00044   // FIXME: add more default shapes. 20011119 pederb.
00045   enum Shape {
00046     CUSTOM_BITMAP = -1,
00047     DEFAULT = 0,
00048     BUSY,
00049     CROSSHAIR,
00050     UPARROW
00051   };
00052   
00053   SoQtCursor(void);
00054   SoQtCursor(const Shape shape);
00055   SoQtCursor(const CustomCursor * cc);
00056   SoQtCursor(const SoQtCursor & cursor);
00057   ~SoQtCursor();
00058 
00059   SoQtCursor & operator=(const SoQtCursor & c);
00060 
00061   Shape getShape(void) const;
00062   void setShape(const Shape shape);
00063 
00064   const CustomCursor & getCustomCursor(void) const;
00065 
00066   static const SoQtCursor & getZoomCursor(void);
00067   static const SoQtCursor & getPanCursor(void);
00068   static const SoQtCursor & getRotateCursor(void);
00069   static const SoQtCursor & getBlankCursor(void);
00070   
00071 private:
00072   void commonConstructor(const Shape shape, const CustomCursor * cc);
00073 
00074   Shape shape;
00075   CustomCursor * cc;
00076 };
00077 
00078 #endif // ! SOQT_CURSOR_H

Copyright © 1998-2010 by Kongsberg Oil & Gas Technologies. All rights reserved.

Generated on Thu Mar 4 04:26:02 2010 for SoQt by Doxygen 1.6.1.