NCBI C Toolkit Cross Reference

C/vibrant/picture.h


  1 /*   picture.h
  2 * ===========================================================================
  3 *
  4 *                            PUBLIC DOMAIN NOTICE
  5 *            National Center for Biotechnology Information (NCBI)
  6 *
  7 *  This software/database is a "United States Government Work" under the
  8 *  terms of the United States Copyright Act.  It was written as part of
  9 *  the author's official duties as a United States Government employee and
 10 *  thus cannot be copyrighted.  This software/database is freely available
 11 *  to the public for use. The National Library of Medicine and the U.S.
 12 *  Government do not place any restriction on its use or reproduction.
 13 *  We would, however, appreciate having the NCBI and the author cited in
 14 *  any work or product based on this material
 15 *
 16 *  Although all reasonable efforts have been taken to ensure the accuracy
 17 *  and reliability of the software and data, the NLM and the U.S.
 18 *  Government do not and cannot warrant the performance or results that
 19 *  may be obtained by using this software or data. The NLM and the U.S.
 20 *  Government disclaim all warranties, express or implied, including
 21 *  warranties of performance, merchantability or fitness for any particular
 22 *  purpose.
 23 *
 24 * ===========================================================================
 25 *
 26 * File Name:  picture.h
 27 *
 28 * Author:  Jonathan Kans, Alex Smirnov, Jill Shermer
 29 *
 30 * Version Creation Date:   10/23/92
 31 *
 32 * $Revision: 6.15 $
 33 *
 34 * File Description: 
 35 *
 36 * Modifications:  
 37 * --------------------------------------------------------------------------
 38 * $Log: picture.h,v $
 39 * Revision 6.15  2004/02/17 19:22:54  johnson
 40 * make segment ID consistly unsigned
 41 *
 42 * Revision 6.14  2003/03/18 17:00:10  kans
 43 * Nlm_AddSilentSegRect does not absorb clicks, SegRect reverted to absorb clicks, so desktop click responsiveness is maintained
 44 *
 45 * Revision 6.13  2002/08/07 18:13:42  kans
 46 * G/SetPrimitiveIDs, itemID is Uint4
 47 *
 48 * Revision 6.12  2002/03/07 15:53:45  kans
 49 * added SetSegmentVisibleFlag to set/clear the visible flag before attaching to a viewer
 50 *
 51 * Revision 6.11  1999/10/13 17:45:46  kans
 52 * added entityID, itemID, and itemtype to primitive internal structure, added Get and Set functions
 53 *
 54 * Revision 6.10  1999/10/04 19:39:09  kans
 55 * include vibdefns.h
 56 *
 57 * Revision 6.9  1999/10/04 17:16:32  kans
 58 * include ncbidraw.h instead of vibrant.h, a couple Nlm_ prefixes
 59 *
 60 * Revision 6.8  1998/07/01 18:27:43  vakatov
 61 * Use "const" qualifier somewhere
 62 *
 63 * Revision 6.7  1998/06/30 00:32:03  vakatov
 64 * Nlm_AddAttribute():  pass "color" as constant
 65 *
 66 * Revision 6.6  1998/06/01 17:29:20  vakatov
 67 * Extended rounded rect. options -- let it roundup only two(adjacent)
 68 * corners(see "flags" arg in Nlm_AddRoundedRectangle())
 69 *
 70 * Revision 6.5  1998/04/27 16:05:46  vakatov
 71 * + AddRoundedRectangle()
 72 *
 73 * Revision 6.4  1997/12/16 18:38:36  kans
 74 * sentinel draw callback has draw info context parameter
 75 *
 76 * Revision 6.3  1997/12/15 18:10:44  kans
 77 * added cleanup data function to sentinel
 78 *
 79 * Revision 6.2  1997/11/13 21:41:34  vakatov
 80 * Added "sentinel rectangle" primitive[Nlm_AddSntRectangle] which
 81 * calls its callback procedure[Nlm_SntOnDrawProc] on each redraw
 82 *
 83 * Revision 6.1  1997/10/30 20:01:43  vakatov
 84 * Added Nlm_PrimitiveBox()
 85 *
 86 * Revision 5.1  1997/07/02 18:35:53  vakatov
 87 * Nlm_DeletePrim() redesigned/rewritten to guarantee prim. list consistency
 88 *
 89 * Revision 4.2  1996/03/18  20:41:36  vakatov
 90 * ChangeAddPrimOrder(...) function allows one to specify the order of adding
 91 * primitives(or segments) to a picture
 92 *
 93 * 022495   Alex
 94 * ==========================================================================
 95 */
 96 
 97 #ifndef _PICTURE_
 98 #define _PICTURE_
 99 
