diff options
Diffstat (limited to 'vendor/x11iraf/obm/ObmW/LabelP.h')
-rw-r--r-- | vendor/x11iraf/obm/ObmW/LabelP.h | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/vendor/x11iraf/obm/ObmW/LabelP.h b/vendor/x11iraf/obm/ObmW/LabelP.h new file mode 100644 index 00000000..962b20ee --- /dev/null +++ b/vendor/x11iraf/obm/ObmW/LabelP.h @@ -0,0 +1,89 @@ +/* Generated by wbuild from "Label.w" +** (generator version $Revision: 2.0 $ of $Date: 93/07/06 16:08:04 $) +*/ +#ifndef _XfwfLabelP_H_ +#define _XfwfLabelP_H_ +#include "BoardP.h" +#include "Label.h" +typedef void (*set_label_Proc)( +#if NeedFunctionPrototypes +Widget,String +#endif +); +#define XtInherit_set_label ((set_label_Proc) _XtInherit) +typedef struct { +/* methods */ +set_label_Proc set_label; +#define draw_line(dpy, win, from, to) do {\ + if (((XfwfLabelWidget)self)->xfwfLabel.rvStart >= to) rstart = to;\ + else rstart = max(((XfwfLabelWidget)self)->xfwfLabel.rvStart, from);\ + if (((XfwfLabelWidget)self)->xfwfLabel.rvStart + ((XfwfLabelWidget)self)->xfwfLabel.rvLength <= from) rend = rstart;\ + else rend = min(((XfwfLabelWidget)self)->xfwfLabel.rvStart + ((XfwfLabelWidget)self)->xfwfLabel.rvLength, to);\ + w1 = XfwfTextWidth(((XfwfLabelWidget)self)->xfwfLabel.font, ((XfwfLabelWidget)self)->xfwfLabel.label + from, rstart - from, ((XfwfLabelWidget)self)->xfwfLabel.tabs);\ + w2 = XfwfTextWidth(((XfwfLabelWidget)self)->xfwfLabel.font, ((XfwfLabelWidget)self)->xfwfLabel.label + rstart, rend - rstart, ((XfwfLabelWidget)self)->xfwfLabel.tabs);\ + w3 = XfwfTextWidth(((XfwfLabelWidget)self)->xfwfLabel.font, ((XfwfLabelWidget)self)->xfwfLabel.label + rend, to - rend, ((XfwfLabelWidget)self)->xfwfLabel.tabs);\ + if (((XfwfLabelWidget)self)->xfwfLabel.alignment & XfwfLeft)\ + x = rect.x;\ + else if (((XfwfLabelWidget)self)->xfwfLabel.alignment & XfwfRight)\ + x = rect.x + rect.width - w1 - w2 - w3;\ + else\ + x = rect.x + (rect.width - w1 - w2 - w3)/2;\ + if (w1)\ + XfwfDrawImageString(dpy, win, ((XfwfLabelWidget)self)->xfwfLabel.gc, x, y, ((XfwfLabelWidget)self)->xfwfLabel.label + from,\ + rstart - from, ((XfwfLabelWidget)self)->xfwfLabel.tabs);\ + if (w2)\ + XfwfDrawImageString(dpy, win, ((XfwfLabelWidget)self)->xfwfLabel.rv_gc, x + w1, y, ((XfwfLabelWidget)self)->xfwfLabel.label\ + + rstart, rend - rstart, ((XfwfLabelWidget)self)->xfwfLabel.tabs);\ + if (w3)\ + XfwfDrawImageString(dpy, win, ((XfwfLabelWidget)self)->xfwfLabel.gc, x + w1 + w2, y, ((XfwfLabelWidget)self)->xfwfLabel.label +\ + rend, to - rend, ((XfwfLabelWidget)self)->xfwfLabel.tabs);\ + }while (0 ) + + +/* class variables */ +} XfwfLabelClassPart; +typedef struct _XfwfLabelClassRec { +CoreClassPart core_class; +CompositeClassPart composite_class; +XfwfCommonClassPart xfwfCommon_class; +XfwfFrameClassPart xfwfFrame_class; +XfwfBoardClassPart xfwfBoard_class; +XfwfLabelClassPart xfwfLabel_class; +} XfwfLabelClassRec; + +typedef struct { +/* resources */ +String label; +String tablist; +XFontStruct * font; +Pixel foreground; +Alignment alignment; +Dimension topMargin; +Dimension bottomMargin; +Dimension leftMargin; +Dimension rightMargin; +Boolean shrinkToFit; +int rvStart; +int rvLength; +/* private state */ +int nlines; +int * tabs; +GC gc; +GC rv_gc; +GC graygc; +Dimension label_width; +Dimension label_height; +} XfwfLabelPart; + +typedef struct _XfwfLabelRec { +CorePart core; +CompositePart composite; +XfwfCommonPart xfwfCommon; +XfwfFramePart xfwfFrame; +XfwfBoardPart xfwfBoard; +XfwfLabelPart xfwfLabel; +} XfwfLabelRec; + +externalref XfwfLabelClassRec xfwfLabelClassRec; + +#endif /* _XfwfLabelP_H_ */ |