|
Packit |
b099d7 |
/* $XConsortium: ContainerP.h /main/8 1996/06/13 16:45:53 pascale $ */
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Motif
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* Copyright (c) 1987-2012, The Open Group. All rights reserved.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are free software; you can
|
|
Packit |
b099d7 |
* redistribute them and/or modify them under the terms of the GNU
|
|
Packit |
b099d7 |
* Lesser General Public License as published by the Free Software
|
|
Packit |
b099d7 |
* Foundation; either version 2 of the License, or (at your option)
|
|
Packit |
b099d7 |
* any later version.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are distributed in the hope that
|
|
Packit |
b099d7 |
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
|
Packit |
b099d7 |
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
Packit |
b099d7 |
* PURPOSE. See the GNU Lesser General Public License for more
|
|
Packit |
b099d7 |
* details.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
b099d7 |
* License along with these librararies and programs; if not, write
|
|
Packit |
b099d7 |
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
|
Packit |
b099d7 |
* Floor, Boston, MA 02110-1301 USA
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* HISTORY
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
#ifndef _XmContainerP_h
|
|
Packit |
b099d7 |
#define _XmContainerP_h
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#include <Xm/XmP.h>
|
|
Packit |
b099d7 |
#include <Xm/ManagerP.h>
|
|
Packit |
b099d7 |
#include <Xm/DragCP.h>
|
|
Packit |
b099d7 |
#include <Xm/Container.h>
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifdef __cplusplus
|
|
Packit |
b099d7 |
extern "C" {
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* One _XmCwidNodeRec structure is allocated by Container for each of
|
|
Packit |
b099d7 |
* it's children (except for OutlineButtons). Information about the
|
|
Packit |
b099d7 |
* relationship of the child to other Container children (parentage and
|
|
Packit |
b099d7 |
* order) is maintained here by Container.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* _XmCwidNodeRec structures are XtCalloc'd by Container in the
|
|
Packit |
b099d7 |
* ConstraintInitialize method and XtFree'd in the ConstraintDestroy method.
|
|
Packit |
b099d7 |
* They are linked/unlinked to other _XmCwidNodeRec structures in the
|
|
Packit |
b099d7 |
* ChangeManaged method.
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
typedef struct _XmCwidNodeRec
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
struct _XmCwidNodeRec * next_ptr;
|
|
Packit |
b099d7 |
struct _XmCwidNodeRec * prev_ptr;
|
|
Packit |
b099d7 |
struct _XmCwidNodeRec * child_ptr;
|
|
Packit |
b099d7 |
struct _XmCwidNodeRec * parent_ptr;
|
|
Packit |
b099d7 |
Widget widget_ptr;
|
|
Packit |
b099d7 |
} XmCwidNodeRec, *CwidNode;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Container allocates a _XmContainerXfrActionRec structure to store
|
|
Packit |
b099d7 |
* the data from a ContainerStartTransfer action until it can determine
|
|
Packit |
b099d7 |
* whether the action should start a primary transfer or begin a drag.
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
typedef struct _XmContainerXfrActionRec
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
Widget wid;
|
|
Packit |
b099d7 |
XEvent *event;
|
|
Packit |
b099d7 |
String *params;
|
|
Packit |
b099d7 |
Cardinal *num_params;
|
|
Packit |
b099d7 |
Atom operation;
|
|
Packit |
b099d7 |
} XmContainerXfrActionRec, *ContainerXfrAction;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Container allocates an array of _XmContainerCwidCellInfoRec structures
|
|
Packit |
b099d7 |
* to use in calculating an ideal size in the GetSpatialSize procedure when
|
|
Packit |
b099d7 |
* XmNspatialStyle is XmCELLS. The array is created and destroyed in the
|
|
Packit |
b099d7 |
* GetSpatialSize procedure.
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
typedef struct _XmContainerCwidCellInfoRec
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
int cwid_width_in_cells;
|
|
Packit |
b099d7 |
int cwid_height_in_cells;
|
|
Packit |
b099d7 |
} XmContainerCwidCellInfoRec, *ContainerCwidCellInfo;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* Container constraint class part record */
|
|
Packit |
b099d7 |
typedef struct _XmContainerConstraintPart
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
Widget entry_parent; /* XmNentryParent */
|
|
Packit |
b099d7 |
Widget related_cwid;
|
|
Packit |
b099d7 |
CwidNode node_ptr;
|
|
Packit |
b099d7 |
int position_index; /* XmNpositionIndex */
|
|
Packit |
b099d7 |
int depth;
|
|
Packit |
b099d7 |
int cell_idx;
|
|
Packit |
b099d7 |
Boolean visible_in_outline;
|
|
Packit |
b099d7 |
Position user_x;
|
|
Packit |
b099d7 |
Position user_y;
|
|
Packit |
b099d7 |
unsigned char outline_state; /* XmNoutlineState */
|
|
Packit |
b099d7 |
unsigned char selection_visual;
|
|
Packit |
b099d7 |
unsigned char selection_state;
|
|
Packit |
b099d7 |
unsigned char cwid_type;
|
|
Packit |
b099d7 |
} XmContainerConstraintPart, * XmContainerConstraint;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmContainerConstraintRec
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
XmManagerConstraintPart manager;
|
|
Packit |
b099d7 |
XmContainerConstraintPart container;
|
|
Packit |
b099d7 |
} XmContainerConstraintRec, * XmContainerConstraintPtr;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* move the other typedef here */
|
|
Packit |
b099d7 |
typedef void (*XmSpatialGetSize)(Widget, Dimension *, Dimension *);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* Container widget class record */
|
|
Packit |
b099d7 |
typedef struct _XmContainerClassPart
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
XmSpatialTestFitProc test_fit_item;
|
|
Packit |
b099d7 |
XmSpatialPlacementProc place_item;
|
|
Packit |
b099d7 |
XmSpatialRemoveProc remove_item;
|
|
Packit |
b099d7 |
XmSpatialGetSize get_spatial_size;
|
|
Packit |
b099d7 |
XtPointer extension;
|
|
Packit |
b099d7 |
} XmContainerClassPart;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* Full class record declaration */
|
|
Packit |
b099d7 |
typedef struct _XmContainerClassRec
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
CoreClassPart core_class;
|
|
Packit |
b099d7 |
CompositeClassPart composite_class;
|
|
Packit |
b099d7 |
ConstraintClassPart constraint_class;
|
|
Packit |
b099d7 |
XmManagerClassPart manager_class;
|
|
Packit |
b099d7 |
XmContainerClassPart container_class;
|
|
Packit |
b099d7 |
} XmContainerClassRec, *XmContainerClass;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
externalref XmContainerClassRec xmContainerClassRec;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* Container instance record */
|
|
Packit |
b099d7 |
typedef struct _XmContainerPart
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
WidgetList selected_items; /* XmNselectedItems */
|
|
Packit |
b099d7 |
Widget icon_header;
|
|
Packit |
b099d7 |
Widget anchor_cwid;
|
|
Packit |
b099d7 |
Widget druggee;
|
|
Packit |
b099d7 |
Widget size_ob;
|
|
Packit |
b099d7 |
Widget drag_context;
|
|
Packit |
b099d7 |
CwidNode first_node;
|
|
Packit |
b099d7 |
CwidNode last_node;
|
|
Packit |
b099d7 |
Cardinal * detail_order; /* XmNdetailOrder */
|
|
Packit |
b099d7 |
XmString * detail_heading; /* XmNdetailColumnHeading */
|
|
Packit |
b099d7 |
XSegment * outline_segs;
|
|
Packit |
b099d7 |
XtCallbackList convert_cb; /* XmNconvertCallback */
|
|
Packit |
b099d7 |
XtCallbackList default_action_cb; /* XmNdefaultActionCallback */
|
|
Packit |
b099d7 |
XtCallbackList destination_cb; /* XmNdestinationCallback */
|
|
Packit |
b099d7 |
XtCallbackList outline_cb; /* XmNoutlineChangedCallback */
|
|
Packit |
b099d7 |
XtCallbackList selection_cb; /* XmNselectionCallback */
|
|
Packit |
b099d7 |
XmTabList detail_tablist; /* XmNdetailTabList */
|
|
Packit |
b099d7 |
XmFontList render_table; /* XmNfontList */
|
|
Packit |
b099d7 |
Pixel select_color; /* XmNselectColor */
|
|
Packit |
b099d7 |
Pixmap collapsed_state_pixmap; /* XmNcollapsedStatePixmap */
|
|
Packit |
b099d7 |
Pixmap expanded_state_pixmap; /* XmNexpandedStatePixmap */
|
|
Packit |
b099d7 |
GC normalGC;
|
|
Packit |
b099d7 |
GC marqueeGC;
|
|
Packit |
b099d7 |
Time last_click_time;
|
|
Packit |
b099d7 |
Region cells_region;
|
|
Packit |
b099d7 |
ContainerXfrAction transfer_action;
|
|
Packit |
b099d7 |
XtIntervalId transfer_timer_id;
|
|
Packit |
b099d7 |
XPoint anchor_point;
|
|
Packit |
b099d7 |
XPoint marquee_start;
|
|
Packit |
b099d7 |
XPoint marquee_end;
|
|
Packit |
b099d7 |
XPoint marquee_smallest;
|
|
Packit |
b099d7 |
XPoint marquee_largest;
|
|
Packit |
b099d7 |
XPoint dropspot;
|
|
Packit |
b099d7 |
unsigned long dynamic_resource;
|
|
Packit |
b099d7 |
int max_depth;
|
|
Packit |
b099d7 |
int outline_seg_count;
|
|
Packit |
b099d7 |
int *cells;
|
|
Packit |
b099d7 |
int cell_count;
|
|
Packit |
b099d7 |
int next_free_cell;
|
|
Packit |
b099d7 |
int current_width_in_cells;
|
|
Packit |
b099d7 |
int current_height_in_cells;
|
|
Packit |
b099d7 |
int drag_offset_x;
|
|
Packit |
b099d7 |
int drag_offset_y;
|
|
Packit |
b099d7 |
unsigned int selected_item_count; /* XmNselectedItemCount */
|
|
Packit |
b099d7 |
Cardinal detail_heading_count; /* XmNdetailColumnHeadingCount */
|
|
Packit |
b099d7 |
Cardinal saved_detail_heading_count;
|
|
Packit |
b099d7 |
Cardinal detail_order_count; /* XmNdetailOrderCount */
|
|
Packit |
b099d7 |
Dimension first_col_width; /* XmNoutlineColumnWidth */
|
|
Packit |
b099d7 |
Dimension real_first_col_width;
|
|
Packit |
b099d7 |
Dimension large_cell_height; /* XmNlargeCellHeight */
|
|
Packit |
b099d7 |
Dimension large_cell_width; /* XmNlargeCellWidth */
|
|
Packit |
b099d7 |
Dimension small_cell_height; /* XmNsmallCellHeight */
|
|
Packit |
b099d7 |
Dimension small_cell_width; /* XmNsmallCellWidth */
|
|
Packit |
b099d7 |
Dimension real_large_cellh;
|
|
Packit |
b099d7 |
Dimension real_large_cellw;
|
|
Packit |
b099d7 |
Dimension real_small_cellh;
|
|
Packit |
b099d7 |
Dimension real_small_cellw;
|
|
Packit |
b099d7 |
Dimension margin_h; /* XmNmarginHeight */
|
|
Packit |
b099d7 |
Dimension margin_w; /* XmNmarginWidth */
|
|
Packit |
b099d7 |
Dimension outline_indent; /* XmNoutlineIndentation */
|
|
Packit |
b099d7 |
Dimension ob_width;
|
|
Packit |
b099d7 |
Dimension ob_height;
|
|
Packit |
b099d7 |
Dimension prev_width;
|
|
Packit |
b099d7 |
Dimension ideal_width;
|
|
Packit |
b099d7 |
Dimension ideal_height;
|
|
Packit |
b099d7 |
/* Note: first_change_managed is also used to resolve between
|
|
Packit |
b099d7 |
* XmRenderTable & XmFontList when setting up the resource table
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
Boolean first_change_managed;
|
|
Packit |
b099d7 |
Boolean extending_mode;
|
|
Packit |
b099d7 |
Boolean marquee_mode;
|
|
Packit |
b099d7 |
Boolean self;
|
|
Packit |
b099d7 |
Boolean toggle_pressed;
|
|
Packit |
b099d7 |
Boolean extend_pressed;
|
|
Packit |
b099d7 |
Boolean ob_pressed;
|
|
Packit |
b099d7 |
Boolean cancel_pressed;
|
|
Packit |
b099d7 |
Boolean kaddmode;
|
|
Packit |
b099d7 |
Boolean no_auto_sel_changes;
|
|
Packit |
b099d7 |
Boolean started_in_anchor;
|
|
Packit |
b099d7 |
Boolean marquee_drawn;
|
|
Packit |
b099d7 |
Boolean have_primary;
|
|
Packit |
b099d7 |
Boolean selecting;
|
|
Packit |
b099d7 |
Boolean large_cell_dim_fixed;
|
|
Packit |
b099d7 |
Boolean small_cell_dim_fixed;
|
|
Packit |
b099d7 |
unsigned char automatic; /* XmNautomaticSelection */
|
|
Packit |
b099d7 |
unsigned char entry_viewtype; /* XmNentryViewType */
|
|
Packit |
b099d7 |
unsigned char include_model; /* XmNspatialIncludeModel */
|
|
Packit |
b099d7 |
unsigned char layout_type; /* XmNlayoutType */
|
|
Packit |
b099d7 |
unsigned char ob_policy; /* XmNoutlineButtonPolicy */
|
|
Packit |
b099d7 |
unsigned char outline_sep_style; /* XmNoutlineLineStyle */
|
|
Packit |
b099d7 |
unsigned char spatial_style; /* XmNspatialStyle */
|
|
Packit |
b099d7 |
unsigned char primary_ownership; /* XmNprimaryOwnership */
|
|
Packit |
b099d7 |
unsigned char resize_model; /* XmNspatialResizeModel */
|
|
Packit |
b099d7 |
unsigned char selection_policy; /* XmNselectionPolicy */
|
|
Packit |
b099d7 |
unsigned char selection_technique; /* XmNselectionTechnique */
|
|
Packit |
b099d7 |
unsigned char snap_model; /* XmNspatialSnapModel */
|
|
Packit |
b099d7 |
unsigned char create_cwid_type;
|
|
Packit |
b099d7 |
unsigned char selection_state;
|
|
Packit |
b099d7 |
unsigned char LeaveDir; /* leave direction */
|
|
Packit |
b099d7 |
XtIntervalId scroll_proc_id; /* scroll TimeOutProc */
|
|
Packit |
b099d7 |
int last_xmotion_x;
|
|
Packit |
b099d7 |
int last_xmotion_y;
|
|
Packit |
b099d7 |
XmString * cache_detail_heading; /* XmNdetailColumnHeading
|
|
Packit |
b099d7 |
getValues */
|
|
Packit |
b099d7 |
} XmContainerPart;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* Full instance record declaration */
|
|
Packit |
b099d7 |
typedef struct _XmContainerRec
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
CorePart core;
|
|
Packit |
b099d7 |
CompositePart composite;
|
|
Packit |
b099d7 |
ConstraintPart constraint;
|
|
Packit |
b099d7 |
XmManagerPart manager;
|
|
Packit |
b099d7 |
XmContainerPart container;
|
|
Packit |
b099d7 |
} XmContainerRec;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* enums to keep up with cwid types */
|
|
Packit |
b099d7 |
enum { CONTAINER_ICON,
|
|
Packit |
b099d7 |
CONTAINER_OUTLINE_BUTTON,
|
|
Packit |
b099d7 |
CONTAINER_HEADER};
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define TABLIST (1L<<0)
|
|
Packit |
b099d7 |
#define FIRSTCW (1L<<1)
|
|
Packit |
b099d7 |
#define CtrIsDynamic(w,mask) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.dynamic_resource & mask)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define CtrDynamicSmallCellHeight(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.small_cell_height == 0)
|
|
Packit |
b099d7 |
#define CtrDynamicSmallCellWidth(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.small_cell_width == 0)
|
|
Packit |
b099d7 |
#define CtrDynamicLargeCellHeight(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.large_cell_height == 0)
|
|
Packit |
b099d7 |
#define CtrDynamicLargeCellWidth(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.large_cell_width == 0)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define CtrIsAUTO_SELECT(w) \
|
|
Packit |
b099d7 |
((((XmContainerWidget)(w))->container.automatic == XmAUTO_SELECT) && \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_policy \
|
|
Packit |
b099d7 |
!= XmSINGLE_SELECT))
|
|
Packit |
b099d7 |
#define CtrViewIsLARGE_ICON(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.entry_viewtype == XmLARGE_ICON)
|
|
Packit |
b099d7 |
#define CtrViewIsSMALL_ICON(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.entry_viewtype == XmSMALL_ICON)
|
|
Packit |
b099d7 |
#define CtrViewIsANY_ICON(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.entry_viewtype == XmANY_ICON)
|
|
Packit |
b099d7 |
#define CtrIsHORIZONTAL(w) \
|
|
Packit |
b099d7 |
(XmDirectionMatchPartial \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->manager.string_direction,\
|
|
Packit |
b099d7 |
XmDEFAULT_DIRECTION,XmPRECEDENCE_HORIZ_MASK))
|
|
Packit |
b099d7 |
#define CtrIsVERTICAL(w) \
|
|
Packit |
b099d7 |
(XmDirectionMatchPartial \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->manager.string_direction,\
|
|
Packit |
b099d7 |
XmDEFAULT_DIRECTION,XmPRECEDENCE_VERT_MASK))
|
|
Packit |
b099d7 |
#define CtrLayoutIsDETAIL(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.layout_type == XmDETAIL)
|
|
Packit |
b099d7 |
#define CtrLayoutIsOUTLINE_DETAIL(w) \
|
|
Packit |
b099d7 |
((((XmContainerWidget)(w))->container.layout_type == XmDETAIL) || \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.layout_type == XmOUTLINE))
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define CtrDrawLinesOUTLINE(w) \
|
|
Packit |
b099d7 |
(CtrLayoutIsOUTLINE_DETAIL(w) && \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.outline_sep_style \
|
|
Packit |
b099d7 |
== XmSINGLE))
|
|
Packit |
b099d7 |
#define CtrLayoutIsSPATIAL(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.layout_type == XmSPATIAL)
|
|
Packit |
b099d7 |
#define CtrSpatialStyleIsNONE(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.spatial_style == XmNONE)
|
|
Packit |
b099d7 |
#define CtrSpatialStyleIsGRID(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.spatial_style == XmGRID)
|
|
Packit |
b099d7 |
#define CtrSpatialStyleIsCELLS(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.spatial_style == XmCELLS)
|
|
Packit |
b099d7 |
#define CtrIncludeIsAPPEND(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.include_model == XmAPPEND)
|
|
Packit |
b099d7 |
#define CtrIncludeIsCLOSEST(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.include_model == XmCLOSEST)
|
|
Packit |
b099d7 |
#define CtrIncludeIsFIRST_FIT(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.include_model == XmFIRST_FIT)
|
|
Packit |
b099d7 |
#define CtrSnapModelIsNONE(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.snap_model == XmNONE)
|
|
Packit |
b099d7 |
#define CtrSnapModelIsSNAP(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.snap_model == XmSNAP_TO_GRID)
|
|
Packit |
b099d7 |
#define CtrSnapModelIsCENTER(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.snap_model == XmCENTER)
|
|
Packit |
b099d7 |
#define CtrResizeModelIsGROW_MINOR(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.resize_model == XmGROW_MINOR)
|
|
Packit |
b099d7 |
#define CtrResizeModelIsGROW_MAJOR(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.resize_model == XmGROW_MAJOR)
|
|
Packit |
b099d7 |
#define CtrResizeModelIsGROW_BALANCED(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.resize_model == XmGROW_BALANCED)
|
|
Packit |
b099d7 |
#define CtrPolicyIsSINGLE(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_policy \
|
|
Packit |
b099d7 |
== XmSINGLE_SELECT)
|
|
Packit |
b099d7 |
#define CtrPolicyIsBROWSE(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_policy \
|
|
Packit |
b099d7 |
== XmBROWSE_SELECT)
|
|
Packit |
b099d7 |
#define CtrPolicyIsMULTIPLE(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_policy \
|
|
Packit |
b099d7 |
== XmMULTIPLE_SELECT)
|
|
Packit |
b099d7 |
#define CtrPolicyIsEXTENDED(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_policy \
|
|
Packit |
b099d7 |
== XmEXTENDED_SELECT)
|
|
Packit |
b099d7 |
#define CtrTechIsTOUCH_OVER(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_technique \
|
|
Packit |
b099d7 |
== XmTOUCH_OVER)
|
|
Packit |
b099d7 |
#define CtrTechIsTOUCH_ONLY(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_technique \
|
|
Packit |
b099d7 |
== XmTOUCH_ONLY)
|
|
Packit |
b099d7 |
#define CtrTechIsMARQUEE(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_technique \
|
|
Packit |
b099d7 |
== XmMARQUEE)
|
|
Packit |
b099d7 |
#define CtrTechIsMARQUEE_ES(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_technique \
|
|
Packit |
b099d7 |
== XmMARQUEE_EXTEND_START)
|
|
Packit |
b099d7 |
#define CtrTechIsMARQUEE_EB(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.selection_technique \
|
|
Packit |
b099d7 |
== XmMARQUEE_EXTEND_BOTH)
|
|
Packit |
b099d7 |
#define CtrOB_PRESENT(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.ob_policy \
|
|
Packit |
b099d7 |
== XmOUTLINE_BUTTON_PRESENT)
|
|
Packit |
b099d7 |
#define CtrOB_ABSENT(w) \
|
|
Packit |
b099d7 |
(((XmContainerWidget)(w))->container.ob_policy \
|
|
Packit |
b099d7 |
== XmOUTLINE_BUTTON_ABSENT)
|
|
Packit |
b099d7 |
#define GetContainerConstraint(w) \
|
|
Packit |
b099d7 |
(&((XmContainerConstraintPtr) (w)->core.constraints)->container)
|
|
Packit |
b099d7 |
#define CtrItemIsPlaced(w) \
|
|
Packit |
b099d7 |
(((XmContainerConstraintPtr)(w)->core.constraints)->container.cell_idx \
|
|
Packit |
b099d7 |
!= NO_CELL)
|
|
Packit |
b099d7 |
#define CtrICON(w) \
|
|
Packit |
b099d7 |
(((XmContainerConstraintPtr)(w)->core.constraints)->container.cwid_type\
|
|
Packit |
b099d7 |
== CONTAINER_ICON)
|
|
Packit |
b099d7 |
#define CtrOUTLINE_BUTTON(w) \
|
|
Packit |
b099d7 |
(((XmContainerConstraintPtr)(w)->core.constraints)->container.cwid_type\
|
|
Packit |
b099d7 |
== CONTAINER_OUTLINE_BUTTON)
|
|
Packit |
b099d7 |
#define CtrHEADER(w) \
|
|
Packit |
b099d7 |
(((XmContainerConstraintPtr)(w)->core.constraints)->container.cwid_type\
|
|
Packit |
b099d7 |
== CONTAINER_HEADER)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define XmInheritSpatialTestFitProc ((XmSpatialTestFitProc) _XtInherit)
|
|
Packit |
b099d7 |
#define XmInheritSpatialPlacementProc ((XmSpatialPlacementProc) _XtInherit)
|
|
Packit |
b099d7 |
#define XmInheritSpatialRemoveProc ((XmSpatialRemoveProc) _XtInherit)
|
|
Packit |
b099d7 |
#define XmInheritSpatialGetSize ((XmSpatialGetSize) _XtInherit)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* possible directions when leaving the container */
|
|
Packit |
b099d7 |
#define TOPLEAVE (1<<0)
|
|
Packit |
b099d7 |
#define BOTTOMLEAVE (1<<1)
|
|
Packit |
b099d7 |
#define LEFTLEAVE (1<<2)
|
|
Packit |
b099d7 |
#define RIGHTLEAVE (1<<3)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifdef __cplusplus
|
|
Packit |
b099d7 |
} /* Close scope of 'extern "C"' declaration which encloses file. */
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#endif /* _XmContainerP_h */
|
|
Packit |
b099d7 |
/* DON'T ADD ANYTHING AFTER THIS #endif */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|