ListP.h revision 749
749N/A/* $XConsortium: ListP.h,v 1.14 94/04/17 20:12:17 kaleb Exp $ */
749N/A
749N/A/*
749N/ACopyright (c) 1989, 1994 X Consortium
749N/A
749N/APermission is hereby granted, free of charge, to any person obtaining a copy
749N/Aof this software and associated documentation files (the "Software"), to deal
749N/Ain the Software without restriction, including without limitation the rights
749N/Ato use, copy, modify, merge, publish, distribute, sublicense, and/or sell
749N/Acopies of the Software, and to permit persons to whom the Software is
749N/Afurnished to do so, subject to the following conditions:
749N/A
749N/AThe above copyright notice and this permission notice shall be included in
749N/Aall copies or substantial portions of the Software.
749N/A
749N/ATHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
749N/AIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
749N/AFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
749N/AX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
749N/AAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
749N/ACONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
749N/A
749N/AExcept as contained in this notice, the name of the X Consortium shall not be
749N/Aused in advertising or otherwise to promote the sale, use or other dealings
749N/Ain this Software without prior written authorization from the X Consortium.
749N/A*/
749N/A
749N/A
749N/A/*
749N/A * ListP.h - Private definitions for List widget
749N/A *
749N/A * This is a List widget. It allows the user to select an item in a list and
749N/A * notifies the application through a callback function.
749N/A *
749N/A * Created: 8/13/88
749N/A * By: Chris D. Peterson
749N/A * MIT - Project Athena
749N/A */
749N/A
749N/A#ifndef _XawListP_h
749N/A#define _XawListP_h
749N/A
749N/A/***********************************************************************
749N/A *
749N/A * List Widget Private Data
749N/A *
749N/A ***********************************************************************/
749N/A
749N/A#include <X11/Xaw/SimpleP.h>
749N/A#include <X11/Xaw/List.h>
749N/A
749N/A#define NO_HIGHLIGHT XAW_LIST_NONE
749N/A#define OUT_OF_RANGE -1
749N/A#define OKAY 0
749N/A
749N/A/* New fields for the List widget class record */
749N/A
749N/Atypedef struct {int foo;} ListClassPart;
749N/A
749N/A/* Full class record declaration */
749N/Atypedef struct _ListClassRec {
749N/A CoreClassPart core_class;
749N/A SimpleClassPart simple_class;
749N/A ListClassPart list_class;
749N/A} ListClassRec;
749N/A
749N/Aextern ListClassRec listClassRec;
749N/A
749N/A/* New fields for the List widget record */
749N/Atypedef struct {
749N/A /* resources */
749N/A Pixel foreground;
749N/A Dimension internal_width, /* if not 3d, user sets directly. */
749N/A internal_height,
749N/A column_space, /* half of *_space is add on top/bot/left of*/
749N/A row_space; /* each item's text bounding box. half added to longest for right */
749N/A int default_cols;
749N/A Boolean force_cols,
749N/A paste,
749N/A vertical_cols;
749N/A int longest; /* in pixels */
749N/A int nitems; /* number of items in the list. */
749N/A XFontStruct *font;
749N/A XFontSet fontset; /* Sheeran, Omron KK, 93/03/05 */
749N/A String * list; /* for i18n, always in multibyte format */
749N/A XtCallbackList callback;
749N/A
749N/A /* private state */
749N/A int is_highlighted, /* set to the item currently highlighted. */
749N/A highlight, /* set to the item that should be highlighted.*/
749N/A col_width, /* width of each column. */
749N/A row_height, /* height of each row. */
749N/A nrows, /* number of rows in the list. */
749N/A ncols; /* number of columns in the list. */
749N/A GC normgc, /* a couple of GC's. */
749N/A revgc,
749N/A graygc; /* used when inactive. */
749N/A
749N/A int freedoms; /* flags for resizing height and width */
749N/A
749N/A} ListPart;
749N/A
749N/A
749N/A/****************************************************************
749N/A *
749N/A * Full instance record declaration
749N/A *
749N/A ****************************************************************/
749N/A
749N/Atypedef struct _ListRec {
749N/A CorePart core;
749N/A SimplePart simple;
749N/A ListPart list;
749N/A} ListRec;
749N/A
749N/A#endif /* _XawListP_h */