diff options
-rw-r--r-- | xc/lib/Xmu/CurUtil.h | 27 | ||||
-rw-r--r-- | xc/lib/Xmu/CursorName.c | 131 | ||||
-rw-r--r-- | xc/lib/Xmu/Imakefile | 3 |
3 files changed, 161 insertions, 0 deletions
diff --git a/xc/lib/Xmu/CurUtil.h b/xc/lib/Xmu/CurUtil.h new file mode 100644 index 000000000..07742e00d --- /dev/null +++ b/xc/lib/Xmu/CurUtil.h @@ -0,0 +1,27 @@ +/* + * $XConsortium: WindowUtil.h,v 1.1 89/07/14 17:51:57 jim Exp $ + * + * Copyright 1988 by the Massachusetts Institute of Technology + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose and without fee is hereby granted, provided + * that the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of M.I.T. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. M.I.T. makes no representations about the + * suitability of this software for any purpose. It is provided "as is" + * without express or implied warranty. + * + * The X Window System is a Trademark of MIT. + * + * The interfaces described by this header file are for miscellaneous utilities + * and are not part of the Xlib standard. + */ + +#ifndef _XMU_CURUTIL_H_ +#define _XMU_CURUTIL_H_ + +extern int XmuCursorNameToIndex(); + +#endif /* _XMU_CURUTIL_H_ */ diff --git a/xc/lib/Xmu/CursorName.c b/xc/lib/Xmu/CursorName.c new file mode 100644 index 000000000..61f97411a --- /dev/null +++ b/xc/lib/Xmu/CursorName.c @@ -0,0 +1,131 @@ +/* + * $XConsortium$ + * + * Copyright 1989 Massachusetts Institute of Technology + * + * Permission to use, copy, modify, and distribute this software and its + * documentation for any purpose and without fee is hereby granted, provided + * that the above copyright notice appear in all copies and that both that + * copyright notice and this permission notice appear in supporting + * documentation, and that the name of M.I.T. not be used in advertising + * or publicity pertaining to distribution of the software without specific, + * written prior permission. M.I.T. makes no representations about the + * suitability of this software for any purpose. It is provided "as is" + * without express or implied warranty. + * + * M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T. + * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION + * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + + +#include <X11/Xmu/CharSet.h> +#include <X11/Xmu/CurUtil.h> +#include <X11/cursorfont.h> + +int XmuCursorNameToIndex (name) + char *name; +{ + static struct _CursorName { + char *name; + unsigned int shape; + } cursor_names[] = { + {"X_cursor", XC_X_cursor}, + {"arrow", XC_arrow}, + {"based_arrow_down", XC_based_arrow_down}, + {"based_arrow_up", XC_based_arrow_up}, + {"boat", XC_boat}, + {"bogosity", XC_bogosity}, + {"bottom_left_corner", XC_bottom_left_corner}, + {"bottom_right_corner", XC_bottom_right_corner}, + {"bottom_side", XC_bottom_side}, + {"bottom_tee", XC_bottom_tee}, + {"box_spiral", XC_box_spiral}, + {"center_ptr", XC_center_ptr}, + {"circle", XC_circle}, + {"clock", XC_clock}, + {"coffee_mug", XC_coffee_mug}, + {"cross", XC_cross}, + {"cross_reverse", XC_cross_reverse}, + {"crosshair", XC_crosshair}, + {"diamond_cross", XC_diamond_cross}, + {"dot", XC_dot}, + {"dotbox", XC_dotbox}, + {"double_arrow", XC_double_arrow}, + {"draft_large", XC_draft_large}, + {"draft_small", XC_draft_small}, + {"draped_box", XC_draped_box}, + {"exchange", XC_exchange}, + {"fleur", XC_fleur}, + {"gobbler", XC_gobbler}, + {"gumby", XC_gumby}, + {"hand1", XC_hand1}, + {"hand2", XC_hand2}, + {"heart", XC_heart}, + {"icon", XC_icon}, + {"iron_cross", XC_iron_cross}, + {"left_ptr", XC_left_ptr}, + {"left_side", XC_left_side}, + {"left_tee", XC_left_tee}, + {"leftbutton", XC_leftbutton}, + {"ll_angle", XC_ll_angle}, + {"lr_angle", XC_lr_angle}, + {"man", XC_man}, + {"middlebutton", XC_middlebutton}, + {"mouse", XC_mouse}, + {"pencil", XC_pencil}, + {"pirate", XC_pirate}, + {"plus", XC_plus}, + {"question_arrow", XC_question_arrow}, + {"right_ptr", XC_right_ptr}, + {"right_side", XC_right_side}, + {"right_tee", XC_right_tee}, + {"rightbutton", XC_rightbutton}, + {"rtl_logo", XC_rtl_logo}, + {"sailboat", XC_sailboat}, + {"sb_down_arrow", XC_sb_down_arrow}, + {"sb_h_double_arrow", XC_sb_h_double_arrow}, + {"sb_left_arrow", XC_sb_left_arrow}, + {"sb_right_arrow", XC_sb_right_arrow}, + {"sb_up_arrow", XC_sb_up_arrow}, + {"sb_v_double_arrow", XC_sb_v_double_arrow}, + {"shuttle", XC_shuttle}, + {"sizing", XC_sizing}, + {"spider", XC_spider}, + {"spraycan", XC_spraycan}, + {"star", XC_star}, + {"target", XC_target}, + {"tcross", XC_tcross}, + {"top_left_arrow", XC_top_left_arrow}, + {"top_left_corner", XC_top_left_corner}, + {"top_right_corner", XC_top_right_corner}, + {"top_side", XC_top_side}, + {"top_tee", XC_top_tee}, + {"trek", XC_trek}, + {"ul_angle", XC_ul_angle}, + {"umbrella", XC_umbrella}, + {"ur_angle", XC_ur_angle}, + {"watch", XC_watch}, + {"xterm", XC_xterm}, + }; + register struct _CursorName *table; + register int i; + char tmp[40]; + + if (strlen (name) >= sizeof tmp) return -1; + XmuCopyISOLatin1Lowered (tmp, name); + + for (i=0, table=cursor_names; i < XtNumber(cursor_names); i++, table++ ) { + if (strcmp(tmp, table->name) == 0) return table->shape; + } + + return -1; +} + + + + + diff --git a/xc/lib/Xmu/Imakefile b/xc/lib/Xmu/Imakefile index 81127c189..6a603dd07 100644 --- a/xc/lib/Xmu/Imakefile +++ b/xc/lib/Xmu/Imakefile @@ -20,6 +20,7 @@ HEADERS = \ CharSet.h \ CloseHook.h \ Converters.h \ + CurUtil.h \ Drawing.h \ Error.h \ Initer.h \ @@ -37,6 +38,7 @@ SRCS = \ CmapAlloc.c \ CrCmap.c \ CrPixFBit.c \ + CursorName.c \ CvtStdSel.c \ DefErrMsg.c \ DelCmap.c \ @@ -67,6 +69,7 @@ OBJS = \ CmapAlloc.o \ CrCmap.o \ CrPixFBit.o \ + CursorName.o \ CvtStdSel.o \ DefErrMsg.o \ DelCmap.o \ |