neXtaw 0.13.0
Athena Widgets with N*XTSTEP appearance
Alfredo K. Kojima
<kojima@inf.ufrgs.br>
Carlos A. M. dos Santos
<casantos@inf.ufrgs.br>
Ulric Eriksson
<ulric@siag.nu>
1. INTRODUCTION
This is neXtaw, a modified version of the Athena Widgets with N*XTSTEP
appearance. It is based on the Xaw3d 1.5 library by Kaleb S. Keithley.
This is not a magic library which will beautify all your apps instantly.
But with some .Xdefaults fiddling you can make Athena applications look,
and sometimes behave, much better.
You can make Athena based applications use it by the following ways:
o Just replace libXaw.* or libXaw3d.* with libneXtaw.so.?.? and
make all symlinks that were pointing to libXaw point to
libneXtaw
===> Note that this may not work in some cases. <===
o Relink the applications changing -lXaw to -lneXtaw (preferable, but
not ever feasible). So you can still have the old libXaw and use it
with some app that doesn't work with neXtaw.
o On Linux and Solaris, run the application with LD_PRELOAD set,
like this:
LD_PRELOAD=/usr/X11R6/lib/libneXtaw.so <program>
Features:
- N*XTSTEP look alike widgets.
- User selectable Toggle appearance (old style, checkbutton or
radiobutton)
- A rough (better than nothing) implementation of auto-scrolling
for menus that don't fit in the screen (like xfontsel). This is
definately NOT the better approach, but Xaw lacks a combo-box
widget.
- Better look
- Better feel
- Better internationalization support (character composition with
dead-keys)
- Better interaction with CLIPBOARD selection
Converted Widgets:
- ThreeD (3d shadows)
- Scrollbar
- SimpleMenu
- Command
- Viewport (stolen from Xaw95)
- Toggle
- MenuButton
2. NEW RESOURCES
*Scrollbar.DrawArrows
Whether the arrows in the scrollbars should be drawn or not.
Default is True.
example:
xvidtune*Scrollbar*DrawArrows: false
*Scrollbar.AlwaysVisible
Whether arrow buttons and the slider must always be visible on the
scrollbar.
Default is False.
example:
xedit*Scrollbar*AlwaysVisible: true
*Scrollbar.initialDelay
Controls the initial delay of scrolling.
Default is 300 milliseconds.
example:
xedit*Scrollbar*initialDelay: 250
*Scrollbar.repeatDelay
Controls the scrolling repeat rate.
Default is 150 milliseconds.
example:
xedit*Scrollbar*repeatDelay: 50
Note that since version 0.9 Scrollbar does not have the `DrawBorder'
resource anymore.
*Toggle.ToggleStyle
Toggle widgets now can have different appearances set through ToggleStyle:
* simple, for the old style, where all Toggles look exactly like a
Command;
* check, for checkboxes;
* radio, for radiobuttons.
Default is simple.
example:
xfontsel*Toggle.ToggleStyle: check
*MenuButton.MenuButtonStyle
Menubuttons can have a indicator displayed on the right part of them:
* simple, for no indicator;
* action, for action/command menus;
* select, for selection menus.
Default is simple.
example:
ghostview*MenuButton.MenuButtonStyle: action
3. COMPILATION
Starting from version 0.8, neXtaw will compile as a standalone package,
contrary to Xaw3d that was intended to compile under the standard X Window
source tree.
Unpack the sources somewhere:
cd /usr/src
gunzip -c neXtaw-<version>.tar.gz|tar xvf -
cd neXtaw-<version>
./configure [options]
make
To install both the library and the example programs, run:
make install
If you want to install only the library, cd to "lib" and run
make install
See also INSTALL.
4. CONFIGURATION
There is a set of application-defaults files in the directory
doc/app-defaults/ that you may wish to use to further customize applications
to look better with neXtaw by appending them to your .Xdefaults file.
Pay a special attention to Xdefaults, that you can either append to your
.Xdefaults file or move to
<XROOT>/lib/X11/app-defaults/Xdefaults
where <XROOT> is the top-level directory of your X Window installation
(typically, /usr/X11R6 for XFree86) and set the environment variable
XENVIRONMENT to point to it. For example, in my .profile I have a line
containing
XENVIRONMENT=/usr/X11R6/lib/X11/app-defaults/Xdefaults
Run "man X" and look in the section "RESOURCES" for extra information on
resource management and the environment variable XENVIRONMENT.
You can also use editres to find out proper application resource names and
add them to your Xdefaults and then fiddle with it's values until you get
what you want.
5. KNOWN BUGS
These are some of the bugs I know about. If you fix some of them, please
send me a patch.
- Toggles will disappear if you bind a highlight or unhighlight action to it.
Therefore don't do that.
- Same for MenuButton indicators.
- MenuButton with indicator does not resize itself properly in some apps.
- Little cosmetic bug in the position of bottom arrow for scrollable menus.
6. IF YOU HAVE SOME TROUBLE
* Read this file, if you haven't yet.
* Read the FAQ
* Read the sources
As a desperate attitude :-), send e-mail to ulric@siag.nu. Include a
detailed description of the problems you are experiencing, the platform you're
running on (machine, OS, X server vendor and version etc), the program name
and version that have problems, the neXtaw version, the output of "xrdb
-query" and a screen shot, if you think it'll help. Please ask for permission
before you send a screen shot!
E a besta, que queria dizer que tinha fome,
mostrou isto com mímica engolindo o Senador
e suas teorias. Metaforicamente, é claro.
-- Luis Fernando Veríssimo
Note from current maintainer: according to Babelfish, the quote
above means:
E crossbow, that wanted to say that it had hunger,
showed this with mimic engolindo the Senator
and its theories. Metaforicamente, is clearly.
Clearly, indeed.
Ulric Eriksson, ulric@siag.nu