/* * Motif * * Copyright (c) 1987-2012, The Open Group. All rights reserved. * * These libraries and programs are free software; you can * redistribute them and/or modify them under the terms of the GNU * Lesser General Public License as published by the Free Software * Foundation; either version 2 of the License, or (at your option) * any later version. * * These libraries and programs are distributed in the hope that * they will be useful, but WITHOUT ANY WARRANTY; without even the * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU Lesser General Public License for more * details. * * You should have received a copy of the GNU Lesser General Public * License along with these librararies and programs; if not, write * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth * Floor, Boston, MA 02110-1301 USA * */ #ifndef __Xmcolumnp_h__ #define __Xmcolumnp_h__ #ifdef __cplusplus extern "C" { #endif #include #include #include typedef struct _XmColumnClassPart { XtPointer extension; } XmColumnClassPart; typedef struct _XmColumnClassRec { CoreClassPart core_class; CompositeClassPart composite_class; ConstraintClassPart constraint_class; XmManagerClassPart manager_class; XmBulletinBoardClassPart bulletin_board_class; XmColumnClassPart column_class; } XmColumnClassRec; externalref XmColumnClassRec xmColumnClassRec; typedef struct _XmColumnConstraintPart { /* Public */ unsigned char label_alignment; unsigned char label_type; unsigned char fill_style; Boolean show_label; Boolean stretchable; Pixmap label_pixmap; XmString label_string; XmFontList label_font_list; /* Private */ Widget label_widget; Dimension request_width; Dimension request_height; XRectangle position; Boolean check_set_render_table; /* used by CheckSetEntryLabelRenderTable */ } XmColumnConstraintPart, * XmColumnConstraint; typedef struct _XmColumnConstraintRec { XmManagerConstraintPart manager; XmBulletinBoardConstraintPart bboard; XmColumnConstraintPart column; } XmColumnConstraintRec, * XmColumnConstraintPtr; typedef struct _XmColumnPart { /* Public */ unsigned char default_label_alignment; unsigned char default_fill_style; unsigned char orientation; unsigned char distribution; Dimension item_spacing; Dimension label_spacing; /* Private */ Boolean resize_done; Boolean check_set_render_table; /* used by CheckSetDefaultEntryLabelRenderTable */ } XmColumnPart; typedef struct _XmColumnRec { CorePart core; CompositePart composite; ConstraintPart constraint; XmManagerPart manager; XmBulletinBoardPart bulletin_board; XmColumnPart column; } XmColumnRec; #define XmColumnIndex (XmBulletinBoardIndex + 1) #define XmColumnC_label_alignment(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_alignment) #define XmColumnC_label_type(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_type) #define XmColumnC_fill_style(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.fill_style) #define XmColumnC_show_label(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.show_label) #define XmColumnC_stretchable(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.stretchable) #define XmColumnC_label_pixmap(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_pixmap) #define XmColumnC_label_string(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_string) #define XmColumnC_label_font_list(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_font_list) #define XmColumnC_label_widget(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.label_widget) #define XmColumnC_request_width(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.request_width) #define XmColumnC_request_height(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.request_height) #define XmColumnC_position(w) (((XmColumnConstraintPtr)((w)->core.constraints))->column.position) #define XmColumn_default_label_alignment(w) (((XmColumnWidget)(w))->column.default_label_alignment) #define XmColumn_default_fill_style(w) (((XmColumnWidget)(w))->column.default_fill_style) #define XmColumn_orientation(w) (((XmColumnWidget)(w))->column.orientation) #define XmColumn_distribution(w) (((XmColumnWidget)(w))->column.distribution) #define XmColumn_item_spacing(w) (((XmColumnWidget)(w))->column.item_spacing) #define XmColumn_label_spacing(w) (((XmColumnWidget)(w))->column.label_spacing) #define XmColumn_resize_done(w) (((XmColumnWidget)(w))->column.resize_done) #ifdef __cplusplus } #endif #endif /* __columnp_h__ */