1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-19 04:20:27 +01:00

Updating to version 0.20.2

Many bug fixes.
This commit is contained in:
dan
1998-10-21 14:43:47 +00:00
parent 9d2e6ef9f1
commit 9af1c6c415
222 changed files with 9132 additions and 4322 deletions

15
AUTHORS
View File

@@ -15,7 +15,7 @@ Fix for cascade window placement
Peter Bentley <peter.bentley@nomura.co.uk>
fixed WM_STATE handling bug, fixed some memory leaks, made application menus
be mapped near the windows for non-click-to-focus modes.
be mapped near the windows for non-click-to-focus modes, timer bug
Ulf Betlehem <flu@iki.fi>
Window resize with Meta-Click3, fixed OpaqueMove to send only 1 synth.
@@ -28,7 +28,7 @@ Rob Clark <rclark@turing.cs.hmc.edu>
Text input field, 15bpp support
Sylvain CORRE <sylvain.corre@wanadoo.fr>
bug fix for MkLinux/PPC, bug fix for cpixmap in wmsetbg
bug fix for MkLinux/PPC
Frederic Devernay <devernay@istar.fr>
dock fix for openwindows, made asclock be friendlier with colorcell impaired
@@ -63,6 +63,9 @@ HIDEKI Fujimoto <hideki70@osk2.threewebnet.or.jp>
FreeBSD portability, icon arrangement fixes, dock initialization bug fix,
some I18N related fixes
Pascal Hofstee <daeron@wit401305.student.utwente.nl>
WINGs bug fixes
Robert A. Holak <panthar@tradeservices.com>
bug fix
@@ -72,6 +75,9 @@ Workspace change bug fix
Sudish Joseph <sj@eng.mindspring.net>
Modifier binding fix and other bug fixes
Luke Kendall <luke@research.canon.com.au>
menu format converter, various enhancements to wxcopy and wxpaste
Bradley M Keryan <keryan@andrew.cmu.edu>
EMACS/keypad like cursor movement for WINGs textfield
@@ -136,6 +142,9 @@ Ture Pelsson <ture@lysator.liu.se>
various portability fixes, replaced busy wait with select() in event
handling code, fixed problem with some misbehaved kids after a fork().
Toby Sargeant <?>
menu format converter
Carsten Schaar <nhadcasc@fs-maphy.uni-hannover.de>
SCO portability, german locale, autoconf enhancements
@@ -168,7 +177,7 @@ FRBall <frb@umr.edu>
dgradient fix
"]d" <mhz@gpf.or.th>
Window list menu miniaturized/hidden hints
Window list menu miniaturized/hidden hints, XDE support
Trae Mc Combs <x@themes.org>
BlueWaves.jpeg background image in BlueWaves theme.

View File

@@ -5,8 +5,10 @@
If you find a bug please fill this form and send it to
developers@windowmaker.org
You can also report a bug in the WWW bug tracker at
http://windowmaker.org/cgi-bin/bugs
http://windowmaker.org/cgi-bin/bugs or by sending this report
to bugs@windowmaker.org
0. Before reporting this bug I already:
@@ -68,4 +70,6 @@ X Server Vendor: ...................... Color Depth: .................
WindowMaker Version (run "wmaker -version"): .........................
11. backtrace if the bug made Window Maker crash. The README file
has instructions to make one.

9
BUGS
View File

@@ -1,10 +1,13 @@
- the app menu does not update after a style/theme change without restart.
- the animation of shade puts ImageMagick/display in a weird state
- during startup, transient windows should be miniaturized with their owners
not in their own icons
- shaped windows don't resize very well
- stacking code is buggy (or XFree is buggy)
- WINGs has problems in some platforms (SGI, Sun etc.) Anyone on these
systems want to fix it?
- save session doesnt work on some platforms (Alpha and Sparc)
- GNUSTEP_WM_ATTR in WINGs has problems on Alpha boxes
- texture pixmaps are being incorrectly freed somewhere. Either
fix bug (to support broken MetroX servers) or remove all useless references
to the Pixmap (to save memory and drop bug compatibility).
- host information is not saved/honored by the dock or save session stuff.
It should at least check if the host is the local machine and only save it
in the session/allow docking it if yes.

View File

@@ -1,3 +1,57 @@
Changes since version 0.20.1:
.............................
- fixed timer bug
- removed NoWindowUnderDock
- error reporting mechanism has changed in wrlib. Instead of a writing
the message in a string, it will place the error code in RErrorCode
- smoother icon selection
- persistent client supplied icon pixmaps
- fixed yet another crash on emacs exit bug
- fixed portability prob in wrlib shm code
- fixed bug in DISPLAY variable setting in multiheads
- fixed a few more portability problems related to storing struct properties
- fixed damaged balloons on Suns/8bpp (I guess)
- better "one of" type option handling
- added a timeout for some animations
- support for large binary files in wxcopy/wxpaste
- fixed bug of losing focus when resizing/moving windows
- fixed bug in libproplist
- fixed focus with sloppy
- changed permissions of shm segments to 0666. Now, if someone has a shm
leak, we can know who it is.
- faster titlebar texture update
- faster icon kaboom
- added different undocking animation
- updated wmaker -version to output "Window Maker" instead of WindowMaker
- fixed crash bug with transient windows (gimp etc)
- fixed bug with popen()+wwarning() - problem opening cpp'ed menus
- added test for header files in configure for gfx libraries
- simplified building process, making libPropList be always built
- fixed crash with bad mgradient color entry
- docked appicons that are being edited/killed cant be moved (mutex fix)
- more features in wxcopy/wxpaste
- fixed bug with state file in multiheads
- selection retrieval moved to WINGs
- fixed workspacekey to switch workspaces in the current layer
- fixed workspacekey to not switch to inexisting workspace unless
AdvanceToNewWorkspace is YES
- fixed bug with disappearing windows if a workspace switch is made on startup
- fixed blocking of window creation/destroy events when opening menu with kbd
- fixed aspect ratio setting bug
- fixed crashing when miniaturized window is closed during animation
- added XDE support
- fixed stupid bug in shape stuff
- raised threshold for removing docked icons
- fixed HideOthers for windows with NoAppIcon=YES
- if Cancel is pressed in dialog box of %a in menu cmd lines, the command
will be canceled
- slightly better dithering for 8bpp
- apps menu will use $SHELL, instead of /bin/sh to run EXEC menu commands
- cleaned up some code (GetNormalHints(), wManageWindow(),
wGetWindowSavedState() et al, )
Changes since version 0.20.0:
.............................
@@ -36,7 +90,6 @@ Changes since version 0.19.3:
- AIX bug compatibility in XmbTextEntents()
- fixed jpeg loading bug
Changes since version 0.19.2:
.............................

113
FAQ
View File

