1 2 3Definable Mouse Cursors for Window Maker 4---------------------------------------- 5 6The definable-cursor feature allows user-definable mouse cursors; the 7cursors can either be the built-in ones from the X11 cursor font, or 8they can be bitmap (XBM) files. User-definable cursors can be useful 9for theme-builders, lefthanders, and the visually impaired. 10 11 12Defining Your Own Cursors 13------------------------- 14 15A cursor specification takes one of the following forms in the 16~/GNUstep/Defaults/WindowMaker file: 17 18 (none) 19 (builtin, <cursor-name>) 20 (bitmap, <bitmap-filename>, <mask-filename>) 21 22They have the following meanings: 23 24 none The cursor is inherited from the parent window (often, 25 this means the root window). 26 27 builtin Use the cursor named <cursor-name> from X11's set of 28 built-in cursors. The names are the same as you use 29 with 'xsetroot -cursor_name'. See the xsetroot(1) man 30 page for more information. 31 32 bitmap Use the bitmap in <bitmap-filename> as the foreground 33 cursor bitmap, and the one in <mask-filename> as the 34 background (mask) bitmap. This is pretty much the same 35 as 'xsetroot -cursor', except that Window Maker searches 36 for the bitmaps along its PixmapPath. 37 38You can set the following cursor types (they're shown here with their 39defaults): 40 41 NormalCursor = (builtin, left_ptr); 42 ArrowCursor = (builtin, top_left_arrow); 43 MoveCursor = (builtin, fleur); 44 TopLeftResizeCursor = (builtin, top_left_corner); 45 TopRightResizeCursor = (builtin, top_right_corner); 46 BottomLeftResizeCursor = (builtin, bottom_left_corner); 47 BottomRightResizeCursor = (builtin, bottom_right_corner); 48 VerticalResizeCursor = (builtin, sb_v_double_arrow); 49 HorizontalResizeCursor = (builtin, sb_h_double_arrow); 50 WaitCursor = (builtin, watch); 51 QuestionCursor = (builtin, question_arrow); 52 TextCursor = (builtin, xterm); 53 SelectCursor = (builtin, cross); 54 55The following cursor types are allowed, but they're deprecated (Window 56Maker used them in the past, but doesn't use them anymore): 57 58 ResizeCursor = (builtin, sizing); 59 60 61Using Cursors with 'getstyle' and 'setstyle' 62-------------------------------------------- 63 64The 'getstyle' and 'setstyle' style/theme-management utilities can 65handle user-definable cursors. By default, 'getstyle' ignores cursor 66definitions; using 'getstyle -t' to get theme-related settings will 67also include any cursors you've defined in the resulting style file. 68 69However, by default, 'setstyle' does NOT ignore cursor settings. If 70you wish to set a style or theme without installing cursor settings, 71you can use 'setstyle --no-cursors' to ignore the cursor definitions. 72 73 74Random Notes 75------------ 76 77Most X11 cursors are 16x16 bitmaps. Many X servers can actually handle 78larger cursors, though. To check, use: 79 80 xdpyinfo 81 82and in the resulting output look for a line such as: 83 84 largest cursor: 64x64 85 86The example above indicates that my X server can handle cursors up to 8764 pixels wide by 64 pixels high. 88 89You can create your own bitmap cursors using the 'bitmap' program that 90accompanies most X11 distributions. For example bitmap cursors and 91masks, see <http://www.pobox.com/~jmknoble/WindowMaker/cursors/>. 92 93