13e747e6dSmrg/*****************************************************************************/ 23e747e6dSmrg/* 33e747e6dSmrg 43e747e6dSmrgCopyright 1989, 1998 The Open Group 53e747e6dSmrg 63e747e6dSmrgPermission to use, copy, modify, distribute, and sell this software and its 73e747e6dSmrgdocumentation for any purpose is hereby granted without fee, provided that 83e747e6dSmrgthe above copyright notice appear in all copies and that both that 93e747e6dSmrgcopyright notice and this permission notice appear in supporting 103e747e6dSmrgdocumentation. 113e747e6dSmrg 123e747e6dSmrgThe above copyright notice and this permission notice shall be included in 133e747e6dSmrgall copies or substantial portions of the Software. 143e747e6dSmrg 153e747e6dSmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 163e747e6dSmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 173e747e6dSmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 183e747e6dSmrgOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN 193e747e6dSmrgAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 203e747e6dSmrgCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 213e747e6dSmrg 223e747e6dSmrgExcept as contained in this notice, the name of The Open Group shall not be 233e747e6dSmrgused in advertising or otherwise to promote the sale, use or other dealings 243e747e6dSmrgin this Software without prior written authorization from The Open Group. 253e747e6dSmrg 263e747e6dSmrg*/ 273e747e6dSmrg/** Copyright 1988 by Evans & Sutherland Computer Corporation, **/ 283e747e6dSmrg/** Salt Lake City, Utah **/ 293e747e6dSmrg/** Cambridge, Massachusetts **/ 303e747e6dSmrg/** **/ 313e747e6dSmrg/** All Rights Reserved **/ 323e747e6dSmrg/** **/ 333e747e6dSmrg/** Permission to use, copy, modify, and distribute this software and **/ 343e747e6dSmrg/** its documentation for any purpose and without fee is hereby **/ 353e747e6dSmrg/** granted, provided that the above copyright notice appear in all **/ 363e747e6dSmrg/** copies and that both that copyright notice and this permis- **/ 373e747e6dSmrg/** sion notice appear in supporting documentation, and that the **/ 383e747e6dSmrg/** name of Evans & Sutherland not be used in advertising **/ 393e747e6dSmrg/** in publicity pertaining to distribution of the software without **/ 403e747e6dSmrg/** specific, written prior permission. **/ 413e747e6dSmrg/** **/ 423e747e6dSmrg/** EVANS & SUTHERLAND DISCLAIMs ALL WARRANTIES WITH REGARD **/ 433e747e6dSmrg/** TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANT- **/ 443e747e6dSmrg/** ABILITY AND FITNESS, IN NO EVENT SHALL EVANS & SUTHERLAND **/ 453e747e6dSmrg/** BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAM- **/ 463e747e6dSmrg/** AGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA **/ 473e747e6dSmrg/** OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER **/ 483e747e6dSmrg/** TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE **/ 493e747e6dSmrg/** OR PERFORMANCE OF THIS SOFTWARE. **/ 503e747e6dSmrg/*****************************************************************************/ 513e747e6dSmrg 523e747e6dSmrg/*********************************************************************** 533e747e6dSmrg * 543e747e6dSmrg * utility routines header file 553e747e6dSmrg * 56329eaa64Smrg * 28-Oct-87 Thomas E. LaStrange File created 573e747e6dSmrg * 583e747e6dSmrg ***********************************************************************/ 593e747e6dSmrg 60b66deae1Smrg#ifndef UTIL_H 61b66deae1Smrg#define UTIL_H 623e747e6dSmrg 63329eaa64Smrg#include "twm.h" 64329eaa64Smrg 65329eaa64Smrgextern void MoveOutline(Window root, int x, int y, int width, int height, 66329eaa64Smrg int bw, int th); 67329eaa64Smrgextern void Zoom(Window wf, Window wt); 68329eaa64Smrgextern char *ExpandFilename(const char *name); 69329eaa64Smrgextern void GetUnknownIcon(const char *name); 70329eaa64Smrgextern Pixmap FindBitmap(const char *name, unsigned int *widthp, 71329eaa64Smrg unsigned int *heightp); 72329eaa64Smrgextern Pixmap GetBitmap(const char *name); 73329eaa64Smrgextern void InsertRGBColormap(Atom a, XStandardColormap *maps, int nmaps, 74329eaa64Smrg Bool replace); 75329eaa64Smrgextern void RemoveRGBColormap(Atom a); 76329eaa64Smrgextern void LocateStandardColormaps(void); 77329eaa64Smrgextern void GetColor(int kind, Pixel *what, const char *name); 78329eaa64Smrgextern void GetColorValue(int kind, XColor *what, const char *name); 79329eaa64Smrgextern void GetFont(MyFont *font); 80b66deae1Smrgextern void DestroyFont(MyFont *font); 81329eaa64Smrgextern int MyFont_TextWidth(MyFont *font, const char *string, int len); 82329eaa64Smrgextern void MyFont_DrawImageString(Display *dpy, Drawable d, MyFont *font, 83329eaa64Smrg GC gc, int x, int y, const char *string, 84329eaa64Smrg int len); 85329eaa64Smrgextern void MyFont_DrawString(Display *dpy, Drawable d, MyFont *font, GC gc, 86329eaa64Smrg int x, int y, const char *string, int len); 87329eaa64Smrgextern void MyFont_ChangeGC(unsigned long fix_fore, unsigned long fix_back, 88329eaa64Smrg MyFont *fix_font); 89329eaa64Smrgextern Status I18N_FetchName(Display *dpy, Window win, char **winname); 90329eaa64Smrgextern Status I18N_GetIconName(Display *dpy, Window win, char **iconname); 91329eaa64Smrgextern void SetFocus(TwmWindow *tmp_win, Time time); 92329eaa64Smrgextern void Bell(int type, int percent, Window win); 933e747e6dSmrg 943e747e6dSmrgextern int HotX, HotY; 953e747e6dSmrg 96329eaa64Smrg#define WM_BELL 0 97329eaa64Smrg#define MINOR_ERROR_BELL 1 98329eaa64Smrg#define MAJOR_ERROR_BELL 2 99329eaa64Smrg#define INFO_BELL 3 100329eaa64Smrg#define NUM_BELLS 4 1013e747e6dSmrg 102329eaa64Smrg#define QUIET_BELL -100 103329eaa64Smrg#define MODERATE_BELL 0 104329eaa64Smrg#define LOUD_BELL 100 1053e747e6dSmrg 1063e747e6dSmrg#ifdef XKB 1073e747e6dSmrg#include <X11/extensions/XKBbells.h> 1083e747e6dSmrg#else 109329eaa64Smrg#define XkbBI_Info 0 110329eaa64Smrg#define XkbBI_MinorError 1 111329eaa64Smrg#define XkbBI_MajorError 2 1123e747e6dSmrg#endif 1133e747e6dSmrg 114b66deae1Smrg#endif /* UTIL_H */ 115