Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:15:23

0001 /*
0002  * Motif
0003  *
0004  * Copyright (c) 1987-2012, The Open Group. All rights reserved.
0005  *
0006  * These libraries and programs are free software; you can
0007  * redistribute them and/or modify them under the terms of the GNU
0008  * Lesser General Public License as published by the Free Software
0009  * Foundation; either version 2 of the License, or (at your option)
0010  * any later version.
0011  *
0012  * These libraries and programs are distributed in the hope that
0013  * they will be useful, but WITHOUT ANY WARRANTY; without even the
0014  * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
0015  * PURPOSE. See the GNU Lesser General Public License for more
0016  * details.
0017  *
0018  * You should have received a copy of the GNU Lesser General Public
0019  * License along with these librararies and programs; if not, write
0020  * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
0021  * Floor, Boston, MA 02110-1301 USA
0022  *
0023  */
0024 
0025 #ifndef __Xmcolumnp_h__
0026 #define __Xmcolumnp_h__
0027 
0028 #ifdef __cplusplus
0029 extern "C" {
0030 #endif
0031 
0032 #include <Xm/XmP.h>
0033 #include <Xm/BulletinBP.h>
0034 #include <Xm/Column.h>
0035 
0036 typedef struct _XmColumnClassPart {
0037     XtPointer extension;
0038 } XmColumnClassPart;
0039 
0040 typedef struct _XmColumnClassRec {
0041     CoreClassPart            core_class;
0042     CompositeClassPart       composite_class;
0043     ConstraintClassPart      constraint_class;
0044     XmManagerClassPart       manager_class;
0045     XmBulletinBoardClassPart bulletin_board_class;
0046     XmColumnClassPart        column_class;
0047 } XmColumnClassRec;
0048 
0049 externalref XmColumnClassRec xmColumnClassRec;
0050 
0051 typedef struct _XmColumnConstraintPart {
0052 
0053     /* Public */
0054     unsigned char       label_alignment;
0055     unsigned char       label_type;
0056     unsigned char       fill_style;
0057 
0058     Boolean     show_label;
0059     Boolean     stretchable;
0060     
0061     Pixmap              label_pixmap;
0062     XmString        label_string;
0063 
0064     XmFontList      label_font_list;
0065 
0066     /* Private */
0067 
0068     Widget              label_widget;
0069     Dimension       request_width;
0070     Dimension       request_height;
0071     XRectangle      position;
0072     Boolean     check_set_render_table; /* used by CheckSetEntryLabelRenderTable */
0073 } XmColumnConstraintPart, * XmColumnConstraint;
0074 
0075 typedef struct _XmColumnConstraintRec {
0076     XmManagerConstraintPart manager;
0077     XmBulletinBoardConstraintPart bboard;
0078     XmColumnConstraintPart  column;
0079 } XmColumnConstraintRec, * XmColumnConstraintPtr;
0080 
0081 typedef struct _XmColumnPart {
0082     
0083     /* Public */
0084 
0085     unsigned char default_label_alignment;
0086     unsigned char default_fill_style;
0087     unsigned char orientation;
0088     unsigned char distribution;
0089     
0090     Dimension     item_spacing;
0091     Dimension     label_spacing;
0092 
0093     /* Private */
0094 
0095     Boolean   resize_done;
0096     Boolean   check_set_render_table; /* used by CheckSetDefaultEntryLabelRenderTable */
0097 
0098 } XmColumnPart;
0099 
0100 typedef struct _XmColumnRec {
0101     CorePart            core;
0102     CompositePart       composite;
0103     ConstraintPart      constraint;
0104     XmManagerPart       manager;
0105     XmBulletinBoardPart bulletin_board;
0106     XmColumnPart        column;
0107 } XmColumnRec;
0108 
0109 #define XmColumnIndex (XmBulletinBoardIndex + 1)
0110 
0111 #define XmColumnC_label_alignment(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_alignment)
0112 #define XmColumnC_label_type(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_type)
0113 #define XmColumnC_fill_style(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.fill_style)
0114 #define XmColumnC_show_label(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.show_label)
0115 #define XmColumnC_stretchable(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.stretchable)
0116 #define XmColumnC_label_pixmap(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_pixmap)
0117 #define XmColumnC_label_string(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_string)
0118 #define XmColumnC_label_font_list(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_font_list)
0119 #define XmColumnC_label_widget(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_widget)
0120 #define XmColumnC_request_width(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.request_width)
0121 #define XmColumnC_request_height(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.request_height)
0122 #define XmColumnC_position(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.position)
0123 
0124 #define XmColumn_default_label_alignment(w) (((XmColumnWidget)(w))->column.default_label_alignment)
0125 #define XmColumn_default_fill_style(w) (((XmColumnWidget)(w))->column.default_fill_style)
0126 #define XmColumn_orientation(w) (((XmColumnWidget)(w))->column.orientation)
0127 #define XmColumn_distribution(w) (((XmColumnWidget)(w))->column.distribution)
0128 #define XmColumn_item_spacing(w) (((XmColumnWidget)(w))->column.item_spacing)
0129 #define XmColumn_label_spacing(w) (((XmColumnWidget)(w))->column.label_spacing)
0130 #define XmColumn_resize_done(w) (((XmColumnWidget)(w))->column.resize_done)
0131 
0132 #ifdef __cplusplus
0133 }
0134 #endif
0135 
0136 #endif /* __columnp_h__ */