@@ -5,6 +5,9 @@ http://www.dpo.uab.edu/~grapeape/wmfaq.html or
http://wm.gnu.net/wmfaq/
--------------------------
This version was slightly modified by me (Alfredo). Chris, I enclosed
my changes with "###". Please add the changes to your official version.
Summary of Contents:
Introduction
@@ -21,8 +24,10 @@ Installation
- How do I get libjpeg to work?
- How do I get libpng to work?
- Does wmsound work with 0.1x.x?
- Can I use WindowMaker with KDE or GNOME or CDE?
- How do I switch CDE's windowmanager to use WindowMaker?
- Do I need to rerun wmaker.inst with every new version of WindowMaker?
- When I run wmaker it quits complaing about something __register_frame_info.
Usage
- What is an appicon?
@@ -80,6 +85,8 @@ Miscellaneous Questions
- What exactly are Themes?
- How do I install a Theme?
- How do I make a Theme?
- Why don't you distribute {normal diff,xdelta} patches?
========================================================================
@@ -241,6 +248,32 @@ or at
http://wm.gnu.net/files.html#wmsound
### New, possibly with some errors
Can I use WindowMaker with KDE or GNOME or CDE?
----------------------------------
Contrary to a lot of people thinks, KDE is NOT a window manager. KDE is
a suite of various applications that includes a custom window manager.
The same is true for CDE.
Now, answering the question: Yes, you can use WindowMaker in these
environments. To use WindowMaker with GNOME, you don't need to do anything
special. To use it with CDE, read the answer for "How do I switch CDE's
windowmanager to use WindowMaker?"
To use it with KDE, read it's documentation to get rid of kwm (and possibly
kpanel) and replace it with wmaker. Then, start WPrefs.app, go to "Mouse
Preferences" and set the "Disable mouse actions" check box. You will need to
restart WindowMaker to make this change take effect. The "Disable mouse
actions" change is needed to allow you to use krootwm, wich enables you to
use kfm's desktop icons, but will prevent you from accessing WindowMaker's
Applications and Window List menus with the mouse.
###
How do I switch CDE's window-manager to use WindowMaker?
----------------------------------
Method 1:
@@ -321,6 +354,16 @@ The only problem I have at the moment is I seem to get multiple copies of
asclock running when I log in again.
### New
You can also use the normal "Exit Session" command from the WM root menu
and place additional commands required to shutdown CDE in
~/GNUstep/Library/WindowMaker/exitscript
So, if you add "dtaction ExitSession" in that file, the command to
shutdown CDE will be automatically executed when you exit WindowMaker.
###
Do I need to rerun wmaker.inst with every new version of WindowMaker?
----------------------------------
Dan Pascu reveals the answer:
@@ -337,7 +380,14 @@ So even if new options are added, they will reflect in the user configuration.
Only if user wishes to change the default behavior, he needs to add that option
to the config file.
### New
When I run wmaker it quits complaing about something __register_frame_info.
-----------------------------------------------------------
This seems to be related to pgcc, gcc-2.8.0 or something. Try using gcc
2.7.x to compile wmaker.
###
-=-=-=-
Usage:
@@ -361,7 +411,7 @@ indicating when it is close enough to dock, and where it will be placed. To make
sure this application will be there next time you start up windowmaker, exit
windowmaker with the "exit session" option.
### Obsoleted
What is the button in the middle of the Clip?
----------------------------------
Dan Pascu gives this insightful answer:
@@ -371,7 +421,7 @@ Dan Pascu gives this insightful answer:
In 0.15.x, the light now means that the Clip is in its expanded stateto show any
appicons attached to it. When collapsed, it expands when you drag an appicon
near it to dock.
###
What is the difference between the 'Exit' and 'Exit Session' Options?
----------------------------------
@@ -403,7 +453,9 @@ How do I rename workspaces?
Right click on the "desktop" (root window) to show the menu (don't hold the
button down). Go to the workspaces menu and hold the Control key down and
click on the workspace you would like to rename and type the name.
### New
If you use the clip, use the "Rename Workspace" command in the clip menu.
###
How can I resize a window if the window is larger than my currect
desktop?
@@ -430,7 +482,12 @@ You docked xyz using dockit. Dockit does not generate correct application
icons most of the time. The only way to get around it is to edit
~/GNUstep/Defaults/WMState and set ForcedDock = YES; in the entry for xyz.
If you use rxvt, upgrade to rxvt 2.4.6 or newer.
### New
There is another better way to dock applications that do not have an appicon,
wich is by using the "Emulate Application Icon" option in the
"Advanced Options" section of the attributes panel. If you turn this option
ON and restart that application, you should get a dockable application icon.
###
-=-=-=-=-=-=-=-
Configuration:
@@ -523,10 +580,13 @@ transparent parts of your icon.
How do you dock <insert program here> that doesn't have an appicon in
the new version of WindowMaker?
----------------------------------
Use the tcl script dockit which is included with WindowMaker 0.15.x. By default
you can run it by double clicking on the main dock icon. Note that dockit
can generate problematic appicons.
### Updated
Open the window commands menu for the main window of the application
(the first window that is opened by the app and also causes the whole
application to exit, when it is closed), choose "Attributes..." and
go to the "Advanced Options" section. Then, check ON the
"Emulate Application Icon" check box.
###
How do I get x11amp to not have a title bar? (or any other program for
that matter?)
@@ -776,8 +836,8 @@ For example:
rxvt -name foo -e irc
Then, go to the Attributes menu (right click on titlebar (or hit F10) and choose
'Attributes...')
Then, go to the Attributes menu (right click on titlebar (or hit Control+Esc
and choose 'Attributes...')
Then choose 'Advanced Options' from the listbox and enable 'Don't Bind
Keyboard shortcuts'.
Click 'Save' and 'Apply' and you should be able to run your session without the
@@ -905,3 +965,36 @@ To make a Theme.tar.gz, these are the steps I take:
4.Now give it to your friends!
### New
Why don't you distribute {normal diff,xdelta} patches?
------------------------------------------------------------
Whenever possible plain diff patches are distributed. If the new
version has new binary files, normal diff won't be able to handle
them, so a patch package is distributed, instead. We don't use
xdelta because:
- most systems do not have xdelta installed;
- xdelta is picky and require the file to be patched to be
exactly the same as the one used to make the patch. The patch package
scheme used is much more flexible.
We do not distribute a simple diff with the binary files separately
(and variations, like uuencoding the binary files) because:
- it is more complicated and error prone to require the user to manually
move the files to the correct places;
- the current patch package scheme *does* distribute the binary files
and diff files separately. If the user wants to install everything by
hand, nobody will object to that;
- sooner or later someone will certainly ask for a script to automate the
file moving stuff.
So we hacked a script (mkpatch) that automatically creates a patch package
with the normal text diff file, a list of removed files and the binary files
that have changed or been added, plus a script that does the patching
automatically. If you don't like the script, you can apply the patch and
move the files manually. Or download the whole distribution.
###

View File

@@ -8,6 +8,13 @@ If I18N support does not work for you, check these:
can check if your locale is supported by X's locale emulation.
See "/usr/X11R6/lib/X11/locale/locale.alias"
- Check if you're using appropriate fonts for the locale you
chose. If you're using a font set that has a different
encoding than the one used by Xlib or libc, bad things can
happen. Try specifically putting the encoding in the LANG
variable, like ru_RU.KOI8-R. Again, see
"/usr/X11R6/lib/X11/locale/locale.alias"
- if your OS doesn't support any locale or if your OS doesn't
support a locale for your language, you can use X Window System's
locale emulation feature instead of OS's locale. To use this

101
INSTALL
View File

@@ -21,8 +21,10 @@ SUPPORTED PLATFORMS
- OSF/1
- HP-UX
- AIX 4.1.4 / IBM PowerPC
- AIX 5.3
- DEC Alpha/Digital UNIX 4.x
- XFree86 / OS/2
- Corel Netwinder
Patches to make it work on other platforms are welcome.
@@ -36,7 +38,8 @@ The following software is required to use WindowMaker
Window Maker can be compiled in older versions of X, like X11R5
(Solaris) or X11R4 (OpenWindows) but it will not work 100% correctly.
In such servers there will not be application icons and you'll have
trouble using the dock.
trouble using the dock. Upgrading the client libraries (Xlib, Xt etc)
will help if you can't upgrade the server.
If you will build Window Maker, make sure you have gcc and the X header files
@@ -55,7 +58,7 @@ might work too. Tell me if you made wmaker work with some library
with a version older than the stated here.
- libXPM 4.7
- libXPM 4.7 or newer
Older versions may not work!!!
Available at ftp://sunsite.unc.edu/pub/Linux/libs/X/
@@ -69,7 +72,7 @@ with a version older than the stated here.
For TIFF image support.
You can get it at ftp://ftp.sgi.com/graphics/tiff
- libjpeg 6.0.1
- libjpeg 6.0.1 or newer
For JPEG image support
- libgif 2.2 or libungif
@@ -91,9 +94,14 @@ some WindowMaker features. Example:
./configure --enable-kanji
will configure WindowMaker with kanji characters support compiled in.
will configure Window Maker with kanji (and other multi-byte) characters
support compiled in.
To get a list of other options, run ./configure --help
--enable-sound enable support of sound effects module
--disable-xpm disables use of the XPM library even if it is available on
your system.
@@ -118,6 +126,9 @@ will configure WindowMaker with kanji characters support compiled in.
supported at all by the developers. If you have some trouble with it,
contact it's author: Christopher Seawood <cls@seawood.org>
--disable-shm disable use of the MIT shared memory extension. This will
slow down texture generation.
PLATFORM SPECIFIC NOTES:
========================
@@ -130,6 +141,8 @@ PLATFORM SPECIFIC NOTES:
#define CPP_PATH "gcc -E -x c"
Sun's cpp lacks some features needed by Window Maker and it can
cause problems when parsing the config files.
You also might need to use the --with-gfx-libs and --with-gfx-incs
to supply the directory where libtiff is located.
- RedHat Linux
Make sure you don't have the LANG and LINGUAS environment variables
@@ -159,8 +172,8 @@ INSTALLATION:
Unpack WindowMaker-data.tar.gz and move the pixmaps directory in it
to /usr/local/share/pixmaps
You can get the file at ftp://ftp.windowmaker.org. This file is not strictly
necessary, but contains some additional nice icons and other things.
You can get the file at ftp://ftp.windowmaker.org. This file is optional
and only have a few icons.
autoconf and automake
@@ -172,34 +185,9 @@ an older version, disable them by temporarily renaming them to something
else or uninstalling them from your system.
Build libPropList
-----------------
Note: You only need to build libPropList if you don't have it installed
in your system.
libPropList is included with the distribution, so you don't
need to download it anywhere (some people have asked me this...)
But if you already have libPropList installed on you system you
can skip this step, since configure will detect that and use the
installed version first if available.
To build libPropList, simply type the following at the shell prompt:
gunzip -c libPropList.tar.gz | tar xf -
cd libPropList
./configure
make
then, login as root and type:
make install
Build Window Maker
-----------------
If this is the first time you're building WindowMaker, you can
simply type:
------------------
For a quick start, type the following in your shell prompt:
./configure
make
@@ -208,7 +196,7 @@ then, login as root and type:
make install
or if you want to strip the binaries from debugging symbols and make them
or if you want to strip the debugging symbols from the binaries and make them
smaller, you can instead type:
make install-strip
@@ -225,9 +213,6 @@ following.
to get a complete listing of other options that are available.
Note that the WPrefs.app installation path is configured
in a different way. Look at WPrefs/README for information.
2. Run configure with the options you want. For example, if you
want to use the --enable-kanji option, type:
@@ -236,16 +221,16 @@ following.
3. (optional) Edit src/wconfig.h with your favorite text editor
and browse through it for some options you might want to change.
4. Compile WindowMaker. Just type:
4. Compile. Just type:
make
5. Login as root (if you can't do that, read the "I don't have the
root password :-(" section) and install WindowMaker in your system.
Again, type:
root password :-(" section) and install Window Maker in your system:
su root
make install
User specific configuration
---------------------------
@@ -262,18 +247,12 @@ Type:
wmaker.inst will install Window Maker configuration files and will
setup X to automatically launch Window Maker at startup.
That's it! The configuration file where you can edit your preferences
is $HOME/GNUstep/Defaults/WindowMaker.
The $HOME/GNUstep/Defaults/WMWindowAttributes file is where you assign
icons to applications and edit some other attributes for windows. This can
be also edited from the "Attributes Panel". To access it, click the titlebar
of the window with the Right mouse button and select "Attributes...".
That's it!
The $HOME/GNUstep/Library/WindowMaker/menu file is the definition of
the root menu. Edit it according to the applications you have installed.
You can type "man wmaker" to get some general help for configuration
and other stuff.
Read the User Guide for a more in depth explanation of WindowMaker.
The User Guide is avaiable at http://windowmaker.org
Read the User Guide for a more in-depth explanation of Window Maker.
You might want to take a look at the FAQ too.
@@ -283,14 +262,17 @@ I don't have the root password :(
If you can't get superuser privileges (can't be root) you can install
wmaker in your own home directory. For that, supply the --prefix option
when running configure in step 2 of building WindowMaker . Example:
when running configure in step 2 of building Window Maker. You will
also need to supply the --with-appspath option, to specify the path for
WPrefs.app Example:
./configure --prefix=/home/jshmoe
./configure --prefix=/home/jshmoe --with-appspath=/home/jshmoe/GNUstep/Apps
If you use national language support, you must also supply the --with-nlsdir
option, as:
./configure --prefix=/home/jshmoe --with-nlsdir=/home/jshmoe/lib/locale
./configure --prefix=/home/jshmoe --with-appspath=/home/jshmoe/GNUstep/Apps \
--with-nlsdir=/home/jshmoe/lib/locale
Then make /home/jshmoe/bin be included in your search path and run
bin/wmaker.inst
@@ -314,12 +296,6 @@ like not being able to use a graphic format library you think you have
installed, look at the config.log file for clues of the problem.
== When I try to start X after installing wmaker, I get this:
exec: wmaker: not found
You probably are using a brain-damaged distribution. Add /usr/local/bin
into your path environment variable (editing .cshrc or .profile)
== Error during build of libPropList
make: *** No rule to make target `libPropList.a.c', needed by
@@ -332,8 +308,7 @@ automake 1.3
If you are using the RPM's that come with RedHat 4.x, don't use them.
It is broken. Uninstall the RPM and reinstall a fresh package from
You can get them from ftp://prep.ai.mit.edu or any mirror.
ftp://prep.ai.mit.edu or any mirror.
== configure doesn't detect libtiff, or other graphic libraries.
@@ -372,6 +347,7 @@ not located in /lib/cpp, edit src/config.h and correct the path in
CPP_PATH.
LOCALES/INTERNATIONALIZATION
============================
@@ -452,4 +428,5 @@ and in ~/G/D/WMGLOBAL:
SystemFont = "-*-*-medium-r-normal-*-%d-*-*-*-*-*-*-*";
BoldSystemFont = "-*-*-medium-r-normal-*-%d-*-*-*-*-*-*-*";
The above 2 fonts are only used by applications that use WINGs (WindowMaker
and WPrefs.app)

79
Install
View File

@@ -19,21 +19,36 @@ perai() {
}
perform() {
result=
eval $*
if [ "$result" != 0 ]; then
echo
echo "========================"
echo "Window Maker installation failed or aborted by user."
exit 1
fi
}
trap "echo Window Maker installation aborted. ; exit 1" 2 3
echo
echo "========================="
echo "Window Maker Installation"
echo "========================"
echo "========================="
echo
echo "NOTE: If the installation procedure fails, read the INSTALL file and do"
echo "the installation manually."
echo "NOTE: If this script fails, read the INSTALL file and"
echo "install by hand."
echo
echo "Please read the INSTALL and FAQ files before e-mailing "
echo "questions."
perai
if test "$USER" != "root"; then
echo "Warning: you must run this script as the root user."
perai
echo
echo "Be sure to specify an installation path where you have"
echo "write persmission."
echo "Warning: you must run this script as root to install"
echo "Window Maker. Hit <Control>-<C> to quit this script."
perai
echo
fi
@@ -124,11 +139,12 @@ while [ $done = 0 ]; do
echo
echo "Where do you want to install Window Maker? [$PREFIX]"
echo "Don't change it if you don't know what you're doing."
echo "(The default path will install WindowMaker in "
echo "$PREFIX/bin, $PREFIX/lib etc.)"
if test $USER != root; then
echo "Make sure to specify a path where you have write permission."
fi
echo "(The default will put Window Maker in $PREFIX/bin, $PREFIX/lib etc.)"
echo -n "? "
read foo
if test "x$foo" != "x"; then
if [ "$foo" = "y" -o "$foo" = "n" ]; then
echo
@@ -149,27 +165,6 @@ done
OPTIONS="$OPTIONS --prefix=$PREFIX"
###################### Build libPropList
if [ ! -d libPropList ]; then
gzip -d -c libPropList.tar.gz | tar xf -
fi
echo "-----------------------"
echo "Building libPropList..."
echo "-----------------------"
cd libPropList
if [ ! -f config.status ]; then
./configure
fi
make
cd ..
if [ ! -f libPropList/libPropList.a ]; then
echo "Build of libPropList was not successfull. "
exit
fi
##################### Configure
echo "--------------------------"
@@ -177,25 +172,27 @@ echo "Configuring WindowMaker..."
echo "--------------------------"
if [ `uname -s` = "SCO_SV" ]; then
echo "CFLAGS=\"$CFLAGS -belf -DANSICPP\" ./configure $OPTIONS"
CFLAGS="$CFLAGS -belf -DANSICPP" ./configure $OPTIONS
perform CFLAGS=\"$CFLAGS -belf -DANSICPP\" ./configure $OPTIONS
else
echo "CFLAGS=\"$CFLAGS $GCCFLAGS\" ./configure $OPTIONS"
CFLAGS="$CFLAGS $GCCFLAGS" ./configure $OPTIONS
perform CFLAGS=\"$CFLAGS $GCCFLAGS\" ./configure $OPTIONS
fi
#################### Compile
echo "------------------------"
echo "-------------------------"
echo "Compiling Window Maker..."
echo "------------------------"
(cd src; make clean)
make
echo "-------------------------"
perform (cd src; make clean)
perform make
echo "--------------------------"
echo "Installing Window Maker..."
echo "-------------------------"
echo "--------------------------"
make install
perform make install
echo
echo "Installation Finished!"

27
MIRRORS
View File

@@ -41,8 +41,16 @@ Contact: Adam Jacob <adam@cybertrails.com>
Third Party WindowMaker Distribution Packages
=============================================
RedHat/RPM
----------
Debian GNU/Linux (deb)
----------------------
Contact: Marcelo Magallon <mmagallo@efis.ucr.ac.cr>
Sites:
http://master.debian.org/~mmagallo/packages/wmaker/
RedHat Linux (RPM)
------------------
Contact: Jim Knoble <jmknoble@pobox.com>
Sites:
@@ -51,4 +59,19 @@ ftp://ftp.redhat.com/pub/contrib/SRPMS/
ftp://ftp.redhat.com/pub/contrib/i386/
HP-UX
-----
Sites:
UK: http://hpux.csc.liv.ac.uk/
Germany: http://hpux.ask.uni-karlsruhe.de/
US (WI): http://hpux.cae.wisc.edu/
France: http://hpux.cict.fr/
Netherlands: http://hpux.tn.tudelft.nl/
Canada: http://hpux.ee.ualberta.ca/
Italy: http://hpux.dsi.unimi.it/
South Africa: http://hpux.petech.ac.za/
Japan: http://hpux.u-aizu.ac.jp/
US (UT): http://hpux.cs.utah.edu/

View File

@@ -1,14 +1,7 @@
## Process this file with automake to produce Makefile.in
SUBDIRS = wrlib WINGs src util po WindowMaker wmlib test WPrefs.app doc
SUBDIRS = libPropList wrlib WINGs src util po WindowMaker wmlib test WPrefs.app doc
EXTRA_DIST = TODO BUGS BUGFORM FAQ FAQ.I18N MIRRORS Install acconfig.h\
libPropList.tar.gz mkpatch
libPropList.tar.gz:
-(cd libPropList; $(MAKE) distclean)
-rm -f libPropList.tar.gz
tar cf libPropList.tar libPropList
gzip -9 libPropList.tar
mkpatch

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
@@ -91,10 +89,10 @@ X_LOCALE = @X_LOCALE@
pixmapdir = @pixmapdir@
wprefsdir = @wprefsdir@
SUBDIRS = wrlib WINGs src util po WindowMaker wmlib test WPrefs.app doc
SUBDIRS = libPropList wrlib WINGs src util po WindowMaker wmlib test WPrefs.app doc
EXTRA_DIST = TODO BUGS BUGFORM FAQ FAQ.I18N MIRRORS Install acconfig.h\
libPropList.tar.gz mkpatch
mkpatch
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ./src/config.h
@@ -311,12 +309,6 @@ installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
libPropList.tar.gz:
-(cd libPropList; $(MAKE) distclean)
-rm -f libPropList.tar.gz
tar cf libPropList.tar libPropList
gzip -9 libPropList.tar
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

95
NEWS
View File

@@ -1,13 +1,104 @@
NEWS for veteran Window Maker users
----------------------------------
-----------------------------------
--- 0.20.2
The name of WindowMaker was changed to Window Maker.
Window creation animation disabled by default.
xdaliclock -shape
-----------------
If you use it edit src/wconfig.h and #define OPTIMIZE_SHAPE or disable the
titlebar and resizebar for the window. OPTIMIZE_SHAPE will remove the
flickering for xdaliclock and other programs that change their shapes often,
but will increase network traffic considerably. So, if you use xdaliclock
from a remote machine it can get slow.
Applications Menu
-----------------
The applications menu will now use the shell in the SHELL environment
variable to execute EXEC menu commands. If it is unset (I think it's always
automatically set by the shell program) it will use /bin/sh
Extra fancy icon kaboom :)
--------------------------
Edit src/wconfig.h and #define ICON_KABOOM_EXTRA to get
more effects for the icon undocking animation.
Options for superfluous stuff are even more superfluous, so this
will not become runtime.
XDE drag and drop support
-------------------------
Support for XDE drag and drop was added (by "]d" <id@maliwan.org>).
To enable, edit src/wconfig.h
The support works with gtk 1.1.2
libPropList
-----------
libPropList will now be built automatically by wmaker. Wich means
the (simplified) building process is now:
./configure
make
make install
instead of:
tar xzf libPropList.tar.gz
(cd libPropList; make)
make
make install
You also don't need to worry about GNOME libPropList incompatibilities
anymore.
Bug with focus lost in sloppy focus fixed
-----------------------------------------
The bug only occurs in sloppy or auto focus modes, with AutoFocus disabled
and Superfluous enabled. There is no easy/clean way to fix this, so Window
Maker will disable the animation of window creation if the focus mode is
either sloppy or auto AND AutoFocus=NO.
If you want the animation, enable AutoFocus or use manual focus mode
(prefered).
The NoWindowUnderDock option was removed
----------------------------------------
To obtain the same result, use the "Floating Dock" option in the dock menu.
Persistent Program Suplied Icons
--------------------------------
Application supplied icons are now stored, so that the dock will keep
showing them after the app is exited. The icons are stored at
~/GNUstep/.AppInfo/WindowMaker/
--- 0.20.0
Multihead support. wmaker will now manage all screens that are attached to the
display.
------------------------------------------------------------------------------
It does so from a single process (instead of spawning a new process for each
screen, like fvwm does). This keeps memory usage a lot lower than fvwm.
@@ -27,6 +118,7 @@ exitscript
~/G/L/W/exitscript will be called automatically when wmaker is exited.
New runtime options
-------------------
@@ -55,6 +147,7 @@ New theme
A new theme named Night, is available in this distribution.
--- 0.19.3
GIF support was added. You will need libgif 2.2 to use it.

190
README
View File

@@ -14,6 +14,8 @@
Matthew Hawkins
<matt@windowmaker.org>
Description
===========
@@ -22,66 +24,77 @@ part of the NEXTSTEP(tm) GUI. It's supposed to be relatively fast and small,
feature rich, easy to configure and easy to use, with a simple and elegant
appearance borrowed from NEXTSTEP(tm).
Window Maker was previously called WindowMaker.
User Guide
==========
Window Maker has no connection with Windowmaker, the software for
making windows and doors.
Documentation
=============
* README files all over the source tree have info related to the stuff
in the directories.
* INSTALL has installation instructions and some troubleshooting tips.
* FAQ: Frequently Asked Questions. READ IT!!! FAQ.I18N is for
internationalization related questions.
* NEWS: list user visible changes from the previous version. Read it if
you are upgrading.
* MIRRORS: some alternative places where you can get Window Maker,
including platform specific packages of Window Maker.
* BUGFORM: use it to send bug reports. Please do use it.
* ChangeLog: what changed from the previous version?
* BUGS: list of known bugs
*** User Guide
The Window Maker User's Guide can be downloaded from the official ftp
or web sites.
It can also be viewed in HTML format in:
http://people.delphi.com/crc3419/WMUserGuide/index.htm
The User Guide explains how to use Window Maker, the configuration files
and options.
Directories & Files
===================
o INSTALL contains installation instructions and some troubleshooting tips.
*** man pages
o Install is a script for configuring and compiling WindowMaker in a easy
way.
Type "man wmaker" in the shell prompt to get general help about Window Maker
o ChangeLog contains the changes since the last version
o BUGS contains a list of the currently known bugs
o FAQ is a list of frequently asked questions. Read it. I won't answer
questions answered in it.
Directories & Files in the Source Tree
======================================
o NEWS is a list of user visible changes since the last version. Read it if
you are upgrading.
* Install is a script for configuring and compiling Window Maker in a easy
way (not that the normal way is difficult, but...).
o wmlib/ contains the library necessary to write applications that use
WindowMaker specific features, like application defined menus. This library
will be merged into WINGs in the future.
* AUTHORS: the credits
o WINGs/ contain the WINGs (WINGs Is Not GNUstep) tiny widget library. It is
used by wmaker, but can be used by standalone programs as well.
* TODO: plans for the future
o test/ contains a simple test program that shows some of the things that can
be done with WindowMaker and wmlib
* util/ has various utility programs.
o wrlib/ contains the library used to do image manipulation (loading,
dithering etc.) in WindowMaker. It can be used in other applications.
* WPrefs.app/ is the configuration program.
o util/ contains various utility programs.
* src/wconfig.h has compile time options you can change to select some
options/features and other stuff.
o WPrefs/ contains the source code for the WindowMaker Preferences utility.
Read the WPrefs/README file before using it.
* WINGs/ NEXTSTEP lookalike widget library
o Configuration options can be found in the ~/GNUstep/Defaults/* files
(after installation). The menus can be configured in
~/GNUstep/Library/WindowMaker/menu
* wrlib/ image processing library
o The default configuration files for the system are installed by default in
/usr/local/share/WindowMaker, along with some other data files.
* po/ has message catalogs wich are the translated versions of the messages
displayed by Window Maker.
o src/wconfig.h contains various compile time options you can change to
select some options/features and things like the path for configuration
directory.
o BUGFORM is a form you should fill to send a bugreport. Please use the
form. It makes things easier to me and ensures that you give me a reasonable
amount of information. This form should be sent to developers@windowmaker.org
Mailing List
@@ -90,28 +103,21 @@ Mailing List
There is a mailing list for discussing Window Maker at
wmaker@linuxcenter.com To subscribe to it, send a message containing:
subscribe
in the subject and the body of the message to wmaker-request@linuxcenter.com
in the body of the message to wmaker-request@linuxcenter.com
If you have some problem installing or using wmaker, it would be advisable
to ask in the mailing list, as the probability of at least one of the 500+
users there having the same problem as you (and solving it) is bigger than
the three of us. The developers are subscribed to the mailing list, so we
will read your post anyway (no need for cc:). For bug reports, fill
the BUGFORM and send it to developers@windowmaker.org You can also use
the bug tracker page at http://windowmaker.org/cgi-bin/bugs
If you got a problem, ask there (after reading the docs, of course). The
people there is more likely to be able to answer your questions than we are.
For bug reports use the BUGFORM.
Important note: when asking for help (in the mailing list or to the
developerts, directly) always send information about the system you are
using. You can use the system information section at the end of BUGFORM
as a guideline. Another thing: please don't send HTML mail. You will
be risking having your mail deleted before being read. Not everybody
uses a browser to read email, wich makes your message an annoyance.
There should be an option in your mail app to disable it.
IMPORTANT NOTE: when asking for help (in the mailing list or to the
developerts, directly) *always* send information about the system you are
using. You can use the system information section at the end of BUGFORM as a
guideline. Another thing: please don't send HTML mail.
Running multiple instances of Window Maker
=========================================
==========================================
It is not a good idea to run more than one instance of Window Maker
from the same user (so that wmaker will use the same configuration
@@ -140,7 +146,6 @@ bellow:
- use solid textures for everything, mainly titlebars and menus. If you
want a nice looking desktop, use the Traditional style.
- turn NewStyle and Superfluous off
- turn on DisableAnimations
- do not bind many shortcuts in the menu and keep only the essential items
in the menu
- turn on DisableClip
@@ -148,10 +153,85 @@ bellow:
don't use anyway (keep in mind that some of the #defines might not
work, as they are not fully supported). Make sure to always keep
NumLock and ScrollLock turned off.
- turn on DisableAnimations. You can also #undefine ANIMATIONS in wconfig.h
- strip down the default IconPath and PixmapPath entries to contain only
the paths that you really have in your system.
- do not use large images in the root background
- remove support for image formats you don't use
- to reduce memory usage, disable the icon cache, by setting the RIMAGE_CACHE
environment variable to 0. If you want to increase performance at the cost
of memory usage, set it's value to a value like the number of different
icons you use.
Keyboard Mouse Control
======================
Many people ask about adding keyboard control of mouse, like in fvwm,
but Window Maker will not have such feature. The XKB extension supports
mouse simulation from the keyboard, in a much more powerfull fashion than
any simulation done by a window manager.
To enable it, hit the Control+Shift+NumLock key combination. You should
hear the speaker beeping. To disable it, do the same thing.
To control the mouse the numeric keypad is used as follows:
- 4 (left arrow), 7 (Home), 8 (up arrow), 9 (PgUp), 6 (right arrow),
3 (PgDn), 2 (down arrow) and 1 (End) move the mouse to the corresponding
direction;
- holding one of the above keys and the holding the 5 key will move the
pointer faster;
- / will select the first mouse button (left button);
- * will select the second mouse button (middle button);
- - will select the third mouse button (right button);
- 5 will do a click with the currently selected mouse button;
- + will do a double-click with the currently selected button;
- 0 (Ins) will click and hold the currently selected button;
- . (Del) will release the currently selected button that was previously
clicked with the 0 (Ins) key.
The above key values work in a XFree86 3.2 (X11R6.1) X server but your
milleage may vary.
How to make a gdb backtrace
===========================
Backtraces can help us fix bugs that make Window Maker crash. If you
find a bug that crashes Window Maker, please send a backtrace with your
bug report.
To make a usefull backtrace, you need a core file with debugging
information produced by Window Maker when it crashes. The default
for Window Maker is to restart another window manager when it crashes,
so you will not get a core file. You need to edit the src/wconfig.h
file *after* running configure and change the line that looks like:
#undef NO_EMERGENCY_AUTORESTART
to:
#define NO_EMERGENCY_AUTORESTART
Then, in the src directory type:
make CFLAGS=-g
make install
and wait for Window Maker to be installed.
Once having Window Maker installed, start X and reproduce the bug so
that Window Maker crashes. When it does crash, type the following from
your shell:
script
gdb wmaker path_to_the_core_file
Then, in the gdb prompt type "bt". Quit from gdb by typing "quit"
and then, in the shell prompt, type "exit".
The file named typescript will contain the backtrace.
Copyrights
@@ -171,7 +251,7 @@ project. The name of people who have helped with localization (translation)
can be found in po/README and Window Maker/README
If you have any comments, fixes and bug reports (filled BUGFORMs) send them
to kojima@windowmaker.org
to developers@windowmaker.org
Musicware

27
TODO
View File

@@ -3,43 +3,44 @@ Do ASAP:
========
- fix bestvisual selection code. Broken.
- add a dialog to let user choose if we should restart, restart twm or continue crashing on crash. Do not forget to check if wmaker is already fully running.
- fix stacking. buggy again
+ ICCCM compliant stuff: find what is missing
- WM_COLORMAP_NOTIFY clientmessage
- fix stacking. buggy again (maybe XFree 3.2 bug)
- fix RemakeStackList() to account for transient windows
- change CommitStacking() on AddToStackingList() to more optimized thing
- differential update of appmenu
- make unhide app map windows in the same stacking order they were before
hiding
Need to do:
===========
- support for X11R6.4 extension for getting extra visual info in wrlib's
automatic best context guessing
- ICCCM 2.0 stuff (although nobody is 2.0 compliant, AFAIK. Not even twm)
- rewrite menu traversal code
- histeresys in menu item selection
- docklet to control AccessX (keyboard accessibility) functions
- rewrite all redundant stuff to use WINGs
- resizebartexture option
- add function to directly make a thumbnail of an image, using the
functionality provided by the image libraries to load a minimal
amount of data.
- clickonclientarearaisewindow
- edge resistance (with timer)
- save client supplied icons in ~/GNUstep/.AppInfo/ClientIcons/ and
use them by default
- GNUstepWMAttributes update in propertynotify
+ investigate memory leaks
- make Docked apps with WM_CLIENT_MACHINE be launched from respective
machines (also put a marking showing it's remote launched)
- handle change of CLIENT_LEADER property
- rewrite defaults/wdefaults stuff to use WINGs UD stuff. Search list:
~/G/D/WindowMaker /u/l/s/W/D/WindowMaker built-in-defaults
- remake internal string processing to use wc?
- -statefile cmd arg to specify path for WMState file (multiple instance
- remake internal string processing to use wchar? unicode?
- -stateprefix cmd arg to specify sufix for WMState domain (multiple instance
support)
- R6 style session management (or something to make wmaker compatible/aware
of it)
Maybe some day:
===============
- virtual desktop
- virtual workspace
- optimize for size
- make dithering in 8bpp better
Never: (so, dont even bother to ask)
======
- different themes for each workspace. Unless you give us a SGI/Power Onyx

View File

@@ -1,6 +1,13 @@
changes since wmaker 0.20.0:
............................
- added generic object field for WMListItem. This is for hanging generic
clientdata
changes since wmaker 0.20.0:
............................
- changed WMGetFilePanelFile() with WMGetFilePanelFileName()
- made SavePanel

View File

@@ -6,7 +6,7 @@ SUBDIRS = Resources
LIBLIST= -L$(top_builddir)/wrlib -lwraster @XLFLAGS@ @GFXLIBS@ @XLIBS@ \
-lm @LIBPL_LIBS@
-lm -L$(top_builddir)/libPropList -lPropList
lib_LIBRARIES = libWINGs.a
@@ -84,7 +84,7 @@ libWINGs_a_SOURCES = \
## Find a better way than $(GFXFLAGS) to inform widgets.c wich of
## tiff or xpm images should be used
INCLUDES = -I$(top_srcdir)/wrlib -I$(top_srcdir)/src @XCFLAGS@ \
INCLUDES = @XCFLAGS@ -I$(top_srcdir)/wrlib -I$(top_srcdir)/src \
-DRESOURCE_PATH=\"$(datadir)/WINGs\" $(GFXFLAGS) -DDEBUG \
@LIBPL_INC_PATH@
-I$(top_srcdir)/libPropList

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
@@ -96,7 +94,7 @@ AUTOMAKE_OPTIONS = no-dependencies
SUBDIRS = Resources
LIBLIST= -L$(top_builddir)/wrlib -lwraster @XLFLAGS@ @GFXLIBS@ @XLIBS@ \
-lm @LIBPL_LIBS@
-lm -L$(top_builddir)/libPropList -lPropList
lib_LIBRARIES = libWINGs.a
@@ -167,9 +165,9 @@ libWINGs_a_SOURCES = \
memory.c \
usleep.c
INCLUDES = -I$(top_srcdir)/wrlib -I$(top_srcdir)/src @XCFLAGS@ \
INCLUDES = @XCFLAGS@ -I$(top_srcdir)/wrlib -I$(top_srcdir)/src \
-DRESOURCE_PATH=\"$(datadir)/WINGs\" $(GFXFLAGS) -DDEBUG \
@LIBPL_INC_PATH@
-I$(top_srcdir)/libPropList
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../src/config.h
CONFIG_CLEAN_FILES =

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -6,7 +6,7 @@
#include <wraster.h>
#include <X11/Xlib.h>
#define WINGS_H_VERSION 980922
#define WINGS_H_VERSION 980930
@@ -286,6 +286,7 @@ typedef struct W_FontPanel WMFontPanel;
/* item for WMList */
typedef struct WMListItem {
char *text;
void *clientData; /* ptr for user clientdata. */
struct WMListItem *nextPtr;
@@ -393,6 +394,12 @@ void WMScreenMainLoop(WMScreen *scr);
RContext *WMScreenRContext(WMScreen *scr);
Display *WMScreenDisplay(WMScreen *scr);
int WMScreenDepth(WMScreen *scr);
void WMSetApplicationIconImage(WMScreen *app, WMPixmap *icon);
WMPixmap *WMGetApplicationIconImage(WMScreen *app);
@@ -434,11 +441,11 @@ WMHandlerID WMAddInputHandler(int fd, int condition, WMInputProc *proc,
void WMDeleteInputHandler(WMHandlerID handlerID);
/* ....................................................................... */
/*
void WMDragImageFromView(WMView *view, WMPixmap *image, WMPoint atLocation,
WMSize mouseOffset, XEvent *event, Bool slideBack);
*/
/* ....................................................................... */
@@ -547,8 +554,6 @@ int WMWidthOfString(WMFont *font, char *text, int length);
WMScreen *WMWidgetScreen(WMWidget *w);
Display *WMScreenDisplay(WMScreen *scr);
void WMUnmapWidget(WMWidget *w);
void WMMapWidget(WMWidget *w);
@@ -898,6 +903,10 @@ WMScroller *WMGetScrollViewHorizontalScroller(WMScrollView *sPtr);
WMScroller *WMGetScrollViewVerticalScroller(WMScrollView *sPtr);
void WMSetScrollViewLineScroll(WMScrollView *sPtr, int amount);
void WMSetScrollViewPageScroll(WMScrollView *sPtr, int amount);
/* ....................................................................... */
WMSlider *WMCreateSlider(WMWidget *parent);
@@ -963,7 +972,7 @@ void WMDestroyInputPanel(WMInputPanel *panel);
/* ....................................................................... */
/* only 1 instance per WMScreen */
WMOpenPanel *WMGetOpenPanel(WMScreen *app);
WMOpenPanel *WMGetOpenPanel(WMScreen *scrPtr);
WMSavePanel *WMGetSavePanel(WMScreen *scrPtr);

View File

@@ -6,7 +6,7 @@
#include "WINGs.h"
#include "WUtil.h"
#if WINGS_H_VERSION < 980922
#if WINGS_H_VERSION < 980930
#error There_is_an_old_WINGs.h_file_somewhere_in_your_system._Please_remove_it.
#endif
@@ -234,8 +234,8 @@ typedef struct W_View {
#if 0
struct W_DragSourceProcs *dragSourceProcs;
struct W_DragDestinationProcs *dragDestinationProcs;
#endif
int helpContext;
#endif
struct {
unsigned int realized:1;

View File

@@ -5,6 +5,13 @@
#include <sys/types.h>
/* SunOS 4.x Blargh.... */
#ifndef NULL
#define NULL ((void*)0)
#endif
/*
* Warning: proplist.h #defines BOOL which will clash with the
* typedef BOOL in Xmd.h
@@ -65,7 +72,12 @@ typedef struct {
} WMHashTableCallbacks;
#if 0
typedef struct {
char character; /* the escape character */
char *value; /* value to place */
} WMSEscapes;
#endif
typedef void WMNotificationObserverAction(void *observerData,
@@ -105,6 +117,10 @@ char *wdefaultspathfordomain(char *domain);
void wusleep(unsigned int microsec);
#if 0
int wsprintesc(char *buffer, int length, char *format, WMSEscapes **escapes,
int count);
#endif
/*......................................................................*/

View File

@@ -53,7 +53,8 @@ wfatal(const char *msg, ...)
fputs(_WINGS_progname, stderr);
fputs(" fatal error: ",stderr);
fputs(buf, stderr);
fflush(NULL);
fflush(stdout);
fflush(stderr);
va_end(args);
}
@@ -79,7 +80,8 @@ wwarning(const char *msg, ...)
fputs(_WINGS_progname, stderr);
fputs(" warning: ",stderr);
fputs(buf, stderr);
fflush(NULL);
fflush(stdout);
fflush(stderr);
va_end(args);
}
@@ -109,7 +111,8 @@ wsyserror(const char *msg, ...)
strcat(buf, strerror(error));
strcat(buf,"\n");
fputs(buf, stderr);
fflush(NULL);
fflush(stderr);
fflush(stdout);
#else
perror(buf);
#endif

View File

@@ -7,17 +7,16 @@
# include <sys/time.h>
#endif
#ifdef _AIX
#include <sys/select.h>
#endif
#ifdef HAVE_SYS_TYPES_H
# include <sys/types.h>
#endif
#if defined(HAVE_SELECT)
#ifdef HAVE_SYS_SELECT_H
# include <sys/select.h>
#endif
void
wusleep(unsigned int microsecs)

View File

@@ -436,6 +436,7 @@ paintItem(WMList *lPtr, Drawable d, char *text, int state, WMRect *rect)
else
XClearArea(scr->display, d, x, y, width, height, False);
if (text)
W_PaintText(view, d, scr->normalFont, x+4, y, width,
WALeft, W_GC(scr->black), False, text, strlen(text));

View File

@@ -31,7 +31,7 @@ extern _WINGsConfiguration WINGsConfiguration;
typedef struct TimerHandler {
WMCallback *callback; /* procedure to call */
unsigned long msec; /* when to call the callback */
struct timeval when; /* when to call the callback */
void *clientData;
struct TimerHandler *next;
} TimerHandler;
@@ -114,22 +114,32 @@ static WMEventHook *extraEventHandler=NULL;
#define idlePending() (idleHandler)
/* return current time in milliseconds */
#ifdef HAVE_GETTIMEOFDAY
static unsigned long
rightNow(void) {
struct timeval tv;
gettimeofday(&tv, NULL);
return 1000L*(unsigned long)tv.tv_sec + (unsigned long)tv.tv_usec/1000L;
static void
rightNow(struct timeval *tv) {
gettimeofday(tv, NULL);
}
#else /* !HAVE_GETTIMEOFDAY */
# define rightNow() (1000*(unsigned long)time(NULL))
# define rightNow(tv) (tv)->tv_sec==time(NULL),(tv)->tv_usec=0
#endif /* !HAVE_GETTIMEOFDAY */
/* is t1 after t2 ? */
#define IS_AFTER(t1, t2) (((t1).tv_sec > (t2).tv_sec) || \
(((t1).tv_sec == (t2).tv_sec) \
&& ((t1).tv_usec > (t2).tv_usec)))
static void
addmillisecs(struct timeval *tv, int milliseconds)
{
tv->tv_usec += milliseconds*1000;
tv->tv_sec += tv->tv_usec/1000000;
tv->tv_usec = tv->tv_usec%1000000;
}
WMHandlerID
WMAddTimerHandler(int milliseconds, WMCallback *callback, void *cdata)
{
@@ -139,17 +149,18 @@ WMAddTimerHandler(int milliseconds, WMCallback *callback, void *cdata)
if (!handler)
return NULL;
handler->msec = rightNow()+milliseconds;
rightNow(&handler->when);
addmillisecs(&handler->when, milliseconds);
handler->callback = callback;
handler->clientData = cdata;
/* insert callback in queue, sorted by time left */
if (!timerHandler || timerHandler->msec >= handler->msec) {
if (!timerHandler || !IS_AFTER(handler->when, timerHandler->when)) {
/* first in the queue */
handler->next = timerHandler;
timerHandler = handler;
} else {
tmp = timerHandler;
while (tmp->next && tmp->next->msec < handler->msec) {
while (tmp->next && IS_AFTER(handler->when, tmp->next->when)) {
tmp = tmp->next;
}
handler->next = tmp->next;
@@ -341,12 +352,11 @@ static void
checkTimerHandlers()
{
TimerHandler *handler;
unsigned long now = rightNow();
struct timeval now;
if (!timerHandler || (timerHandler->msec > now))
return;
rightNow(&now);
while (timerHandler && timerHandler->msec <= now) {
while (timerHandler && IS_AFTER(now, timerHandler->when)) {
handler = timerHandler;
timerHandler = timerHandler->next;
handler->next = NULL;
@@ -357,22 +367,26 @@ checkTimerHandlers()
static unsigned long
msToNextTimerEvent()
static void
delayUntilNextTimerEvent(struct timeval *delay)
{
unsigned long now;
struct timeval now;
if (!timerHandler) {
/* The return value of this function is only valid if there _are_
timers active. */
return 0;
delay->tv_sec = 0;
delay->tv_usec = 0;
return;
}
now = rightNow();
if (timerHandler->msec < now) {
return 0;
rightNow(&now);
if (IS_AFTER(now, timerHandler->when)) {
delay->tv_sec = 0;
delay->tv_usec = 0;
} else {
return timerHandler->msec - now;
delay->tv_sec = timerHandler->when.tv_sec - now.tv_sec;
delay->tv_usec = timerHandler->when.tv_usec - now.tv_usec;
}
}
@@ -693,7 +707,6 @@ W_WaitForEvent(Display *dpy, unsigned long xeventmask)
#ifndef HAVE_SELECT
#error This_system_does_not_have_select(2)_and_is_not_supported
#endif
unsigned long milliseconds;
struct timeval timeout;
struct timeval *timeoutPtr;
fd_set rset, wset, eset;
@@ -730,9 +743,7 @@ W_WaitForEvent(Display *dpy, unsigned long xeventmask)
* next timer expires.
*/
if (timerPending()) {
milliseconds = msToNextTimerEvent();
timeout.tv_sec = milliseconds / 1000;
timeout.tv_usec = (milliseconds % 1000) * 1000;
delayUntilNextTimerEvent(&timeout);
timeoutPtr = &timeout;
} else {
timeoutPtr = (struct timeval*)0;
@@ -841,9 +852,7 @@ WMMaskEvent(Display *dpy, long mask, XEvent *event)
* next timer expires.
*/
if (timerPending()) {
milliseconds = msToNextTimerEvent();
timeout.tv_sec = milliseconds / 1000;
timeout.tv_usec = (milliseconds % 1000) * 1000;
delayUntilNextTimerEvent(&timeout);
timeoutOrInfty = &timeout;
} else {
timeoutOrInfty = (struct timeval*)0;

View File

@@ -243,6 +243,9 @@ WMGetSavePanel(WMScreen *scrPtr)
void
WMFreeFilePanel(WMFilePanel *panel)
{
if (panel == WMWidgetScreen(panel->win)->sharedSavePanel) {
WMWidgetScreen(panel->win)->sharedSavePanel = NULL;
}
if (panel == WMWidgetScreen(panel->win)->sharedOpenPanel) {
WMWidgetScreen(panel->win)->sharedOpenPanel = NULL;
}
@@ -501,8 +504,12 @@ getCurrentFileName(WMFilePanel *panel)
if (path[len-1]=='/') {
file = WMGetTextFieldText(panel->fileField);
tmp = wmalloc(strlen(path)+strlen(file)+8);
if (file[0]!='/') {
strcpy(tmp, path);
strcat(tmp, file);
} else
strcpy(tmp, file);
free(file);
free(path);
return tmp;

View File

@@ -421,7 +421,8 @@ loadPixmaps(WMScreen *scr)
image = RLoadImage(scr->rcontext, WINGS_IMAGES_FILE, 0);
if (!image) {
wwarning("WINGs: could not load widget images file: %s", RErrorString);
wwarning("WINGs: could not load widget images file: %s",
RMessageForError(RErrorCode));
return False;
}
/* make it have a gray background */
@@ -653,6 +654,8 @@ WMCreateScreenWithRContext(Display *display, int screen, RContext *context)
scrPtr->rootView = W_CreateRootView(scrPtr);
W_InitApplication(scrPtr);
return scrPtr;
}
@@ -886,6 +889,13 @@ WMScreenDisplay(WMScreen *scr)
}
int
WMScreenDepth(WMScreen *scr)
{
return scr->depth;
}
void
WMRedisplayWidget(WMWidget *w)
{

View File

@@ -424,7 +424,7 @@ int main(int argc, char **argv)
*
* Put the testSomething() function you want to test here.
*/
#if 0
#if 1
testOpenFilePanel(scr);
testFontPanel(scr);
testList(scr);

View File

@@ -589,7 +589,7 @@ handleEvents(XEvent *event, void *data)
paintTextField(tPtr);
if (!tPtr->flags.notIllegalMovement) {
WMPostNotificationName(WMTextDidEndEditingNotification, tPtr,
WMIllegalTextMovement);
(void*)WMIllegalTextMovement);
}
break;
@@ -614,7 +614,6 @@ handleTextFieldKeyPress(TextField *tPtr, XEvent *event)
int count, refresh = 0;
int control_pressed = 0;
int changed;
WMNotification *notif;
WMScreen *scr = tPtr->view->screen;
changed = 0;
@@ -629,24 +628,22 @@ handleTextFieldKeyPress(TextField *tPtr, XEvent *event)
switch (ksym) {
case XK_Tab:
if (event->xkey.state & ShiftMask) {
notif = WMCreateNotification(WMTextDidEndEditingNotification,
tPtr, (void*)WMBacktabTextMovement);
if (tPtr->view->prevFocusChain) {
W_SetFocusOfTopLevel(W_TopLevelOfView(tPtr->view),
tPtr->view->prevFocusChain);
tPtr->flags.notIllegalMovement = 1;
}
WMPostNotificationName(WMTextDidEndEditingNotification, tPtr,
(void*)WMBacktabTextMovement);
} else {
notif = WMCreateNotification(WMTextDidEndEditingNotification,
tPtr, (void*)WMTabTextMovement);
if (tPtr->view->nextFocusChain) {
W_SetFocusOfTopLevel(W_TopLevelOfView(tPtr->view),
tPtr->view->nextFocusChain);
tPtr->flags.notIllegalMovement = 1;
}
WMPostNotificationName(WMTextDidEndEditingNotification,
tPtr, (void*)WMTabTextMovement);
}
WMPostNotification(notif);
WMReleaseNotification(notif);
break;
case XK_Return:

View File

@@ -149,7 +149,6 @@ WMWindow*
WMCreateWindowWithStyle(WMScreen *screen, char *name, int style)
{
_Window *win;
static int initedApp = 0;
win = wmalloc(sizeof(_Window));
memset(win, 0, sizeof(_Window));
@@ -175,11 +174,6 @@ WMCreateWindowWithStyle(WMScreen *screen, char *name, int style)
W_ResizeView(win->view, DEFAULT_WIDTH, DEFAULT_HEIGHT);
if (!initedApp) {
W_InitApplication(screen);
initedApp = 1;
}
WMAddNotificationObserver(realizeObserver, win,
WMViewRealizedNotification, win->view);

View File

@@ -127,6 +127,7 @@ createImages(WMScreen *scr, RContext *rc, RImage *xis, char *file,
{
RImage *icon;
char *path;
RColor gray = {0xae,0xaa,0xae};
*icon1 = NULL;
*icon2 = NULL;
@@ -148,10 +149,11 @@ createImages(WMScreen *scr, RContext *rc, RImage *xis, char *file,
free(path);
return;
}
RCombineImageWithColor(icon, &gray);
if (xis) {
RCombineImages(icon, xis);
RCombineImagesWithOpaqueness(icon, xis, 180);
if (!(*icon2 = WMCreatePixmapFromRImage(scr, icon, 127)))
wwarning(_("could not process icon %s:"), file, RErrorString);
wwarning(_("could not process icon %s:"), file, RMessageForError(RErrorCode));
}
RDestroyImage(icon);
free(path);

View File

@@ -12,7 +12,7 @@ wpdatadir = @wprefsdir@
wpdata_DATA = WPrefs.tiff WPrefs.xpm
EXTRA_DIST = $(wpdata_DATA)
EXTRA_DIST = $(wpdata_DATA) TexturePanel.icons
WPrefs_SOURCES = \
main.c \
@@ -31,6 +31,8 @@ WPrefs_SOURCES = \
Preferences.c \
Text.c \
TextureAndColor.c \
TexturePanel.c \
TexturePanel.h \
WindowHandling.c \
Workspace.c \
double.c \
@@ -48,14 +50,14 @@ INCLUDES = \
-I$(top_srcdir)/wrlib \
-I$(top_srcdir)/WINGs \
@XCFLAGS@ \
@LIBPL_INC_PATH@
-I$(top_srcdir)/libPropList
WPrefs_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.a
WPrefs_LDADD = \
-L$(top_builddir)/WINGs -lWINGs\
-L$(top_builddir)/wrlib -lwraster \
@LIBPL_LIBS@ \
-L$(top_builddir)/libPropList -lPropList \
@XLFLAGS@ \
@GFXLIBS@ \
@XLIBS@ \

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
@@ -105,7 +103,7 @@ wpdatadir = @wprefsdir@
wpdata_DATA = WPrefs.tiff WPrefs.xpm
EXTRA_DIST = $(wpdata_DATA)
EXTRA_DIST = $(wpdata_DATA) TexturePanel.icons
WPrefs_SOURCES = \
main.c \
@@ -124,6 +122,8 @@ WPrefs_SOURCES = \
Preferences.c \
Text.c \
TextureAndColor.c \
TexturePanel.c \
TexturePanel.h \
WindowHandling.c \
Workspace.c \
double.c \
@@ -140,14 +140,14 @@ INCLUDES = \
-I$(top_srcdir)/wrlib \
-I$(top_srcdir)/WINGs \
@XCFLAGS@ \
@LIBPL_INC_PATH@
-I$(top_srcdir)/libPropList
WPrefs_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.a
WPrefs_LDADD = \
-L$(top_builddir)/WINGs -lWINGs\
-L$(top_builddir)/wrlib -lwraster \
@LIBPL_LIBS@ \
-L$(top_builddir)/libPropList -lPropList \
@XLFLAGS@ \
@GFXLIBS@ \
@XLIBS@ \
@@ -169,7 +169,8 @@ X_PRE_LIBS = @X_PRE_LIBS@
WPrefs_OBJECTS = main.o WPrefs.o Configurations.o Expert.o Focus.o \
Icons.o KeyboardSettings.o KeyboardShortcuts.o Menu.o MenuPreferences.o \
MouseSettings.o Paths.o Preferences.o Text.o TextureAndColor.o \
WindowHandling.o Workspace.o double.o MenuGuru.o xmodifier.o
TexturePanel.o WindowHandling.o Workspace.o double.o MenuGuru.o \
xmodifier.o
WPrefs_LDFLAGS =
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)

View File

@@ -1280,9 +1280,8 @@ showData(_Panel *panel)
strcat(menuPath, "/Defaults/WMRootMenu");
menu = PLGetProplistWithPath(menuPath);
free(menuPath);
if (!PLIsArray(menu)) {
if (!menu || !PLIsArray(menu)) {
sprintf(buffer, _("The format of the current menu in ~/G/D/WMRootMenu "
"is not supported by WPrefs. A new menu will be created.\n"
"You can also replace ~/G/D/WMRootMenu with ~/G/L/W/plmenu "
@@ -1303,7 +1302,10 @@ showData(_Panel *panel)
} else {
pmenu = preProcessMenu(menu, &hasWSMenu);
}
PLSetFilename(pmenu, PLGetFilename(menu));
PLSetFilename(pmenu, menuPath);
free(menuPath);
if (menu)
PLRelease(menu);
if (panel->itemClipboard) {

View File

@@ -738,8 +738,8 @@ createPanel(Panel *p)
WMSetFrameTitle(panel->grabF, _("Mouse Grab Modifier"));
panel->grabP = WMCreatePopUpButton(panel->grabF);
WMResizeWidget(panel->grabP, 120, 20);
WMMoveWidget(panel->grabP, 60, 25);
WMResizeWidget(panel->grabP, 160, 20);
WMMoveWidget(panel->grabP, 40, 25);
fillModifierPopUp(panel->grabP);

View File

@@ -192,7 +192,7 @@ createPanel(Panel *p)
panel->raisB = WMCreateSwitchButton(panel->optF);
WMResizeWidget(panel->raisB, 440, 20);
WMMoveWidget(panel->raisB, 20, 25);
WMSetButtonText(panel->raisB, _("Raise window when switching focus with keyboard."));
WMSetButtonText(panel->raisB, _("Raise window when switching focus with keyboard (CirculateRaise)."));
WMMapSubwidgets(panel->optF);

View File

@@ -67,9 +67,8 @@ By default, WPrefs.app will be installed in the GNUstep applications
directory, which is /usr/local/GNUstep/Apps. If you want to install it
somewhere else, like in /some_weird_path/Apps, set the GNUSTEP_LOCAL_ROOT
environment variable to some_weird_path before running configure for
WindowMaker. Leave this variable always set (make it be set from your
.profile or .tcshrc or whatever), or WPrefs.app will not find it's resource
files (like icons).
WindowMaker. You can also configure Window Maker supplying the --with-appspath
option to configure, like ./configure --with-appspath=/usr/GNUstep/Apps
If you change your mind after installing, you can move the .app directory
to one of the following GNUstep/Apps directories:
@@ -91,6 +90,9 @@ Credits
User interface design, programming and a few icons:
Alfredo K. Kojima <kojima@windowmaker.org>
Additional programming:
James Thompson <jamest@math.ksu.edu>
Icon and image artwork:
Marco van Hylckama Vlieg <fatal@global.uibk.ac.at>

View File

@@ -23,6 +23,8 @@
#include "WPrefs.h"
#include "TexturePanel.h"
typedef struct _Panel {
WMFrame *frame;
char *sectionName;
@@ -97,7 +99,7 @@ typedef struct _Panel {
WMTextField *iconT;
WMButton *iconB;
Pixmap preview;
Pixmap ftitle;
Pixmap utitle;
Pixmap otitle;
@@ -123,10 +125,53 @@ typedef struct _Panel {
#define EVERYTHING 0xff
static Pixmap
renderTexture(_Panel *panel, char *texture, int width, int height,
Bool bordered)
{
return None;
}
static void
updatePreviewBox(_Panel *panel, int elements)
{
WMScreen *scr = WMWidgetScreen(panel->win);
Display *dpy = WMScreenDisplay(scr);
/* RContext *rc = WMScreenRContext(scr);*/
int refresh = 0;
char *tmp;
if (!panel->preview) {
panel->preview = XCreatePixmap(dpy, WMWidgetXID(panel->win),
220-4, 185-4, WMScreenDepth(scr));
refresh = -1;
}
if (elements & FTITLE) {
if (panel->ftitle)
XFreePixmap(dpy, panel->ftitle);
tmp = WMGetTextFieldText(panel->focT);
panel->ftitle = renderTexture(panel, tmp, 180, 20, True);
free(tmp);
}
/* have to repaint everything to make things simple, eliminating
* clipping stuff */
if (refresh) {
}
if (refresh<0) {
WMPixmap *pix;
pix = WMCreatePixmapFromXPixmaps(scr, panel->preview, None,
220-4, 185-4, WMScreenDepth(scr));
WMSetLabelImage(panel->prevL, pix);
WMReleasePixmap(pix);
}
}

1027
WPrefs.app/TexturePanel.c Normal file

File diff suppressed because it is too large Load Diff

55
WPrefs.app/TexturePanel.h Normal file
View File

@@ -0,0 +1,55 @@
/* TexturePanel.h- texture editting panel
*
* WPrefs - WindowMaker Preferences Program
*
* Copyright (c) 1998 Alfredo K. Kojima
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
* USA.
*/
#ifndef TEXTUREPANEL_H_
#define TEXTUREPANEL_H_
typedef struct _TexturePanel TexturePanel;
TexturePanel *CreateTexturePanel(WMScreen *scr);
void DestroyTexturePanel(TexturePanel *panel);
void ShowTexturePanel(TexturePanel *panel);
void HideTexturePanel(TexturePanel *panel);
void SetTexturePanelTexture(TexturePanel *panel, char *texture);
char *GetTexturePanelTextureString(TexturePanel *panel);
RImage *RenderTexturePanelTexture(TexturePanel *panel, unsigned width,
unsigned height);
void SetTexturePanelOkAction(TexturePanel *panel, WMAction *action,
void *clientData);
void SetTexturePanelCancelAction(TexturePanel *panel, WMAction *action,
void *clientData);
#endif

View File

@@ -0,0 +1,601 @@
/* XPM */
static char * scaled_xpm[] = {
"32 32 174 2",
" c #000000000000",
". c #C71BBAEA8617",
"X c #CF3CBEFB8E38",
"o c #CF3CC30B8E38",
"O c #D75CC30B9658",
"+ c #D75CC71B9658",
"@ c #CF3CBEFB9658",
"# c #D75CC71B9E79",
"$ c #B6DAAEBA8617",
"% c #A6999E7971C6",
"& c #8E388A286185",
"* c #C71BC30B9E79",
"= c #618561854103",
"- c #5965596538E3",
"; c #71C675D65144",
": c #861782076185",
"> c #9E79A2898617",
", c #69A66DB65144",
"< c #59655D754103",
"1 c #5144555530C2",
"2 c #4924451428A2",
"3 c #410341032081",
"4 c #5144514430C2",
"5 c #6185618538E3",
"6 c #4924492428A2",
"7 c #C71BBEFB8E38",
"8 c #CF3CBAEA8E38",
"9 c #BEFBB2CA8E38",
"0 c #B6DAAAAA8617",
"q c #9E79965869A6",
"w c #9658924869A6",
"e c #8E388A2869A6",
"r c #86178A2869A6",
"t c #A699A2898617",
"y c #5144596538E3",
"u c #30C234D31861",
"i c #38E33CF31861",
"p c #79E775D65144",
"a c #69A669A64924",
"s c #CF3CC71BA699",
"d c #71C671C64924",
"f c #BEFBB6DA8E38",
"g c #C71BBAEA8E38",
"h c #CF3CC30B9E79",
"j c #A699A28979E7",
"k c #69A665954103",
"l c #596561854103",
"z c #9658965871C6",
"x c #BEFBBAEA9E79",
"c c #38E338E31861",
"v c #9E79965879E7",
"b c #71C671C65144",
"n c #BEFBB6DA9E79",
"m c #9E79965871C6",
"M c #5965555530C2",
"N c #CF3CC30BA699",
"B c #DF7DCB2B9E79",
"V c #AEBAAAAA8E38",
"C c #28A22CB21040",
"Z c #DF7DD75CBEFB",
"A c #96588E3871C6",
"S c #9E799A6979E7",
"D c #69A6618538E3",
"F c #BEFBBAEA9658",
"G c #D75CCB2BA699",
"H c #96588A285965",
"J c #C71BB6DA8617",
"K c #BEFBAEBA8617",
"L c #5965596530C2",
"P c #618565954924",
"I c #A699A6998E38",
"U c #30C230C21040",
"Y c #49244D3430C2",
"T c #EFBEEBADC71B",
"R c #B6DAB2CA8E38",
"E c #DF7DDB6CB6DA",
"W c #BEFBB2CA79E7",
"Q c #BEFBAAAA71C6",
"! c #861775D64924",
"~ c #C71BB2CA8617",
"^ c #CF3CC71B9E79",
"/ c #A6999A6971C6",
"( c #B6DAB2CA9658",
") c #5965555538E3",
"_ c #DF7DD34CAEBA",
"` c #6185596538E3",
"' c #8E3882075965",
"] c #B6DAA69971C6",
"[ c #59654D341861",
"{ c #9658924871C6",
"} c #38E334D31861",
"| c #79E779E75965",
" . c #79E775D65965",
".. c #8E3879E74924",
"X. c #C71BBAEA9658",
"o. c #86177DF76185",
"O. c #B6DAAEBA9658",
"+. c #71C669A64103",
"@. c #C71BBEFB9E79",
"#. c #AEBAA6998617",
"$. c #96588E3869A6",
"%. c #A6999E798617",
"&. c #BEFBB2CA9658",
"*. c #DF7DCF3CA699",
"=. c #BEFBB6DA9658",
"-. c #861782075965",
";. c #A6999E7979E7",
":. c #30C22CB21040",
">. c #C71BC30BA699",
",. c #8E38861769A6",
"<. c #9E799A6971C6",
"1. c #79E779E75144",
"2. c #8E3886176185",
"3. c #BEFBBEFBA699",
"4. c #9658965879E7",
"5. c #4103492428A2",
"6. c #79E76DB64103",
"7. c #AEBAAAAA79E7",
"8. c #38E33CF32081",
"9. c #4924514430C2",
"0. c #38E3410328A2",
"q. c #B6DAAAAA79E7",
"w. c #69A669A64103",
"e. c #69A675D65965",
"r. c #618569A64924",
"t. c #BEFBB2CA8617",
"y. c #BEFBBAEA8E38",
"u. c #CF3CC30B9658",
"i. c #AEBAAAAA8617",
"p. c #71C679E75965",
"a. c #69A675D65144",
"s. c #8E38924871C6",
"d. c #71C675D65965",
"f. c #96589A6979E7",
"g. c #410341031861",
"h. c #8E3882075144",
"j. c #C71BBEFB9658",
"k. c #492445142081",
"l. c #BEFBAAAA79E7",
"z. c #AEBAA28979E7",
"x. c #8617861769A6",
"c. c #5144555538E3",
"v. c #AEBAA28971C6",
"b. c #9E7992486185",
"n. c #D75CCB2B9E79",
"m. c #AEBAA69979E7",
"M. c #86177DF75965",
"N. c #61855D7538E3",
"B. c #618561854924",
"V. c #208118610000",
"C. c #41033CF31040",
"Z. c #514459654103",
"A. c #4924555538E3",
"S. c #186120810000",
"D. c #38E330C20820",
"F. c #96588E386185",
"G. c #186114510000",
"H. c #4103492430C2",
"J. c #28A224920000",
"K. c #38E338E31040",
"L. c #38E334D31040",
"P. c #618569A65144",
"I. c #61855D754103",
"U. c #492441032081",
"Y. c #D75CCF3CAEBA",
"T. c #30C22CB20820",
"R. c #492441031861",
"E. c #B6DAA69979E7",
"W. c #79E77DF76185",
"Q. c #71C66DB64924",
"!. c #861775D65144",
"~. c #51444D342081",
"^. c #D75CCF3CA699",
"/. c #8E388E3871C6",
" ",
" ",
" . X o o X X O + @ # @ $ % & * = - ; : > , < 1 2 3 4 5 6 ",
" . 7 X o o X 8 O X @ @ 9 0 q w & e = r t y u i p a & s d ",
" . . . . . . + + f g # h j k 6 l : z x 1 c v b n m M N j ",
" . . X o O O 8 B @ g @ h 0 p 4 ; : > V C 6 Z A S s D F G ",
" . o o O O O H J O f K f F % L P ; I e U Y Y T , , R 0 E ",
" 7 7 X J W Q ! ~ B # @ ^ h / p = ; ( < U ) _ n ` s h ' h ",
" . . X O . ] [ H @ g @ f h 0 m a e { } | ) .N . .E M % ",
" o . W . X o ] ..@ g ^ X.F h ( L - : 1 n o.} O.o.o.O.w +. ",
" . . . X o o B / O @ f h h @.#.5 b $.4 t %.u o.Z k &.v 6 ",
" W . o o X . o O X *.f @ s =.=.-.p & = ;.O.U :.>., ,.V = ",
" . 7 . J . O O O ~ f # 9 F h h <.p 1.2.m t U 2 3.4.L 5.c ",
" 7 . . X X o + W @ 6.@ X.9 h $ 7.w p $.p & 3 y 5.8.9.0.9. ",
" . . X o o J X ~ + ! q.h =.9 X.q.q w.w p & u 5.1 5.l e.r. ",
" g 7 ~ ~ X X X + J # t.f g y.u.$ i.k p P e i , - p.r a.s. ",
" q.t.K + Q X ~ . X X g 8 f g u.* $ d 3 ; d.C 0.r.f.r , : ",
" p R g g ~ 8 X o o ] + X . g =.9 &.& P P , Y C p.e s.& & ",
" g.h.# g f X X ] + *.X ] o $ y.$ j.j 2.6 < d.8.p.P P : & ",
" k.k.h @ K @ *.g q.l.t.# 9 u.X i.j.z.{ c Y x.c.< c.9.m F ",
" 2.6 % @.g K q.q.v.b.b.$ n.v.y.t.j.m.S g.3 , , l 9.c.{ : ",
" #.M.p h G q.j.b.q.h.$ R R n.f t.@ 0 i.N.2 1 c.B.8.< r 9. ",
" d.S k @.i.m./ 9 V.C.7.p q y.~ t.y.y.R -.- Y Z.P 8.5.A.S. ",
" u e a ( k / p D.m.F.G.9 d j g t.K y.R { a 1 < Z.< H.9.0. ",
" C ,.2 d -.$.C.M T @.C.1.F.w t.X K v.0 $. .U 9.Z.8.H.< u ",
" 3 ; m { J.K.@.% 4 9 * K.L.j g 7 X 0 z.V n 1 8.P.A.r.9.5. ",
" I.| & :.U.C.@.E k.M.Y.1.U.k.H t.@ i.<.{ t P H.< 9., < l ",
" P b 3 K.@.=.k.M.G % d Y.#.T.R.E.j.R @.,.e I W.9.8.8.9.1 ",
" - O.u Q.h =.!.k._ G ` h =.K.~.j 0 0 N { { I < 0.c.= l 1 ",
" b U #._ M !.^.0 M / s k D.F.h./ w 2.m /.v , r.A.3 6 u L ",
" ",
" "};
/* XPM */
static char * tiled_xpm[] = {
"32 32 109 2",
" c #000000000000",
". c #C71BBAEA8617",
"X c #CF3CBEFB8E38",
"o c #CF3CBEFB9658",
"O c #BEFBAEBA8E38",
"+ c #71C675D65144",
"@ c #79E77DF75965",
"# c #8E388E3871C6",
"$ c #618561854103",
"% c #61855D754103",
"& c #8E388A2869A6",
"* c #9E799A6971C6",
"= c #A6999E7971C6",
"- c #D75CC30B9658",
"; c #BEFBB2CA79E7",
": c #C71BB6DA8E38",
"> c #BEFBB6DA8E38",
", c #71C66DB64924",
"< c #9E799E798617",
"1 c #41033CF32081",
"2 c #BEFBBAEA9E79",
"3 c #A699A2898617",
"4 c #9E79965871C6",
"5 c #A6999A6971C6",
"6 c #965882075144",
"7 c #BEFBB2CA8617",
"8 c #C71BBEFB9658",
"9 c #71C671C65144",
"0 c #71C675D65965",
"q c #51444D3430C2",
"w c #AEBAA6998E38",
"e c #96588A2869A6",
"r c #9E79924871C6",
"t c #AEBAA28979E7",
"y c #C71BBEFB8E38",
"u c #B6DAA69971C6",
"i c #BEFBB6DA9658",
"p c #69A66DB64924",
"a c #9E799E7979E7",
"s c #96588E3871C6",
"d c #96588E3869A6",
"f c #861782075965",
"g c #79E779E75144",
"h c #38E334D31861",
"j c #410345142081",
"k c #BEFBB6DA8617",
"l c #9E7992486185",
"z c #C71BB6DA9658",
"x c #C71BBAEA8E38",
"c c #86177DF75965",
"v c #4103451428A2",
"b c #4103492428A2",
"n c #5144596538E3",
"m c #51445D754103",
"M c #C71BB6DA8617",
"N c #CF3CBAEA8E38",
"B c #B6DAB2CA8E38",
"V c #69A661854103",
"C c #861786176185",
"Z c #B6DAAAAA8617",
"A c #8E3886176185",
"S c #59655D754103",
"D c #49244D3430C2",
"F c #5965555530C2",
"G c #861779E75144",
"H c #B6DAAAAA79E7",
"J c #AEBAA28971C6",
"K c #A6999E7979E7",
"L c #410341032081",
"P c #69A66DB65144",
"I c #96589A6971C6",
"U c #8E3882075965",
"Y c #8E3886175965",
"T c #5144514438E3",
"R c #4924555538E3",
"E c #596561854103",
"W c #79E775D65144",
"Q c #69A665954103",
"! c #8E388A286185",
"~ c #AEBAA69979E7",
"^ c #B6DAAEBA8617",
"/ c #4924514430C2",
"( c #4103410328A2",
") c #861782076185",
"_ c #4924492428A2",
"` c #B6DAAEBA8E38",
"' c #96588A285965",
"] c #A699A6998617",
"[ c #514459654103",
"{ c #4924492430C2",
"} c #96588A286185",
"| c #BEFBBAEA9658",
" . c #41033CF31040",
".. c #8E388E3869A6",
"X. c #86178A2869A6",
"o. c #5144555538E3",
"O. c #69A669A64924",
"+. c #A699965871C6",
"@. c #A699965869A6",
"#. c #71C669A64924",
"$. c #96588E386185",
"%. c #9658924871C6",
"&. c #618569A64924",
"*. c #86177DF75144",
"=. c #5965596530C2",
"-. c #96589A6979E7",
";. c #49244D3428A2",
":. c #59655D7538E3",
">. c #71C671C64924",
" ",
" ",
" . X X o o O + @ # $ % & * = . . X X o o O + @ # $ % & * ",
" X - ; o : > , + < 1 2 3 4 5 . X - ; o : > , + < 1 2 3 4 ",
" . . 6 7 o 8 4 9 0 q w e r t y . . 6 7 o 8 4 9 0 q w e r ",
" . X X u o 8 i $ p a % s 3 d y . X X u o 8 i $ p a % s 3 ",
" X . X X o 8 8 f g 3 h 3 + j k X . X X o 8 8 f g 3 h 3 + ",
" . X X : l z x = c c v b n m . . X X : l z x = c c v b n ",
" 7 M N N X : 8 B V + v + @ C l 7 M N N X : 8 B V + v + @ ",
" Z : X N X . > > A S D 0 @ * F Z : X N X . > > A S D 0 @ ",
" G x : H J 8 > > K L P n + I f G x : H J 8 > > K L P n + ",
" c 8 Z U Y = 8 : O % T R E E + c 8 Z U Y = 8 : O % T R E ",
" 9 f W Y Q ! ~ 7 ^ c D R / n ( 9 f W Y Q ! ~ 7 ^ c D R / ",
" ) _ G U ` _ ' x ~ ] D [ E E { ) _ G U ` _ ' x ~ ] D [ E ",
" Q A } 4 d | .Z i ..X.b o.p { Q A } 4 d | .Z i ..X.b o. ",
" O.3 +.@.} #.f $.A %.&.( j $ O.O.3 +.@.} #.f $.A %.&.( j ",
" X X X X o 5 *.=.O.-.$ ;.:.>.. X X X X o 5 *.=.O.-.$ ;.:. ",
" . X X o o O + @ # $ % & * = . . X X o o O + @ # $ % & * ",
" X - ; o : > , + < 1 2 3 4 5 . X - ; o : > , + < 1 2 3 4 ",
" . . 6 7 o 8 4 9 0 q w e r t y . . 6 7 o 8 4 9 0 q w e r ",
" . X X u o 8 i $ p a % s 3 d y . X X u o 8 i $ p a % s 3 ",
" X . X X o 8 8 f g 3 h 3 + j k X . X X o 8 8 f g 3 h 3 + ",
" . X X : l z > 5 f c v b n m . . X X : l z > 5 f c v b n ",
" 7 M N N X : 8 B V + v + @ C l 7 M N N X : 8 B V + v + @ ",
" Z : X N X M > > A S D 0 @ * F Z : X N X M > > A S D 0 @ ",
" G x : H J 8 > > K L P n + -.f G x : H J 8 > > K L P n + ",
" c 8 Z U Y = x : O % T R S E + c 8 Z U Y = x : O % T R S ",
" 9 f W Y Q ! ~ 7 ^ c D R / n ( 9 f W Y Q ! ~ 7 ^ c D R / ",
" ) _ G U ` _ ' x ~ ] D [ E E { ) _ G U ` _ ' x ~ ] D [ E ",
" Q A } 4 d | .Z i ..X.b o.p D Q A } 4 d | .Z i ..X.b o. ",
" ",
" "};
/* XPM */
static char * pixmap_xpm[] = {
"32 32 79 1",
" c #000000000000",
". c #E79DCF3C8E38",
"X c #E79DBEFB9E79",
"o c #DF7DAEBAA699",
"O c #D75CA289A699",
"+ c #CF3C9A699E79",
"@ c #BEFB86179658",
"# c #E79DBAEAA699",
"$ c #D75C9248C71B",
"% c #CF3C8207C71B",
"& c #C71B75D6BEFB",
"* c #AEBA5965AEBA",
"= c #9E7941039658",
"- c #B6DA6DB69658",
"; c #D75C8617CF3C",
": c #C71B79E7C71B",
"> c #BEFB6DB6B6DA",
", c #A69949249E79",
"< c #96583CF39658",
"1 c #A6994D349E79",
"2 c #CF3C96589E79",
"3 c #BEFBCB2B8E38",
"4 c #B6DACB2B8E38",
"5 c #D75C9E79AEBA",
"6 c #B6DA6595B6DA",
"7 c #A6995144A699",
"8 c #B6DA6185AEBA",
"9 c #DF7DBEFB9658",
"0 c #C71BCB2B8E38",
"q c #69A6C30B8617",
"w c #9658C71B8617",
"e c #CF3C8E38AEBA",
"r c #9E7945149658",
"t c #CF3C8617B6DA",
"y c #DF7DCF3C8E38",
"u c #AEBA5555A699",
"i c #DF7DB2CAA699",
"p c #8617C71B8617",
"a c #B6DAB6DA8E38",
"s c #9E7949249E79",
"d c #BEFB69A6B6DA",
"f c #DF7D9E79B6DA",
"g c #A699C71B8617",
"h c #9E79B2CA8E38",
"j c #C71B8A28A699",
"k c #CF3C8A28B6DA",
"l c #DF7DAAAAAEBA",
"z c #71C6C30B8617",
"x c #79E7C30B8617",
"c c #DF7DCB2B8E38",
"v c #AEBAC71B8E38",
"b c #CF3CCB2B8E38",
"n c #9E79C71B8617",
"m c #8E38C71B8617",
"M c #D75CCB2B8E38",
"N c #DF7DBAEA8E38",
"B c #AEBA5D759E79",
"V c #C71B8E389E79",
"C c #E79DCB2B9658",
"Z c #E79DC71B9658",
"A c #A69951449E79",
"S c #BEFB75D6A699",
"D c #D75CA699AEBA",
"F c #AEBA5D75AEBA",
"G c #C71B75D6B6DA",
"H c #DF7DBAEA9E79",
"J c #D75C9A69B6DA",
"K c #96583CF38E38",
"L c #CF3C8207BEFB",
"P c #D75C9A69BEFB",
"I c #C71B71C6BEFB",
"U c #DF7DA289BEFB",
"Y c #B6DA5D75AEBA",
"T c #965838E38E38",
"R c #CF3C8617C71B",
"E c #E79DCF3C9658",
"W c #DF7DB6DAAEBA",
"Q c #CF3C7DF7C71B",
"! c #DF7DCF3C9658",
" ",
" ",
" ............................ ",
" ............................ ",
" ............................ ",
" .............XoO+@.......... ",
" ...........#$%&*=-.......... ",
" ..........X;:>,<12.......... ",
" ....34....5&6=<789.......... ",
" ....0qw...e8r=78t........... ",
" ....yqq4..2,=u6:i........... ",
" .....pqp..asud:f............ ",
" .....4qq.gqhjkl............4 ",
" ......pqgzxqxc.............x ",
" .......vq3wqqw............bq ",
" .......wn.3qqqc...........4q ",
" ......cqb..4zq4...........nm ",
" ......4z....Mgg...........y. ",
" ......gp.................... ",
" ......wp.................... ",
" ......mm.................... ",
" ......b..................... ",
" ...........N................ ",
" ...........BVC.............. ",
" ..........ZA,S9............. ",
" ..........DF=uGH............ ",
" ..........J>K16LZ........... ",
" ..........P&,=*If........... ",
" ..........U:YT76RE.......... ",
" ..........WQdsrFt!0430...... ",
" ",
" "};
/* XPM */
static char * gradient_xpm[] = {
"32 32 57 1",
" c #000000000000",
". c #E79DEBADE79D",
"X c #E79DE79DE79D",
"o c #DF7DE38DDF7D",
"O c #DF7DDF7DDF7D",
"+ c #D75CDB6CD75C",
"@ c #D75CD75CD75C",
"# c #CF3CCF3CCF3C",
"$ c #CF3CCB2BCF3C",
"% c #C71BC71BC71B",
"& c #C71BC30BC71B",
"* c #BEFBBEFBBEFB",
"= c #B6DAB6DAB6DA",
"- c #B6DAB2CAB6DA",
"; c #AEBAAEBAAEBA",
": c #AEBAAAAAAEBA",
"> c #A699A699A699",
", c #A699A289A699",
"< c #9E799E799E79",
"1 c #9E799A699E79",
"2 c #965896589658",
"3 c #965892489658",
"4 c #8E388E388E38",
"5 c #8E388A288E38",
"6 c #861786178617",
"7 c #79E77DF779E7",
"8 c #71C675D671C6",
"9 c #861782078617",
"0 c #79E779E779E7",
"q c #71C671C671C6",
"w c #69A669A669A6",
"e c #BEFBBAEABEFB",
"r c #69A66DB669A6",
"t c #618565956185",
"y c #618561856185",
"u c #59655D755965",
"i c #596559655965",
"p c #514455555144",
"a c #514451445144",
"s c #49244D344924",
"d c #492449244924",
"f c #492445144924",
"g c #410341034103",
"h c #41033CF34103",
"j c #38E338E338E3",
"k c #38E334D338E3",
"l c #30C230C230C2",
"z c #30C22CB230C2",
"x c #28A228A228A2",
"c c #28A2249228A2",
"v c #208120812081",
"b c #20811C712081",
"n c #186118611861",
"m c #104014511040",
"M c #104010401040",
"N c #08200C300820",
"B c #082008200820",
" ",
" ",
" .XoO+@#$%&**=-;:>,<123456778 ",
" XoO+@#$%&**=-;:>,<1235567788 ",
" oO+@#$%&**==;:>,<123456900qq ",
" O+@#$%&**=-;:>,<123456970qqw ",
" +@#$%&&ee--:>,<1234569788rrt ",
" @#$%&&e=-;:>,<1234569708rrty ",
" #$%&&e==;;>,<123456970qqwwyu ",
" $%&&ee-;:>,<1234569708qwwyui ",
" %&&ee-;;>,<1234569708rrttuip ",
" &&ee=-:>><1234569708qrttuipa ",
" &ee=;:>><1234569708qwwyyipas ",
" ee--::,<1234569708qrwyyipasd ",
" e=-:>,<1234569708qrwyyiiasdf ",
" =;;>><<234569708qrwyyipasdfg ",
" -;>,<1234569708qrwtuuppsdfgh ",
" ::,,1134559708qrwtuipasdfghj ",
" :><1234569708qrwtyiiaadfghjk ",
" ><<224566708qrwtyipasdfghjkl ",
" ,1234559708qrwtyuppssfghjklz ",
" 1224469708qrwtyupasdfghjklzx ",
" 224569908qrwtyupaaddghjklzxc ",
" 34466708qrwtyiipsdfghjklzxcv ",
" 3559700qrwtyuipsddghjklzxcvb ",
" 559778qrwtyuppssfggjklzxcvbn ",
" 59708qrwtyuipadfggjklzxcvbnm ",
" 9900qqwtyuppssffhjklzxcvbnmM ",
" 908qrwtyuipasfghjklzxcvbnmMN ",
" 00qqwtyuiaaddggjjlzxcvbnmMNB ",
" ",
" "};
/* XPM */
static char * solid_xpm[] = {
"32 32 2 1",
" c #000000000000",
". c #38E369A69658",
" ",
" ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ............................ ",
" ",
" "};

View File

@@ -269,11 +269,12 @@ createMainWindow(WMScreen *scr)
WMSetLabelText(WPrefs.statusL, _("Starting..."));
WPrefs.creditsL = WMCreateLabel(WPrefs.banner);
WMResizeWidget(WPrefs.creditsL, FRAME_WIDTH-20, 40);
WMMoveWidget(WPrefs.creditsL, 10, FRAME_HEIGHT-40);
WMResizeWidget(WPrefs.creditsL, FRAME_WIDTH-20, 60);
WMMoveWidget(WPrefs.creditsL, 10, FRAME_HEIGHT-60);
WMSetLabelTextAlignment(WPrefs.creditsL, WACenter);
WMSetLabelText(WPrefs.creditsL, _("Programming/Design: Alfredo K. Kojima\n"
"Artwork: Marco van Hylckama Vlieg"));
"Artwork: Marco van Hylckama Vlieg\n"
"More Programming: James Thompson"));
WMMapSubwidgets(WPrefs.win);
@@ -465,7 +466,8 @@ Initialize(WMScreen *scr)
tmp = RLoadImage(WMScreenRContext(scr), path, 0);
if (!tmp) {
wwarning("could not load image file %s:%s", path, RErrorString);
wwarning("could not load image file %s:%s", path,
RMessageForError(RErrorCode));
} else {
icon = WMCreatePixmapFromRImage(scr, tmp, 0);
RDestroyImage(tmp);
@@ -563,7 +565,8 @@ loadConfigurations(WMScreen *scr, WMWindow *mainw)
if (file)
pclose(file);
if (sscanf(buffer, "WindowMaker %i.%i.%i",&v1,&v2,&v3)!=3) {
if (sscanf(buffer, "Window Maker %i.%i.%i",&v1,&v2,&v3)!=3
&& sscanf(buffer, "WindowMaker %i.%i.%i",&v1,&v2,&v3)!=3) {
WMRunAlertPanel(scr, mainw, _("Error"),
_("Could not extract version from Window Maker. Make sure it is correctly installed."),
_("OK"), NULL, NULL);

View File

@@ -194,7 +194,7 @@ static char * image_name[] = {
". . . . . . ",
". . . . . . ",
". . . . . . ",
". . X o X O + @ # # # # # # $ % X X . . ",
". . o X O + @ # # # # # # $ % X . . ",
". . & * $ = - . X X X X X X X X . ; ; o . . ",
". . : > - , X X . X X X X X X X X . X o O , X . . ",
". . < 1 , X X X X . X X X X X X X X . X X X o X 2 . . ",

View File

@@ -44,7 +44,6 @@ typedef struct _Panel {
WMFrame *maxiF;
WMButton *miconB;
WMButton *mdockB;
WMFrame *opaqF;
WMButton *opaqB;
@@ -99,11 +98,11 @@ getPlacement(char *str)
if (strcasecmp(str, "auto")==0 || strcasecmp(str, "smart")==0)
return 0;
else if (strcasecmp(str, "random")==0)
return 3;
return 1;
else if (strcasecmp(str, "manual")==0)
return 2;
else if (strcasecmp(str, "cascade")==0)
return 1;
return 3;
else
wwarning(_("bad option value %s in WindowPlacement. Using default value"),
str);
@@ -145,8 +144,6 @@ showData(_Panel *panel)
WMSetButtonSelected(panel->opaqB, GetBoolForKey("OpaqueMove"));
WMSetButtonSelected(panel->miconB, GetBoolForKey("NoWindowOverIcons"));
WMSetButtonSelected(panel->mdockB, GetBoolForKey("NoWindowUnderDock"));
}
@@ -157,7 +154,6 @@ storeData(_Panel *panel)
char x[16], y[16];
SetBoolForKey(WMGetButtonSelected(panel->miconB), "NoWindowOverIcons");
SetBoolForKey(WMGetButtonSelected(panel->mdockB), "NoWindowUnderDock");
SetBoolForKey(WMGetButtonSelected(panel->opaqB), "OpaqueMove");
SetBoolForKey(WMGetButtonSelected(panel->tranB), "OnTopTransients");
SetStringForKey(placements[WMGetPopUpButtonSelectedItem(panel->placP)],
@@ -296,15 +292,10 @@ createPanel(Panel *p)
WMSetFrameTitle(panel->maxiF, _("When maximizing..."));
panel->miconB = WMCreateSwitchButton(panel->maxiF);
WMResizeWidget(panel->miconB, 185, 20);
WMResizeWidget(panel->miconB, 185, 35);
WMMoveWidget(panel->miconB, 10, 20);
WMSetButtonText(panel->miconB, _("...do not resize over icons"));
panel->mdockB = WMCreateSwitchButton(panel->maxiF);
WMResizeWidget(panel->mdockB, 185, 20);
WMMoveWidget(panel->mdockB, 10, 40);
WMSetButtonText(panel->mdockB, _("...do not resize over dock"));
WMMapSubwidgets(panel->maxiF);
/**************** Transients On Top ****************/

View File

@@ -64,6 +64,7 @@ createImages(WMScreen *scr, RContext *rc, RImage *xis, char *file,
WMPixmap **icon1, WMPixmap **icon2)
{
RImage *icon;
RColor gray = {0xae,0xaa,0xae};
*icon1 = WMCreatePixmapFromFile(scr, file);
if (!*icon1) {
@@ -77,10 +78,11 @@ createImages(WMScreen *scr, RContext *rc, RImage *xis, char *file,
*icon2 = NULL;
return;
}
RCombineImageWithColor(icon, &gray);
if (xis) {
RCombineImages(icon, xis);
RCombineImagesWithOpaqueness(icon, xis, 180);
if (!(*icon2 = WMCreatePixmapFromRImage(scr, icon, 127))) {
wwarning(_("could not process icon %s:"), file, RErrorString);
wwarning(_("could not process icon %s:"), file, RMessageForError(RErrorCode));
*icon2 = NULL;
}
}

View File

@@ -4,7 +4,7 @@ CATALOGS = @WPMOFILES@
CLEANFILES = $(CATALOGS)
EXTRA_DIST = pt.po hr.po fr.po ko.po cs.po
EXTRA_DIST = pt.po hr.po fr.po ko.po cs.po ja.po
POTFILES = \
$(top_builddir)/WPrefs/Configurations.c \

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
@@ -97,7 +95,7 @@ CATALOGS = @WPMOFILES@
CLEANFILES = $(CATALOGS)
EXTRA_DIST = pt.po hr.po fr.po ko.po cs.po
EXTRA_DIST = pt.po hr.po fr.po ko.po cs.po ja.po
POTFILES = \
$(top_builddir)/WPrefs/Configurations.c \

View File

@@ -9,3 +9,4 @@ hr.po Croatian Toni Bili
fr.po French Bastien NOCERA <hadess@writeme.com>
ko.po Korean Byeong-Chan, Kim <redhands@linux.sarang.net>
cs.po Czech 3 David <20>auer <xsauer@hwlab.felk.cvut.cz>
ja.po Japanese Kazuhide Takahashi <kazu@dgra.ne.jp>

View File

@@ -681,7 +681,7 @@ msgstr "Cr
#: ../../WPrefs/MouseSettings.c:756
msgid "could not rename file %s to %s\n"
msgstr "Changement de nom de %s <20> %s impossible"
msgstr "Changement de nom de %s <20> %s impossible\n"
#: ../../WPrefs/MouseSettings.c:839
msgid "Mouse Preferences"

1169
WPrefs.app/po/ja.po Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -18,7 +18,7 @@ WindowMaker: $(srcdir)/WindowMaker.in ./Makefile
sed -e "s:#pkgdatadir#:$(pkgdatadir):" $(srcdir)/WindowMaker.in > WindowMaker
chmod 644 WindowMaker
WMState: $(srcdir)/WMState.in ./Makefile
WMState: $(srcdir)/WMState.in $(srcdir)/Makefile
-rm -f WMState
sed -e "s:#wprefs#:$(wprefsdir)/WPrefs:" $(srcdir)/WMState.in > WMState
chmod 644 WMState

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
@@ -218,7 +216,7 @@ WindowMaker: $(srcdir)/WindowMaker.in ./Makefile
sed -e "s:#pkgdatadir#:$(pkgdatadir):" $(srcdir)/WindowMaker.in > WindowMaker
chmod 644 WindowMaker
WMState: $(srcdir)/WMState.in ./Makefile
WMState: $(srcdir)/WMState.in $(srcdir)/Makefile
-rm -f WMState
sed -e "s:#wprefs#:$(wprefsdir)/WPrefs:" $(srcdir)/WMState.in > WMState
chmod 644 WMState

View File

@@ -2,8 +2,8 @@
Dock = {
Applications = (
{
Command = dockit;
Name = dockit.Dockit;
Command = "";
Name = Logo.WMDock;
AutoLaunch = No;
Forced = No;
Position = "0,0";

View File

@@ -2,8 +2,8 @@
Dock = {
Applications = (
{
Command = dockit;
Name = dockit.Dockit;
Command = "";
Name = Logo.WMDock;
AutoLaunch = No;
Forced = No;
Position = "0,0";

View File

@@ -1,4 +1,6 @@
{
EdgeResistance = 5;
IconificationStyle = Zoom;
IconPath = (
"~/GNUstep/Library/Icons",
"/usr/local/share/WindowMaker/Icons",
@@ -17,7 +19,6 @@
"/usr/local/share/pixmaps",
"/usr/share/pixmaps"
);
IconificationStyle = Zoom;
WindowTitleBalloons = YES;
IconSize = 64;
FocusMode = manual;
@@ -36,7 +37,6 @@
SaveSessionOnExit = NO;
ColormapMode = auto;
RaiseDelay = 0;
EdgeResistance = 0;
AutoFocus = YES;
WindowPlacement = auto;
WindowPlaceOrigin = (64, 64);
@@ -48,7 +48,7 @@
AdvanceToNewWorkspace = NO;
CycleWorkspaces = NO;
ResizeDisplay = line;
MoveDisplay = corner;
MoveDisplay = floating;
OpaqueMove = YES;
OnTopTransients = YES;
IconPosition = "blh";
@@ -59,7 +59,6 @@
ShadeSpeed = medium;
DoubleClickTime = 250;
AlignSubmenus = NO;
NoWindowUnderDock = YES;
NoWindowOverIcons = NO;
IgnoreFocusClick = NO;
CloseKey = None;

View File

@@ -1,4 +1,6 @@
{
EdgeResistance = 5;
IconificationStyle = Zoom;
IconPath = (
"~/GNUstep/Library/Icons",
"#pkgdatadir#/Icons",
@@ -17,7 +19,6 @@
"/usr/local/share/pixmaps",
"/usr/share/pixmaps"
);
IconificationStyle = Zoom;
WindowTitleBalloons = YES;
IconSize = 64;
FocusMode = manual;
@@ -36,7 +37,6 @@
SaveSessionOnExit = NO;
ColormapMode = auto;
RaiseDelay = 0;
EdgeResistance = 0;
AutoFocus = YES;
WindowPlacement = auto;
WindowPlaceOrigin = (64, 64);
@@ -48,7 +48,7 @@
AdvanceToNewWorkspace = NO;
CycleWorkspaces = NO;
ResizeDisplay = line;
MoveDisplay = corner;
MoveDisplay = floating;
OpaqueMove = YES;
OnTopTransients = YES;
IconPosition = "blh";
@@ -59,7 +59,6 @@
ShadeSpeed = medium;
DoubleClickTime = 250;
AlignSubmenus = NO;
NoWindowUnderDock = YES;
NoWindowOverIcons = NO;
IgnoreFocusClick = NO;
CloseKey = None;

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -1,11 +1,11 @@
SUBDIRS = Defaults Styles Themes Icons Pixmaps Backgrounds IconSets Sounds
SUBDIRS = Defaults Styles Themes Icons Pixmaps Backgrounds IconSets
prefsdatadir = $(pkgdatadir)
prefsdata_DATA = wmmacros README menu plmenu autostart.sh \
prefsdata_DATA = wmmacros README menu plmenu autostart.sh exitscript.sh \
menu.cz menu.de menu.fr menu.gl menu.ja menu.ko menu.nl menu.pt \
menu.it menu.no menu.he menu.es menu.ru menu.tr menu.el menu.se \
menu.fi menu.hr menu.dk
menu.fi menu.hr menu.dk menu.sl
EXTRA_DIST = $(prefsdata_DATA) wmmacros.in plmenu.in

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
@@ -91,14 +89,14 @@ X_LOCALE = @X_LOCALE@
pixmapdir = @pixmapdir@
wprefsdir = @wprefsdir@
SUBDIRS = Defaults Styles Themes Icons Pixmaps Backgrounds IconSets Sounds
SUBDIRS = Defaults Styles Themes Icons Pixmaps Backgrounds IconSets
prefsdatadir = $(pkgdatadir)
prefsdata_DATA = wmmacros README menu plmenu autostart.sh \
prefsdata_DATA = wmmacros README menu plmenu autostart.sh exitscript.sh \
menu.cz menu.de menu.fr menu.gl menu.ja menu.ko menu.nl menu.pt \
menu.it menu.no menu.he menu.es menu.ru menu.tr menu.el menu.se \
menu.fi menu.hr menu.dk
menu.fi menu.hr menu.dk menu.sl
EXTRA_DIST = $(prefsdata_DATA) wmmacros.in plmenu.in

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -19,6 +19,13 @@ Instructions for editing the plain text menus can be found in the menu
file itself, kindly translated to your tongue for your convenience, by
the translation contributors.
There is a script to convert plain text menus to property list menus
in the utils directory, named wm-oldmenu2new.
If you are unsure to wich format to use, stick with the plain text menus
as they are more flexible. If for some psychological reason you are
scared by text based configuration, use the property list menu.
Localized menu file translators:
--------------------------------
@@ -46,3 +53,5 @@ menu.hr Croatian Toni Bilic <tbilic@efos.hr>
menu.el Greek Nikolaos Papagrigoriou <papanikos@usa.net>
menu.dk Danish John M. Lockard <jlockard@math.lsa.umich.edu>
Jacob Sparre Andersen <sparre@cats.nbi.dk>
menu.sl Slovene Alen Salamun <snowman@hal9000.medinet.si>

View File

@@ -1,6 +0,0 @@
defsdatadir = $(pkgdatadir)/Sounds
defsdata_DATA =
EXTRA_DIST = $(defsdata_DATA)

View File

@@ -1,210 +0,0 @@
# Makefile.in generated automatically by automake 1.3 from Makefile.am
# Copyright (C) 1994, 1995, 1996, 1997, 1998 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
SHELL = /bin/sh
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
DISTDIR =
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
host_alias = @host_alias@
host_triplet = @host@
CC = @CC@
CPP_PATH = @CPP_PATH@
DFLAGS = @DFLAGS@
GFXFLAGS = @GFXFLAGS@
GFXLIBS = @GFXLIBS@
I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
NLSDIR = @NLSDIR@
PACKAGE = @PACKAGE@
RANLIB = @RANLIB@
REDUCE_APPICONS = @REDUCE_APPICONS@
SHAPE = @SHAPE@
SOUND = @SOUND@
VERSION = @VERSION@
WPMOFILES = @WPMOFILES@
XCFLAGS = @XCFLAGS@
XGETTEXT = @XGETTEXT@
XLFLAGS = @XLFLAGS@
XLIBS = @XLIBS@
XSHM = @XSHM@
X_EXTRA_LIBS = @X_EXTRA_LIBS@
X_LOCALE = @X_LOCALE@
pixmapdir = @pixmapdir@
wprefsdir = @wprefsdir@
defsdatadir = $(pkgdatadir)/Sounds
defsdata_DATA =
EXTRA_DIST = $(defsdata_DATA)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../../src/config.h
CONFIG_CLEAN_FILES =
DATA = $(defsdata_DATA)
DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar
GZIP = --best
all: Makefile $(DATA)
.SUFFIXES:
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4)
cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps WindowMaker/Sounds/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
install-defsdataDATA: $(defsdata_DATA)
@$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(defsdatadir)
@list='$(defsdata_DATA)'; for p in $$list; do \
if test -f $(srcdir)/$$p; then \
echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(defsdatadir)/$$p"; \
$(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(defsdatadir)/$$p; \
else if test -f $$p; then \
echo " $(INSTALL_DATA) $$p $(DESTDIR)$(defsdatadir)/$$p"; \
$(INSTALL_DATA) $$p $(DESTDIR)$(defsdatadir)/$$p; \
fi; fi; \
done
uninstall-defsdataDATA:
@$(NORMAL_UNINSTALL)
list='$(defsdata_DATA)'; for p in $$list; do \
rm -f $(DESTDIR)$(defsdatadir)/$$p; \
done
tags: TAGS
TAGS:
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
subdir = WindowMaker/Sounds
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
d=$(srcdir); \
test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file; \
done
info:
dvi:
check: all
$(MAKE)
installcheck:
install-exec:
@$(NORMAL_INSTALL)
install-data: install-defsdataDATA
@$(NORMAL_INSTALL)
install: install-exec install-data all
@:
uninstall: uninstall-defsdataDATA
install-strip:
$(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install
installdirs:
$(mkinstalldirs) $(DATADIR)$(defsdatadir)
mostlyclean-generic:
-test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-rm -f Makefile $(DISTCLEANFILES)
-rm -f config.cache config.log stamp-h stamp-h[0-9]*
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
maintainer-clean-generic:
-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
mostlyclean: mostlyclean-generic
clean: clean-generic mostlyclean
distclean: distclean-generic clean
-rm -f config.status
maintainer-clean: maintainer-clean-generic distclean
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
.PHONY: uninstall-defsdataDATA install-defsdataDATA tags distdir info \
dvi installcheck install-exec install-data install uninstall all \
installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@@ -23,7 +23,6 @@ defsdata_DATA = \
Pink\
Pumpkin\
Purple\
Rainbow\
Red\
RednBlue\
ShinyBrown\

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
@@ -116,7 +114,6 @@ defsdata_DATA = \
Pink\
Pumpkin\
Purple\
Rainbow\
Red\
RednBlue\
ShinyBrown\

View File

@@ -1,15 +0,0 @@
{
HighlightColor = white;
HighlightTextColor = black;
FTitleColor = black;
PTitleColor = gray60;
UTitleColor = white;
FTitleBack = (mhgradient, yellow, red, yellow, green, blue, purple);
PTitleBack = (mhgradient, yellow3, red3, yellow3, green3, blue3, purple3);
UTitleBack = (mhgradient, yellow4, red4, yellow4, green4, blue4, purple4);
MenuTitleColor = black;
MenuTextColor = white;
MenuDisabledColor = gray60;
MenuTitleBack = (mhgradient, yellow, red, yellow, green, blue, purple);
MenuTextBack = (mhgradient, yellow4, red4, yellow4, green4, blue4, purple4);
}

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

6
WindowMaker/exitscript.sh Executable file
View File

@@ -0,0 +1,6 @@
#!/bin/sh
#
# Place commands to be executed when WindowMaker is exited here.
# This file must be executable.
#

View File

@@ -148,7 +148,6 @@
"Magnify" EXEC xmag
"Colormap" EXEC xcmap
"XKill" EXEC xkill
"ASClock" EXEC asclock -shape
"Clipboard" EXEC xclipboard
"Utils" END
@@ -185,8 +184,14 @@
"Wine" WS_BACK '(solid, "#400020")'
"Solid" END
"Gradient" MENU
"Flag" WS_BACK '(mdgradient, green, red, white, green)'
"Sunset" WS_BACK '(mvgradient, deepskyblue4, black, deepskyblue4, tomato4)'
"Sky" WS_BACK '(vgradient, blue4, white)'
"Blue Shades" WS_BACK '(vgradient, "#7080a5", "#101020")'
"Indigo Shades" WS_BACK '(vgradient, "#746ebc", "#242e4c")'
"Purple Shades" WS_BACK '(vgradient, "#654c66", "#151426")'
"Wheat Shades" WS_BACK '(vgradient, "#a09060", "#302010")'
"Grey Shades" WS_BACK '(vgradient, "#636380", "#131318")'
"Wine Shades" WS_BACK '(vgradient, "#600040", "#180010")'
"Gradient" END
"Images" OPEN_MENU BACKGROUNDS_DIR ~/GNUstep/Library/WindowMaker/Backgrounds WITH wmsetbg -u -t
"Background" END

View File

@@ -20,28 +20,28 @@
* END - <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> (<EFBFBD><EFBFBD><EFBFBD>)<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* OPEN_MENU - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, pipe <EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<EFBFBD><EFBFBD>) <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
* WORKSPACE_MENU - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> workspace_menu <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
* WORKSPACE_MENU - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> workspace_menu <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>.
* EXEC <program> - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* EXIT - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> window manager
* RESTART [<window manager>] - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> Window Maker <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> window manager
* REFRESH - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* ARRANGE_ICONS - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* REFRESH - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* ARRANGE_ICONS - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* SHUTDOWN - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> clients (<EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> X window
* session)
* SHOW_ALL - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* HIDE_OTHERS - "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>
* SHOW_ALL - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* HIDE_OTHERS - "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" (<EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
* SAVE_SESSION - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* SAVE_SESSION - <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, Dock <EFBFBD>
* Clip <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>). <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>). <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> WindowMmaker <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> SAVE_SESSION <EFBFBD>
* <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> Window Maker <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> SAVE_SESSION <EFBFBD>
* CLEAR_SESSION <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> Window Maker <EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "~/GNUstep/Defaults/" <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
* "SaveSessionOnExit = Yes;", <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@@ -109,8 +109,8 @@
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..." INFO_PANEL
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..." LEGAL_PANEL
"Info..." INFO_PANEL
"Legal..." LEGAL_PANEL
"System Console" EXEC xconsole
"System Load" EXEC xosview || xload
"Process List" EXEC xterm -e top
@@ -118,7 +118,7 @@
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"XTerm" EXEC xterm -sb
"Rxvt" EXEC rxvt -bg black -fg white -fn fixed
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" WORKSPACE_MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" WORKSPACE_MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"Gimp" EXEC gimp >/dev/null
@@ -130,8 +130,8 @@
"OffiX Files" EXEC files
"LyX" EXEC lyx
"Netscape" EXEC netscape
"Ghostview" EXEC ghostview %a(Enter file to view)
"Acrobat" EXEC /usr/local/Acrobat3/bin/acroread %a(Enter PDF to view)
"Ghostview" EXEC ghostview %a(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
"Acrobat" EXEC /usr/local/Acrobat3/bin/acroread %a(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
"TkDesk" EXEC tkdesk
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
@@ -149,7 +149,7 @@
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC xcalc
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC xprop | xmessage -center -title 'xprop' -file -
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC xprop | xmessage -center -title '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' -file -
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC xfontsel
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC xminicom
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC xmag
@@ -166,15 +166,15 @@
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC MANUAL_SEARCH(%s)
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" HIDE_OTHERS
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD>" SHOW_ALL
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" ARRANGE_ICONS
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" REFRESH
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC xlock -allowroot -usefirst
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" SAVE_SESSION
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" CLEAR_SESSION
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" SAVE_SESSION
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" CLEAR_SESSION
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" OPEN_MENU THEMES_DIR ~/GNUstep/Library/WindowMaker/Themes WITH setstyle
@@ -192,21 +192,20 @@
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" WS_BACK '(solid, "#400020")'
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" WS_BACK '(mdgradient, blue, white, blue, white)'
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" WS_BACK '(mdgradient, green, red, white, green)'
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" WS_BACK '(vgradient, blue4, white)'
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" OPEN_MENU BACKGROUNDS_DIR ~/GNUstep/Library/WindowMaker/Backgrounds WITH wmsetbg -u -t
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC getstyle -t ~/GNUstep/Library/WindowMaker/Themes/"%a(Theme name)"
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC geticonset ~/GNUstep/Library/WindowMaker/IconSets/"%a(IconSet name)"
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC getstyle -t ~/GNUstep/Library/WindowMaker/Themes/"%a(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)"
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" EXEC geticonset ~/GNUstep/Library/WindowMaker/IconSets/"%a(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)"
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" MENU
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" RESTART
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> AfterStep" RESTART afterstep
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..." EXIT
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..." SHUTDOWN
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>..." SHUTDOWN
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END
"<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" END

203
WindowMaker/menu.sl Normal file
View File

@@ -0,0 +1,203 @@
/*
* Root Menu definition for WindowMaker in Slovenian language
*
* Syntax is:
*
* <Title> [SHORTCUT <Shortcut>] <Command> <Parameters>
*
* <Title> is any string to be used as title. Must be enclosed with " if it
* has spaces
*
* SHORTCUT specifies a shortcut for that item. <Shortcut> has the
* same syntax of the shortcuts key options in the
* ~/GNUstep/Defaults/WindowMaker file, such as RootMenuKey or MiniaturizeKey.
*
* You can't specify a shortcut for a MENU or OPEN_MENU entry.
*
* <Command> one of the valid commands:
* MENU - starts (sub)menu definition
* END - end (sub)menu definition
* OPEN_MENU - opens a menu from a file, pipe or directory(ies) contents
* and eventually precede each with a command.
* WORKSPACE_MENU - adds a submenu for workspace operations. Only one
* workspace_menu is allowed.
* EXEC <program> - executes an external program
* EXIT - exits the window manager
* RESTART [<window manager>] - restarts WindowMaker or start another
* window manager
* REFRESH - refreshes the desktop
* ARRANGE_ICONS - rearranges the icons on the workspace
* SHUTDOWN - kills all clients (and close the X window session)
* SHOW_ALL - unhides all windows on workspace
* HIDE_OTHERS - hides all windows on the workspace, except the
* focused one (or the last one that received focus)
* SAVE_SESSION - saves the current state of the desktop, which include
* all running applications, all their hints (geometry,
* position on screen, workspace they live on, the dock
* or clip from where they were launched, and
* if minimized, shaded or hidden. Also saves the current
* workspace the user is on. All will be restored on every
* start of windowmaker until another SAVE_SESSION or
* CLEAR_SESSION is used. If SaveSessionOnExit = Yes; in
* WindowMaker domain file, then saving is automatically
* done on every windowmaker exit, overwriting any
* SAVE_SESSION or CLEAR_SESSION (see below).
* CLEAR_SESSION - clears any previous saved session. This will not have
* any effect if SaveSessionOnExit is True.
* INFO - shows the Info Panel
*
* OPEN_MENU syntax:
* 1. File menu handling.
* // opens file.menu which must contain a valid menu file and inserts
* // it in current position
* OPEN_MENU file.menu
* 2. Pipe menu handling.
* // opens command and uses it's stdout to construct menu.
* // Command's output must be a valid menu description.
* // The space between '|' and command itself is optional.
* OPEN_MENU | command
* 3. Directory handling.
* // Opens one or more directories and construct a menu with all
* // the subdirectories and executable files in them sorted
* // alphabetically.
* OPEN_MENU /some/dir [/some/other/dir ...]
* 4. Directory handling with command.
* // Opens one or more directories and construct menu with all
* // subdirectories and readable files in them sorted alphabetically,
* // preceding each of them with command.
* OPEN_MENU /some/dir [/some/other/dir ...] WITH command -options
*
*
* <Parameters> is the program to execute.
*
* ** Options for command line in EXEC:
* %s - substitute with current selection
* %a(message) - opens a input box with the message and do substitution with
* what you typed
* %w - substitute with XID for the current focused window
*
* You can override special characters (as % and ") with the \ character:
* ex: xterm -T "\"Hello World\""
*
* You can also use character escapes, like \n
*
* Each MENU statement must have one mathching END statement at the end.
*
* Example:
*
* "Test" MENU
* "XTerm" EXEC xterm
* // creates a submenu with the contents of /usr/openwin/bin
* "XView apps" OPEN_MENU "/usr/openwin/bin"
* // some X11 apps in different directories
* "X11 apps" OPEN_MENU /usr/X11/bin ~/bin/X11
* // set some background images
* "Background" OPEN_MENU ~/images /usr/share/images WITH wmsetbg -u -t
* // inserts the style.menu in this entry
* "Style" OPEN_MENU style.menu
* "Test" END
*/
#include "wmmacros"
"Aplikacije" MENU
"Informacije" MENU
"Informacije o programu..." INFO_PANEL
"Licenca..." LEGAL_PANEL
"Sistemska konzola" EXEC xconsole
"Obremenitev sistema" EXEC xosview || xload
"Seznam procesov" EXEC xterm -e top
"Pomo<6D> (Iskalec man strani)" EXEC xman
"Informacije" END
"XTerm" EXEC xterm -sb
"Rxvt" EXEC rxvt -bg black -fg white -fn fixed
"Delovni prostori" WORKSPACE_MENU
"Aplikacije" MENU
"Grafika" MENU
"Gimp" EXEC gimp >/dev/null
"XV" EXEC xv
"XPaint" EXEC xpaint
"XFig" EXEC xfig
"Grafika" END
"X File Manager" EXEC xfm
"OffiX Files" EXEC files
"LyX" EXEC lyx
"Netscape" EXEC netscape
"Ghostview" EXEC ghostview %a(Enter file to view)
"Acrobat" EXEC /usr/local/Acrobat3/bin/acroread %a(Enter PDF to view)
"TkDesk" EXEC tkdesk
"Aplikacije" END
"Urejevalniki besedil" MENU
"XFte" EXEC xfte
"XEmacs" EXEC xemacs || emacs
"XJed" EXEC xjed
"NEdit" EXEC nedit
"Xedit" EXEC xedit
"VI" EXEC xterm -e vi
"Urejevalniki besedil" END
"Drugo" MENU
"Xmcd" EXEC xmcd 2> /dev/null
"Xplaycd" EXEC xplaycd
"Xmixer" EXEC xmixer
"Drugo" END
"Uporabi programi" MENU
"Kalkulator" EXEC xcalc
"Lastnosti oken" EXEC xprop | xmessage -center -title 'xprop' -file -
"Pregled pisav" EXEC xfontsel
"Terminal emulator" EXEC xminicom
"Povecevalno steklo" EXEC xmag
"Barvna lestvica" EXEC xcmap
"XKill" EXEC xkill
"ASClock" EXEC asclock -shape
"Odlagali<6C><69>e (clipboard)" EXEC xclipboard
"Uporabni programi" END
"Izbira" MENU
"Kopiraj" EXEC echo '%s' | wxcopy
"Po<50>lji po po<70>ti" EXEC xterm -name mail -T "Pine" -e pine %s
"Odpri WEB stran" EXEC netscape %s
"Poi<6F><69>i v navodilih" EXEC MANUAL_SEARCH(%s)
"Izbira" END
"Delovni prostor" MENU
"Skrij druge" HIDE_OTHERS
"Poka<6B>i vse" SHOW_ALL
"Poravnaj ikone" ARRANGE_ICONS
"Obnovi" REFRESH
"Zakleni" EXEC xlock -allowroot -usefirst
"Shrani session" SAVE_SESSION
"Izbri<72>i shranjen session" CLEAR_SESSION
"Delovni prostor" END
"Izgled" MENU
"Teme" OPEN_MENU THEMES_DIR ~/GNUstep/Library/WindowMaker/Themes WITH setstyle
"Stili" OPEN_MENU STYLES_DIR ~/GNUstep/Library/WindowMaker/Styles WITH setstyle
"Zbirke ikon" OPEN_MENU ICON_SETS_DIR ~/GNUstep/Library/WindowMaker/IconSets WITH seticons
"Odzadje" MENU
"Barva" MENU
"<22>rna" WS_BACK '(solid, black)'
"Modra" WS_BACK '(solid, "#505075")'
"Indigo" WS_BACK '(solid, "#243e6c")'
"Temno modra" WS_BACK '(solid, "#180090")'
"Violi<6C>na" WS_BACK '(solid, "#554466")'
"P<>eni<6E>na" WS_BACK '(solid, "wheat4")'
"Temno siva" WS_BACK '(solid, "#333340")'
"Vinsko rde<64>a" WS_BACK '(solid, "#400020")'
"Barva" END
"Preliv" MENU
"Zastava" WS_BACK '(mdgradient, green, red, white, green)'
"Nebo" WS_BACK '(vgradient, blue4, white)'
"Preliv" END
"Slike" OPEN_MENU BACKGROUNDS_DIR ~/GNUstep/Library/WindowMaker/Backgrounds WITH wmsetbg -u -t
"Odzadje" END
"Shrani temo" EXEC getstyle -t ~/GNUstep/Library/WindowMaker/Themes/"%a(Theme name)"
"Shrani zbirko ikon" EXEC geticonset ~/GNUstep/Library/WindowMaker/IconSets/"%a(IconSet name)"
"Izgled" END
"Izhod" MENU
"Ponovno za<7A>eni" RESTART
"Po<50>eni AfterStep" RESTART afterstep
"Izhod..." EXIT
"Izhod iz session..." SHUTDOWN
"Izhod" END
"Aplikacije" END

View File

@@ -80,8 +80,14 @@
("Wine", EXEC, "wdwrite WindowMaker WorkspaceBack '(solid, \"#400020\")'")
),
("Gradient",
("Flag", EXEC, "wdwrite WindowMaker WorkspaceBack '(mdgradient, green, red, white, green)'"),
("Sky", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, blue4, white)'")
("Sunset", EXEC, "wdwrite WindowMaker WorkspaceBack '(mvgradient, deepskyblue4, black, deepskyblue4, tomato4)'"),
("Sky", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, blue4, white)'"),
("Blue Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#7080a5\", \"#101020\")'"),
("Indigo Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#746ebc\", \"#242e4c\")'"),
("Purple Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#654c66\", \"#151426\")'"),
("Wheat Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#a09060\", \"#302010\")'"),
("Grey Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#636380\", \"#131318\")'"),
("Wine Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#600040\", \"#180010\")'")
),
("Images", OPEN_MENU, "/usr/local/share/WindowMaker/Backgrounds ~/GNUstep/Library/WindowMaker/Backgrounds WITH wmsetbg -u -t")
),

View File

@@ -80,8 +80,14 @@
("Wine", EXEC, "wdwrite WindowMaker WorkspaceBack '(solid, \"#400020\")'")
),
("Gradient",
("Flag", EXEC, "wdwrite WindowMaker WorkspaceBack '(mdgradient, green, red, white, green)'"),
("Sky", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, blue4, white)'")
("Sunset", EXEC, "wdwrite WindowMaker WorkspaceBack '(mvgradient, deepskyblue4, black, deepskyblue4, tomato4)'"),
("Sky", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, blue4, white)'"),
("Blue Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#7080a5\", \"#101020\")'"),
("Indigo Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#746ebc\", \"#242e4c\")'"),
("Purple Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#654c66\", \"#151426\")'"),
("Wheat Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#a09060\", \"#302010\")'"),
("Grey Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#636380\", \"#131318\")'"),
("Wine Shades", EXEC, "wdwrite WindowMaker WorkspaceBack '(vgradient, \"#600040\", \"#180010\")'")
),
("Images", OPEN_MENU, "#pkgdatadir#/Backgrounds ~/GNUstep/Library/WindowMaker/Backgrounds WITH wmsetbg -u -t")
),

962
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -2,13 +2,26 @@ dnl
dnl Window Maker autoconf input.
dnl
dnl Process with: aclocal; autoconf; automake
dnl
dnl
dnl Shared library generation stuff taken from configure script from zlib
dnl
AC_INIT(src/WindowMaker.h)
AM_INIT_AUTOMAKE(WindowMaker, 0.20.1)
AM_INIT_AUTOMAKE(WindowMaker, 0.20.2)
dnl Shared Library Versions
WINGS_VER=0.0.1
WRASTER_VER=0.0.1
dnl configure/build bundled libraries
dnl ===================================
AC_CONFIG_SUBDIRS(libPropList)
AM_CONFIG_HEADER(src/config.h)
@@ -118,8 +131,8 @@ dnl ==================
dnl List of supported locales
dnl -------------------------
supported_locales="cs de es fr gl it ja ko nl no pt ru se tr fi hr el"
supported_wprefs_locales="pt hr fr ko"
supported_locales="cs de es fr gl it ja ko nl no pt ru se tr fi hr el pl ro"
supported_wprefs_locales="pt hr fr ko ja"
for lang in $LINGUAS; do
ok=0
@@ -184,17 +197,14 @@ fi
dnl Put it back once we have some real gnome support...
dnl
dnl AC_ARG_WITH(gnome,
dnl [ --with-gnome enable support for GNOME extensions ],
dnl [with_gnome=$withval], [with_gnome=yes])
dnl AC_MSG_CHECKING([for GNOME support])
dnl if test "x$with_gnome" = "xyes"; then
dnl HAVE_GNOME="#define MWM_HINTS"
dnl AC_MSG_RESULT(yes)
dnl [ --enable-gnome enable support for GNOME extensions ],
dnl [enable_gnome=$withval], [enable_gnome=yes])
dnl if test "$enable_gnome" = yes; then
dnl GNOME="#define GNOME"
dnl else
dnl HAVE_GNOME="#undef MWM_HINTS"
dnl AC_MSG_RESULT(no)
dnl GNOME="#undef GNOME"
dnl fi
dnl AC_SUBST(HAVE_GNOME)
dnl AC_SUBST(GNOME)
AC_SUBST(I18N)
AC_SUBST(INTLIBS)
@@ -267,6 +277,7 @@ dnl ==============================================
dnl Graphic Format Libraries
dnl ==============================================
dnl
dnl Specify paths to look for graphic format libraries
dnl ==================================================
@@ -292,8 +303,17 @@ AC_ARG_ENABLE(xpm,
if test "$xpm" = yes; then
AC_CHECK_LIB(Xpm, XpmCreatePixmapFromData,
[GFXFLAGS="$GFXFLAGS -DUSE_XPM" GFXLIBS="$GFXLIBS -lXpm"],,
my_libok=yes, my_libok=no,
$GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS $XLIBS)
if test "$my_libok" = yes; then
my_old_cppflags=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $GFX_INC_PATH $XCFLAGS"
AC_CHECK_HEADER(X11/xpm.h,
[GFXFLAGS="$GFXFLAGS -DUSE_XPM" GFXLIBS="$GFXLIBS -lXpm"
supported_gfx="XPM"], supported_gfx="XPM (builtin)")
CPPFLAGS=$my_old_cppflags
fi
fi
@@ -317,17 +337,23 @@ AC_CHECK_LIB(z, gzread, zlib=yes, zlib=no, $GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS)
dnl PNG Support
dnl ===========
png=yes
AC_ARG_ENABLE(png,
[ --disable-png disable PNG support through libpng],
png=$enableval, png=yes)
# assume libz is present...
#AC_ARG_ENABLE(png,
#[ --disable-png disable PNG support through libpng],
# png=$enableval, png=yes)
if test "$png" = yes; then
if test "$zlib" = yes; then
AC_CHECK_LIB(png, png_get_valid,
[GFXLIBS="$GFXLIBS -lpng -lz" GFXFLAGS="$GFXFLAGS -DUSE_PNG"
supported_gfx="$supported_gfx PNG"],,
if test "$png" = yes -a "$zlib" = yes ; then
AC_CHECK_LIB(png, png_get_valid, my_libok=yes, my_libok=no,
$GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS -lz -lm)
if test "$my_libok" = yes; then
my_old_cppflags=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $GFX_INC_PATH"
AC_CHECK_HEADER(png.h,
[GFXLIBS="$GFXLIBS -lpng -lz" GFXFLAGS="$GFXFLAGS -DUSE_PNG"
supported_gfx="$supported_gfx PNG"], )
CPPFLAGS=$my_old_cppflags
fi
fi
@@ -340,10 +366,17 @@ AC_ARG_ENABLE(jpeg,
jpeg=$enableval, jpeg=yes)
if test "$jpeg" = yes; then
AC_CHECK_LIB(jpeg, jpeg_destroy_compress,
[GFXLIBS="$GFXLIBS -ljpeg" GFXFLAGS="$GFXFLAGS -DUSE_JPEG"
supported_gfx="$supported_gfx JPEG"],,
AC_CHECK_LIB(jpeg, jpeg_destroy_compress, my_libok=yes, my_libok=no,
$GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS)
if test "$my_libok" = yes; then
my_old_cppflags=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $GFX_INC_PATH"
AC_TRY_CPP(jpeglib.h,
[GFXLIBS="$GFXLIBS -ljpeg" GFXFLAGS="$GFXFLAGS -DUSE_JPEG"
supported_gfx="$supported_gfx JPEG"], )
CPPFLAGS=$my_old_cppflags
fi
fi
@@ -360,18 +393,27 @@ AC_ARG_ENABLE(gif,
if test "$gif" = yes; then
retry=no
AC_CHECK_LIB(ungif, DGifOpenFileName,
[GFXLIBS="$GFXLIBS -lungif" GFXFLAGS="$GFXFLAGS -DUSE_GIF"
supported_gfx="$supported_gfx GIF"],retry=yes,
[my_libok=yes my_libname=ungif],
[retry=yes my_libok=no],
$GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS)
dnl
dnl libungif is the same thing as libgif for all practical purposes.
dnl
if test "$retry" = yes; then
AC_CHECK_LIB(gif, DGifOpenFileName,
[GFXLIBS="$GFXLIBS -lgif" GFXFLAGS="$GFXFLAGS -DUSE_GIF"
supported_gfx="$supported_gfx GIF"],,
[my_libok=yes my_libname=gif],
my_libok=no,
$GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS)
fi
if test "$my_libok" = yes; then
my_old_cppflags=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $GFX_INC_PATH"
AC_CHECK_HEADER(gif_lib.h,
[GFXLIBS="$GFXLIBS -l$my_libname" GFXFLAGS="$GFXFLAGS -DUSE_GIF"
supported_gfx="$supported_gfx GIF"], )
CPPFLAGS=$my_old_cppflags
fi
fi
@@ -393,28 +435,35 @@ ICONEXT="xpm"
#
if test "$tif" = yes; then
my_libname=""
AC_CHECK_LIB(tiff, TIFFGetVersion,
[GFXFLAGS="$GFXFLAGS -DUSE_TIFF" GFXLIBS="-ltiff $GFXLIBS"
ICONEXT="tiff"],,
[my_libok=yes my_libname="-ltiff"], my_libok=no,
[$GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS $XLIBS $GFXLIBS -lm])
dnl
dnl Retry with zlib
dnl
if test ! "$ICONEXT" = "tiff"; then
if test "$my_libok" = no; then
if test "$zlib" = "yes"; then
AC_CHECK_LIB(tiff, TIFFGetVersion,
[GFXFLAGS="$GFXFLAGS -DUSE_TIFF" GFXLIBS="-ltiff -lz $GFXLIBS"
ICONEXT="tiff"],,
[my_libok=yes my_libname="-ltiff -lz"], my_libok=no,
[$GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS $XLIBS $GFXLIBS -lz -lm])
fi
fi
if test ! "$ICONEXT" = "tiff"; then
if test "$my_libok" = no; then
AC_CHECK_LIB(tiff34, TIFFGetVersion,
[GFXFLAGS="$GFXFLAGS -DUSE_TIFF" GFXLIBS="-ltiff34 $GFXLIBS"
ICONEXT="tiff"],,
[my_libok=yes my_libname="-ltiff34"], my_libok=no,
[$GFX_INC_PATH $GFX_LIB_PATH $XLFLAGS $XLIBS $GFXLIBS -lm])
fi
if test "$my_libok" = yes; then
my_old_cppflags=$CPPFLAGS
CPPFLAGS="$CPPFLAGS $GFX_INC_PATH"
AC_CHECK_HEADER(tiffio.h,
[GFXFLAGS="$GFXFLAGS -DUSE_TIFF" GFXLIBS="$my_libname $GFXLIBS"
ICONEXT="tiff" supported_gfx="$supported_gfx TIFF"], )
CPPFLAGS=$my_old_cppflags
fi
fi
@@ -430,70 +479,76 @@ dnl ==============================================
dnl =====================================================
dnl Check for libPropList
dnl Always use the included libPropList, even if it is
dnl already installed.
dnl =====================================================
PLPATH=`pwd`/libPropList
#LIBPL_LIBS="-L${top_builddir}/libPropList -lPropList"
#LIBPL_INC_PATH="-I${top_srcdir}/libPropList"
#
#
#PLPATH=`pwd`/libPropList
#
#if test -f $PLPATH/libPropList.a; then
# echo "using bundled libPropList, already compiled."
# needtobuild=no
# LIBPL_LIBS="-L$PLPATH -lPropList"
# LIBPL_INC_PATH="-I$PLPATH"
#else
# AC_CHECK_LIB(PropList, PLGetString,
# [LIBPL_LIBS=-lPropList LIBPL_INC_PATH="" needtobuild=no],
# [LIBPL_LIBS="-L$PLPATH -lPropList"
# LIBPL_INC_PATH="-I$PLPATH"
# needtobuild=yes])
#fi
#
#
#if test "$needtobuild" = yes; then
# if test -f libPropList/libPropList.a; then
# echo "using included libPropList"
# else
# echo "********** WARNING *************"
# echo "libPropList is not installed in your system."
# echo "You need to build it before building Window Maker (if you already"
# echo "did that, remove config.cache and rerun configure)."
# echo "Please read the INSTALL file for detailed instructions."
# echo "Press <Return> to continue configuring Window Maker or"
# echo "type b and <Return> to build it now."
# read foo
# if test "$foo" = b; then
# echo
# echo "Building libPropList..."
# echo
# if test ! -d libPropList; then
# gzip -d -c libPropList.tar.gz | tar xf -
# fi
# ok=no
# if (cd libPropList; ./configure); then
# if (cd libPropList; make); then
# ok=yes
# fi
# fi
# if test "$ok" = no; then
# echo "********** WARNING **********"
# echo "An error occurred while building libPropList"
# echo "Please build it manually."
# echo "Press <Return> to continue."
# read foo
# fi
# echo
# echo "resuming Window Maker configuration..."
# echo
# fi
# fi
#fi
#
#AC_SUBST(LIBPL_LIBS)
#AC_SUBST(LIBPL_INC_PATH)
if test -f $PLPATH/libPropList.a; then
echo Using compiled libPropList
needtobuild=no
LIBPL_LIBS="-L$PLPATH -lPropList"
LIBPL_INC_PATH="-I$PLPATH"
else
AC_CHECK_LIB(PropList, PLGetString,
[LIBPL_LIBS=-lPropList LIBPL_INC_PATH="" needtobuild=no],
[LIBPL_LIBS="-L$PLPATH -lPropList"
LIBPL_INC_PATH="-I$PLPATH"
needtobuild=yes])
fi
if test "$needtobuild" = yes; then
if test -f libPropList/libPropList.a; then
echo "using included libPropList"
else
echo "********** WARNING *************"
echo "libPropList is not installed in your system."
echo "You need to build it before building WindowMaker (if you already"
echo "did that, remove config.cache and rerun configure)."
echo "Please read the INSTALL file for detailed instructions."
echo "Press <Return> to continue configuring WindowMaker or"
echo "type b and <Return> to build it now."
read foo
if test "$foo" = b; then
echo
echo "Building libPropList..."
echo
if test ! -d libPropList; then
gzip -d -c libPropList.tar.gz | tar xf -
fi
ok=no
if (cd libPropList; ./configure); then
if (cd libPropList; make); then
ok=yes
fi
fi
if test "$ok" = no; then
echo "********** WARNING **********"
echo "An error occurred while building libPropList"
echo "Please build it manually."
echo "Press <Return> to continue."
read foo
fi
echo
echo "resuming WindowMaker configuration..."
echo
fi
fi
fi
AC_SUBST(LIBPL_LIBS)
AC_SUBST(LIBPL_INC_PATH)
dnl Paranoia setup
dnl ==============
dnl Debugging setup
dnl ===============
AC_ARG_ENABLE(debug,
[ --enable-debug enable debugging ],, enable_debug=no)
@@ -544,15 +599,22 @@ AC_SUBST(pixmapdir)
dnl Support for GNUSTEP_LOCAL_ROOT, for WPrefs.app
dnl ==============================================
appspath=""
AC_ARG_WITH(appspath,
[ --with-appspath=PATH specify the path of the GNUstep applications directory ])
if test "x$appspath" = "x"; then
gnustepdir="${prefix}/GNUstep"
if test "x$GNUSTEP_LOCAL_ROOT" != "x" ; then
gnustepdir=`echo "$GNUSTEP_LOCAL_ROOT" | sed -e "s%${prefix}%\${prefix}%"`
fi
appsdir=$gnustepdir/Apps
appspath=$gnustepdir/Apps
fi
wprefsdir=$appsdir/WPrefs.app
wprefsdir=$appspath/WPrefs.app
AC_SUBST(wprefsdir)
@@ -560,7 +622,8 @@ AC_SUBST(wprefsdir)
dnl Enable single appicon per wm instance+class combo -cls
dnl =====================================================
AC_ARG_ENABLE(single-icon,
[ --enable-single-icon use single application icon per WM_INSTANCE+WM_CLASS (unsupported) ],
[ --enable-single-icon use single application icon per WM_INSTANCE+WM_CLASS
],
if test "$enableval" = yes; then
REDUCE_APPICONS="#define REDUCE_APPICONS"
else
@@ -601,6 +664,75 @@ if test "$GCC" = "yes"; then
fi
dnl Shared Library Support (unfinished)
dnl ===================================
enable_shared=no
#AC_ARG_ENABLE(shared,
#[ --enable-shared build libraries as shared ], enable_shared=yes,
# enable_shared=no)
if test "$enable_shared" = yes; then
if test "$GCC" = yes; then
_CFLAGS="-fPIC"
LDSHARED='$CC -shared'
else
# find system name and corresponding cc options
case `(uname -sr || echo unknown) 2>/dev/null` in
SunOS\ 5*)
_CFLAGS="-fast -xcg89 -KPIC -R."
LDSHARED='$CC -G';;
SunOS\ 4*)
_CFLAGS="-PIC"
LDSHARED="ld";;
IRIX*)
_CFLAGS="-ansi -rpath ."
LDSHARED='$CC -shared';;
SCO_SV\ 3.2*)
_CFLAGS="-dy -KPIC "
LDSHARED='$CC -dy -KPIC -G';;
HP-UX*)
_CFLAGS="+z"
LDSHARED="ld -b"
SHAREDLIBS='libz.sl';;
*)
_CFLAGS=""
LDSHARED='$CC -shared';;
esac
fi
AC_MSG_CHECKING([for shared library support])
test=tmptest$$
cat > $test.c <<EOF
int hello() { printf("hello\n"); }
EOF
# we must test in two steps (cc then ld), required at least on SunOS 4.x
if test "`($CC -c $_CFLAGS $test.c) 2>&1`" = "" &&
test "`($LDSHARED -o $test.so $test.o) 2>&1`" = ""; then
CFLAGS="$CFLAGS $_CFLAGS"
WRASTERLIB='libwraster.so.$(WRASTER_VER)'
WINGSLIB='libWINGs.so.$(WINGS_VER)'
AC_MSG_RESULT([yes, building shared])
else
LDSHARED='$CC'
WRASTERLIB='libwraster.a'
WINGSLIB='libWINGs.a'
AC_MSG_RESULT([no, building static])
fi
rm -f $test.[co] $test.so
fi
#AC_SUBST(WRASTER_VER)
#AC_SUBST(WINGS_VER)
#AC_SUBST(WRASTERLIB)
# AC_SUBST(WINGSLIB)
# AC_SUBST(LDSHARED)
dnl
dnl Nicolai: Program tests for Documentation Section
dnl =================================================
@@ -633,7 +765,6 @@ AC_OUTPUT(Makefile po/Makefile util/Makefile test/Makefile wmlib/Makefile \
WindowMaker/Themes/Makefile WindowMaker/Backgrounds/Makefile \
WindowMaker/Pixmaps/Makefile WindowMaker/Icons/Makefile \
WindowMaker/IconSets/Makefile \
WindowMaker/Sounds/Makefile \
WPrefs.app/Makefile WPrefs.app/tiff/Makefile WPrefs.app/xpm/Makefile \
WPrefs.app/po/Makefile )
@@ -653,24 +784,7 @@ dnl
dnl Spit out the configuration
dnl ==========================
formats="XPM PPM"
a=0
for i in $GFXFLAGS; do
case "$i" in
-DUSE_GIF)
formats="$formats GIF"
;;
-DUSE_TIFF)
formats="$formats TIFF"
;;
-DUSE_PNG)
formats="$formats PNG"
;;
-DUSE_JPEG)
formats="$formats JPEG"
;;
esac
done
supported_gfx="$supported_gfx PPM (built-in)"
echo
echo "Window Maker was configured as follows:"
@@ -678,7 +792,7 @@ echo
echo "Installation path prefix: $prefix"
echo "Installation path prefix for binaries: $exec_prefix"
echo "Installation path for WPrefs.app: $wprefsdir"
echo "Graphic format libraries: $formats"
echo "Graphic format libraries: $supported_gfx"
if test "x$MOFILES" = "x"; then
mof=none
else
@@ -689,9 +803,6 @@ if test "x$MOFILES" != "x"; then
echo "Installation path of translated messages: $NLSDIR"
fi
echo "What!? WPrefs.app won't be installed where you want it?"
echo "May I point to you to the INSTALL file?"
dnl This is for Emacs. I'm lazy, I know... (nicolai)
dnl ================================================

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -1,7 +1,7 @@
.\" Hey, Emacs! This is an -*- nroff -*- source file.
.TH seticons 1x "March 1998"
.SH NAME
seticons \- sets the WindowMaker icons
seticons \- sets the icon images used in Window Maker
.SH SYNOPSIS
.B seticons
.I iconsfile

View File

@@ -1,5 +1,5 @@
.\" Hey, Emacs! This is an -*- nroff -*- source file.
.TH WindowMaker 1x "August 1998"
.TH Window\ Maker 1x "August 1998"
.SH NAME
wmaker \- X11 window manager with a NEXTSTEP look
.SH SYNOPSIS
@@ -48,7 +48,8 @@ information about the Dock and Clip. DON'T edit this while running
Window Maker. It will be overwritten.
.TP
.B ~/GNUstep/Defaults/WMRootMenu
Contains the name of the file to read the root menu from.
Contains the name of the file to read the root menu from or the
menu itself, in property list format.
.TP
.B ~/GNUstep/Defaults/WMWindowAttributes
Attributes for different application classes and instances. Use the
@@ -56,7 +57,7 @@ Attribute Editor (right drag the application's title bar, select
Attributes) instead of modifying this file directly. There are just a
few options not available using the Attributes Editor.
.TP
.B /etc/GNUstep/Defaults/
.B /usr/share/WindowMaker/Defaults/
All the above-mentioned files are READ from here if not found except
for WMState, which is COPIED from here. No matter where they are read
from, if it's necesary to write configuration changes back into this
@@ -65,11 +66,21 @@ files, user's files will be written to.
.B ~/GNUstep/Library/WindowMaker/autostart
This script is automatically executed when Window Maker is started.
.TP
.B ~/GNUstep/Library/WindowMaker/exitscript
This script is automatically executed immediately before Window Maker is
exited.
.B Note:
If you need to run something that requires the X server to be running
from this script, make sure you do not use the
.I SHUTDOWN
command from the root menu to exit Window Maker. Otherwise, the X server
might be shut down before the script is executed.
.TP
.B ~/GNUstep/Library/WindowMaker/
The menu file indicated in WMRootMenu is looked for here...
.TP
.B /etc/X11/WindowMaker/
and here, in that order.
and here, in that order. Unless, the indicated path is an absolute path.
.TP
.B ~/GNUstep/Library/WindowMaker/Pixmaps/
Window Maker looks for pixmaps here
@@ -115,7 +126,6 @@ The WindowMaker User Guide
The Window Maker FAQ
.PP
.BR X (1x),
.BR convertstyle (1),
.BR wdwrite (1x),
.BR wxcopy (1x),
.BR geticonset (1x),
@@ -126,8 +136,9 @@ The WindowMaker FAQ
.BR setstyle (1x),
.BR wmsetbg (1x)
.SH AUTHOR
WindowMaker was written by Alfredo K. Kojima <kojima@windowmaker.org>
with help from many contributors.
Window Maker was written by Alfredo K. Kojima <kojima@windowmaker.org>,
Dan Pascu <dan@windowmaker.org> with contributions from many people around
the Internet.
.PP
This manual page was written by Marcelo E. Magallon, <mmagallo@debian.org>.

View File

@@ -48,3 +48,4 @@ colors per channel to use
This man page was written by Marcelo Magallon <mmagallo@debian.org>.
.PP
Window Maker was written by Alfredo K. Kojima <kojima@windowmaker.org>.
wmsetbg was written by Dan Pascu <dan@windowmaker.org>

View File

@@ -1,10 +1,10 @@
.\" Hey, Emacs! This is an -*- nroff -*- source file.
.TH wxcopy 1x "March 1998"
.TH wxcopy 1x "September 1998"
.SH NAME
wxcopy \- copy stdin or file into cutbuffer
.SH SYNOPSIS
.B wxcopy
[\-cutbuffer number]
[options]
[filename]
.SH DESCRIPTION
.B wxcopy
@@ -12,7 +12,26 @@ copies stdin or
.I filename
into the cutbuffer. If no cutbuffer is specified, the data will be
copied into cutbuffer 0 and the other cutbuffers will be rotated, if present.
.I number
If a cutbuffer is specified, the data is copied into that cutbuffer,
and no rotation of buffers is performed.
.SH OPTIONS
.TP
.B \-cutbuffer number
Specifies the number of the cutbuffer to copy data to.
.TP
.B \-display display\-name
The data will be copied in the cutbuffers of the specified display/screen.
.TP
.B \-nolimit
Makes the normal 64kb limit check not to be performed, making the buffer
attempt to grow to whatever size is required.
.TP
.B \-clearselection
Clears the PRIMARY selection owner. In practice it means that when you try
to paste the data with the middle mouse button (for example) it will paste
the data from cut buffer 0, instead of any eventually existing mouse
selection.
.PP
.SH SEE ALSO
.BR wxpaste (1x),
.BR wmaker (1x)
@@ -20,3 +39,6 @@ copied into cutbuffer 0 and the other cutbuffers will be rotated, if present.
This man page was written by Marcelo Magallon <mmagallo@debian.org>.
.PP
Window Maker was written by Alfredo K. Kojima <kojima@windowmaker.org>.
Binary data compatibility and \-nolimit stuff by Luke Kendall
<luke@research.canon.com.au>.

View File

@@ -4,12 +4,34 @@
wxpaste \- output a cutbuffer to stdout
.SH SYNOPSIS
.B wxpaste
[\-cutbuffer number]
[options]
.SH DESCRIPTION
.B wxpaste
outputs the most recent cutbuffer or cutbuffer
.I number
to stdout
outputs the contents of the specified cutbuffer to stdout. If no cutbuffer
is specified, the cutbuffer 0 will be used as default.
.PP
.SH OPTIONS
.TP
.B \-cutbuffer number
The data will be pasted from the specified cutbuffer, instead of the default
0.
.TP
.B \-display display\-name
Specifies the display where wxpaste should look for the data to be pasted.
.TP
.B \-selection [selection\-name]
The data will be copied from the named selection. If cutting from the
selection fails, the cutbuffer will be used. The default value for the
selection name is PRIMARY.
.PP
.SH BUGS
.TP
The \-selection option must be the last one. The syntax could be
cleaned, but backwards compatibility prevents that...
INCR and MULTIPLE selection types are not handled. Actually, only simple
text selections are handled, wich should be enough for most uses of a
utility such as this.
.SH SEE ALSO
.BR wxcopy (1x),
.BR wmaker (1x)

Binary file not shown.

13
mkpatch
View File

@@ -96,7 +96,7 @@ EOF
for i in $files; do
echo $OTREE/$i
echo "echo \"Removing ../$i\"" >> $TMP/delfiles
if [ -d $OTREE/$i ]; then
if [ -d $OTREE/$delfiles ]; then
echo "rm -rf ../$i" >> $TMP/delfiles
else
echo "rm ../$i" >> $TMP/delfiles
@@ -156,7 +156,7 @@ while [ $index -lt $dircount ]; do
mv tmpdir/`basename $origname` ../$origname
index=`expr $index + 1`
done
rmdir tmpdir
rm -fr tmpdir
#copy files
index=0
@@ -250,7 +250,7 @@ check_text_changes() {
else
cat $TMP/tmp >> $TMP/bindiff
fi
rm -f $TMP/tmp
rm -fr $TMP/tmp
done
}
@@ -300,7 +300,12 @@ dir=`pwd`
dir=`basename $dir`
cd $savedir
if test ! "$dir" = "$TARGET_TREE"; then
if test "$USER" = root; then
echo "Do not run this script as the root user"
exit 1
fi
if test "$dir" != "$TARGET_TREE"; then
echo "You must move the \"TMP\" directory to inside the "
echo "\"$TARGET_TREE\" directory before running this script."
exit 1

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@

View File

@@ -94,9 +94,9 @@ the top of the file, like:
#
You may also want to translate the menu definition file.
Send me the translated files to me, so that I can include them
Send the translated files to me, so that I can include them
in the next distribution.
--
Alfredo Kojima <kojima@inf.ufrgs.br>
Alfredo Kojima <kojima@windowmaker.org>

View File

@@ -1,33 +1,33 @@
# Message catalog for WindowMaker
# Message catalog 1998.
# Copyright (C) 1998 Free Software Foundation, Inc.
# David Sauer <xsauer@fel.cvut.cz>, 1998.
#
msgid ""
msgstr ""
"Project-Id-Version: WindowMaker 0.19.3\n"
"POT-Creation-Date: 1998-09-12 13:26+0200\n"
"PO-Revision-Date: 1998-09-12 13:39+02:00\n"
"Project-Id-Version: WindowMaker 0.18.0\n"
"POT-Creation-Date: 1998-08-18 01:41+0200\n"
"PO-Revision-Date: 1998-08-18 01:52+02:00\n"
"Last-Translator: David Sauer <xsauer@fel.cvut.cz>\n"
"Language-Team: czech <cs@li.org>\n"
"Language-Team: Czech <cs@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=ISO-8859-2\n"
"Content-Transfer-Encoding: unknown\n"
#: ../src/appicon.c:509 ../src/dialog.c:267 ../src/dialog.c:323
#: ../src/dock.c:2999 ../src/dockedapp.c:206 ../src/rootmenu.c:166
#: ../src/winspector.c:278 ../src/winspector.c:291
#: ../src/appicon.c:493 ../src/dialog.c:262 ../src/dialog.c:318
#: ../src/dock.c:2966 ../src/rootmenu.c:164 ../src/winspector.c:269
#: ../src/winspector.c:277
msgid "Error"
msgstr "Chyba"
#: ../src/appicon.c:510
#: ../src/appicon.c:494 ../src/winspector.c:278
msgid "Could not open specified icon file"
msgstr "Nelze otev<65><76> specifikovan<61> soubor s ikonou"
#: ../src/appicon.c:531 ../src/dock.c:281 ../src/winmenu.c:85
#: ../src/appicon.c:515 ../src/dock.c:238 ../src/winmenu.c:85
msgid "Kill Application"
msgstr "Ukon<6F>it aplikaci"
#: ../src/appicon.c:532 ../src/dock.c:282 ../src/winmenu.c:86
#: ../src/appicon.c:516 ../src/dock.c:239 ../src/winmenu.c:86
msgid ""
"This will kill the application.\n"
"Any unsaved changes will be lost.\n"

1046
po/el.po

File diff suppressed because it is too large Load Diff

View File

@@ -348,23 +348,19 @@ msgstr "%s: dimensiuni invalide ale hartii de culori in linia \"%s\""
#: ../resource.c:579
msgid "%s: invalid geometry display type \"%s\". Shouldbe center, corner, floating or line"
msgstr "%s: tip de geometrie a monitorului invalid \"%s\". Valori permise: center, corner, floating
sau line"
msgstr "%s: tip de geometrie a monitorului invalid \"%s\". Valori permise: center, corner, floating sau line"
#: ../resource.c:601
msgid "%s: invalid focus mode \"%s.\" Should be manual, auto or semiauto"
msgstr "%s: mod de focalizare invalid \"%s.\" Valori permise: manual, auto
sau semiauto"
msgstr "%s: mod de focalizare invalid \"%s.\" Valori permise: manual, auto sau semiauto"
#: ../resource.c:619
msgid "%s: invalid window placement mode \"%s\". Should be auto, cascade or manual"
msgstr "%s: modo al plasarii ferestrei invalid \"%s\". Valori permise: auto, cascade
sau manual"
msgstr "%s: modo al plasarii ferestrei invalid \"%s\". Valori permise: auto, cascade sau manual"
#: ../resource.c:639
msgid "%s: invalid texture type \"%s\" Should be solid, dgradient, vgradient or hgradient"
msgstr "%s: tip de textura invalid \"%s\" Valori permise: solid, dgradient, vgradient
sau hgradient"
msgstr "%s: tip de textura invalid \"%s\" Valori permise: solid, dgradient, vgradient sau hgradient"
#: ../resource.c:666
msgid "%s: invalid gradient spec. \"%s\""
@@ -376,8 +372,7 @@ msgstr "%s: coordonata invalida \"%s\""
#: ../resource.c:701
msgid "%s: invalid justification type \"%s\". Should be left, center or right"
msgstr "%s: tipul de justificare invalid \"%s\". Valori permise: left, center
sau right"
msgstr "%s: tipul de justificare invalid \"%s\". Valori permise: left, center sau right"
#: ../resource.c:731
msgid "could not make arguments for preference file preprocessor"
@@ -405,8 +400,7 @@ msgstr "nu se poate gasi icon-ul de bakground \"%s\" "
#: ../raster.c:183
msgid "invalid dither colormap size specification.disabling"
msgstr "specificarea marimii hartii de culori e invalida.
Dezactivare"
msgstr "specificarea marimii hartii de culori e invalida. Dezactivare"
#: ../raster.c:193
msgid "Could not build PseudoColor color table\n"
@@ -438,8 +432,7 @@ msgstr "Ferestre"
#: ../dock.c:171
msgid "could not open file \"%s\" to save Dock state"
msgstr "e' fisierul \"%s\" nu se poate deschide pt. salvarea starii
Dock-ului"
msgstr "e' fisierul \"%s\" nu se poate deschide pt. salvarea starii Dock-ului"
#: ../dock.c:687
msgid "Could not execute program \"%s\""

View File

@@ -3,7 +3,7 @@ msgstr ""
"Date: 1998-03-12 18:29:09+EET\n"
"From: KGF <kgf@wpi.edu>\n"
"Content-Type: text/plain; charset=\n"
"Language-Team: TURKISH \n"
"Language-Team: Turkish \n"
"Xgettext-Options: --default-domain=WindowMaker --add-comments --keyword=_\n"
"Files: ../main.c ../event.c ../window.c ../startup.c ../shutdown.c ../wcore.c ../properties.c ../texture.c ../actions.c ../menu.c ../client.c ../pixmap.c ../image.c ../gradient.c ../button.c ../screen.c ../icon.c ../rootmenu.c ../dialog.c ../resource.c ../moveres.c ../application.c ../colormap.c ../raster.c ../placement.c ../misc.c ../appmenu.c ../keybind.c ../stacking.c ../appicon.c ../switchmenu.c ../dock.c ../winmenu.c ../generic/error.c\n"

View File

@@ -42,7 +42,7 @@
#undef WINGS_BOOL_FLAG
#endif
#define WINDOWMAKER_WM_MINIATURIZE_WINDOW "_WINDOWMAKER_WM_MINIATURIZE_WINDOW"
#define GNUSTEP_WM_MINIATURIZE_WINDOW "_GNUSTEP_WM_MINIATURIZE_WINDOW"
#define GNUSTEP_WM_ATTR_NAME "_GNUSTEP_WM_ATTR"
@@ -67,8 +67,9 @@ enum {
};
#endif /* _WINGS_H_ */
/* GNUstep protocols atom names */
#define GNUSTEP_WM_RESIZEBAR "_GNUSTEP_WM_RESIZEBAR"
/* window manager -> appkit notifications */
#define GNUSTEP_WM_NOTIFICATION "GNUSTEP_WM_NOTIFICATION"
typedef struct {
CARD32 flags;
@@ -92,6 +93,9 @@ typedef struct {
/* extra flags */
#define GSDocumentEditedFlag (1<<0)
#define GSWindowWillResizeNotificationsFlag (1<<1)
#define GSWindowWillMoveNotificationsFlag (1<<2)
#define GSNoApplicationIconFlag (1<<5)

View File

@@ -102,16 +102,16 @@ CPPFLAGS = \
INCLUDES = \
-I$(top_srcdir)/wrlib \
-I$(top_srcdir)/WINGs \
@XCFLAGS@ \
@LIBPL_INC_PATH@
-I$(top_srcdir)/libPropList \
-I$(top_srcdir)/wrlib \
-I$(top_srcdir)/WINGs
wmaker_LDADD = \
$(top_builddir)/WINGs/libWINGs.a\
$(top_builddir)/wrlib/libwraster.a\
@LIBPL_LIBS@ \
-L$(top_builddir)/WINGs -lWINGs\
-L$(top_builddir)/wrlib -lwraster\
-L$(top_builddir)/libPropList -lPropList\
@XLFLAGS@ \
@GFXLIBS@ \
@XLIBS@ \

View File

@@ -68,8 +68,6 @@ I18N = @I18N@
I18N_MB = @I18N_MB@
ICONEXT = @ICONEXT@
INTLIBS = @INTLIBS@
LIBPL_INC_PATH = @LIBPL_INC_PATH@
LIBPL_LIBS = @LIBPL_LIBS@
LN_S = @LN_S@
MAKEINFO = @MAKEINFO@
MOFILES = @MOFILES@
@@ -193,15 +191,15 @@ CPPFLAGS = \
-DPIXMAPDIR="\"$(pixmapdir)\""
INCLUDES = \
-I$(top_srcdir)/wrlib \
-I$(top_srcdir)/WINGs \
@XCFLAGS@ \
@LIBPL_INC_PATH@
-I$(top_srcdir)/libPropList \
-I$(top_srcdir)/wrlib \
-I$(top_srcdir)/WINGs
wmaker_LDADD = \
$(top_builddir)/WINGs/libWINGs.a\
$(top_builddir)/wrlib/libwraster.a\
@LIBPL_LIBS@ \
-L$(top_builddir)/WINGs -lWINGs\
-L$(top_builddir)/wrlib -lwraster\
-L$(top_builddir)/libPropList -lPropList\
@XLFLAGS@ \
@GFXLIBS@ \
@XLIBS@ \
@@ -227,8 +225,7 @@ placement.o properties.o proplist.o resources.o rootmenu.o screen.o \
session.o shutdown.o stacking.o startup.o superfluous.o switchmenu.o \
texture.o xmodifier.o xutil.o wcore.o wdefaults.o window.o winmenu.o \
winspector.o workspace.o wmsound.o text.o
wmaker_DEPENDENCIES = $(top_builddir)/WINGs/libWINGs.a \
$(top_builddir)/wrlib/libwraster.a
wmaker_DEPENDENCIES =
wmaker_LDFLAGS =
CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS)

View File

@@ -127,14 +127,6 @@ typedef struct WObjDescriptor {
#define WTJ_LEFT 1
#define WTJ_RIGHT 2
/* icon box positions */
#define WIB_BOTTOM 0
#define WIB_TOP 1
#define WIB_LEFT 2
#define WIB_RIGHT 3
/* iconification styles */
#define WIS_ZOOM 0
#define WIS_TWIST 1
@@ -157,9 +149,6 @@ typedef struct WObjDescriptor {
#define SPEED_SLOW 3
#define SPEED_ULTRASLOW 4
/* startup warnings */
#define WAR_DEFAULTS_DIR 1 /* created defaults DB directory */
/* window states */
#define WS_FOCUSED 0
@@ -180,18 +169,19 @@ typedef struct WObjDescriptor {
#define IY_LEFT 0
/* program states */
#define WSTATE_NORMAL 0
#define WSTATE_NEED_EXIT 1
#define WSTATE_NEED_RESTART 2
#define WSTATE_EXITING 3
#define WSTATE_RESTARTING 4
typedef struct W2Color {
char *color1;
char *color2;
} W2Color;
typedef struct WCoord {
int x, y;
} WCoord;
typedef struct WPreferences {
char **pixmap_path; /* NULL terminated array of */
/* paths to find pixmaps */
@@ -213,8 +203,9 @@ typedef struct WPreferences {
char use_saveunders; /* turn on SaveUnders for menus,
* icons etc. */
/*
char no_window_under_dock;
*/
char no_window_over_icons;
@@ -257,7 +248,7 @@ typedef struct WPreferences {
WCoord *win_menu_pos;
int icon_yard; /* aka iconbox */
char icon_yard; /* aka iconbox */
int raise_delay; /* delay for autoraise. 0 is disabled */
@@ -298,13 +289,13 @@ typedef struct WPreferences {
int dblclick_time; /* double click delay time in ms */
/* animate menus */
int menu_scroll_speed; /* how fast menus are scrolled */
char menu_scroll_speed; /* how fast menus are scrolled */
/* animate icon sliding */
int icon_slide_speed; /* icon slide animation speed */
char icon_slide_speed; /* icon slide animation speed */
/* shading animation */
int shade_speed;
char shade_speed;
int edge_resistance;

View File

@@ -27,6 +27,7 @@
#include <stdio.h>
#include <unistd.h>
#include <math.h>
#include <time.h>
#include "WindowMaker.h"
#include "wcore.h"
@@ -69,8 +70,8 @@ static struct {
{SHADE_STEPS_S, SHADE_DELAY_S},
{SHADE_STEPS_U, SHADE_DELAY_U}};
#define SHADE_STEPS shadePars[wPreferences.shade_speed].steps
#define SHADE_DELAY shadePars[wPreferences.shade_speed].delay
#define SHADE_STEPS shadePars[(int)wPreferences.shade_speed].steps
#define SHADE_DELAY shadePars[(int)wPreferences.shade_speed].delay
static int ignoreTimestamp=0;
@@ -246,6 +247,7 @@ void
wShadeWindow(WWindow *wwin)
{
XWindowAttributes attribs;
time_t time0 = time(NULL);
#ifdef ANIMATIONS
int y, s, w, h;
#endif
@@ -276,6 +278,9 @@ wShadeWindow(WWindow *wwin)
wusleep(SHADE_DELAY*1000L);
h-=s;
y-=s;
if (time(NULL)-time0 > MAX_ANIMATION_TIME)
break;
}
XMoveWindow(dpy, wwin->client_win, 0, wwin->frame->top_width);
}
@@ -302,6 +307,7 @@ wShadeWindow(WWindow *wwin)
#ifdef ANIMATIONS
if (!wwin->screen_ptr->flags.startup) {
/* Look at processEvents() for reason of this code. */
XSync(dpy, 0);
processEvents(XPending(dpy));
}
@@ -312,6 +318,7 @@ wShadeWindow(WWindow *wwin)
void
wUnshadeWindow(WWindow *wwin)
{
time_t time0 = time(NULL);
#ifdef ANIMATIONS
int y, s, w, h;
#endif /* ANIMATIONS */
@@ -347,6 +354,9 @@ wUnshadeWindow(WWindow *wwin)
wusleep(SHADE_DELAY*2000L/3);
h+=s;
y+=s;
if (time(NULL)-time0 > MAX_ANIMATION_TIME)
break;
}
}
XMoveWindow(dpy, wwin->client_win, 0, wwin->frame->top_width);
@@ -395,13 +405,19 @@ wMaximizeWindow(WWindow *wwin, int directions)
if (!(wPreferences.icon_yard & IY_RIGHT))
new_x += wPreferences.icon_size;
}
#if 0
if (wPreferences.no_window_under_dock
&& wwin->screen_ptr->dock) {
new_width -= wPreferences.icon_size + DOCK_EXTRA_SPACE;
if (!wwin->screen_ptr->dock->on_right_side)
new_x += wPreferences.icon_size + DOCK_EXTRA_SPACE;
}
#endif
if (wwin->screen_ptr->dock && !wwin->screen_ptr->dock->lowered) {
new_width -= wPreferences.icon_size + DOCK_EXTRA_SPACE;
if (!wwin->screen_ptr->dock->on_right_side)
new_x += wPreferences.icon_size + DOCK_EXTRA_SPACE;
}
} else {
new_x = wwin->frame_x;
new_width = wwin->frame->core->width;
@@ -679,181 +695,6 @@ animateResize(WScreen *scr, int x, int y, int w, int h,
#endif /* ANIMATIONS */
/* Here are defined the miniaturize animation functions. The above defined
* functions, use a separate function that implements the animation for each
* different style, and a wrapper that calls them accordingly.
* The below function is a single function that implements all the miniaturize
* animation styles in one single function, using switch{} and if() statements
* to differentiate them.
* The above code is more generic and elegant, letting one to extend it very
* easily (though I don't think one would ;), but will make the code a little
* bit bigger, using three functions and a wrapper.
* The below version, is smaller, being optimised for size, but is less
* elegant, and harder to be extended. Also is harder to read.
* I let them both here so you can take a look, and decide which one you like
* more. I would use the above functions because they are nicer, and easier to
* read and follow, and only a little bit bigger. -Dan
*/
#ifdef ANIMATIONS_DONT_USE_THIS
static void
animateResize(WScreen *scr, int x, int y, int w, int h,
int fx, int fy, int fw, int fh, int hiding)
{
#define FRAMES (MINIATURIZE_ANIMATION_FRAMES_Z)
float cx[FRAMES], cy[FRAMES], cw[FRAMES], ch[FRAMES];
float xstep, ystep, wstep, hstep;
XPoint points[5];
float angle, final_angle, a, d, delta, dx, dch, midy, twist=0.5;
int style = wPreferences.iconification_style; /* Catch the value */
/* to avoid changes while animating */
int frames, steps, delay, i, j;
if (style == WIS_NONE)
return;
switch(style) {
case WIS_TWIST:
frames = MINIATURIZE_ANIMATION_FRAMES_T;
steps = MINIATURIZE_ANIMATION_STEPS_T;
delay = MINIATURIZE_ANIMATION_DELAY_T;
twist = MINIATURIZE_ANIMATION_TWIST_T;
break;
case WIS_FLIP:
frames = MINIATURIZE_ANIMATION_FRAMES_F;
steps = MINIATURIZE_ANIMATION_STEPS_F;
delay = MINIATURIZE_ANIMATION_DELAY_F;
twist = MINIATURIZE_ANIMATION_TWIST_F;
break;
case WIS_ZOOM:
default:
frames = MINIATURIZE_ANIMATION_FRAMES_Z;
steps = MINIATURIZE_ANIMATION_STEPS_Z;
delay = MINIATURIZE_ANIMATION_DELAY_Z;
break;
}
steps = (hiding ? (steps*2)/3 : steps);
if (steps == 0)
return;
if (style == WIS_TWIST) {
x += w/2;
y += h/2;
fx += fw/2;
fy += fh/2;
}
xstep = (float)(fx-x)/steps;
ystep = (float)(fy-y)/steps;
wstep = (float)(fw-w)/steps;
hstep = (float)(fh-h)/steps;
for (j=0; j<frames; j++) {
cx[j] = (float)x;
cy[j] = (float)y;
cw[j] = (float)w;
ch[j] = (float)h;
}
if (style==WIS_TWIST || style==WIS_FLIP) {
final_angle = 2*WM_PI*twist;
delta = (float)(final_angle/frames);
for (angle=0;; angle+=delta) {
if (angle > final_angle)
angle = final_angle;
switch (style) {
case WIS_TWIST:
a = atan(ch[0]/cw[0]);
d = sqrt((cw[0]/2)*(cw[0]/2)+(ch[0]/2)*(ch[0]/2));
points[0].x = cx[0]+cos(angle-a)*d;
points[0].y = cy[0]+sin(angle-a)*d;
points[1].x = cx[0]+cos(angle+a)*d;
points[1].y = cy[0]+sin(angle+a)*d;
points[2].x = cx[0]+cos(angle-a+WM_PI)*d;
points[2].y = cy[0]+sin(angle-a+WM_PI)*d;
points[3].x = cx[0]+cos(angle+a+WM_PI)*d;
points[3].y = cy[0]+sin(angle+a+WM_PI)*d;
points[4].x = cx[0]+cos(angle-a)*d;
points[4].y = cy[0]+sin(angle-a)*d;
break;
case WIS_FLIP:
dx = (cw[0]/10) - ((cw[0]/5) * sin(angle));
dch = (ch[0]/2) * cos(angle);
midy = cy[0] + (ch[0]/2);
points[0].x = cx[0] + dx; points[0].y = midy - dch;
points[1].x = cx[0] + cw[0] - dx; points[1].y = points[0].y;
points[2].x = cx[0] + cw[0] + dx; points[2].y = midy + dch;
points[3].x = cx[0] - dx; points[3].y = points[2].y;
points[4].x = points[0].x; points[4].y = points[0].y;
break;
}
XGrabServer(dpy);
XDrawLines(dpy, scr->root_win, scr->frame_gc, points, 5, CoordModeOrigin);
XFlush(dpy);
if (delay>0)
wusleep(delay);
XDrawLines(dpy, scr->root_win, scr->frame_gc, points, 5, CoordModeOrigin);
XUngrabServer(dpy);
cx[0]+=xstep;
cy[0]+=ystep;
cw[0]+=wstep;
ch[0]+=hstep;
if (angle >= final_angle)
break;
}
XFlush(dpy);
} else {
/* Zoom or default */
XGrabServer(dpy);
for (i=0; i<steps; i++) {
for (j=0; j<frames; j++) {
XDrawRectangle(dpy, scr->root_win, scr->frame_gc,
(int)cx[j], (int)cy[j], (int)cw[j], (int)ch[j]);
}
XFlush(dpy);
if (delay>0)
wusleep(delay);
for (j=0; j<frames; j++) {
XDrawRectangle(dpy, scr->root_win, scr->frame_gc,
(int)cx[j], (int)cy[j], (int)cw[j], (int)ch[j]);
if (j<frames-1) {
cx[j]=cx[j+1];
cy[j]=cy[j+1];
cw[j]=cw[j+1];
ch[j]=ch[j+1];
} else {
cx[j]+=xstep;
cy[j]+=ystep;
cw[j]+=wstep;
ch[j]+=hstep;
}
}
}
for (j=0; j<frames; j++) {
XDrawRectangle(dpy, scr->root_win, scr->frame_gc,
(int)cx[j], (int)cy[j], (int)cw[j], (int)ch[j]);
}
XFlush(dpy);
if (delay>0)
wusleep(MINIATURIZE_ANIMATION_DELAY_Z);
for (j=0; j<frames; j++) {
XDrawRectangle(dpy, scr->root_win, scr->frame_gc,
(int)cx[j], (int)cy[j], (int)cw[j], (int)ch[j]);
}
XUngrabServer(dpy);
}
}
#undef FRAMES
#endif /* ANIMATIONS */
static void
flushExpose()
{
@@ -942,12 +783,23 @@ setupIconGrabs(WIcon *icon)
static WWindow*
recursiveTransientFor(WWindow *wwin)
{
int i;
if (!wwin)
return None;
/* TODO: a buggy client can put this in a infinite loop */
while (wwin->transient_for != None)
/* hackish way to detect transient_for cycle */
i = wwin->screen_ptr->window_count+1;
while (wwin && wwin->transient_for != None && i>0) {
wwin = wWindowFor(wwin->transient_for);
i--;
}
if (i==0 && wwin) {
wwarning("%s has a severely broken WM_TRANSIENT_FOR hint.",
wwin->frame->title);
return NULL;
}
return wwin;
}
@@ -1009,6 +861,10 @@ wIconifyWindow(WWindow *wwin)
unmapTransientsFor(wwin);
if (present) {
#ifdef WMSOUND
wSoundPlay(WMSOUND_ICONIFY);
#endif
XUngrabPointer(dpy, CurrentTime);
/* prevent window withdrawal when getting UnmapNotify */
XSelectInput(dpy, wwin->client_win,
@@ -1043,9 +899,10 @@ wIconifyWindow(WWindow *wwin)
#endif
if (present) {
WWindow *owner = recursiveTransientFor(wwin->screen_ptr->focused_window);
setupIconGrabs(wwin->icon);
if ((wwin->flags.focused || wwin->client_win ==
recursiveTransientFor(wwin->screen_ptr->focused_window)->client_win)
if ((wwin->flags.focused
|| (owner && wwin->client_win == owner->client_win))
&& wPreferences.focus_mode==WKF_CLICK) {
WWindow *tmp;
@@ -1061,19 +918,17 @@ wIconifyWindow(WWindow *wwin)
wSetFocusTo(wwin->screen_ptr, NULL);
}
#ifdef WMSOUND
if (present) {
wSoundPlay(WMSOUND_ICONIFY);
}
#endif
#ifdef ANIMATIONS
/*
if (!wwin->screen_ptr->flags.startup) {
Window clientwin = wwin->client_win;
XSync(dpy, 0);
processEvents(XPending(dpy));
/* the window can disappear while doing the processEvents() */
if (!wWindowFor(clientwin))
return;
}
*/
#endif
}
@@ -1112,6 +967,10 @@ wDeiconifyWindow(WWindow *wwin)
XUnmapWindow(dpy, wwin->icon->core->window);
#ifdef WMSOUND
wSoundPlay(WMSOUND_DEICONIFY);
#endif
/* if the window is in another workspace, do it silently */
#ifdef ANIMATIONS
if (!wwin->screen_ptr->flags.startup && !wPreferences.no_animations
@@ -1144,14 +1003,15 @@ wDeiconifyWindow(WWindow *wwin)
|| wPreferences.focus_mode==WKF_SLOPPY)
wSetFocusTo(wwin->screen_ptr, wwin);
#ifdef WMSOUND
wSoundPlay(WMSOUND_DEICONIFY);
#endif
#ifdef ANIMATIONS
if (!wwin->screen_ptr->flags.startup) {
Window clientwin = wwin->client_win;
XSync(dpy, 0);
processEvents(XPending(dpy));
if (!wWindowFor(clientwin))
return;
}
#endif
@@ -1209,6 +1069,9 @@ hideWindow(WIcon *icon, int icon_x, int icon_y, WWindow *wwin, int animate)
XUnmapWindow(dpy, wwin->frame->core->window);
wClientSetState(wwin, IconicState, icon->icon_win);
flushExpose();
#ifdef WMSOUND
wSoundPlay(WMSOUND_HIDE);
#endif
#ifdef ANIMATIONS
if (!wwin->screen_ptr->flags.startup && !wPreferences.no_animations &&
!wwin->flags.skip_next_animation && animate) {
@@ -1221,10 +1084,6 @@ hideWindow(WIcon *icon, int icon_x, int icon_y, WWindow *wwin, int animate)
wwin->flags.skip_next_animation = 0;
UpdateSwitchMenu(wwin->screen_ptr, wwin, ACTION_CHANGE_STATE);
#ifdef WMSOUND
wSoundPlay(WMSOUND_HIDE);
#endif
}
@@ -1269,7 +1128,7 @@ wHideOtherApplications(WWindow *awin)
}
#endif
if (wwin->main_window==None) {
if (wwin->main_window==None || wwin->window_flags.no_appicon) {
if (!wwin->window_flags.no_miniaturizable) {
wwin->flags.skip_next_animation = 1;
wIconifyWindow(wwin);
@@ -1412,14 +1271,13 @@ unhideWindow(WIcon *icon, int icon_x, int icon_y, WWindow *wwin, int animate,
wwin->flags.hidden=0;
wwin->flags.mapped=1;
#ifdef WMSOUND
wSoundPlay(WMSOUND_UNHIDE);
#endif
#ifdef ANIMATIONS
/* something is redundant here. animate passed here is
* !wwin->flags.skip_next_animation, so this flag is tested twice.
* Either we shold not test skip_next_animation here, or don't pass
* animate to this function. -Dan
*/
if (!wwin->screen_ptr->flags.startup && !wPreferences.no_animations &&
!wwin->flags.skip_next_animation && animate) {
if (!wwin->screen_ptr->flags.startup && !wPreferences.no_animations
&& animate) {
animateResize(wwin->screen_ptr, icon_x, icon_y,
icon->core->width, icon->core->height,
wwin->frame_x, wwin->frame_y,
@@ -1443,10 +1301,6 @@ unhideWindow(WIcon *icon, int icon_x, int icon_y, WWindow *wwin, int animate,
}
UpdateSwitchMenu(wwin->screen_ptr, wwin, ACTION_CHANGE_STATE);
#ifdef WMSOUND
wSoundPlay(WMSOUND_UNHIDE);
#endif
}

View File

@@ -153,7 +153,9 @@ wAppIconCreate(WWindow *leader_win)
aicon->prev = NULL;
aicon->next = scr->app_icon_list;
if (scr->app_icon_list) {
#ifdef REDUCE_APPICONS
#ifndef REDUCE_APPICONS
scr->app_icon_list->prev = aicon;
#else
/* If we aren't going to have a match, jump straight to new appicon */
if (leader_win->wm_class == NULL || leader_win->wm_class == NULL)
atmp = NULL;
@@ -185,11 +187,9 @@ wAppIconCreate(WWindow *leader_win)
atmp = atmp->next;
}
if (atmp == NULL) {
#endif
scr->app_icon_list->prev = aicon;
#ifdef REDUCE_APPICONS
}
#endif
#endif /* REDUCE_APPICONS */
}
scr->app_icon_list = aicon;
@@ -658,6 +658,9 @@ appIconMouseDown(WObjDescriptor *desc, XEvent *event)
int clickButton = event->xbutton.button;
Pixmap ghost = None;
if (aicon->editing)
return;
if (IsDoubleClick(scr, event)) {
iconDblClick(desc, event);
return;

View File

@@ -132,36 +132,9 @@ extractIcon(WWindow *wwin)
}
void
wApplicationExtractDirPackIcon(WScreen *scr, char *path,
char *wm_instance, char *wm_class)
static void
saveIconNameFor(char *iconPath, char *wm_instance, char *wm_class)
{
char *iconPath=NULL;
/* Maybe the app is a .app and it has an icon in it, like
* /usr/local/GNUstep/Apps/WPrefs.app/WPrefs.tiff
*/
if (strstr(path, ".app")) {
char *tmp;
tmp = wmalloc(strlen(path)+16);
if (scr->flags.supports_tiff) {
strcpy(tmp, path);
strcat(tmp, ".tiff");
if (access(tmp, R_OK)==0)
iconPath = tmp;
}
if (!path) {
strcpy(tmp, path);
strcat(tmp, ".xpm");
if (access(tmp, R_OK)==0)
iconPath = tmp;
}
if (!iconPath)
free(tmp);
}
if (iconPath) {
proplist_t dict = WDWindowAttributes->dictionary;
proplist_t adict, key, iconk;
proplist_t val;
@@ -209,12 +182,63 @@ wApplicationExtractDirPackIcon(WScreen *scr, char *path,
if (val)
PLSave(dict, YES);
}
void
wApplicationExtractDirPackIcon(WScreen *scr, char *path,
char *wm_instance, char *wm_class)
{
char *iconPath=NULL;
/* Maybe the app is a .app and it has an icon in it, like
* /usr/local/GNUstep/Apps/WPrefs.app/WPrefs.tiff
*/
if (strstr(path, ".app")) {
char *tmp;
tmp = wmalloc(strlen(path)+16);
if (scr->flags.supports_tiff) {
strcpy(tmp, path);
strcat(tmp, ".tiff");
if (access(tmp, R_OK)==0)
iconPath = tmp;
}
if (!path) {
strcpy(tmp, path);
strcat(tmp, ".xpm");
if (access(tmp, R_OK)==0)
iconPath = tmp;
}
if (!iconPath)
free(tmp);
}
if (iconPath) {
saveIconNameFor(iconPath, wm_instance, wm_class);
free(iconPath);
}
}
static Bool
extractClientIcon(WAppIcon *icon)
{
char *path;
path = wIconStore(icon->icon);
if (!path)
return False;
saveIconNameFor(path, icon->wm_instance, icon->wm_class);
free(path);
return True;
}
WApplication*
wApplicationCreate(WScreen *scr, Window main_window)
{
@@ -337,6 +361,9 @@ wApplicationCreate(WScreen *scr, Window main_window)
if (wapp->app_icon && !wapp->app_icon->docked) {
#else
if (wapp->app_icon && !wapp->app_icon->docked && wapp->app_icon->num_apps == 1) {
#ifdef THIS_SUCKS
}
#endif
#endif
WIcon *icon = wapp->app_icon->icon;
WDock *clip = scr->workspaces[scr->current_workspace]->clip;
@@ -348,7 +375,7 @@ wApplicationCreate(WScreen *scr, Window main_window)
wapp->app_icon->icon->shadowed = 1;
wapp->app_icon->icon->force_paint = 1;
/* We don't do an wAppIconPaint() here because it's in
* wDockAttachIcon(). -Dan
* wDockAttachIcon(). -Dan.
*/
}
wDockAttachIcon(clip, wapp->app_icon, x, y);
@@ -367,6 +394,16 @@ wApplicationCreate(WScreen *scr, Window main_window)
wArrangeIcons(scr, True);
}
if (wapp->app_icon) {
char *tmp;
/* if the displayed icon was supplied by the client, save the icon */
tmp = wDefaultGetIconFile(scr, wapp->app_icon->wm_instance,
wapp->app_icon->wm_class, True);
if (!tmp)
extractClientIcon(wapp->app_icon);
}
wapp->prev = NULL;
wapp->next = scr->wapp_list;
if (scr->wapp_list)

Some files were not shown because too many files have changed in this diff Show More