100 #ifndef _NCBIDRAW_
101 #include <ncbidraw.h>
102 #endif
103 
104 #ifndef _VIBDEFNS_
105 #include <vibdefns.h>
106 #endif
107 
108 #ifdef __cplusplus
109 extern "C" {
110 #endif
111 
112 /*****************************************************************************
113 *
114 *   STRUCTURE TYPEDEFS
115 *
116 *****************************************************************************/
117 
118 typedef struct Nlm_segment {
119   Nlm_VoidPtr  dummy;
120 } PNTR Nlm_SegmenT;
121 
122 typedef struct Nlm_primitive {
123   Nlm_VoidPtr  dummy;
124 } PNTR Nlm_PrimitivE;
125 
126 /*  BoxInfo stores the world coordinates of a rectangle */
127 
128 typedef struct Nlm_boxinfo {
129   Nlm_Int4  left;
130   Nlm_Int4  top;
131   Nlm_Int4  right;
132   Nlm_Int4  bottom;
133 } Nlm_BoxInfo, PNTR Nlm_BoxPtr;
134 
135 /*  PntInfo stores the world coordinates of a point */
136 
137 typedef struct Nlm_pntinfo {
138   Nlm_Int4  x;
139   Nlm_Int4  y;
140 } Nlm_PntInfo, PNTR Nlm_PntPtr;
141 
142 /*****************************************************************************
143 *
144 *   GENERIC PRIMITIVE DEFS
145 *
146 *****************************************************************************/
147 
148 typedef struct Nlm_primdrawctxt {
149   Nlm_VoidPtr  dummy;
150 } PNTR Nlm_PrimDrawContext;
151 
152 typedef struct Nlm_primhittestctxt {
153   Nlm_VoidPtr  dummy;
154 } PNTR Nlm_PrimHitContext;
155 
156 typedef void (*Nlm_PrimDrawProc) PROTO((Nlm_VoidPtr pextra, 
157 Nlm_PrimDrawContext pdc));
158 typedef Nlm_Boolean (*Nlm_PrimHitTestProc) PROTO((Nlm_VoidPtr pextra, 
159 Nlm_PrimHitContext phc));
160 typedef Nlm_Boolean (*Nlm_PrimOffsetProc) PROTO((Nlm_VoidPtr pextra, 
161 Nlm_Int4 deltaX, Nlm_Int4 deltaY));
162 typedef Nlm_Boolean (*Nlm_PrimGetLimitsProc) PROTO(( Nlm_VoidPtr pextra, 
163 Nlm_Int4 scaleX, Nlm_Int4 scaleY, Nlm_BoxPtr pLimits));
164 typedef void (*Nlm_PrimCleanupProc) PROTO((Nlm_VoidPtr pextra));
165 
166 /* The following struct may be changed with the next version.
167 Use functions ResetPrimDef(), Nlm_SetPrimDrawProc(), etc, instead
168 of Nlm_PrimDef = { values } */
169 
170 typedef struct Nlm_primdef {
171   Nlm_PrimDrawProc      draw;
172   Nlm_PrimHitTestProc   hittest;
173   Nlm_PrimOffsetProc    offset;
174   Nlm_PrimCleanupProc   cleanup;
175   Nlm_PrimGetLimitsProc getlimits;
176 } Nlm_PrimDef, PNTR Nlm_PrimDefPtr;
177 
178 extern void Nlm_ResetPrimDef PROTO((Nlm_PrimDefPtr)); 
179 extern void Nlm_SetPrimDrawProc PROTO((Nlm_PrimDrawProc)); 
180 extern void Nlm_SetPrimHitTestProc PROTO((Nlm_PrimHitTestProc));
181 extern void Nlm_SetPrimOffsetProc PROTO((Nlm_PrimOffsetProc));
182 extern void Nlm_SetPrimGetLimitsProc PROTO((Nlm_PrimGetLimitsProc));
183 extern void Nlm_SetPrimCleanupProc PROTO((Nlm_PrimCleanupProc));
184 
185 /* helper functions for callbacks */
186 
187 extern Nlm_BoxPtr  Nlm_GetWorldWindow PROTO((Nlm_PrimDrawContext pdc));
188 extern Nlm_Int4    Nlm_GetScaleX PROTO((Nlm_PrimDrawContext pdc));
189 extern Nlm_Int4    Nlm_GetScaleY PROTO((Nlm_PrimDrawContext pdc));
190 extern Nlm_Int4    Nlm_GetOffsetX PROTO((Nlm_PrimDrawContext pdc));
191 extern Nlm_Int4    Nlm_GetOffsetY PROTO((Nlm_PrimDrawContext pdc));
192 extern Nlm_Boolean Nlm_isPrimInWindow PROTO((Nlm_PrimDrawContext pdc));
193 extern Nlm_Int1    Nlm_GetPrimHligh PROTO((Nlm_PrimDrawContext pdc));
194 extern Nlm_BoxPtr  Nlm_GetHitWindow PROTO((Nlm_PrimHitContext phc));
195 extern void        Nlm_SetPrimAttribute PROTO((Nlm_PrimDrawContext pdc,
196                                                Nlm_Uint1 flags ));
197 extern void        Nlm_RestorePrimAttribute PROTO((Nlm_PrimDrawContext pdc));
198 
199 /*****************************************************************************
200 *
201 *   SYMBOL DEFINES
202 *
203 *****************************************************************************/
204 
205 /*  Attribute flag bits */
206 
207 #define NO_ATTS             0
208 #define COLOR_ATT           1
209 #define STYLE_ATT           2
210 #define SHADING_ATT         4
211 #define WIDTH_ATT           8
212 #define MODE_ATT           16
213 
214 /*  Color specifications */
215 
216 extern Uint1 BLACK_COLOR [3];
217 extern Uint1 WHITE_COLOR [3];
218 extern Uint1 RED_COLOR [3];
219 extern Uint1 GREEN_COLOR [3];
220 extern Uint1 BLUE_COLOR [3];
221 extern Uint1 YELLOW_COLOR [3];
222 extern Uint1 CYAN_COLOR [3];
223 extern Uint1 MAGENTA_COLOR [3];
224 
225 /*  Line styles */
226 
227 #define NO_LINE_STYLE          0
228 #define SOLID_LINE             1
229 #define DOTTED_LINE            2
230 #define DASHED_LINE            3
231 
232 /*  Shading styles */
233 
234 #define NO_SHADING             0
235 #define SOLID_SHADING          1
236 #define DARK_SHADING           2
237 #define MEDIUM_SHADING         3
238 #define LIGHT_SHADING          4
239 #define EMPTY_SHADING          5
240 
241 #define THIN_HORIZ_SHADING     6
242 #define THIN_VERT_SHADING      7
243 #define THICK_HORIZ_SHADING    8
244 #define THICK_VERT_SHADING     9
245 
246 #define THIN_NESW_SHADING     10
247 #define THIN_NWSE_SHADING     11
248 #define THICK_NESW_SHADING    12
249 #define THICK_NWSE_SHADING    13
250 
251 /*  Pen width */
252 
253 #define NO_PEN_WIDTH           0
254 #define STD_PEN_WIDTH          1
255 #define PEN_MAX                6
256 
257 /*  Mode specifications */
258 
259 #define NO_MODE                0
260 #define COPY_MODE              1
261 #define MERGE_MODE             2
262 #define INVERT_MODE            3
263 #define ERASE_MODE             4
264 
265 /*  Rectangle arrow direction */
266 
267 #define NO_ARROW               0
268 #define LEFT_ARROW             1
269 #define RIGHT_ARROW            2
270 #define UP_ARROW               3
271 #define DOWN_ARROW             4
272 
273 /*  Symbol types */
274 
275 #define RECT_SYMBOL            1
276 #define DIAMOND_SYMBOL         2
277 #define OVAL_SYMBOL            3
278 #define LEFT_TRIANGLE_SYMBOL   4
279 #define RIGHT_TRIANGLE_SYMBOL  5
280 #define UP_TRIANGLE_SYMBOL     6
281 #define DOWN_TRIANGLE_SYMBOL   7
282 
283 /*  Alignment specifications, relative to point */
284 
285 #define MIDDLE_CENTER          1
286 #define UPPER_LEFT             2
287 #define LOWER_LEFT             3
288 #define UPPER_RIGHT            4
289 #define LOWER_RIGHT            5
290 #define UPPER_CENTER           6
291 #define LOWER_CENTER           7
292 #define MIDDLE_LEFT            8
293 #define MIDDLE_RIGHT           9
294 
295 /*  Orientation specifications, relative to point */
296 
297 #define HORIZ_LEFT            11
298 #define HORIZ_CENTER          12
299 #define HORIZ_RIGHT           13
300 #define VERT_ABOVE            14
301 #define VERT_MIDDLE           15
302 #define VERT_BELOW            16
303 
304 /*  Text sizes */
305 
306 #define SMALL_TEXT             1
307 #define MEDIUM_TEXT            2
308 #define LARGE_TEXT             3
309 
310 /*  Segment highlight style */
311 
312 #define PLAIN_SEGMENT          0
313 #define FRAME_SEGMENT          1
314 #define FILL_SEGMENT           2
315 #define FRAME_CONTENTS         3
316 #define FILL_CONTENTS          4
317 #define OUTLINE_SEGMENT        5
318 #define OUTLINE_CONTENTS       6
319 
320 /*  Primitive highlight style */
321 
322 #define PLAIN_PRIMITIVE        0
323 #define FRAME_PRIMITIVE        1
324 #define FILL_PRIMITIVE         2
325 #define OUTLINE_PRIMITIVE      3
326 
327 typedef Nlm_Boolean (*Nlm_SegmentExploreProc) PROTO((Nlm_SegmenT seg, 
328 Nlm_PrimitivE prim, Nlm_Uint2 segID, Nlm_Uint2 primID, Nlm_Uint2 primCt, 
329 Nlm_VoidPtr userdata));
330 
331 /*****************************************************************************
332 *
333 *   FUNCTION PROTOTYPES
334 *
335 *****************************************************************************/
336 
337 extern Nlm_SegmenT   Nlm_CreatePicture  PROTO((void));
338 extern Nlm_SegmenT   Nlm_DeletePicture  PROTO((Nlm_SegmenT picture));
339 
340 extern Nlm_SegmenT   Nlm_CreateSegment  PROTO((Nlm_SegmenT parent, 
341 Uint2 segID, Int4 maxScale));
342 extern Nlm_SegmenT   Nlm_ResetSegment   PROTO((Nlm_SegmenT segment));
343 extern Nlm_SegmenT   Nlm_DeleteSegment  PROTO((Nlm_SegmenT segment));
344 
345 extern Nlm_SegmenT   Nlm_ParentSegment  PROTO((Nlm_SegmenT segment));
346 extern Nlm_Uint2     Nlm_SegmentID      PROTO((Nlm_SegmenT segment));
347 extern Nlm_Boolean   Nlm_SegmentVisible PROTO((Nlm_SegmenT segment));
348 extern Nlm_Int1      Nlm_SegmentStyle   PROTO((Nlm_SegmenT segment));
349 extern void          Nlm_SegmentBox     PROTO((Nlm_SegmenT segment, 
350 Nlm_BoxPtr box));
351 
352 extern void          Nlm_AddAttribute   PROTO((Nlm_SegmenT parent, 
353 Nlm_Uint1 flags, const Nlm_Uint1* color, Nlm_Int1 linestyle, Nlm_Int1 shading, 
354 Nlm_Int1 penwidth, Nlm_Int1 mode));
355 extern void          Nlm_SetDefArrowSize PROTO((Nlm_Int1 arrowSize));
356 extern Nlm_PrimitivE Nlm_AddPrimitive PROTO((Nlm_PrimDefPtr pdp,
357 Nlm_SegmenT parent, Nlm_Uint2 primID, Nlm_VoidPtr pextra, Nlm_Int2 extrasize));
358 extern Nlm_PrimitivE Nlm_AddInvFrame     PROTO((Nlm_SegmenT parent, 
359 Nlm_Int4 left, Nlm_Int4 top, Nlm_Int4 right, Nlm_Int4 bottom, Nlm_Uint2 primID));
360 extern Nlm_PrimitivE Nlm_AddRectangle   PROTO((Nlm_SegmenT parent, 
361 Nlm_Int4 left, Nlm_Int4 top, Nlm_Int4 right, Nlm_Int4 bottom, Nlm_Int2 arrow,
362 Nlm_Boolean fill, Nlm_Uint2 primID));
363 
364 #define ROREC_TOP    0x1
365 #define ROREC_BOTTOM 0x2
366 #define ROREC_LEFT   0x4
367 #define ROREC_RIGHT  0x8
368 extern Nlm_PrimitivE Nlm_AddRoundedRectangle PROTO((Nlm_SegmenT parent, 
369 Nlm_Int4 left, Nlm_Int4 top, Nlm_Int4 right, Nlm_Int4 bottom,
370 Nlm_Int4 oval_w, Nlm_Int4 oval_h, Nlm_Boolean fill, Uint4 flags,
371 Nlm_Uint2 primID));
372 
373 extern Nlm_PrimitivE Nlm_AddSegRect     PROTO((Nlm_SegmenT parent, 
374 Nlm_Boolean fill, Nlm_Uint2 primID));
375 extern Nlm_PrimitivE Nlm_AddSilentSegRect PROTO((Nlm_SegmenT parent, 
376 Nlm_Boolean fill, Nlm_Uint2 primID));
377 extern Nlm_PrimitivE Nlm_AddLine        PROTO((Nlm_SegmenT parent, 
378 Nlm_Int4 pnt1X, Nlm_Int4 pnt1Y, Nlm_Int4 pnt2X, Nlm_Int4 pnt2Y, 
379 Nlm_Boolean arrow, Nlm_Uint2 primID));
380 extern Nlm_PrimitivE Nlm_AddSymbol      PROTO((Nlm_SegmenT parent, 
381 Nlm_Int4 pntX, Nlm_Int4 pntY, Nlm_Int2 symbol, Nlm_Boolean fill, 
382 Nlm_Int2 align, Nlm_Uint2 primID));
383 extern Nlm_PrimitivE Nlm_AddBitmap      PROTO((Nlm_SegmenT parent, 
384 Nlm_Int4 pntX, Nlm_Int4 pntY, Nlm_Int2 width, Nlm_Int2 height, 
385 Nlm_Uint1Ptr data, Nlm_Int2 align, Nlm_Uint2 primID));
386 extern Nlm_PrimitivE Nlm_AddMarker      PROTO((Nlm_SegmenT parent, 
387 Nlm_Int4 pntX, Nlm_Int4 pntY, Nlm_Int2 length, Nlm_Int2 orient, 
388 Nlm_Uint2 primID));
389 extern Nlm_PrimitivE Nlm_AddLabel       PROTO((Nlm_SegmenT parent, 
390 Nlm_Int4 pntX, Nlm_Int4 pntY, const Nlm_Char* string, Nlm_Int2 size, 
391 Nlm_Int2 offset, Nlm_Int2 align, Nlm_Uint2 primID));
392 extern Nlm_PrimitivE Nlm_AddTextLabel   PROTO((Nlm_SegmenT parent, 
393 Nlm_Int4 pntX, Nlm_Int4 pntY, const Nlm_Char* string, Nlm_FonT font, 
394 Nlm_Int2 offset, Nlm_Int2 align, Nlm_Uint2 primID));
395 extern Nlm_PrimitivE Nlm_AddPolygon     PROTO((Nlm_SegmenT parent,
396 Nlm_Int2 vernum, Nlm_PntPtr points, Nlm_Boolean fill, Nlm_Uint2 primID));
397 extern Nlm_PrimitivE Nlm_AddArc         PROTO((Nlm_SegmenT parent, 
398 Nlm_Int4 pntX, Nlm_Int4 pntY, Nlm_Int4 radiusX, Nlm_Int4 radiusY, 
399 Nlm_Int4 start, Nlm_Int4 end, Nlm_Boolean fill, Nlm_Uint2 primID));
400 extern Nlm_PrimitivE AddOval            PROTO((Nlm_SegmenT parent, 
401 Nlm_Int4 pntX, Nlm_Int4 pntY, Nlm_Int4 radiusX, Nlm_Int4 radiusY, 
402 Nlm_Boolean fill, Nlm_Uint2 primID));
403 
404 /* the pdc parameter in SntOnDrawProc is really Nlm_DrawInfoPtr from <mappingp.h> */
405 
406 typedef void (*Nlm_SntOnDrawProc)(BigScalar calldata, Nlm_PrimDrawContext pdc);
407 typedef void (*Nlm_SntOnCleanupProc)(BigScalar calldata);
408 extern Nlm_PrimitivE Nlm_AddSntRectangle PROTO((Nlm_SegmenT parent,
409  Nlm_Int4 left, Nlm_Int4 top, Nlm_Int4 right, Nlm_Int4 bottom,
410  Nlm_SntOnDrawProc callback, BigScalar calldata, Nlm_SntOnCleanupProc cleanup,
411  Nlm_Uint2 primID));
412 
413 
414 extern void          Nlm_RecalculateSegment PROTO((Nlm_SegmenT segment, 
415 Nlm_Int4 scaleX, Nlm_Int4 scaleY));
416 extern void          Nlm_OffsetSegment      PROTO((Nlm_SegmenT segment, 
417 Nlm_Int4 deltaX, Nlm_Int4 deltaY));
418 extern void          Nlm_LinkSegment        PROTO((Nlm_SegmenT parent, 
419 Nlm_SegmenT child));
420 extern void          Nlm_UnlinkSegment      PROTO((Nlm_SegmenT child));
421 extern void          Nlm_ExploreSegment     PROTO((Nlm_SegmenT segment, 
422 Nlm_VoidPtr userdata, Nlm_SegmentExploreProc callback));
423 
424 /* SetSegmentVisibleFlag does not change the display in the viewer - use ShowSegment and HideSegment */
425 extern void          Nlm_SetSegmentVisibleFlag (Nlm_SegmenT segment, Nlm_Boolean visible);
426 
427 /*Working with primitive */
428 
429 extern Nlm_PrimitivE Nlm_GetPrimitive PROTO((Nlm_SegmenT segment, Nlm_Uint2 primCt));
430 extern void Nlm_SetPrimitiveIDs PROTO((Nlm_PrimitivE prim, Nlm_Uint2 entityID, Nlm_Uint4 itemID, Nlm_Uint2 itemtype, Nlm_Uint2 primID));
431 extern void Nlm_GetPrimitiveIDs PROTO((Nlm_PrimitivE prim, Nlm_Uint2Ptr entityIDPtr, Nlm_Uint4Ptr itemIDPtr, Nlm_Uint2Ptr itemtypePtr, Nlm_Uint2Ptr primIDPtr));
432 extern void Nlm_GetPrimDrawAttribute PROTO((Nlm_PrimitivE prim, 
433 Nlm_Uint1Ptr color, Nlm_Int1Ptr plinestyle, Nlm_Int1Ptr pshading, 
434 Nlm_Int1Ptr ppenwidth, Nlm_Int1Ptr pmode, Nlm_Int1Ptr phighlight));
435 extern void Nlm_ChangePrimAttribute PROTO((Nlm_PrimitivE prim, Nlm_Uint1 flags, Nlm_Uint1Ptr color, Nlm_Int1 linestyle, Nlm_Int1 shading, Nlm_Int1 penwidth, Nlm_Int1 mode));
436 extern void Nlm_OffsetPrim PROTO((Nlm_PrimitivE prim, Nlm_Int4 deltaX, Nlm_Int4 deltaY));
437 extern void Nlm_DeletePrim PROTO((Nlm_SegmenT parent, Nlm_PrimitivE prim));
438 extern Nlm_Boolean Nlm_PrimitiveBox PROTO((Nlm_PrimitivE prim, Nlm_Int4 scaleX, Nlm_Int4 scaleY, Nlm_BoxPtr pLimits));
439 
440 /*
441  *  The primitive adding order
442  */
443 typedef enum
444 {
445   /* check actual primitive adding order */
446   WHAT_ORDER,
447   /* add all subsequent new primitives to the end of primitive list */
448   ADD_TO_TAIL,
449   /* .......... to the head ..... */
450   ADD_TO_HEAD,
451   /* change the inserting order for the next added primitive only */
452   ADD_TO_TAIL_ONCE,
453   ADD_TO_HEAD_ONCE
454 }  Nlm_enumPrimAddOrder;
455 
456 /*
457  *  Reset the primitive adding order;  return previous adding order
458  */
459 extern Nlm_enumPrimAddOrder Nlm_ChangeAddPrimOrder
460   PROTO((Nlm_enumPrimAddOrder prim_add_order));
461  
462 
463 
464 #define SegmenT Nlm_SegmenT
465 #define PrimitivE Nlm_PrimitivE
466 #define BoxInfo Nlm_BoxInfo
467 #define BoxPtr Nlm_BoxPtr
468 #define PntInfo Nlm_PntInfo
469 #define PntPtr Nlm_PntPtr
470 #define PrimDrawContext Nlm_PrimDrawContext
471 #define PrimHitContext Nlm_PrimHitContext
472 #define PrimDrawProc Nlm_PrimDrawProc
473 #define PrimPntHitTest Nlm_PrimPntHitTest
474 #define PrimHitTestProc Nlm_PrimHitTestProc
475 #define PrimOffsetProc Nlm_PrimOffsetProc
476 #define PrimGetLimitsProc Nlm_PrimGetLimitsProc
477 #define PrimCleanupProc Nlm_PrimCleanupProc
478 #define PrimDef Nlm_PrimDef
479 #define PrimDefPtr Nlm_PrimDefPtr
480 #define ResetPrimDef Nlm_ResetPrimDef
481 #define SetPrimDrawProc Nlm_SetPrimDrawProc
482 #define SetPrimHitTestProc Nlm_SetPrimHitTestProc
483 #define SetPrimOffsetProc Nlm_SetPrimOffsetProc
484 #define SetPrimGetLimitsProc Nlm_SetPrimGetLimitsProc
485 #define SetPrimCleanupProc Nlm_SetPrimCleanupProc
486 #define GetWorldWindow Nlm_GetWorldWindow
487 #define GetScaleX Nlm_GetScaleX
488 #define GetScaleY Nlm_GetScaleY
489 #define GetOffsetX Nlm_GetOffsetX
490 #define GetOffsetY Nlm_GetOffsetY
491 #define isPrimInWindow Nlm_isPrimInWindow
492 #define GetPrimHligh Nlm_GetPrimHligh
493 #define GetHitWindow Nlm_GetHitWindow
494 #define SetPrimAttribute Nlm_SetPrimAttribute
495 #define RestorePrimAttribute Nlm_RestorePrimAttribute
496 #define SegmentExploreProc Nlm_SegmentExploreProc
497 #define CreatePicture Nlm_CreatePicture
498 #define DeletePicture Nlm_DeletePicture
499 #define CreateSegment Nlm_CreateSegment
500 #define ResetSegment Nlm_ResetSegment
501 #define DeleteSegment Nlm_DeleteSegment
502 #define ParentSegment Nlm_ParentSegment
503 #define SegmentID Nlm_SegmentID
504 #define SegmentVisible Nlm_SegmentVisible
505 #define SegmentStyle Nlm_SegmentStyle
506 #define SegmentBox Nlm_SegmentBox
507 #define SetSegmentVisibleFlag Nlm_SetSegmentVisibleFlag
508 #define AddAttribute Nlm_AddAttribute
509 #define AddPrimitive Nlm_AddPrimitive
510 #define AddInvFrame Nlm_AddInvFrame
511 #define AddRectangle Nlm_AddRectangle
512 #define AddRoundedRectangle Nlm_AddRoundedRectangle
513 #define AddSegRect Nlm_AddSegRect
514 #define AddSilentSegRect Nlm_AddSilentSegRect
515 #define AddLine Nlm_AddLine
516 #define AddSymbol Nlm_AddSymbol
517 #define AddBitmap Nlm_AddBitmap
518 #define AddMarker Nlm_AddMarker
519 #define AddLabel Nlm_AddLabel
520 #define AddTextLabel Nlm_AddTextLabel
521 #define AddPolygon Nlm_AddPolygon
522 #define AddArc Nlm_AddArc
523 #define SntOnDrawProc Nlm_SntOnDrawProc
524 #define SntOnCleanupProc Nlm_SntOnCleanupProc
525 #define AddSntRectangle Nlm_AddSntRectangle
526 #define RecalculateSegment Nlm_RecalculateSegment
527 #define OffsetSegment Nlm_OffsetSegment
528 #define LinkSegment Nlm_LinkSegment
529 #define UnlinkSegment Nlm_UnlinkSegment
530 #define ExploreSegment Nlm_ExploreSegment
531 #define GetPrimitive Nlm_GetPrimitive
532 #define SetPrimitiveIDs Nlm_SetPrimitiveIDs
533 #define GetPrimitiveIDs Nlm_GetPrimitiveIDs
534 #define GetPrimDrawAttribute Nlm_GetPrimDrawAttribute
535 #define ChangePrimAttribute Nlm_ChangePrimAttribute
536 #define OffsetPrim Nlm_OffsetPrim
537 #define DeletePrim Nlm_DeletePrim
538 #define PrimitiveBox Nlm_PrimitiveBox
539 #define enumPrimAddOrder Nlm_enumPrimAddOrder
540 #define ChangeAddPrimOrder Nlm_ChangeAddPrimOrder
541 
542 #ifdef __cplusplus
543 }
544 #endif
545 
546 #endif
547 

source navigation ]   [ diff markup ]   [ identifier search ]   [ freetext search ]   [ file search ]  

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.