00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef _SO_IMAGE_BACKGROUND_H_
00025 #define _SO_IMAGE_BACKGROUND_H_
00026
00027 #include <Inventor/fields/SoSFFilePathString.h>
00028 #include <Inventor/fields/SoSFEnum.h>
00029 #include <Inventor/fields/SoSFImage.h>
00030 #include <Inventor/SbString.h>
00031
00032 #include <Inventor/nodes/SoBackground.h>
00033
00034 class SoFieldSensor;
00035 class SbRasterImage;
00036
00037 #ifdef _MSC_VER
00038 #pragma warning( push )
00039 #pragma warning(disable:4251)
00040 #endif
00041
00042 SO_PIMPL_PUBLIC_DECLARATION(SoImageBackground)
00043
00044
00094 class SoImageBackground : public SoBackground {
00095
00096 SO_PIMPL_PUBLIC_HEADER(SoImageBackground)
00097 SO_NODE_HEADER(SoImageBackground);
00098
00099 public:
00100
00102 enum Style {
00106 NONE ,
00111 CENTER ,
00116 LOWER_LEFT ,
00121 UPPER_LEFT ,
00126 UPPER_RIGHT,
00131 LOWER_RIGHT,
00136 STRETCH ,
00141 TILE,
00147 CROP,
00153 FIT
00154 };
00155
00156
00157
00169 SoSFFilePathString filename;
00170
00177 SoSFImage image;
00178
00183 SoSFEnum style;
00184
00188 SoImageBackground();
00189
00190 private:
00191
00192
00193
00194 static void initClass();
00195 static void exitClass();
00196
00198 virtual void notify( SoNotList *list );
00199
00200 private:
00201
00202
00203
00204
00205 virtual void GLRender(SoGLRenderAction *action);
00206
00207 private:
00208
00209
00210 virtual ~SoImageBackground();
00211
00212
00213 virtual SbBool readInstance(SoInput *in, unsigned short flags);
00214
00215 private:
00216 void commonConstructor();
00217 };
00218
00219 #ifdef _MSC_VER
00220 #pragma warning( pop )
00221 #endif
00222
00223 #endif //SoImageBackground
00224
00225