.Xdefaults

Can anyone point me in the right direction as to where I might find more information on entries in the .Xdefaults file? I have several reasons for asking this...
- Is there one overall document that has resource listings on what can and cannot go into the .Xdefaults/.Xresources file?
- I have not been able to find a resource listing such as this.
- We are running Solaris 2.6 and HP-UX 10.20 with CDE and I am trying to work an easy solution to changing the mouse pointer to a brighter, more visible pointer-type. Currently I am running "xsetroot -cursor_name top_left_arrow -fg yellow -bg black" in the .login file. This takes care of the root cursor and in the .Xdefaults file I am using the following entries
*profileShape top_left_arrow
*profileColor yellow
which mirrors the same cursor when I rollover open dtterm windows and the like. Between the xsetroot command and the .Xdefaults file I have the same cursor on 99% of CDE. However, the pointer changes to the default black small pointer when rolling over the CDE Front Panel.
I wanted to create my own bitmap with mask to try and create a larger pointer, but this will only work for the root window. As soon as I roll over an open dtterm or other window, .Xdefaults takes precedence and the front panel gets a different pointer altogether as I already said.
Is there any way I can consolidate all pointers to be one bitmap, or am I screwed? (I know I am opening myself up here B-)
I am the system administrator and have root access, but I don`t know where to look to change these particular system defaults (if it is even possible) and I have a sneaking suspicion that to override the system would require a recompile of X. I know O`reilly publishes some excellent books on X, but I wouldn`t know which book to start with.

Any help would be greatly appreciated.

Rich - rich_passmore@yahoo.com


tnomura

tnomura's picture

.Xdefaults

You can see client resource information in its own
man page(e.g. man mwm, man uil). You can get
Xt widget tree and edit widget`s resources with
editres command.

--
Takaaki Nomura(amadeus@yk.rim.or.jp)


Anonymous

Anonymous's picture

.Xdefaults

Just as a follow-up I thought I would share with you my solution to my own problem...
After a hint and a point in the right direction from nomura (thank you very kindly) and some thorough reading of the man pages for dtwm as well as mwm, I was able to implement (somewhat) a feasible solution. My first task was to create a larger, more visible cursor on a four-headed HP-UX workstation. As anyone who has sat in front of the terminal long enough can tell you, after awhile the windows all start to bleed together.
I accomplished this task by editing the system default arrow (called left_ptr and left_ptrmsk) in /usr/include/X11/bitmaps. I used "bitmap" to edit the original files and just did a resize and rescale to 64x64 on both the front image and the mask. For anyone not familiar with the bitmaps in /usr/include/X11/bitmaps, each one has the actual bitmap (foreground) and a mask (background) to outline it. Once I had a bigger cursor, I needed a way for all of the users who login, regardless of UID, to have this bigger cursor as the default (this is a customer requirement and I will be the first to admit I don`t like forcing defaults on users). At any rate to accomplish the default, I created a small sh script called big_ptr with the following entries
#!/bin/sh
xsetroot -cursor /usr/include/X11/bitmaps/left_ptr /usr/include/X11/bitmaps/left_ptrmsk -fg yellow -bg black
and put this file in /etc/dt/config/Xsession.d/
By default, dtwm, as it is starting, will look for any scripts in this directory and will run them (as root). This accomplishes the first task of having a larger visible cursor, but not completely.
The second change I needed to make (since the large cursor established by xsetroot is not visible when rolling over dtterms and the front panel) was to have a brighter cursor when entering open windows on the desktop. I was able to make a default system change by adding the following four lines to /etc/dt/config/C/sys.resources
*pointerShape left_ptr
*pointerColor yellow
*pointerForeground yellow
*pointerBackground black

This can be overridden by the users if they have a .Xdefaults file in their home directory with these same settings or you can specify a client only setting for each window/client type such as dtterm*pointerShape gumby

Also, I found the cursor/pointer names in /usr/include/X11/cursorfonts.h or you may look at them graphically with the command "xfd -fn cursor". I still have not been able to find a way to have a larger cursor everywhere, and I found it interesting that even though I replaced the default left_ptr file in /usr/include/X11/bitmaps, that the default black and white cursor is still the 16x16 bitmap. I am guessing here, but I believe this cursor is compiled directly into X and is not changeable, as with all of the other cursor names listed in the cursorfont.h file. I did a global find from / and could not find a gumby bitmap anywhere.
Anyway, this is what I found and I hope this can help someone else out there so they won`t have to go through the trouble I have. And if anyone out there knows of a better or easier way to do this, please let me know. Good luck and feel free to contact me if anyone has any questions.

Rich - mailtorich_passmore@yahoo.com