VIA - Volumetric Image Analysis
|
00001 /* 00002 * $Id: VImageView.h 726 2004-03-08 13:12:45Z lohmann $ 00003 * 00004 * This file defines the public interface to the VImageView widget. 00005 */ 00006 00007 #ifndef V_VImageView_h 00008 #define V_VImageView_h 1 00009 00010 /* 00011 * Copyright 1993, 1994 University of British Columbia 00012 * 00013 * Permission to use, copy, modify, distribute, and sell this software and its 00014 * documentation for any purpose is hereby granted without fee, provided that 00015 * the above copyright notice appears in all copies and that both that 00016 * copyright notice and this permission notice appear in supporting 00017 * documentation. UBC makes no representations about the suitability of this 00018 * software for any purpose. It is provided "as is" without express or 00019 * implied warranty. 00020 * 00021 * Authors: Arthur Pope, Daniel Ko, Dan Razzell, 00022 * UBC Laboratory for Computational Intelligence 00023 */ 00024 00025 /* From the Vista library: */ 00026 #include "viaio/Vlib.h" 00027 #include "viaio/VImage.h" 00028 00029 /* From Xt: */ 00030 #include <X11/Intrinsic.h> 00031 00032 /* For portability: */ 00033 #include <X11/Xfuncproto.h> 00034 00035 #ifdef __cplusplus 00036 extern "C" { 00037 #endif 00038 00039 /* Resources: 00040 00041 Name Class RepType Default Value 00042 ---- ----- ------- ------------- 00043 (from Object) 00044 destroyCallback Callback Pointer NULL 00045 00046 (from RectObj) 00047 ancestorSensitive Sensitive Boolean True 00048 borderWidth BorderWidth Dimension 1 00049 height Height Dimension 0 00050 sensitive Sensitive Boolean True 00051 width Width Dimension 0 00052 x Position Position 0 00053 y Position Position 0 00054 00055 (from Core) 00056 accelerators Accelerators AcceleratorTabl NULL 00057 background Background Pixel White 00058 backgroundPixmap Pixmap Pixmap XtUnspecifiedPixmap 00059 borderColor BorderColor Pixel XtDefaultForeground 00060 colormap Colormap Colormap CopyFromParent 00061 depth Depth Int CopyFromParent 00062 mappedWhenManaged MappedWhenManaged Boolean True 00063 screen Screen Screen XtCopyScreen 00064 translations Translations TranslationTabl 00065 00066 (from VImageView) 00067 absolute Absolute Boolean TRUE 00068 band Band Int 0 00069 columnCenter ColumnCenter Int 0 00070 cursor Cursor Cursor None 00071 exposeCallback Callback Pointer NULL 00072 image Image Pointer NULL 00073 inputCallback Callback Pointer NULL 00074 moveZoomCenterCallback Callback Pointer NULL 00075 proportion Proportion Boolean True 00076 resize Resize Boolean False 00077 rowCenter RowCenter Int 0 00078 usePixmap UsePixmap Boolean TRUE 00079 vColormap VColormap VColormap NULL 00080 zoomInCallback Callback Pointer NULL 00081 zoomLevel ZoomLevel Int 100 00082 zoomOutCallback Callback Pointer NULL 00083 */ 00084 00085 /* Resource names specific to VImageView: */ 00086 #define VxNabsolute "absolute" 00087 #define VxNband "band" 00088 #define VxNcolumnCenter "columnCenter" 00089 #define VxNcursor "cursor" 00090 #define VxNexposeCallback "exposeCallback" 00091 #define VxNforeground "foreground" 00092 #define VxNimage "image" 00093 #define VxNinputCallback "inputCallback" 00094 #define VxNmoveZoomCenterCallback "moveZoomCenterCallback" 00095 #define VxNproportion "proportion" 00096 #define VxNresize "resize" 00097 #define VxNrowCenter "rowCenter" 00098 #define VxNusePixmap "usePixmap" 00099 #define VxNvColormap "vColormap" 00100 #define VxNzoomInCallback "zoomInCallback" 00101 #define VxNzoomOutCallback "zoomOutCallback" 00102 #define VxNzoomLevel "zoomLevel" 00103 00104 /* Class names specific to VImageView: */ 00105 #define VxCAbsolute "Absolute" 00106 #define VxCBand "Band" 00107 #define VxCCallback "Callback" 00108 #define VxCColumnCenter "ColumnCenter" 00109 #define VxCCursor "Cursor" 00110 #define VxCImage "Image" 00111 #define VxCProportion "Proportion" 00112 #define VxCResize "Resize" 00113 #define VxCRowCenter "RowCenter" 00114 #define VxCUsePixmap "UsePixmap" 00115 #define VxCVColormap "VColormap" 00116 #define VxCZoomLevel "ZoomLevel" 00117 00118 /* Specific VImageViewWidget class and instance datatypes: */ 00119 typedef struct V_ImageViewClassRec *VImageViewWidgetClass; 00120 typedef struct V_ImageViewRec *VImageViewWidget; 00121 00122 /* The class constant: */ 00123 extern WidgetClass vImageViewWidgetClass; 00124 00125 /* Convenience routines: */ 00126 extern VBoolean VImageViewWindowToImage ( 00127 #if NeedFunctionPrototypes 00128 Widget /* w */, 00129 int /* x */, 00130 int /* y */, 00131 double * /* rowp */, 00132 double * /* columnp */ 00133 #endif 00134 ); 00135 00136 extern VBoolean VImageViewClipToImage ( 00137 #if NeedFunctionPrototypes 00138 Widget /* w */, 00139 int /* x */, 00140 int /* y */, 00141 double * /* rowp */, 00142 double * /* columnp */ 00143 #endif 00144 ); 00145 00146 extern VBoolean VImageViewImageToWindow ( 00147 #if NeedFunctionPrototypes 00148 Widget /* w */, 00149 double /* row */, 00150 double /* column */, 00151 int * /* xp */, 00152 int * /* yp */ 00153 #endif 00154 ); 00155 00156 extern VBoolean VImageViewPixelSize ( 00157 #if NeedFunctionPrototypes 00158 Widget /* w */, 00159 double * /* width */, 00160 double * /* height */ 00161 #endif 00162 ); 00163 00164 extern void VImageViewRedraw ( 00165 #if NeedFunctionPrototypes 00166 Widget /* w */ 00167 #endif 00168 ); 00169 00170 #ifdef __cplusplus 00171 } 00172 #endif 00173 00174 #endif /* V_VImageView_h */