17a84e134Smrg/* 27a84e134Smrg * 37a84e134SmrgCopyright 1989, 1994, 1998 The Open Group 47a84e134Smrg 57a84e134SmrgPermission to use, copy, modify, distribute, and sell this software and its 67a84e134Smrgdocumentation for any purpose is hereby granted without fee, provided that 77a84e134Smrgthe above copyright notice appear in all copies and that both that 87a84e134Smrgcopyright notice and this permission notice appear in supporting 97a84e134Smrgdocumentation. 107a84e134Smrg 117a84e134SmrgThe above copyright notice and this permission notice shall be included in 127a84e134Smrgall copies or substantial portions of the Software. 137a84e134Smrg 147a84e134SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 157a84e134SmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 167a84e134SmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 177a84e134SmrgOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 187a84e134SmrgAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 197a84e134SmrgCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 207a84e134Smrg 217a84e134SmrgExcept as contained in this notice, the name of The Open Group shall not be 227a84e134Smrgused in advertising or otherwise to promote the sale, use or other dealings 237a84e134Smrgin this Software without prior written authorization from The Open Group. 247a84e134Smrg * 257a84e134Smrg * Author: Chris D. Peterson, MIT X Consortium 267a84e134Smrg */ 277a84e134Smrg 287a84e134Smrg#ifndef _XawSmeBSBP_h 297a84e134Smrg#define _XawSmeBSBP_h 307a84e134Smrg 317a84e134Smrg/* 327a84e134Smrg * Sme Object Private Data 337a84e134Smrg */ 347a84e134Smrg#include <X11/Xaw/SmeP.h> 357a84e134Smrg#include <X11/Xaw/SmeBSB.h> 367a84e134Smrg 377a84e134Smrgtypedef struct _SmeBSBClassPart { 387a84e134Smrg XtPointer extension; 397a84e134Smrg} SmeBSBClassPart; 407a84e134Smrg 417a84e134Smrg/* Full class record declaration */ 427a84e134Smrgtypedef struct _SmeBSBClassRec { 437a84e134Smrg RectObjClassPart rect_class; 447a84e134Smrg SmeClassPart sme_class; 457a84e134Smrg SmeBSBClassPart sme_bsb_class; 467a84e134Smrg} SmeBSBClassRec; 477a84e134Smrg 487a84e134Smrgextern SmeBSBClassRec smeBSBClassRec; 497a84e134Smrg 507a84e134Smrg/* New fields for the Sme Object record */ 517a84e134Smrgtypedef struct { 527a84e134Smrg /* resources */ 537a84e134Smrg String label; /* The entry label */ 547a84e134Smrg int vert_space; /* extra vert space to leave, as a 557a84e134Smrg percentage of the font height of 567a84e134Smrg the label */ 577a84e134Smrg Pixmap left_bitmap, right_bitmap; /* bitmaps to show */ 587a84e134Smrg Dimension left_margin, right_margin;/* left and right margins */ 597a84e134Smrg Pixel foreground; /* foreground color */ 607a84e134Smrg XFontStruct *font; /* The font to show label in */ 617a84e134Smrg XFontSet fontset; /* or fontset */ 627a84e134Smrg XtJustify justify; /* Justification for the label. */ 637a84e134Smrg 647a84e134Smrg /* private */ 657a84e134Smrg Boolean set_values_area_cleared; /* do we need to unhighlight? */ 665b16253fSmrg GC norm_gc; /* normal color gc */ 677a84e134Smrg GC rev_gc; /* reverse color gc */ 687a84e134Smrg GC norm_gray_gc; /* Normal color (grayed out) gc */ 697a84e134Smrg GC invert_gc; /* gc for flipping colors */ 707a84e134Smrg Dimension left_bitmap_width; /* size of each bitmap */ 717a84e134Smrg Dimension left_bitmap_height; 727a84e134Smrg Dimension right_bitmap_width; 737a84e134Smrg Dimension right_bitmap_height; 747a84e134Smrg 757a84e134Smrg#ifndef OLDXAW 767a84e134Smrg /* new resources */ 775ec34c4cSmrg char * menu_name; /* name of nested sub menu or NULL */ 785b16253fSmrg XtPointer pad[4]; /* for future use and keep binary compatibility */ 797a84e134Smrg#endif 807a84e134Smrg} SmeBSBPart; 817a84e134Smrg 827a84e134Smrg/* 837a84e134Smrg * Full instance record declaration 847a84e134Smrg */ 857a84e134Smrgtypedef struct _SmeBSBRec { 867a84e134Smrg ObjectPart object; 877a84e134Smrg RectObjPart rectangle; 887a84e134Smrg SmePart sme; 897a84e134Smrg SmeBSBPart sme_bsb; 907a84e134Smrg} SmeBSBRec; 917a84e134Smrg 927a84e134Smrg#endif /* _XawSmeBSBP_h */ 93