Back to home page

EIC code displayed by LXR

 
 

    


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

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 #ifndef _XmScaleP_h
0024 #define _XmScaleP_h
0025 
0026 
0027 #include <Xm/Scale.h>
0028 #include <Xm/ManagerP.h>
0029 
0030 #ifdef __cplusplus
0031 extern "C" {
0032 #endif
0033 
0034 /* Constraint part record for Scale widget */
0035 
0036 typedef struct _XmScaleConstraintPart
0037 {
0038    char unused;
0039 } XmScaleConstraintPart, * XmScaleConstraint;
0040 
0041 
0042 /*  New fields for the Scale widget class record  */
0043 
0044 typedef struct
0045 {
0046    XtPointer extension;   /* Pointer to extension record */
0047 } XmScaleClassPart;
0048 
0049 
0050 /* Full class record declaration */
0051 
0052 typedef struct _XmScaleClassRec
0053 {
0054    CoreClassPart       core_class;
0055    CompositeClassPart  composite_class;
0056    ConstraintClassPart constraint_class;
0057    XmManagerClassPart  manager_class;
0058    XmScaleClassPart    scale_class;
0059 } XmScaleClassRec;
0060 
0061 externalref XmScaleClassRec xmScaleClassRec;
0062 
0063 
0064 /* New fields for the Scale widget record */
0065 
0066 typedef struct
0067 {
0068    int            value;
0069    int            maximum;
0070    int            minimum;
0071    unsigned char  orientation;
0072    unsigned char  processing_direction;
0073    XmString       title; 
0074    XmFontList     font_list;
0075    XFontStruct  * font_struct;
0076    Boolean        show_value;
0077    short          decimal_points;
0078    Dimension      scale_width;
0079    Dimension      scale_height;
0080    Dimension      highlight_thickness;
0081    Boolean        highlight_on_enter;
0082    XtCallbackList drag_callback;
0083    XtCallbackList value_changed_callback;
0084 
0085    /* this field is unused since 1.2 and
0086       has a new meaning in 2.0: a bitfield
0087       that carries instance states: FROM_SET_VALUE, etc
0088       The field will be referenced as scale.state_flags
0089       using a define in the .c file */
0090    /* Note: Instead, last_value is now being used to resolve between
0091     * XmRenderTable & XmFontList when setting up the resource table
0092     */
0093    int last_value;
0094 
0095    int slider_size;
0096    GC  foreground_GC;
0097    int show_value_x;
0098    int show_value_y;
0099    int show_value_width;
0100    int show_value_height;
0101    int scale_multiple;
0102 
0103    XtEnum sliding_mode;
0104    XtEnum slider_visual;
0105    XtEnum slider_mark;
0106    XtEnum show_arrows;
0107    Boolean editable;
0108 
0109    XtCallbackList   convert_callback;       /* Selection convert callback */
0110 
0111    Region value_region;
0112 } XmScalePart;
0113 
0114 
0115 #define FROM_SET_VALUE (1<<0)
0116 
0117 /****************************************************************
0118  *
0119  * Full instance record declaration
0120  *
0121  ****************************************************************/
0122 
0123 typedef struct _XmScaleRec
0124 {
0125     CorePart       core;
0126     CompositePart  composite;
0127     ConstraintPart constraint;
0128     XmManagerPart  manager;
0129     XmScalePart    scale;
0130 } XmScaleRec;
0131 
0132 
0133 /********    Private Function Declarations    ********/
0134 
0135 
0136 /********    End Private Function Declarations    ********/
0137 
0138 
0139 #ifdef __cplusplus
0140 }  /* Close scope of 'extern "C"' declaration which encloses file. */
0141 #endif
0142 
0143 #endif /* _XmScaleP_h */
0144 /* DON'T ADD ANYTHING AFTER THIS #endif */