genlist.sh revision 749
70N/A#!/bin/sh
70N/A
286N/Atmp=/tmp/gl.$$
70N/Anm $* | egrep '(Widget|Obj|Object)Class' | \
70N/Aawk '{ if ($2 == "D" || $2 == "G") print $3; }' | sed -e 's/^_//' | \
70N/A(cat - ; echo "objectClass") | sort -u | egrep -v 'ClassRec$' | \
70N/Aegrep -v 'vPanedWidgetClass$' | \
70N/Aegrep -v 'ascii(Disk|String)WidgetClass$' | \
70N/Aawk '
70N/A{
70N/A printf "extern WidgetClass %s;\n", $1;
70N/A printf "{ \"%s\", &%s },\n", $1, $1;
70N/A}' | sed -e 's/WidgetClass"/"/' -e 's/ObjClass"/"/' \
70N/A -e 's/ObjectClass"/"/' -e 's/objectClass"/object"/' \
70N/A -e 's/widgetClass"/widget"/' >$tmp
70N/A
70N/Acat <<EOF
70N/A/*
70N/A * This file is generated by the genlist.sh script and contains an array of
70N/A * all the widgets in Athena widget set.
70N/A *
70N/A * \$XConsortium\$
70N/A */
70N/A#include <X11/IntrinsicP.h>
70N/A#include <X11/Xmu/WidgetNode.h>
70N/A
70N/AEOF
70N/Aegrep '^extern WidgetClass' $tmp
70N/Aecho ""
70N/Acat <<EOF
295N/AXmuWidgetNode XawWidgetArray[] = {
70N/AEOF
70N/Aegrep '^{' $tmp
70N/Acat <<EOF
98N/A};
213N/A
231N/Aint XawWidgetCount = XtNumber(XawWidgetArray);
98N/A
290N/AEOF
210N/A
128N/Arm $tmp
70N/A