wmail: Add version 2.0 to repository.
From http://http.debian.net/debian/pool/main/w/wmail/wmail_2.0.orig.tar.gz
This commit is contained in:
parent
54714024ef
commit
409aca138d
24
wmail/COPYING
Normal file
24
wmail/COPYING
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
Copyright 2000~2002, Sven Geisenhainer <sveng@informatik.uni-jena.de>.
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions
|
||||||
|
are met:
|
||||||
|
1. Redistributions of source code must retain the above copyright
|
||||||
|
notice, this list of conditions, and the following disclaimer.
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
notice, this list of conditions, and the following disclaimer in the
|
||||||
|
documentation and/or other materials provided with the distribution.
|
||||||
|
3. The name of the author may not be used to endorse or promote products
|
||||||
|
derived from this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||||
|
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||||
|
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
|
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
34
wmail/Makefile.in
Normal file
34
wmail/Makefile.in
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
# process this file with configure to create a Makefile from it
|
||||||
|
#
|
||||||
|
# Makefile for wmail.
|
||||||
|
# Toplevel Makefile.
|
||||||
|
# Usage: make ..........: creates the wmail binary.
|
||||||
|
# make install ..: installs the binary under your default user binary
|
||||||
|
# directory and the rc-file in your home, respectively.
|
||||||
|
# make uninstall : removes any installed wmail files.
|
||||||
|
# make clean ....: cleans the src directory.
|
||||||
|
|
||||||
|
@SET_MAKE@
|
||||||
|
|
||||||
|
default all target: wmail
|
||||||
|
|
||||||
|
wmail:
|
||||||
|
@cd src; $(MAKE) -f Makefile wmail
|
||||||
|
|
||||||
|
install:
|
||||||
|
@if ! test -f src/wmail; then $(MAKE) wmail; fi
|
||||||
|
@echo "Installing the binary under @bindir@."
|
||||||
|
@cp -f src/wmail @bindir@
|
||||||
|
@echo "Copying .wmailrc to your home directory - you may have a look into"
|
||||||
|
@echo "this file and change it appropriately to suit your personal needs."
|
||||||
|
@cp -f wmailrc-sample $(HOME)/.wmailrc
|
||||||
|
|
||||||
|
uninstall:
|
||||||
|
@echo "Removing wmail files from your system."
|
||||||
|
@rm -f @bindir@/wmail
|
||||||
|
@rm -f $(HOME)/.wmailrc
|
||||||
|
@rm -f $(HOME)/.wmail-cksums
|
||||||
|
|
||||||
|
clean:
|
||||||
|
@echo "Cleaning src directory."
|
||||||
|
@cd src; $(MAKE) -f Makefile clean
|
358
wmail/README
Normal file
358
wmail/README
Normal file
|
@ -0,0 +1,358 @@
|
||||||
|
Name : wmail
|
||||||
|
Description : a enhanced Window Maker email flagging docklet
|
||||||
|
Current version : 2.0
|
||||||
|
Last updated : SEP 30 2002
|
||||||
|
Licence : see file COPYING for licencing details
|
||||||
|
Web/Home : www.informatik.uni-jena.de/~topical/sveng/wmail.html
|
||||||
|
Author : (c) 2000~2002 Sven Geisenhainer
|
||||||
|
Contact : sveng@informatik.uni-jena.de
|
||||||
|
|
||||||
|
Change Log:
|
||||||
|
|
||||||
|
v 2.0
|
||||||
|
- Autoconf based package configuration support added.
|
||||||
|
- Support for real X11 fonts when drawing the ticker.
|
||||||
|
Use the new option "-fn X11_FONT_NAME" or ~/.wmailrc-file statement
|
||||||
|
"Ticker.X11Font = X11_FONT_NAME" to enable it. If you wish to see latin1
|
||||||
|
characters not covered by the buildin font you MUST make use of this.
|
||||||
|
- Removed support of two buildin fonts (one seems enough when native
|
||||||
|
X11 font rendering is supported...) -> cmdline option "-bf" and
|
||||||
|
rcfile statement "Ticker.BoldFont" are no longer available
|
||||||
|
- added a window name when called with the -w option (libdockapp windowing
|
||||||
|
mode), this workarounds a dockapp library bug and makes wmail work docked
|
||||||
|
in Gnomes panel bar
|
||||||
|
- Fixed some reconfiguration memleaks
|
||||||
|
- Fixed button-keeps-up-when-pressed-and-empty-inbox bug
|
||||||
|
- Fixed Maildir file-parsing bug
|
||||||
|
- Fixed wmail-crash on dual-headed displays (Thanx to Michael Hocke!)
|
||||||
|
- Changed upper M@il symbol a bit ;-)
|
||||||
|
|
||||||
|
v 1.9
|
||||||
|
- Comment support added (by Juergen A. Erhard - thank you!)
|
||||||
|
- Status field content recognition enhanced: now you can supply the
|
||||||
|
content of the status field that markes you email as read. This is due
|
||||||
|
to different behaviour of different mbox readers - pine seems using "ro"
|
||||||
|
to mark a mail as read. The given value is substring-matched.
|
||||||
|
|
||||||
|
v 1.8
|
||||||
|
- Support for qmails Maildir format added: if you specify a directory
|
||||||
|
as your inbox then wmail assumes 'Maildir' functionality,
|
||||||
|
searches for the subdirectories "new" and "cur" and interprets all
|
||||||
|
files found directly under these directories as text-files containing
|
||||||
|
one single email message. When in Maildir-mode, checksums and the
|
||||||
|
file ~/.wmail-cksums are not used.
|
||||||
|
- Combining of equal sender-names before tickering them is not done
|
||||||
|
anymore - this hasn't worked if for example wmail shows only unread
|
||||||
|
emails and there are two emails from the same sender and one of them
|
||||||
|
is read, the other isn't.
|
||||||
|
|
||||||
|
v 1.72
|
||||||
|
- Now redrawing is done only if there are some changes to be drawn
|
||||||
|
(previous versions had redrawn the screen fps-times per sec. even if
|
||||||
|
the inbox was empty...)
|
||||||
|
|
||||||
|
v 1.71
|
||||||
|
- File parsing bug fixed: searching for "From"-directive is now
|
||||||
|
case-sensitive.
|
||||||
|
|
||||||
|
v 1.7
|
||||||
|
- Support for mail-header-field "Status" added: if this field
|
||||||
|
is set to "RO" the mail is assumed to be read. Turn this feature on
|
||||||
|
either by adding "Mail.UseStatusField = Yes" to your ~/.wmailrc-file
|
||||||
|
or using the new cmd-line option "-sf"
|
||||||
|
|
||||||
|
v 1.61
|
||||||
|
- Minor changes: signal-handling stuff reimplemented
|
||||||
|
- Included another set of xpms (thanx to delt!); to use it,
|
||||||
|
change the #includes in wmail.c to point to the xpm_delt dir
|
||||||
|
|
||||||
|
v 1.6
|
||||||
|
- Sender-skipping added: use this by adding some
|
||||||
|
"Mail.SkipSender = XYZ" to your ~/.wmailrc file. Note that you can
|
||||||
|
use the known wildcards here (i.e. "Mail.SkipSender = *Foo*" matches
|
||||||
|
all names containing "Foo")
|
||||||
|
- Support for execution of a custom command when receiving a new mail
|
||||||
|
added: either use the new option "-e" or a
|
||||||
|
"Mail.OnNew.Command = some-cmd" in the rc-file (for example this
|
||||||
|
makes it possible to play some sound file using the command
|
||||||
|
"/usr/bin/play some-sound.wav")
|
||||||
|
|
||||||
|
v 1.5
|
||||||
|
- Config-file support (~/.wmailrc), re-configuration of most options
|
||||||
|
during run-time is possible - a click on the docklets main-area
|
||||||
|
forces wmail to read its config-file. Note that this can also be
|
||||||
|
used to do a mailbox update...
|
||||||
|
- Bolder tickerfont added -> new option "-bf"
|
||||||
|
- Polling bug fixed (wmail has queried for new mail fps-times per
|
||||||
|
second...)
|
||||||
|
- Mailbox made configurable via cmdline -> new cmd-option "-mb"
|
||||||
|
- Color of inactive (off-switched) symbols made customizable -> new
|
||||||
|
cmd-option "-oc"
|
||||||
|
|
||||||
|
v 1.41
|
||||||
|
- Minor fixes, debugging-aid macro TRACE made more portable
|
||||||
|
|
||||||
|
v 1.4
|
||||||
|
- Made mails identifiable by a checksum to (hopefully) fix some
|
||||||
|
wrong behaviour of the recent-mails-only feature introduced with
|
||||||
|
v1.3 - this is also used to make wmail able to keep the current state
|
||||||
|
in mind, even after a restart. These checksums are written to the
|
||||||
|
file ".wmail-cksums" in the users home directory
|
||||||
|
|
||||||
|
v 1.3
|
||||||
|
- wmail is now able to show only recent mails in ticker and counter
|
||||||
|
(such ones you don't have read/opened yet since startup of wmail)
|
||||||
|
this is quite nice if you use your mail-file as an inbox storing
|
||||||
|
loads of mails there -> new cmd-option "-n"
|
||||||
|
- Solaris port got working (signal-handler bug fixed)
|
||||||
|
- Image of run-client-button changed
|
||||||
|
|
||||||
|
v 1.2
|
||||||
|
- Message counter now displays up to 3 digits
|
||||||
|
- Made ticker scroll-refresh customizable (30 fps by default)
|
||||||
|
-> new cmd-option "-fps"
|
||||||
|
|
||||||
|
v 1.1
|
||||||
|
- Parsing of from-header fixed/improved
|
||||||
|
- Added windowed mode support (only works with libdockapp v >0.4.0) and
|
||||||
|
support for a non-shaped window -> new cmd-options "-w" and "-ns"
|
||||||
|
- Made background color customizable (useful in windowed mode)
|
||||||
|
-> new cmd-option "-bg"
|
||||||
|
- Ticker either fullname, short-address-name or total-address
|
||||||
|
-> new cmd-option "-s"
|
||||||
|
- Changed pixmaps a bit
|
||||||
|
|
||||||
|
v 1.0
|
||||||
|
- Initial release
|
||||||
|
|
||||||
|
Description:
|
||||||
|
|
||||||
|
This is wmail - a nifty Window Maker docklet watching your inbox, which is
|
||||||
|
either a ordinary mbox or a directory conforming to qmails Maildir format.
|
||||||
|
It provides a nice little GUI displaying some useful pieces of information
|
||||||
|
about your inbox (as many other nice wm-apps doing nearly the same thing...).
|
||||||
|
Per default it uses the $MAIL environment-variable to locate the inbox you
|
||||||
|
are using, other mailing mechanisms like POP or IMAP are not supported - use
|
||||||
|
a tool like fetchmail to retrieve POP- or IMAP-based mail.
|
||||||
|
|
||||||
|
It displays the following:
|
||||||
|
|
||||||
|
- a mail-icon in the upper-left if your inbox contains some mails
|
||||||
|
- a frequently flashing "M@iL" in the upper-right if there are unread mails
|
||||||
|
- a ticker displaying either complete mail-address, it's name-part or the
|
||||||
|
full sender's name (without the "-n" option each sender found in the inbox
|
||||||
|
is tickered, else only the unread ones)
|
||||||
|
- the number of new and read emails found (or the number of unread messages
|
||||||
|
if invoked with the "-n" option)
|
||||||
|
|
||||||
|
In addition, the lower-right button allowes you to quickly launch your
|
||||||
|
preferred email user agent (xterm -e mail, mutt, pine, etc.)
|
||||||
|
|
||||||
|
wmail is highly customizable, both command-line and configuration-file support
|
||||||
|
is provided. The following list describes all customizable items,
|
||||||
|
their associated cmd-line options, config-file statements and default values:
|
||||||
|
|
||||||
|
item : X11 display
|
||||||
|
cmd-line option : -display <string>
|
||||||
|
rc-file statement: Window.Display = "<string>"
|
||||||
|
default value : <unset>
|
||||||
|
|
||||||
|
item : toggle nonshaped mode
|
||||||
|
cmd-line option : -ns
|
||||||
|
rc-file statement: Window.NonShaped = Yes|No
|
||||||
|
default value : No
|
||||||
|
|
||||||
|
item : button command to execute
|
||||||
|
cmd-line option : -c <string>
|
||||||
|
rc-file statement: Window.Button.Command = "<string>"
|
||||||
|
default value : "xterm -e mail"
|
||||||
|
|
||||||
|
item : your mailbox (file => mbox, directory => Maildir)
|
||||||
|
cmd-line option : -mb <string>
|
||||||
|
rc-file statement: Mail.MailBox = "<string>"
|
||||||
|
default value : <unset, $MAIL is used>
|
||||||
|
|
||||||
|
item : file to store the checksums used to identify mbox mails
|
||||||
|
cmd-line option : <no option>
|
||||||
|
rc-file statement: Mail.ChecksumFile = "<string>"
|
||||||
|
default value : "~/.wmail-cksums"
|
||||||
|
|
||||||
|
item : ticker (and count) only unread mails
|
||||||
|
cmd-line option : -n
|
||||||
|
rc-file statement: Mail.ShowOnlyNew = Yes|No
|
||||||
|
default value : No
|
||||||
|
|
||||||
|
item : mail check intervall (sec)
|
||||||
|
cmd-line option : -i <num>
|
||||||
|
rc-file statement: Mail.CheckIntervall = <num>
|
||||||
|
default value : 1
|
||||||
|
|
||||||
|
item : consider status-field (not used when in maildir mode)
|
||||||
|
cmd-line option : -sf
|
||||||
|
rc-file statement: Mail.UseStatusField = Yes|No
|
||||||
|
default value : No
|
||||||
|
|
||||||
|
item : custom status field content used for read mails
|
||||||
|
cmd-line option : -rs
|
||||||
|
rc-file statement: Mail.ReadStatus = "<string>"
|
||||||
|
default value : "O"
|
||||||
|
|
||||||
|
item : show nick names in the ticker (all before the @)
|
||||||
|
cmd-line option : -s
|
||||||
|
rc-file statement: Ticker.Mode = NickName
|
||||||
|
default value : Address
|
||||||
|
|
||||||
|
item : show family names in the ticker (if available)
|
||||||
|
cmd-line option : -f
|
||||||
|
rc-file statement: Ticker.Mode = FamilyName
|
||||||
|
default value : Address
|
||||||
|
|
||||||
|
item : how many ticker frames per sec
|
||||||
|
cmd-line option : -fps <num>
|
||||||
|
rc-file statement: Ticker.Frames = <num>
|
||||||
|
default value : 30
|
||||||
|
|
||||||
|
item : use a real X11 font when drawing the ticker
|
||||||
|
cmd-line option : -fn <string>
|
||||||
|
rc-file statement: Ticker.X11Font = "<string>"
|
||||||
|
default value : <unset, a buildin font is used>
|
||||||
|
|
||||||
|
item : command to execute when new mail has arrived
|
||||||
|
cmd-line option : -e <string>
|
||||||
|
rc-file statement: Mail.OnNew.Command = "<string>"
|
||||||
|
default value : <unset>
|
||||||
|
|
||||||
|
item : sender-names to skip (don't ticker and count them)
|
||||||
|
cmd-line option : <no option>
|
||||||
|
rc-file statement: Mail.SkipSender = "<string>"
|
||||||
|
default value : <unset>
|
||||||
|
|
||||||
|
item : color for upper symbols (envelope and MAiL)
|
||||||
|
cmd-line option : -sc <string>
|
||||||
|
rc-file statement: Colors.Symbols = "<string>"
|
||||||
|
default value : "#20B2AA"
|
||||||
|
|
||||||
|
item : ticker font color
|
||||||
|
cmd-line option : -fc <string>
|
||||||
|
rc-file statement: Colors.Font = "<string>"
|
||||||
|
default value : "#D3D3D3"
|
||||||
|
|
||||||
|
item : backlight color (dockapp background)
|
||||||
|
cmd-line option : -bc <string>
|
||||||
|
rc-file statement: Colors.Backlight = "<string>"
|
||||||
|
default value : "#282828"
|
||||||
|
|
||||||
|
item : color of inactive symbols
|
||||||
|
cmd-line option : -oc <string>
|
||||||
|
rc-file statement: Colors.OffLight = "<string>"
|
||||||
|
default value : "#282828"
|
||||||
|
|
||||||
|
item : outer frame color (used in nonshaped window mode)
|
||||||
|
cmd-line option : -bg <color>
|
||||||
|
rc-file statement: Colors.NonShapedFrame = "<string>"
|
||||||
|
default value : <unset, this color is translucent>
|
||||||
|
|
||||||
|
libdockapp provides the following additional cmd-line options:
|
||||||
|
|
||||||
|
windowed-mode : -w
|
||||||
|
|
||||||
|
show help and exit : -h
|
||||||
|
|
||||||
|
show version and exit: -v
|
||||||
|
|
||||||
|
Known bugs:
|
||||||
|
|
||||||
|
- Solaris: sometimes wmail gets terminated by Xlib displaying the message:
|
||||||
|
XIO: fatal IO error 0 (Error 0) on X server ":0.0"
|
||||||
|
after XXX requests (YYY known processed) with 0 events remaining.
|
||||||
|
I do not have any ideas on how to fix this ... :-( --> PLEASE HELP!!!
|
||||||
|
- "From" header field folding (see RFC822) is not supported
|
||||||
|
- Reconfiguration during run-time results in a complete state-lost -> all
|
||||||
|
email in your mbox is assumed to be unread again
|
||||||
|
|
||||||
|
Please keep in mind this code is free and comes with absolutly no warranty
|
||||||
|
(see file COPYING included in the package) - but if you think something goes
|
||||||
|
wrong, please let me know!
|
||||||
|
|
||||||
|
What is still missing (and when it will be done :)
|
||||||
|
|
||||||
|
- Pop3/Imap support (never - use fetchmail)
|
||||||
|
- Character encoding in ticker - at least latin1 (currently in progress)
|
||||||
|
- Multiple mailslots (never)
|
||||||
|
- Displaying/tickering of other email header fields (hmm, i don't know...)
|
||||||
|
- Your needs/ideas...?
|
||||||
|
|
||||||
|
Requirements:
|
||||||
|
|
||||||
|
This application needs a running X window system and libdockapp v0.2 or newer
|
||||||
|
(0.4.0 required for windowed-mode), that for itself has some requirements
|
||||||
|
(Xpm support for example). libdockapp comes with Window Maker - if not sure,
|
||||||
|
see what the configure-script says when running it.
|
||||||
|
|
||||||
|
Compile:
|
||||||
|
|
||||||
|
Simply follow these steps:
|
||||||
|
1. Call "./configure", try "./configure --help" for a list of options.
|
||||||
|
2. Call "make" to build the binary (or gmake if make is't GNU make compliant)
|
||||||
|
|
||||||
|
If compiling does not succeed due to missed header files or libraries
|
||||||
|
you have to make use of configures `--includedir=DIR' and/or `--libdir=DIR'
|
||||||
|
cmdline options in order to specify paths to those files.
|
||||||
|
|
||||||
|
Porting:
|
||||||
|
|
||||||
|
This code (without using the new Maildir code and autoconf package setup)
|
||||||
|
is known to work under:
|
||||||
|
- Linux >=2.4.10 on x86
|
||||||
|
- Osf 3.2 on Dec/Alpha
|
||||||
|
- Sun Solaris 4.0 on Sparc Station 4 and 10
|
||||||
|
- Sun Solaris 6, 7 and 8 (thanx to Kristian Borum!)
|
||||||
|
- SunOs 5.7 on Ultra Sparc 5 (thanx to Alessandro!)
|
||||||
|
|
||||||
|
...together with Window Maker v0.60.0 or better (or standalone of course) and
|
||||||
|
libdockapp v0.4.0.
|
||||||
|
|
||||||
|
Please let me know if you have ported this to a platform not listed
|
||||||
|
above to mention it (and your name of cource ;). Some users had
|
||||||
|
trouble porting wmail to Solaris because the original timer signal handling
|
||||||
|
has not worked properly. This was caused by different semantics of libc's
|
||||||
|
signal function and should got fixed since releases >= v1.3.
|
||||||
|
|
||||||
|
Install:
|
||||||
|
|
||||||
|
Call "make install" or copy the binary found in the src subdirectory by hand.
|
||||||
|
Make based installation also copies the provided sample rc-file to ~/.wmailrc
|
||||||
|
but wmail even runs without it.
|
||||||
|
|
||||||
|
Keep in mind, libdockapp must be installed properly (i.e. let reside it in
|
||||||
|
your X11 base library directory or let $LD_LIBRARY_PATH point to the lib).
|
||||||
|
If you would like to use rc-based configuration, look into the provided
|
||||||
|
sample-file "wmailrc-sample" and use it as a base for your particular needs
|
||||||
|
by copying it to ~/.wmailrc (make install has done this automatically).
|
||||||
|
Note: the name of this rc-file is hard-wired and cannot be customized.
|
||||||
|
|
||||||
|
Run:
|
||||||
|
|
||||||
|
Try wmail -h to see a list of all available options.
|
||||||
|
|
||||||
|
Web/Home:
|
||||||
|
|
||||||
|
www.informatik.uni-jena.de/~topical/sveng/wmail.html
|
||||||
|
|
||||||
|
Author and maintainer:
|
||||||
|
|
||||||
|
Sven Geisenhainer <sveng@informatik.uni-jena.de>
|
||||||
|
|
||||||
|
There is also a Debian package available under "http://jerhard.org/files/"
|
||||||
|
maintained by Juergen A. Erhard <juergen.erhard@gmx.net> - Thank you, Juergen!
|
||||||
|
|
||||||
|
Final words:
|
||||||
|
|
||||||
|
Thanx to Thomas Kurschel for his suggestions and coding assistance.
|
||||||
|
Thanx to Juergen A. Erhard for his codings and Debian packaging efforts.
|
||||||
|
Thanx to many users on the web for their ideas, test- and bug reports.
|
||||||
|
|
||||||
|
And many great thanx to all the GNUstep and Window Maker people who've
|
||||||
|
provided us with such a great user environment!
|
||||||
|
|
||||||
|
Hope you will ENJOY!
|
2721
wmail/configure
vendored
Executable file
2721
wmail/configure
vendored
Executable file
File diff suppressed because it is too large
Load diff
66
wmail/configure.in
Normal file
66
wmail/configure.in
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
|
AC_INIT(src/wmail.c)
|
||||||
|
|
||||||
|
dnl Checks for programs.
|
||||||
|
AC_PROG_CC
|
||||||
|
AC_PROG_MAKE_SET
|
||||||
|
|
||||||
|
dnl Checks for header files.
|
||||||
|
#AC_PATH_X
|
||||||
|
AC_HEADER_DIRENT
|
||||||
|
AC_HEADER_STDC
|
||||||
|
AC_CHECK_HEADERS(limits.h sys/time.h)
|
||||||
|
|
||||||
|
dnl Checks for X installation root directory.
|
||||||
|
AC_PATH_XTRA
|
||||||
|
X_LIBRARY_PATH="$x_libraries"
|
||||||
|
XLIBS="-lX11 $X_EXTRA_LIBS"
|
||||||
|
XCFLAGS="$X_CFLAGS"
|
||||||
|
XLFLAGS="$X_LIBS"
|
||||||
|
|
||||||
|
if test -n "$includedir"; then
|
||||||
|
XCFLAGS="$XCFLAGS -I$includedir"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test -n "$libdir"; then
|
||||||
|
XLIBS="$XLIBS -L$libdir"
|
||||||
|
fi
|
||||||
|
|
||||||
|
CPPFLAGS_old="$CPPFLAGS"
|
||||||
|
CPPFLAGS="$CPPFLAGS $XCFLAGS"
|
||||||
|
AC_CHECK_HEADER(dockapp.h,,)
|
||||||
|
CPPFLAGS="$CPPFLAGS_old"
|
||||||
|
|
||||||
|
AC_SUBST(XCFLAGS)
|
||||||
|
AC_SUBST(XLFLAGS)
|
||||||
|
AC_SUBST(XLIBS)
|
||||||
|
AC_SUBST(X_LIBRARY_PATH)
|
||||||
|
|
||||||
|
dnl Checks for typedefs, structures, and compiler characteristics.
|
||||||
|
AC_C_CONST
|
||||||
|
|
||||||
|
dnl Checks for library functions.
|
||||||
|
AC_FUNC_FNMATCH
|
||||||
|
AC_FUNC_UTIME_NULL
|
||||||
|
AC_FUNC_VPRINTF
|
||||||
|
AC_CHECK_FUNCS(strdup strstr memcpy)
|
||||||
|
|
||||||
|
dnl Checks for libraries.
|
||||||
|
AC_CHECK_LIB(X11, XCreateGC,,,$XLFLAGS $XLIBS)
|
||||||
|
AC_CHECK_LIB(dockapp, DAInitialize,,,$XLFLAGS $XLIBS)
|
||||||
|
|
||||||
|
dnl Enable Debugging?
|
||||||
|
AC_ARG_ENABLE(debug,
|
||||||
|
[ --enable-debug enable debugging ],, enable_debug=no)
|
||||||
|
if test "$enable_debug" = yes; then
|
||||||
|
CFLAGS="-Wall -g -DDEBUG"
|
||||||
|
fi
|
||||||
|
|
||||||
|
dnl Use delt's pixmaps instead of the default ones?
|
||||||
|
AC_ARG_ENABLE(delt_xpms,
|
||||||
|
[ --enable-delt-xpms enable delt's pixmaps ],, enable_delt_xpms=no)
|
||||||
|
if test "$enable_delt_xpms" = yes; then
|
||||||
|
CFLAGS="$CFLAGS -DUSE_DELT_XPMS"
|
||||||
|
fi
|
||||||
|
|
||||||
|
AC_OUTPUT(Makefile src/Makefile)
|
25
wmail/src/Makefile.in
Normal file
25
wmail/src/Makefile.in
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
# process this file with configure to create a Makefile from it
|
||||||
|
#
|
||||||
|
# Makefile for wmail.
|
||||||
|
# Makes the wmail dockapp binary and cleans the directory, respectively.
|
||||||
|
|
||||||
|
LIBS = @LIBS@ @XLFLAGS@ @XLIBS@
|
||||||
|
CC = @CC@
|
||||||
|
CFLAGS = @CFLAGS@ @XCFLAGS@
|
||||||
|
|
||||||
|
default all target: wmail
|
||||||
|
|
||||||
|
wmail: wmail.o common.o config.o
|
||||||
|
$(CC) $(CFLAGS) $(LIBS) -o $@ $^
|
||||||
|
|
||||||
|
wmail.o: wmail.c common.h config.h xpm/main.xpm xpm/symbols.xpm xpm/numbers.xpm xpm/button.xpm xpm/chars.xpm
|
||||||
|
$(CC) $(CFLAGS) -o $@ -c $<
|
||||||
|
|
||||||
|
common.o: common.c common.h
|
||||||
|
$(CC) $(CFLAGS) -o $@ -c $<
|
||||||
|
|
||||||
|
config.o: config.c config.h common.h
|
||||||
|
$(CC) $(CFLAGS) -o $@ -c $<
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f wmail core *.o *~
|
88
wmail/src/common.c
Normal file
88
wmail/src/common.c
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// common.c
|
||||||
|
// common defines and typedefs, part of wmail
|
||||||
|
//
|
||||||
|
// Copyright 2000~2002, Sven Geisenhainer <sveng@informatik.uni-jena.de>.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions, and the following disclaimer.
|
||||||
|
// 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
// notice, this list of conditions, and the following disclaimer in the
|
||||||
|
// documentation and/or other materials provided with the distribution.
|
||||||
|
// 3. The name of the author may not be used to endorse or promote products
|
||||||
|
// derived from this software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||||
|
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||||
|
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
|
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdarg.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include "common.h"
|
||||||
|
|
||||||
|
|
||||||
|
#if defined(DEBUG) || defined(DEBUG2) || defined(_DEBUG)
|
||||||
|
void TRACE( const char *fmt, ... )
|
||||||
|
{
|
||||||
|
va_list args;
|
||||||
|
va_start( args, fmt );
|
||||||
|
vfprintf( stderr, fmt, args );
|
||||||
|
fflush( stderr );
|
||||||
|
va_end( args );
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void ABORT( const char *fmt, ... )
|
||||||
|
{
|
||||||
|
va_list args;
|
||||||
|
va_start( args, fmt );
|
||||||
|
fprintf( stderr, "wmail error: " );
|
||||||
|
vfprintf( stderr, fmt, args );
|
||||||
|
fflush( stderr );
|
||||||
|
va_end( args );
|
||||||
|
|
||||||
|
exit( 1 );
|
||||||
|
}
|
||||||
|
|
||||||
|
void WARNING( const char *fmt, ... )
|
||||||
|
{
|
||||||
|
va_list args;
|
||||||
|
va_start( args, fmt );
|
||||||
|
fprintf( stderr, "wmail warning: " );
|
||||||
|
vfprintf( stderr, fmt, args );
|
||||||
|
fflush( stderr );
|
||||||
|
va_end( args );
|
||||||
|
}
|
||||||
|
|
||||||
|
char *MakePathName( const char *dir, const char *file )
|
||||||
|
{
|
||||||
|
char *fullName;
|
||||||
|
int len1 = strlen( dir );
|
||||||
|
int len2 = strlen( file );
|
||||||
|
|
||||||
|
if( dir[len1-1] != '/' )
|
||||||
|
fullName = malloc( len1 + len2 + 2 );
|
||||||
|
else
|
||||||
|
fullName = malloc( len1 + len2 + 1 );
|
||||||
|
|
||||||
|
memcpy( fullName, dir, len1 );
|
||||||
|
if( dir[len1-1] != '/' )
|
||||||
|
fullName[len1++] = '/';
|
||||||
|
memcpy( fullName + len1, file, len2 + 1 );
|
||||||
|
|
||||||
|
return fullName;
|
||||||
|
}
|
93
wmail/src/common.h
Normal file
93
wmail/src/common.h
Normal file
|
@ -0,0 +1,93 @@
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// common.h
|
||||||
|
// common defines and typedefs, part of wmail
|
||||||
|
//
|
||||||
|
// Copyright 2000~2002, Sven Geisenhainer <sveng@informatik.uni-jena.de>.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions, and the following disclaimer.
|
||||||
|
// 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
// notice, this list of conditions, and the following disclaimer in the
|
||||||
|
// documentation and/or other materials provided with the distribution.
|
||||||
|
// 3. The name of the author may not be used to endorse or promote products
|
||||||
|
// derived from this software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||||
|
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||||
|
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
|
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _COMMON_H_fdda99de15ce3f21ce7faf607a5b4985_
|
||||||
|
#define _COMMON_H_fdda99de15ce3f21ce7faf607a5b4985_
|
||||||
|
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// defines
|
||||||
|
|
||||||
|
// X display to open
|
||||||
|
#define WMAIL_DISPLAY ""
|
||||||
|
|
||||||
|
// ticker scroll frame rate per seconds
|
||||||
|
#define WMAIL_FPS 60
|
||||||
|
|
||||||
|
// default mail check interval in seconds
|
||||||
|
#define WMAIL_CHECK_INTERVAL 1
|
||||||
|
|
||||||
|
// default client-button command
|
||||||
|
#define WMAIL_CLIENT_CMD "xterm -e mail"
|
||||||
|
|
||||||
|
// filename of the checksum-file
|
||||||
|
#define WMAIL_CHECKSUM_FILE ".wmail-cksums"
|
||||||
|
|
||||||
|
// filename of the config-file
|
||||||
|
#define WMAIL_RC_FILE ".wmailrc"
|
||||||
|
|
||||||
|
#define WMAIL_NAME "wmail"
|
||||||
|
#define WMAIL_VERSION "wmail v2.0 (C) 2000~2002 Sven Geisenhainer <sveng@informatik.uni-jena.de>"
|
||||||
|
|
||||||
|
#define WMAIL_READSTATUS "O"
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// typedefs
|
||||||
|
|
||||||
|
#if !defined(__cplusplus) && !defined(c_plusplus)
|
||||||
|
typedef enum {
|
||||||
|
false = 0,
|
||||||
|
true = 1
|
||||||
|
} bool;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// prototypes
|
||||||
|
|
||||||
|
void ABORT( const char *fmt, ... );
|
||||||
|
void WARNING( const char *fmt, ... );
|
||||||
|
char *MakePathName( const char *dir, const char *file );
|
||||||
|
|
||||||
|
#if defined(DEBUG) || defined(DEBUG2) || defined(_DEBUG)
|
||||||
|
|
||||||
|
void TRACE( const char *fmt, ... );
|
||||||
|
#define ASSERT( EXPR ) ((void)(EXPR ? 0 : ABORT( "%s(%i): Assertion failed: \"%s\"\n", __FILE__, __LINE__, #EXPR )))
|
||||||
|
#define VERIFY( EXPR ) ASSERT( EXPR )
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#define TRACE 0 && // hopefully rejected by the optimizing compiler (as gcc does...)
|
||||||
|
#define ASSERT(EXPR) ((void)0)
|
||||||
|
#define VERIFY(EXPR) (EXPR)
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
502
wmail/src/config.c
Normal file
502
wmail/src/config.c
Normal file
|
@ -0,0 +1,502 @@
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// config.c
|
||||||
|
// configuration file parser, part of wmail
|
||||||
|
//
|
||||||
|
// Copyright 2000~2002, Sven Geisenhainer <sveng@informatik.uni-jena.de>.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions, and the following disclaimer.
|
||||||
|
// 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
// notice, this list of conditions, and the following disclaimer in the
|
||||||
|
// documentation and/or other materials provided with the distribution.
|
||||||
|
// 3. The name of the author may not be used to endorse or promote products
|
||||||
|
// derived from this software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||||
|
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||||
|
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
|
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <limits.h>
|
||||||
|
#include "common.h"
|
||||||
|
#include "config.h"
|
||||||
|
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// wmailrc file format
|
||||||
|
//
|
||||||
|
// # - comment-lines
|
||||||
|
// Window.Display = "string"
|
||||||
|
// Window.NonShaped = On|Off
|
||||||
|
// Window.Button.Command = "string"
|
||||||
|
// Mail.MailBox = "string"
|
||||||
|
// Mail.ChecksumFile = "string"
|
||||||
|
// Mail.CheckIntervall = number
|
||||||
|
// Mail.ShowOnlyNew = On|Off
|
||||||
|
// Mail.SkipSender = "string"
|
||||||
|
// Mail.OnNew.Command = "string"
|
||||||
|
// Mail.UseStatusField = On|Off
|
||||||
|
// Ticker.Mode = Address|NickName|FamilyName
|
||||||
|
// Ticker.Frames = number
|
||||||
|
// Ticker.BoldFont = On|Off
|
||||||
|
// Ticker.X11Font = "string"
|
||||||
|
// Colors.Symbols = "string"
|
||||||
|
// Colors.Font = "string"
|
||||||
|
// Colors.Backlight = "string"
|
||||||
|
// Colors.OffLight = "string"
|
||||||
|
// Colors.NonShapedFrame = "string"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// typedefs
|
||||||
|
|
||||||
|
|
||||||
|
// list of enum-identifiers and their associated values
|
||||||
|
typedef struct { char *id; int value; } enumList_t;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// local prototypes
|
||||||
|
|
||||||
|
|
||||||
|
bool ReadString( const char *from, unsigned int line, char **to );
|
||||||
|
bool ReadEnum( const char *from, unsigned int line, int *to, const enumList_t *enumList );
|
||||||
|
bool ReadBool( const char *from, unsigned int line, bool *to );
|
||||||
|
bool ReadInt( const char *from, unsigned int line, int *to );
|
||||||
|
bool IsWhiteSpace( const char *chr );
|
||||||
|
const char *SkipWhiteSpaces( const char *str );
|
||||||
|
|
||||||
|
// current configuration
|
||||||
|
config_t config = {
|
||||||
|
NULL,
|
||||||
|
NULL, // use $MAIL environment-variable
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
WMAIL_CHECK_INTERVAL,
|
||||||
|
WMAIL_FPS,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
TICKER_ADDRESS,
|
||||||
|
NULL,
|
||||||
|
NULL,
|
||||||
|
false,
|
||||||
|
NULL,
|
||||||
|
0,
|
||||||
|
0
|
||||||
|
};
|
||||||
|
|
||||||
|
// enumeration names for ticker mode
|
||||||
|
enumList_t tickerEnum[] =
|
||||||
|
{
|
||||||
|
{ "address", TICKER_ADDRESS },
|
||||||
|
{ "familyname", TICKER_FAMILYNAME },
|
||||||
|
{ "nickname", TICKER_NICKNAME },
|
||||||
|
{ NULL, 0 }
|
||||||
|
};
|
||||||
|
|
||||||
|
bool Tokenize( const char *line, const char **id, const char **value )
|
||||||
|
{
|
||||||
|
int len;
|
||||||
|
const char *token1, *token2;
|
||||||
|
|
||||||
|
if( line != NULL )
|
||||||
|
{
|
||||||
|
token1 = SkipWhiteSpaces( line );
|
||||||
|
|
||||||
|
if(( len = strlen( token1 )) != 0 && token1[0] != '#' )
|
||||||
|
{
|
||||||
|
token2 = strchr( token1, '=' );
|
||||||
|
if( token2 != NULL )
|
||||||
|
token2 = SkipWhiteSpaces( token2+1 );
|
||||||
|
|
||||||
|
if( !IsWhiteSpace( token2 ))
|
||||||
|
{
|
||||||
|
*id = token1;
|
||||||
|
*value = token2;
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
void AddSenderToSkipList( char *sender )
|
||||||
|
{
|
||||||
|
int numNames, i;
|
||||||
|
char **skipName, **newList;
|
||||||
|
|
||||||
|
for( skipName = config.skipNames, numNames = 0;
|
||||||
|
skipName != NULL && *skipName != NULL; skipName++ )
|
||||||
|
{
|
||||||
|
if( !strcmp( *skipName, sender ))
|
||||||
|
return;
|
||||||
|
|
||||||
|
numNames++;
|
||||||
|
}
|
||||||
|
|
||||||
|
TRACE( "adding \"%s\" to skip-list of currently %d names\n", sender, numNames );
|
||||||
|
newList = malloc( sizeof(char *) * (numNames + 2) );
|
||||||
|
|
||||||
|
for( i = 0; i < numNames; ++i )
|
||||||
|
newList[i] = config.skipNames[i];
|
||||||
|
|
||||||
|
newList[i] = strdup( sender );
|
||||||
|
newList[i+1] = NULL;
|
||||||
|
free( config.skipNames );
|
||||||
|
config.skipNames = newList;
|
||||||
|
}
|
||||||
|
|
||||||
|
void ResetConfigStrings()
|
||||||
|
{
|
||||||
|
if( !( config.givenOptions & CL_MAILBOX )) {
|
||||||
|
free( config.mailBox );
|
||||||
|
config.mailBox = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_RUNCMD )) {
|
||||||
|
free( config.runCmd );
|
||||||
|
config.runCmd = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_SYMBOLCOLOR )) {
|
||||||
|
free( config.symbolColor );
|
||||||
|
config.symbolColor = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_FONTCOLOR )) {
|
||||||
|
free( config.fontColor );
|
||||||
|
config.fontColor = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_BACKCOLOR )) {
|
||||||
|
free( config.backColor );
|
||||||
|
config.backColor = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_OFFLIGHTCOLOR )) {
|
||||||
|
free( config.offlightColor );
|
||||||
|
config.offlightColor = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_BACKGROUNDCOLOR )) {
|
||||||
|
free( config.backgroundColor );
|
||||||
|
config.backgroundColor = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_CHECKSUMFILENAME )) {
|
||||||
|
free( config.checksumFileName );
|
||||||
|
config.checksumFileName = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_CMDONMAIL )) {
|
||||||
|
free( config.cmdOnMail );
|
||||||
|
config.cmdOnMail = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( !( config.givenOptions & CL_USEX11FONT )) {
|
||||||
|
free( config.useX11Font );
|
||||||
|
config.useX11Font = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void PostProcessConfiguration()
|
||||||
|
{
|
||||||
|
if( config.display == NULL )
|
||||||
|
config.display = strdup( WMAIL_DISPLAY );
|
||||||
|
|
||||||
|
if( config.runCmd == NULL )
|
||||||
|
config.runCmd = strdup( WMAIL_CLIENT_CMD );
|
||||||
|
|
||||||
|
if( config.mailBox == NULL )
|
||||||
|
{
|
||||||
|
char *envMBox = getenv( "MAIL" );
|
||||||
|
if( envMBox != NULL )
|
||||||
|
config.mailBox = strdup( envMBox );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ReadConfigFile( bool resetConfigStrings )
|
||||||
|
{
|
||||||
|
char *usersHome;
|
||||||
|
|
||||||
|
// free all config strings and reset their pointers if required
|
||||||
|
if( resetConfigStrings )
|
||||||
|
ResetConfigStrings();
|
||||||
|
|
||||||
|
if(( usersHome = getenv( "HOME" )) != NULL )
|
||||||
|
{
|
||||||
|
char *fileName = MakePathName( usersHome, WMAIL_RC_FILE );
|
||||||
|
FILE *f = fopen( fileName, "rt" );
|
||||||
|
|
||||||
|
if( f != NULL )
|
||||||
|
{
|
||||||
|
char buf[1024];
|
||||||
|
int line = 1;
|
||||||
|
|
||||||
|
for( ; !feof( f ); ++line )
|
||||||
|
{
|
||||||
|
const char *id, *value;
|
||||||
|
unsigned int len;
|
||||||
|
|
||||||
|
if( fgets( buf, 1024, f ) == NULL )
|
||||||
|
break;
|
||||||
|
|
||||||
|
// first eliminate the trailing whitespaces
|
||||||
|
for( len = strlen( buf );
|
||||||
|
len > 0 && IsWhiteSpace(buf+(--len)); )
|
||||||
|
*(buf+len) = '\0';
|
||||||
|
|
||||||
|
if( !Tokenize( buf, &id, &value ))
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if( !strncasecmp( id, "Window.Display", 14 )) {
|
||||||
|
if( !( config.givenOptions & CL_DISPLAY ))
|
||||||
|
ReadString( value, line, &config.display );
|
||||||
|
} else if( !strncasecmp( id, "Window.NonShaped", 16 )) {
|
||||||
|
if( !( config.givenOptions & CL_NOSHAPE ))
|
||||||
|
ReadBool( value, line, &config.noshape );
|
||||||
|
} else if( !strncasecmp( id, "Window.Button.Command", 21 )) {
|
||||||
|
if( !( config.givenOptions & CL_RUNCMD ))
|
||||||
|
ReadString( value, line, &config.runCmd );
|
||||||
|
} else if( !strncasecmp( id, "Mail.MailBox", 12 )) {
|
||||||
|
if( !( config.givenOptions & CL_MAILBOX ))
|
||||||
|
ReadString( value, line, &config.mailBox );
|
||||||
|
} else if( !strncasecmp( id, "Mail.ChecksumFile", 17 )) // no corresponding cmdline option
|
||||||
|
ReadString( value, line, &config.checksumFileName );
|
||||||
|
else if( !strncasecmp( id, "Mail.CheckIntervall", 19 )) {
|
||||||
|
if( !( config.givenOptions & CL_CHECKINTERVAL ))
|
||||||
|
ReadInt( value, line, &config.checkInterval );
|
||||||
|
} else if( !strncasecmp( id, "Mail.ShowOnlyNew", 16 )) {
|
||||||
|
if( !( config.givenOptions & CL_NEWMAILONLY ))
|
||||||
|
ReadBool( value, line, &config.newMailsOnly );
|
||||||
|
} else if( !strncasecmp( id, "Ticker.Mode", 11 )) {
|
||||||
|
if( !( config.givenOptions & CL_TICKERMODE ))
|
||||||
|
ReadEnum( value, line, (int *)&config.tickerMode, tickerEnum );
|
||||||
|
} else if( !strncasecmp( id, "Ticker.Frames", 13 )) {
|
||||||
|
if( !( config.givenOptions & CL_FPS ))
|
||||||
|
ReadInt( value, line, &config.fps );
|
||||||
|
} else if( !strncasecmp( id, "Colors.Symbols", 14 )) {
|
||||||
|
if( !( config.givenOptions & CL_SYMBOLCOLOR ))
|
||||||
|
ReadString( value, line, &config.symbolColor );
|
||||||
|
} else if( !strncasecmp( id, "Colors.Font", 11 )) {
|
||||||
|
if( !( config.givenOptions & CL_FONTCOLOR ))
|
||||||
|
ReadString( value, line, &config.fontColor );
|
||||||
|
} else if( !strncasecmp( id, "Colors.Backlight", 16 )) {
|
||||||
|
if( !( config.givenOptions & CL_BACKCOLOR ))
|
||||||
|
ReadString( value, line, &config.backColor );
|
||||||
|
} else if( !strncasecmp( id, "Colors.OffLight", 15 )) {
|
||||||
|
if( !( config.givenOptions & CL_OFFLIGHTCOLOR ))
|
||||||
|
ReadString( value, line, &config.offlightColor );
|
||||||
|
} else if( !strncasecmp( id, "Colors.NonShapedFrame", 21 )) {
|
||||||
|
if( !( config.givenOptions & CL_NOSHAPE ))
|
||||||
|
ReadString( value, line, &config.backgroundColor );
|
||||||
|
} else if( !strncasecmp( id, "Ticker.X11Font", 14 )) {
|
||||||
|
if( !( config.givenOptions & CL_USEX11FONT ))
|
||||||
|
ReadString( value, line, &config.useX11Font );
|
||||||
|
} else if( !strncasecmp( id, "Mail.SkipSender", 15 )) { // no corresponding cmdline options
|
||||||
|
char *skip;
|
||||||
|
if( ReadString( value, line, &skip ))
|
||||||
|
AddSenderToSkipList( skip );
|
||||||
|
} else if( !strncasecmp( id, "Mail.OnNew.Command", 18 )) {
|
||||||
|
if( !( config.givenOptions & CL_CMDONMAIL ))
|
||||||
|
ReadString( value, line, &config.cmdOnMail );
|
||||||
|
} else if( !strncasecmp( id, "Mail.UseStatusField", 19 )) {
|
||||||
|
if( !( config.givenOptions & CL_CONSIDERSTATUSFIELD ))
|
||||||
|
ReadBool( value, line, &config.considerStatusField );
|
||||||
|
} else if( !strncasecmp( id, "Mail.ReadStatus", 15 )) {
|
||||||
|
if( !( config.givenOptions & CL_READSTATUS ))
|
||||||
|
ReadString( value, line, &config.readStatus );
|
||||||
|
} else
|
||||||
|
WARNING( "cfg-file(%i): unrecognized: \"%s\"\n", line, buf );
|
||||||
|
}
|
||||||
|
|
||||||
|
fclose( f );
|
||||||
|
} else {
|
||||||
|
TRACE( "unable to open config-file \"%s\"\n", fileName );
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
TRACE( "no $HOME defined - config-file not read\n" );
|
||||||
|
}
|
||||||
|
|
||||||
|
PostProcessConfiguration();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool ReadString( const char *from, unsigned int line, char **to )
|
||||||
|
{
|
||||||
|
if( *from++ == '"' ) {
|
||||||
|
const char *trailingQuote;
|
||||||
|
|
||||||
|
for( trailingQuote = strchr( from, '"' );
|
||||||
|
trailingQuote != NULL;
|
||||||
|
trailingQuote = strchr( trailingQuote, '"' ))
|
||||||
|
{
|
||||||
|
if( *(trailingQuote-1) != '\\' )
|
||||||
|
break;
|
||||||
|
|
||||||
|
++trailingQuote;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( trailingQuote != NULL ) {
|
||||||
|
// valid string found, copy and translate escape sequences
|
||||||
|
const char *c;
|
||||||
|
char *to_c;
|
||||||
|
|
||||||
|
// disposing of "to" is up to the caller...
|
||||||
|
*to = malloc( trailingQuote - from + 1 );
|
||||||
|
to_c = *to;
|
||||||
|
|
||||||
|
for( c = from; c != trailingQuote; ++c ) {
|
||||||
|
if( *c == '\\' ) {
|
||||||
|
switch( *(++c) ) {
|
||||||
|
case 'n': *to_c = '\n'; break;
|
||||||
|
case 'b': *to_c = '\b'; break;
|
||||||
|
case '\\': *to_c = '\\'; break;
|
||||||
|
case 'r': *to_c = '\r'; break;
|
||||||
|
case 't': *to_c = '\t'; break;
|
||||||
|
case '"': *to_c = '"'; break;
|
||||||
|
default: {
|
||||||
|
int value, i;
|
||||||
|
for( i = 0, value = 0; i < 3; ++i ) {
|
||||||
|
if( c+i == NULL || *(c+i) < '0' || *(c+i) > '9' )
|
||||||
|
break;
|
||||||
|
value = value * 10 + *(c+i) - '0';
|
||||||
|
}
|
||||||
|
if( value == 0 )
|
||||||
|
WARNING( "cfg-file(%i): '\\0' in string or unknown escape sequence found\n", line );
|
||||||
|
else {
|
||||||
|
*to_c = (char)value;
|
||||||
|
c += i-1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else
|
||||||
|
*to_c = *c;
|
||||||
|
|
||||||
|
++to_c;
|
||||||
|
}
|
||||||
|
|
||||||
|
*to_c = '\0';
|
||||||
|
TRACE( "ReadString read \"%s\"\n", *to );
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
WARNING( "cfg-file(%i): invalid string\n" );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool ReadBool( const char *from, unsigned int line, bool *to )
|
||||||
|
{
|
||||||
|
if( !strcasecmp( from, "on" ) || !strcasecmp( from, "yes" ) || !strcasecmp( from, "true" ))
|
||||||
|
*to = true;
|
||||||
|
else if( !strcasecmp( from, "off" ) || !strcasecmp( from, "no" ) || !strcasecmp( from, "false" ))
|
||||||
|
*to = false;
|
||||||
|
else {
|
||||||
|
WARNING( "cfg-file(%i): invalid boolean value: \"%s\"\n", line, from );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
TRACE( "ReadBool read \"%s\"\n", *to ? "True" : "False" );
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool ReadInt( const char *from, unsigned int line, int *to )
|
||||||
|
{
|
||||||
|
int value = 0;
|
||||||
|
|
||||||
|
if( *from == '0' && (*(from+1) == 'x' || *(from+1) == 'X') ) {
|
||||||
|
for( from += 2; *from != '\0' && !IsWhiteSpace( from ); ++from )
|
||||||
|
{
|
||||||
|
if( value > (INT_MAX - 0xf) / 0x10 ) {
|
||||||
|
WARNING( "cfg-file(%i): hexadecimal-number too large: \">%x\"\n", line, INT_MAX );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( *from >= '0' && *from <= '9')
|
||||||
|
value = value * 16 + *from - '0';
|
||||||
|
else if( *from >= 'a' && *from >= 'f' )
|
||||||
|
value = value * 16 + *from - 'a' + 10;
|
||||||
|
else if( *from >= 'A' && *from >= 'F' )
|
||||||
|
value = value * 16 + *from - 'A' + 10;
|
||||||
|
else {
|
||||||
|
WARNING( "cfg-file(%i): invalid hex-digit: \"%c\"\n", line, *from );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else for( ; *from != '\0' && !IsWhiteSpace( from ); ++from ) {
|
||||||
|
if( value > (INT_MAX - 9) / 10 ) {
|
||||||
|
WARNING( "cfg-file(%i): decimal-number too large: \">%i\"\n", line, INT_MAX );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if( *from >= '0' && *from <= '9' )
|
||||||
|
value = value * 10 + *from - '0';
|
||||||
|
else {
|
||||||
|
WARNING( "cfg-file(%i): invalid decimal-digit: \"%c\"\n", line, *from );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
*to = value;
|
||||||
|
|
||||||
|
TRACE( "ReadInt read \"%i\"\n", *to );
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool ReadEnum( const char *from, unsigned int line, int *to, const enumList_t *enumList )
|
||||||
|
{
|
||||||
|
int index;
|
||||||
|
|
||||||
|
for( index = 0; enumList[index].id != NULL; ++index )
|
||||||
|
if( !strcasecmp( enumList[index].id, from )) {
|
||||||
|
*to = enumList[index].value;
|
||||||
|
|
||||||
|
TRACE( "ReadEnum read \"%i\"\n", *to );
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
WARNING( "cfg-file(%i): unknown modifier: \"%s\"\n", line, from );
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool IsWhiteSpace( const char *chr )
|
||||||
|
{
|
||||||
|
return ( chr != NULL && ( *chr == ' ' || *chr == '\t' || *chr == '\n' )) ? true : false;
|
||||||
|
}
|
||||||
|
|
||||||
|
const char *SkipWhiteSpaces( const char *str )
|
||||||
|
{
|
||||||
|
const char *c;
|
||||||
|
|
||||||
|
for( c = str; IsWhiteSpace( c ); ++c )
|
||||||
|
;
|
||||||
|
|
||||||
|
return c;
|
||||||
|
}
|
104
wmail/src/config.h
Normal file
104
wmail/src/config.h
Normal file
|
@ -0,0 +1,104 @@
|
||||||
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
// config.h
|
||||||
|
// configuration file parser, part of wmail
|
||||||
|
//
|
||||||
|
// Copyright 2000~2002, Sven Geisenhainer <sveng@informatik.uni-jena.de>.
|
||||||
|
// All rights reserved.
|
||||||
|
//
|
||||||
|
// Redistribution and use in source and binary forms, with or without
|
||||||
|
// modification, are permitted provided that the following conditions
|
||||||
|
// are met:
|
||||||
|
// 1. Redistributions of source code must retain the above copyright
|
||||||
|
// notice, this list of conditions, and the following disclaimer.
|
||||||
|
// 2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
// notice, this list of conditions, and the following disclaimer in the
|
||||||
|
// documentation and/or other materials provided with the distribution.
|
||||||
|
// 3. The name of the author may not be used to endorse or promote products
|
||||||
|
// derived from this software without specific prior written permission.
|
||||||
|
//
|
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||||
|
// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||||
|
// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||||
|
// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
|
||||||
|
#ifndef _CONFIG_H_a6ebf0e22e2f5e21fc1657a8d9975e5c_
|
||||||
|
#define _CONFIG_H_a6ebf0e22e2f5e21fc1657a8d9975e5c_
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
TICKER_ADDRESS = 0,
|
||||||
|
TICKER_FAMILYNAME = 1,
|
||||||
|
TICKER_NICKNAME = 2
|
||||||
|
} ticker_mode_t;
|
||||||
|
|
||||||
|
// re-allocated color-names (to enable disposing of them on reconfiguration)
|
||||||
|
enum {
|
||||||
|
SYM_COLOR = 1<<0,
|
||||||
|
FNT_COLOR = 1<<1,
|
||||||
|
BCK_COLOR = 1<<2,
|
||||||
|
OFF_COLOR = 1<<3,
|
||||||
|
BGR_COLOR = 1<<4
|
||||||
|
};
|
||||||
|
|
||||||
|
// flags to mark used cmdline options
|
||||||
|
enum {
|
||||||
|
CL_DISPLAY = 1<<0,
|
||||||
|
CL_MAILBOX = 1<<1,
|
||||||
|
CL_RUNCMD = 1<<2,
|
||||||
|
CL_SYMBOLCOLOR = 1<<3,
|
||||||
|
CL_FONTCOLOR = 1<<4,
|
||||||
|
CL_BACKCOLOR = 1<<5,
|
||||||
|
CL_OFFLIGHTCOLOR = 1<<6,
|
||||||
|
CL_BACKGROUNDCOLOR = 1<<7,
|
||||||
|
CL_CHECKSUMFILENAME = 1<<8,
|
||||||
|
CL_CHECKINTERVAL = 1<<9,
|
||||||
|
CL_FPS = 1<<10,
|
||||||
|
CL_NEWMAILONLY = 1<<11,
|
||||||
|
CL_NOSHAPE = 1<<12,
|
||||||
|
CL_TICKERMODE = 1<<13,
|
||||||
|
CL_SKIPNAMES = 1<<14,
|
||||||
|
CL_CMDONMAIL = 1<<15,
|
||||||
|
CL_CONSIDERSTATUSFIELD = 1<<16,
|
||||||
|
CL_READSTATUS = 1<<17,
|
||||||
|
CL_USEX11FONT = 1<<18
|
||||||
|
};
|
||||||
|
|
||||||
|
typedef struct _config_t {
|
||||||
|
char *display; // display-name
|
||||||
|
char *mailBox; // mailbox-name
|
||||||
|
char *runCmd; // command to run when the run-btn was pressed
|
||||||
|
char *symbolColor; // colorname of the upper-symbols while they are active
|
||||||
|
char *fontColor; // colorname of the ticker- and counter-digits-font
|
||||||
|
char *backColor; // colorname of the background
|
||||||
|
char *offlightColor; // colorname of inactive symbols and counter-digits
|
||||||
|
char *backgroundColor; // colorname of the frame when in noshape-mode
|
||||||
|
char *checksumFileName; // name of the checksum-file
|
||||||
|
int checkInterval; // sesonds between mailbox-checks
|
||||||
|
int fps; // ticker-frames per second
|
||||||
|
bool newMailsOnly; // true means only ticker and count new (unread) mail
|
||||||
|
bool noshape; // true means don't use shape the dockapp
|
||||||
|
ticker_mode_t tickerMode; // ticker senders adress, family-name or nick-name
|
||||||
|
char **skipNames; // sender-names that wmail has to skip
|
||||||
|
char *cmdOnMail; // command to execute when a new mail has received
|
||||||
|
bool considerStatusField; // use the status-field of the mail-header to determine its read-status
|
||||||
|
char *readStatus; // status field content that indicates read mails ("O" for netscape, "ro" for pine etc.)
|
||||||
|
char *useX11Font; // X11 font to render the ticker (NULL -> fallback to buildin font)
|
||||||
|
// ---------------------- //
|
||||||
|
int colorsUsed; // used (malloced) color-names
|
||||||
|
int givenOptions; // bitfield flags all options specified on the cmd-line
|
||||||
|
} config_t;
|
||||||
|
|
||||||
|
|
||||||
|
// app configuration data (declared in config.c)
|
||||||
|
extern config_t config;
|
||||||
|
|
||||||
|
// config manipulation functions
|
||||||
|
void ReadConfigFile( bool resetConfigStrings );
|
||||||
|
|
||||||
|
#endif
|
1362
wmail/src/wmail.c
Normal file
1362
wmail/src/wmail.c
Normal file
File diff suppressed because it is too large
Load diff
18
wmail/src/xpm/button.xpm
Normal file
18
wmail/src/xpm/button.xpm
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
/* XPM */
|
||||||
|
static char * button_xpm[] = {
|
||||||
|
"23 11 4 1",
|
||||||
|
" c None",
|
||||||
|
". c #000000",
|
||||||
|
"+ c #A7A7A7",
|
||||||
|
"@ c #FFFFFF",
|
||||||
|
"......................+",
|
||||||
|
".+++++++++++++++++++++@",
|
||||||
|
".+++++++++++++++++++++@",
|
||||||
|
".++@++@++@++@++@++@+++@",
|
||||||
|
".+++.++.++.++.++.++.++@",
|
||||||
|
".+++++++++++++++++++++@",
|
||||||
|
".++@++@++@++@++@++@+++@",
|
||||||
|
".+++.++.++.++.++.++.++@",
|
||||||
|
".+++++++++++++++++++++@",
|
||||||
|
".+++++++++++++++++++++@",
|
||||||
|
"+@@@@@@@@@@@@@@@@@@@@@@"};
|
27
wmail/src/xpm/chars.xpm
Normal file
27
wmail/src/xpm/chars.xpm
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
/* XPM */
|
||||||
|
char * chars_xpm[] = {
|
||||||
|
"1330 21 3 1",
|
||||||
|
" c None",
|
||||||
|
". c #282828",
|
||||||
|
"+ c #D3D3D3",
|
||||||
|
"..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................",
|
||||||
|
"...................+...........+...+......................+++++++.....+++++.....+.......+...............+++.............+.........+.................................................................................................+++.............+.........+++++++.....+++++++++++...........+.....+++++++++++.......+++++.....+++++++++++.....+++++++.......+++++++.............................................................................+++++++.......+++++++...........+.......+++++++++.......+++++++.....+++++++++.....+++++++++++...+++++++++++.....+++++++.....+.........+.....+++++...........+++++++...+.......+.....+.............+.........+...+.........+.....+++++++.....+++++++++.......+++++++.....+++++++++.......+++++++.....+++++++++.....+.........+...+.........+...+.........+...+.........+...+...........+.+++++++++++.....+++++...........+.............+++++...........+...........................+++...................+.....................................+.......................+++...................+...............+++.................+++...+...............+++...............................................................................................................+...................................................................................................+++...........+...........+++.........+.....+.....",
|
||||||
|
"...................+...........+...+.....................+..+.+..+....+...+.....+......+.+................+............+...........+...............................................................................................+...+...........++........+.......+.............+...........++.....+................+...................+.....+.......+.....+.......+...........................................................................+.......+.....+.......+.........+.+........+......+.....+.......+......+......+......+.............+............+.......+....+.........+.......+.................+.....+......+......+.............++.......++...++........+....+.......+....+........+.....+.......+....+........+.....+.......+........+.........+.........+...+.........+...+.........+...+.........+...+...........+...........+.....+...............+.................+..........+.+..........................+.....................+.....................................+......................+...+..................+.........................................+.................+...............................................................................................................+..................................................................................................+..............+..............+.......+.+....+.....",
|
||||||
|
"...................+...........+...+........+.....+.....+...+.+...+...+...+.....+.....+...+...............+...........+.............+.........+...+...+.........+...........................................................+.....+.....+.........+.+.......+.........+...........+...........+.+.....+...............+...................+.....+.........+...+.........+.......................................+.....................+...........+.........+...+.........+.......+...+.......+.......+...+.........+.....+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+.....+.......+.............+++.....+++...+.+.......+...+.........+...+.........+...+.........+...+.........+...+.........+.......+.........+.........+...+.........+...+.........+...+.........+...+...........+...........+.....+...............+.................+.........+...+.........................+.....................+.....................................+.....................+.....+.................+.........................................+.................+...............................................................................................................+.................................................................................................+...............+...............+.....+...+...+.....",
|
||||||
|
"...................+...........+...+........+.....+.....+...+.+.......+...+....+......+...+..............+...........+...............+.........+..+..+..........+...........................................................+....+.......+.......+..+.................+..........+...........+..+.....+..............+...................+......+.........+...+.........+......................................+.......................+....................+...+.........+......+.....+......+.......+...+...............+.......+.....+.............+...........+.............+.........+.......+.................+.....+....+........+.............+.++...++.+...+..+......+...+.........+...+.........+...+.........+...+.........+...+.................+.........+.........+...+.........+...+.........+....+.......+.....+.........+...........+......+................+................+........+.....+.........................+....................+.....................................+.....................+.......................+.........................................+.................+...............................................................................................................+.................................................................................................+...............+...............+.....+....+.+......",
|
||||||
|
"...................+...........+...+......+++++++++++...+...+.+.......+++++...+.......+...+.............+...........+.................+.........+.+.+...........+...........................................................+...+.........+.....+...+.................+.........+...........+...+.....+...+++++.....+...................+.......+.........+...+.........+.........+++...........+++...........+.........................+...................+...+.....+++++.....+.......+.....+.......+...+...............+.......+.....+.............+...........+.............+.........+.......+.................+.....+...+.........+.............+..++.++..+...+...+.....+...+.........+...+.........+...+.........+...+.........+...+.................+.........+.........+...+.........+...+.........+.....+.....+.......+.......+...........+.......+.................+...............+.......+.......+.........................+.......+++++++.....+...+++++.......+++++++.......+++++...+.....+++++++.........+...........+++++++++...+...+++++.......+++.................+++...+.......+++.......+.........+++++++.......+...+++++.......+++++++.....+...+++++.......+++++...+...+...+++++.......+++++++.......+++++++.....+.........+...+.........+...+.......+.....+.........+...+.........+...+++++++++++.......+...............+...............+.....+.....+.......",
|
||||||
|
"...................+........................+.....+......+..+.+..............+.........+.+..........................+.................+..........+++............+..........................................................+....+.........+....+....+................+.........+...........+....+.....+..+.....+....+..................+.........+.......+....+........++.........+++...........+++..........+...........................+.................+....+....+....+.....+.......+.....+......+....+...............+.......+.....+.............+...........+.............+.........+.......+.................+.....+..+..........+.............+...+++...+...+....+....+...+.........+...+........+....+.........+...+........+.....+................+.........+.........+....+.......+....+.........+......+...+.........+.....+...........+........+.................+...............+........................................................+....+..+.....+.....+.......+.....+.....+..+....+.......+........+..........+........+...+..+.....+........+...................+...+......+..........+.........+...+..+......+..+.....+.....+.......+....+..+.....+.....+.....+..+....+.+.....+.....+................+.........+.........+...+.........+...+.......+......+.......+....+.........+............+.........+..............+..............+....................",
|
||||||
|
"...................+........................+.....+.......+++++++...........+...........+...........................+.................+...........+.........+++++++++...................+++++++++.........................+.....+.....+++++...+.....+...............+.........+++++.......+.....+.....+++.......+...+...+++++.........+...........+++++++.....+.......+.+.........+++...........+++.........+.........+++++++++++.........+...............+.....+...+.....+.....+++++++++.....+++++++.....+...............+.......+.....+++++.........+++++.......+.....+++++...+++++++++++.......+.................+.....+++...........+.............+....+....+...+.....+...+...+.........+...+++++++++.....+.........+...+++++++++.......+++++++.........+.........+.........+.....+.....+.....+.........+.......+.+...........+...+...........+.........+.................+...............+.........................................................+...+.+.......+...+.........+...+.......+.+...+.........+.....+++++.......+.........+...+.+.......+.......+...................+...+...+++...........+.........+...+...+.....+.+.......+...+.........+...+.+.......+...+.......+.+.....+.......+...+.................+.........+.........+...+.........+...+.......+.......+.....+.....+.........+...........+...........+.............+.............+.....................",
|
||||||
|
"...................+........................+.....+.........+.+..+.........+...........+.+..........................+.................+..........+++............+.........................................................+.....+....+....+.........+..............+...............+.....+......+...............+...+..+.....+........+..........+.......+.....+.....+..+..................................+...............................+.............+......+...+....++.....+.......+.....+......+....+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+..+..........+.............+.........+...+......+..+...+.........+...+.............+.........+...+..+...................+........+.........+.........+.....+.....+.....+.........+........+.............+.+...........+..........+..................+..............+.........................................................+...++........+...+.............+........++...+.........+.......+.........+.........+...++........+.......+...................+...+..+..............+.........+...+...+.....++........+...+.........+...++........+...+........++.....+.......+....+................+.........+.........+....+.......+....+.......+........+...+......+.........+..........+...........+.............................+....................",
|
||||||
|
"...................+........................+.....+.........+.+...+.......+...........+...+...+.....................+.................+.........+.+.+...........+.........................................................+.....+++++.....+.........+.............+.................+...+++++++++++.............+...+.+.......+.......+.........+.........+.....+++++...+.................................+.................................+...........+.......+...+...+.+.....+.......+.....+.......+...+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+...+.........+.............+.........+...+.......+.+...+.........+...+.............+.........+...+...+...................+.......+.........+.........+.....+.....+.....+.........+.......+.+.............+...........+...........+...................+.............+.................................................+++++++++...+.........+...+.............+.........+...+++++++++++.......+.........+.........+...+.........+.......+...................+...+.+...............+.........+...+...+.....+.........+...+.........+...+.........+...+.........+.....+.......+.....+++++++.........+.........+.........+.....+.....+.....+...+...+.........+.+.......+.........+.........+...........+...............................+...................",
|
||||||
|
"...................+........................+.....+.........+.+...+......+...........+.....+.+......................+.................+........+..+..+..........+........................................................+......+.........+.........+............+..................+...........+...............+...++........+......+..........+.........+.............+..................................+...............................+............+.......+...+..+..+.....+.......+.....+.......+...+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+....+........+.............+.........+...+........++...+.........+...+.............+.........+...+....+..................+.......+.........+.........+.....+.....+.....+....+....+......+...+............+..........+............+...................+.............+................................................+........+...+.........+...+.............+.........+...+.................+..........+.......+....+.........+.......+...................+...++................+.........+...+...+.....+.........+...+.........+...+.........+...+.........+.....+....................+........+.........+.........+.....+.....+.....+...+...+..........+........+.........+........+.............+.............................+....................",
|
||||||
|
"...................+........................+.....+.........+.+...+.....+...+++++...+.......+.......................+.................+.......+...+...+.........+.............+++.......................................+.......+.........+.........+...........+...................+...........+...............+...+.........+.....+...........+.........+.............+.........+++...........+++.........+.........+++++++++++.........+.............+.......+...+++...+.....+.......+.....+.......+...+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+.....+.......+.............+.........+...+.........+...+.........+...+.............+.........+...+.....+.................+.......+.........+.........+.....+.....+.....+....+....+.....+.....+...........+.........+.............+...................+.............+...............................................+.........+...+.........+...+.............+.........+...+.................+...........+++++++.....+.........+.......+...................+...+.+...............+.........+...+...+.....+.........+...+.........+...+.........+...+.........+.....+.....................+.......+.........+.........+.....+.....+.....+...+...+.........+.+.......+.........+.......+...............+.............+.............+.....................",
|
||||||
|
"............................................+.....+.........+.+...+....+....+...+...+......+.+.......................+...............+........................................+++.......................................+........+.......+..........+..........+....................+...........+...............+...+.........+.....+...........+.........+............+..........+++...........+++..........+...........................+......................+...............+.......+.....+.......+...+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+......+......+.............+.........+...+.........+...+.........+...+.............+.........+...+......+................+.......+.........+.........+......+...+......+...+.+...+....+.......+..........+........+..............+....................+............+...............................................+.........+...++........+...+.............+........++...+.................+..........+............+.........+.......+...................+...+..+..............+.........+...+...+.....+.........+...+.........+...++........+...+........++.....+.....................+.......+.........+........++......+...+......+...+...+........+...+......+........++......+...............+..............+..............+....................",
|
||||||
|
"..........................................+++++++++++...+...+.+...+...+.....+...+...+.....+...+.......................+.............+.........................................+++.........................+++...........+.........+.....+...........+.........+...........+.........+...........+.....+.........+...+.........+.....+...........+.........+...........+...........+++...........+++...........+.........................+.......................+...............+.......+.....+.......+...+.........+.....+.......+.....+.............+...........+.........+...+.........+.......+.........+.......+.....+.......+.....+.............+.........+...+.........+...+.........+...+.............+...+.....+...+.......+.....+.........+.......+.........+.........+.......+.+.......+...+.+...+...+.........+.........+.......+...............+.....................+...........+...............................................+.......+++...+.+.......+...+.........+...+.......+.+...+.........+.......+.........+.............+.........+.......+...................+...+...+++...........+.........+...+...+.....+.........+...+.........+...+.+.......+...+.......+.+.....+...........+.........+.......+.....+...+.......+.+.......+.+.......+...+...+.......+.....+.....+.......+.+.....+...............+...............+...............+...................",
|
||||||
|
"............................................+.....+......+..+.+..+....+.....+...+....+...+....+........................+...........+............................................+.........................+++..........+...........+...+............+........+.............+.......+............+......+.......+.....+.......+......+............+.......+...........+............................+............+.......................+.........................+..............+.......+.....+......+.....+.......+......+......+......+.............+............+.......+....+.........+.......+..........+.....+......+........+....+.............+.........+...+.........+....+.......+....+..............+...+...+....+........+.....+.......+........+..........+.......+........+.+........+.+...+.+....+.........+.........+.......+...............+.....................+...........+................................................+.....+..+...+..+.....+.....+.......+.....+.....+..+....+.......+........+..........+............+.........+.......+...................+...+......+..........+.........+.......+.....+.........+....+.......+....+..+.....+.....+.....+..+.....+............+.......+.........+...+.....+.....+..+.......+.+........+.+.+.+.......+.......+.....+.....+..+....+................+...............+...............+...................",
|
||||||
|
"...................+........................+.....+.......+++++++.....+.....+++++.....+++.....+.........................+.........+.............................................+.........................+++.........+.............+++.........+++++++++...+++++++++++.....+++++++.............+.......+++++++.......+++++++.......+.............+++++++.......+++++.............................+.............+.....................+.................+.........+++++++.......+.......+...+++++++++.......+++++++.....+++++++++.....+++++++++++.....+.............+++++++.....+.........+.....+++++.........+++++.......+.........+...+++++++++++...+.........+...+.........+.....+++++++.....+...............+++++++.....+.........+.....+++++++.........+...........+++++++.........+++.........+.....+.....+.........+.........+.......+++++++++++.....+++++.................+.......+++++...................+++++++++++...................+++++...+...+...+++++.......+++++++.......+++++...+.....+++++++.........+...........+++++++.....+.........+...+++++++++.......+.......+...+.......+++...+++++++++.....+.......+.....+.........+.....+++++++.....+...+++++.......+++++...+.....+.............+++++++...........+++.......+++++...+.......+++.........+...+.......+.........+.....+++++...+...+++++++++++.......+...............+...............+...................",
|
||||||
|
"...............................................................................................................................................................................+......................................+..........................................................................................................................................................................+...................................................................................................................................................................................................................................................................................................................+.............................................................................................................................................................................................................................................................................................................+.......+..................................+.......+.........................................................................+.......................+...............................................................................................................+......................+..............+..............+....................",
|
||||||
|
"..............................................................................................................................................................................+.......................................+.........................................................................................................................................................................+.....................................................................................................................................................................................................................................................................................................................+++.........................................................................................................................................................................................................................................................................................................+.........+.................................+.......+.........................................................................+.......................+.....................................................................................................+.........+.......................+++...........+...........+++.....................",
|
||||||
|
"...................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................+.......+...................................+.....+..........................................................................+.......................+......................................................................................................+.......+..........................................................................",
|
||||||
|
"....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................+++++++.....................................+++++...........................................................................+.......................+.......................................................................................................+++++++...........................................................................",
|
||||||
|
".................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................."};
|
74
wmail/src/xpm/main.xpm
Normal file
74
wmail/src/xpm/main.xpm
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
/* XPM */
|
||||||
|
static char * main_xpm[] = {
|
||||||
|
"64 64 7 1",
|
||||||
|
" c None",
|
||||||
|
". c #000000",
|
||||||
|
"+ c #282828",
|
||||||
|
"@ c #C0C4C0",
|
||||||
|
"# c #FFFFFF",
|
||||||
|
"$ c #A7A7A7",
|
||||||
|
"* c #000000",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ******************************************************* ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++.....+++++++++++++++++@ ",
|
||||||
|
" *++.............+++..+++++..+++..+++++..+++..++..++++++@ ",
|
||||||
|
" *++..+++++++++..+++..+++++..++.+++...+++.++..++..++++++@ ",
|
||||||
|
" *++...+++++++...+++...+++...+..+..+++..++.+++++..++++++@ ",
|
||||||
|
" *++.+..+++++..+.+++...+++...+.++.++++.+++.+..++..++++++@ ",
|
||||||
|
" *++.++..+++..++.+++....+....+.+..++++.+++.+..++..++++++@ ",
|
||||||
|
" *++.++...+...++.+++..+.+.+..+.+.++++..++.++..++..++++++@ ",
|
||||||
|
" *++.+..+...+..+.+++..+...+..+.+.++++..+..++..++..++++++@ ",
|
||||||
|
" *++...+++.+++...+++..++.++..++.+....+..+..+..++..++++++@ ",
|
||||||
|
" *++..+++++++++..+++..++.++..++..++++++++.++..++..++++++@ ",
|
||||||
|
" *++.............+++..+++++..+++..+++++..+++..++......++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++.....+++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" *++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" *************************** ************************ ",
|
||||||
|
" *++++++++++++++++++++++++++@ *######################$@ ",
|
||||||
|
" *++++++++...+++...+++...+++@ *#$$$$$$$$$$$$$$$$$$$$$*@ ",
|
||||||
|
" *+..++++.+++.+.+++.+.+++.++@ *#$$$$$$$$$$$$$$$$$$$$$*@ ",
|
||||||
|
" *++..+++.+++.+.+++.+.+++.++@ *#$$#$$#$$#$$#$$#$$#$$$*@ ",
|
||||||
|
" *+++..++.+++.+.+++.+.+++.++@ *#$$$.$$.$$.$$.$$.$$.$$*@ ",
|
||||||
|
" *++++..++...+++...+++...+++@ *#$$$$$$$$$$$$$$$$$$$$$*@ ",
|
||||||
|
" *+++..++.+++.+.+++.+.+++.++@ *#$$#$$#$$#$$#$$#$$#$$$*@ ",
|
||||||
|
" *++..+++.+++.+.+++.+.+++.++@ *#$$$.$$.$$.$$.$$.$$.$$*@ ",
|
||||||
|
" *+..++++.+++.+.+++.+.+++.++@ *#$$$$$$$$$$$$$$$$$$$$$*@ ",
|
||||||
|
" *++++++++...+++...+++...+++@ *#$$$$$$$$$$$$$$$$$$$$$*@ ",
|
||||||
|
" *++++++++++++++++++++++++++@ *$**********************@ ",
|
||||||
|
" @@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" "};
|
16
wmail/src/xpm/numbers.xpm
Normal file
16
wmail/src/xpm/numbers.xpm
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
/* XPM */
|
||||||
|
static char * numbers_xpm[] = {
|
||||||
|
"55 9 4 1",
|
||||||
|
" c None",
|
||||||
|
". c #282828",
|
||||||
|
"+ c #D3D3D3",
|
||||||
|
"@ c #000000",
|
||||||
|
".+++..@@@..+++..+++..@@@..+++..+++..+++..+++..+++......",
|
||||||
|
"+...+@...+@...+@...++...++...@+...@@...++...++...+++...",
|
||||||
|
"+...+@...+@...+@...++...++...@+...@@...++...++...+.++..",
|
||||||
|
"+...+@...+@...+@...++...++...@+...@@...++...++...+..++.",
|
||||||
|
".@@@..@@@..+++..+++..+++..+++..+++..@@@..+++..+++....++",
|
||||||
|
"+...+@...++...@@...+@...+@...++...+@...++...+@...+..++.",
|
||||||
|
"+...+@...++...@@...+@...+@...++...+@...++...+@...+.++..",
|
||||||
|
"+...+@...++...@@...+@...+@...++...+@...++...+@...+++...",
|
||||||
|
".+++..@@@..+++..+++..@@@..+++..+++..@@@..+++..+++......"};
|
18
wmail/src/xpm/symbols.xpm
Normal file
18
wmail/src/xpm/symbols.xpm
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
/* XPM */
|
||||||
|
static char * symbols_xpm[] = {
|
||||||
|
"50 12 3 1",
|
||||||
|
" c None",
|
||||||
|
". c #20B2AA",
|
||||||
|
"+ c #282828",
|
||||||
|
"++++++++++++++++++++++++++++++.....+++++++++++++++",
|
||||||
|
".............+++..+++++..+++..+++++..+++..++..++++",
|
||||||
|
"..+++++++++..+++..+++++..++.+++...+++.++..++..++++",
|
||||||
|
"...+++++++...+++...+++...+..+..+++..++.+++++..++++",
|
||||||
|
".+..+++++..+.+++...+++...+.++.++++.+++.+..++..++++",
|
||||||
|
".++..+++..++.+++....+....+.+..++++.+++.+..++..++++",
|
||||||
|
".++...+...++.+++..+.+.+..+.+.++++..++.++..++..++++",
|
||||||
|
".+..+...+..+.+++..+...+..+.+.++++..+..++..++..++++",
|
||||||
|
"...+++.+++...+++..++.++..++.+....+..+..+..++..++++",
|
||||||
|
"..+++++++++..+++..++.++..++..++++++++.++..++..++++",
|
||||||
|
".............+++..+++++..+++..+++++..+++..++......",
|
||||||
|
"++++++++++++++++++++++++++++++.....+++++++++++++++"};
|
18
wmail/src/xpm_delt/button.xpm
Normal file
18
wmail/src/xpm_delt/button.xpm
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
/* XPM */
|
||||||
|
static char * button_xpm[] = {
|
||||||
|
"23 11 4 1",
|
||||||
|
" c None",
|
||||||
|
". c #000000",
|
||||||
|
"+ c #A7A7A7",
|
||||||
|
"@ c #FFFFFF",
|
||||||
|
"......................+",
|
||||||
|
".+++++++++++++++++++++@",
|
||||||
|
".+++++++++++++++++++.+@",
|
||||||
|
".+...+++++++++++++++.+@",
|
||||||
|
".+.++.++++++++++++++.+@",
|
||||||
|
".+.++.++..+++...++...+@",
|
||||||
|
".+...++.+..+.++.+.++.+@",
|
||||||
|
".+.++.+..+++.++.+.++.+@",
|
||||||
|
".+.++.++...++...++...+@",
|
||||||
|
".+++++++++++++++++++++@",
|
||||||
|
"+@@@@@@@@@@@@@@@@@@@@@@"};
|
27
wmail/src/xpm_delt/chars.xpm
Normal file
27
wmail/src/xpm_delt/chars.xpm
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
/* XPM */
|
||||||
|
char * chars_xpm[] = {
|
||||||
|
"1330 21 3 1",
|
||||||
|
" c None",
|
||||||
|
". c #282828",
|
||||||
|
"+ c #D3D3D3",
|
||||||
|
"..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................",
|
||||||
|
"...................+...........+...+......................+++++++.....+++++.....+.......+...............+++.............+.........+.................................................................................................+++.............+.........+++++++.....+++++++++++...........+.....+++++++++++.......+++++.....+++++++++++.....+++++++.......+++++++.............................................................................+++++++.......+++++++...........+.......+++++++++.......+++++++.....+++++++++.....+++++++++++...+++++++++++.....+++++++.....+.........+.....+++++...........+++++++...+.......+.....+.............+.........+...+.........+.....+++++++.....+++++++++.......+++++++.....+++++++++.......+++++++.....+++++++++.....+.........+...+.........+...+.........+...+.........+...+...........+.+++++++++++.....+++++...........+.............+++++...........+...........................+++...................+.....................................+.......................+++...................+...............+++.................+++...+...............+++...............................................................................................................+...................................................................................................+++...........+...........+++.........+.....+.....",
|
||||||
|
"...................+...........+...+.....................+..+.+..+....+...+.....+......+.+................+............+...........+...............................................................................................+...+...........++........+.......+.............+...........++.....+................+...................+.....+.......+.....+.......+...........................................................................+.......+.....+.......+.........+.+........+......+.....+.......+......+......+......+.............+............+.......+....+.........+.......+.................+.....+......+......+.............++.......++...++........+....+.......+....+........+.....+.......+....+........+.....+.......+........+.........+.........+...+.........+...+.........+...+.........+...+...........+...........+.....+...............+.................+..........+.+..........................+.....................+.....................................+......................+...+..................+.........................................+.................+...............................................................................................................+..................................................................................................+..............+..............+.......+.+....+.....",
|
||||||
|
"...................+...........+...+........+.....+.....+...+.+...+...+...+.....+.....+...+...............+...........+.............+.........+...+...+.........+...........................................................+.....+.....+.........+.+.......+.........+...........+...........+.+.....+...............+...................+.....+.........+...+.........+.......................................+.....................+...........+.........+...+.........+.......+...+.......+.......+...+.........+.....+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+.....+.......+.............+++.....+++...+.+.......+...+.........+...+.........+...+.........+...+.........+...+.........+.......+.........+.........+...+.........+...+.........+...+.........+...+...........+...........+.....+...............+.................+.........+...+.........................+.....................+.....................................+.....................+.....+.................+.........................................+.................+...............................................................................................................+.................................................................................................+...............+...............+.....+...+...+.....",
|
||||||
|
"...................+...........+...+........+.....+.....+...+.+.......+...+....+......+...+..............+...........+...............+.........+..+..+..........+...........................................................+....+.......+.......+..+.................+..........+...........+..+.....+..............+...................+......+.........+...+.........+......................................+.......................+....................+...+.........+......+.....+......+.......+...+...............+.......+.....+.............+...........+.............+.........+.......+.................+.....+....+........+.............+.++...++.+...+..+......+...+.........+...+.........+...+.........+...+.........+...+.................+.........+.........+...+.........+...+.........+....+.......+.....+.........+...........+......+................+................+........+.....+.........................+....................+.....................................+.....................+.......................+.........................................+.................+...............................................................................................................+.................................................................................................+...............+...............+.....+....+.+......",
|
||||||
|
"...................+...........+...+......+++++++++++...+...+.+.......+++++...+.......+...+.............+...........+.................+.........+.+.+...........+...........................................................+...+.........+.....+...+.................+.........+...........+...+.....+...+++++.....+...................+.......+.........+...+.........+.........+++...........+++...........+.........................+...................+...+.....+++++.....+.......+.....+.......+...+...............+.......+.....+.............+...........+.............+.........+.......+.................+.....+...+.........+.............+..++.++..+...+...+.....+...+.........+...+.........+...+.........+...+.........+...+.................+.........+.........+...+.........+...+.........+.....+.....+.......+.......+...........+.......+.................+...............+.......+.......+.........................+.......+++++++.....+...+++++.......+++++++.......+++++...+.....+++++++.........+...........+++++++++...+...+++++.......+++.................+++...+.......+++.......+.........+++++++.......+...+++++.......+++++++.....+...+++++.......+++++...+...+...+++++.......+++++++.......+++++++.....+.........+...+.........+...+.......+.....+.........+...+.........+...+++++++++++.......+...............+...............+.....+.....+.......",
|
||||||
|
"...................+........................+.....+......+..+.+..............+.........+.+..........................+.................+..........+++............+..........................................................+....+.........+....+....+................+.........+...........+....+.....+..+.....+....+..................+.........+.......+....+........++.........+++...........+++..........+...........................+.................+....+....+....+.....+.......+.....+......+....+...............+.......+.....+.............+...........+.............+.........+.......+.................+.....+..+..........+.............+...+++...+...+....+....+...+.........+...+........+....+.........+...+........+.....+................+.........+.........+....+.......+....+.........+......+...+.........+.....+...........+........+.................+...............+........................................................+....+..+.....+.....+.......+.....+.....+..+....+.......+........+..........+........+...+..+.....+........+...................+...+......+..........+.........+...+..+......+..+.....+.....+.......+....+..+.....+.....+.....+..+....+.+.....+.....+................+.........+.........+...+.........+...+.......+......+.......+....+.........+............+.........+..............+..............+....................",
|
||||||
|
"...................+........................+.....+.......+++++++...........+...........+...........................+.................+...........+.........+++++++++...................+++++++++.........................+.....+.....+++++...+.....+...............+.........+++++.......+.....+.....+++.......+...+...+++++.........+...........+++++++.....+.......+.+.........+++...........+++.........+.........+++++++++++.........+...............+.....+...+.....+.....+++++++++.....+++++++.....+...............+.......+.....+++++.........+++++.......+.....+++++...+++++++++++.......+.................+.....+++...........+.............+....+....+...+.....+...+...+.........+...+++++++++.....+.........+...+++++++++.......+++++++.........+.........+.........+.....+.....+.....+.........+.......+.+...........+...+...........+.........+.................+...............+.........................................................+...+.+.......+...+.........+...+.......+.+...+.........+.....+++++.......+.........+...+.+.......+.......+...................+...+...+++...........+.........+...+...+.....+.+.......+...+.........+...+.+.......+...+.......+.+.....+.......+...+.................+.........+.........+...+.........+...+.......+.......+.....+.....+.........+...........+...........+.............+.............+.....................",
|
||||||
|
"...................+........................+.....+.........+.+..+.........+...........+.+..........................+.................+..........+++............+.........................................................+.....+....+....+.........+..............+...............+.....+......+...............+...+..+.....+........+..........+.......+.....+.....+..+..................................+...............................+.............+......+...+....++.....+.......+.....+......+....+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+..+..........+.............+.........+...+......+..+...+.........+...+.............+.........+...+..+...................+........+.........+.........+.....+.....+.....+.........+........+.............+.+...........+..........+..................+..............+.........................................................+...++........+...+.............+........++...+.........+.......+.........+.........+...++........+.......+...................+...+..+..............+.........+...+...+.....++........+...+.........+...++........+...+........++.....+.......+....+................+.........+.........+....+.......+....+.......+........+...+......+.........+..........+...........+.............................+....................",
|
||||||
|
"...................+........................+.....+.........+.+...+.......+...........+...+...+.....................+.................+.........+.+.+...........+.........................................................+.....+++++.....+.........+.............+.................+...+++++++++++.............+...+.+.......+.......+.........+.........+.....+++++...+.................................+.................................+...........+.......+...+...+.+.....+.......+.....+.......+...+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+...+.........+.............+.........+...+.......+.+...+.........+...+.............+.........+...+...+...................+.......+.........+.........+.....+.....+.....+.........+.......+.+.............+...........+...........+...................+.............+.................................................+++++++++...+.........+...+.............+.........+...+++++++++++.......+.........+.........+...+.........+.......+...................+...+.+...............+.........+...+...+.....+.........+...+.........+...+.........+...+.........+.....+.......+.....+++++++.........+.........+.........+.....+.....+.....+...+...+.........+.+.......+.........+.........+...........+...............................+...................",
|
||||||
|
"...................+........................+.....+.........+.+...+......+...........+.....+.+......................+.................+........+..+..+..........+........................................................+......+.........+.........+............+..................+...........+...............+...++........+......+..........+.........+.............+..................................+...............................+............+.......+...+..+..+.....+.......+.....+.......+...+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+....+........+.............+.........+...+........++...+.........+...+.............+.........+...+....+..................+.......+.........+.........+.....+.....+.....+....+....+......+...+............+..........+............+...................+.............+................................................+........+...+.........+...+.............+.........+...+.................+..........+.......+....+.........+.......+...................+...++................+.........+...+...+.....+.........+...+.........+...+.........+...+.........+.....+....................+........+.........+.........+.....+.....+.....+...+...+..........+........+.........+........+.............+.............................+....................",
|
||||||
|
"...................+........................+.....+.........+.+...+.....+...+++++...+.......+.......................+.................+.......+...+...+.........+.............+++.......................................+.......+.........+.........+...........+...................+...........+...............+...+.........+.....+...........+.........+.............+.........+++...........+++.........+.........+++++++++++.........+.............+.......+...+++...+.....+.......+.....+.......+...+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+.....+.......+.............+.........+...+.........+...+.........+...+.............+.........+...+.....+.................+.......+.........+.........+.....+.....+.....+....+....+.....+.....+...........+.........+.............+...................+.............+...............................................+.........+...+.........+...+.............+.........+...+.................+...........+++++++.....+.........+.......+...................+...+.+...............+.........+...+...+.....+.........+...+.........+...+.........+...+.........+.....+.....................+.......+.........+.........+.....+.....+.....+...+...+.........+.+.......+.........+.......+...............+.............+.............+.....................",
|
||||||
|
"............................................+.....+.........+.+...+....+....+...+...+......+.+.......................+...............+........................................+++.......................................+........+.......+..........+..........+....................+...........+...............+...+.........+.....+...........+.........+............+..........+++...........+++..........+...........................+......................+...............+.......+.....+.......+...+...............+.......+.....+.............+...........+.........+...+.........+.......+.................+.....+......+......+.............+.........+...+.........+...+.........+...+.............+.........+...+......+................+.......+.........+.........+......+...+......+...+.+...+....+.......+..........+........+..............+....................+............+...............................................+.........+...++........+...+.............+........++...+.................+..........+............+.........+.......+...................+...+..+..............+.........+...+...+.....+.........+...+.........+...++........+...+........++.....+.....................+.......+.........+........++......+...+......+...+...+........+...+......+........++......+...............+..............+..............+....................",
|
||||||
|
"..........................................+++++++++++...+...+.+...+...+.....+...+...+.....+...+.......................+.............+.........................................+++.........................+++...........+.........+.....+...........+.........+...........+.........+...........+.....+.........+...+.........+.....+...........+.........+...........+...........+++...........+++...........+.........................+.......................+...............+.......+.....+.......+...+.........+.....+.......+.....+.............+...........+.........+...+.........+.......+.........+.......+.....+.......+.....+.............+.........+...+.........+...+.........+...+.............+...+.....+...+.......+.....+.........+.......+.........+.........+.......+.+.......+...+.+...+...+.........+.........+.......+...............+.....................+...........+...............................................+.......+++...+.+.......+...+.........+...+.......+.+...+.........+.......+.........+.............+.........+.......+...................+...+...+++...........+.........+...+...+.....+.........+...+.........+...+.+.......+...+.......+.+.....+...........+.........+.......+.....+...+.......+.+.......+.+.......+...+...+.......+.....+.....+.......+.+.....+...............+...............+...............+...................",
|
||||||
|
"............................................+.....+......+..+.+..+....+.....+...+....+...+....+........................+...........+............................................+.........................+++..........+...........+...+............+........+.............+.......+............+......+.......+.....+.......+......+............+.......+...........+............................+............+.......................+.........................+..............+.......+.....+......+.....+.......+......+......+......+.............+............+.......+....+.........+.......+..........+.....+......+........+....+.............+.........+...+.........+....+.......+....+..............+...+...+....+........+.....+.......+........+..........+.......+........+.+........+.+...+.+....+.........+.........+.......+...............+.....................+...........+................................................+.....+..+...+..+.....+.....+.......+.....+.....+..+....+.......+........+..........+............+.........+.......+...................+...+......+..........+.........+.......+.....+.........+....+.......+....+..+.....+.....+.....+..+.....+............+.......+.........+...+.....+.....+..+.......+.+........+.+.+.+.......+.......+.....+.....+..+....+................+...............+...............+...................",
|
||||||
|
"...................+........................+.....+.......+++++++.....+.....+++++.....+++.....+.........................+.........+.............................................+.........................+++.........+.............+++.........+++++++++...+++++++++++.....+++++++.............+.......+++++++.......+++++++.......+.............+++++++.......+++++.............................+.............+.....................+.................+.........+++++++.......+.......+...+++++++++.......+++++++.....+++++++++.....+++++++++++.....+.............+++++++.....+.........+.....+++++.........+++++.......+.........+...+++++++++++...+.........+...+.........+.....+++++++.....+...............+++++++.....+.........+.....+++++++.........+...........+++++++.........+++.........+.....+.....+.........+.........+.......+++++++++++.....+++++.................+.......+++++...................+++++++++++...................+++++...+...+...+++++.......+++++++.......+++++...+.....+++++++.........+...........+++++++.....+.........+...+++++++++.......+.......+...+.......+++...+++++++++.....+.......+.....+.........+.....+++++++.....+...+++++.......+++++...+.....+.............+++++++...........+++.......+++++...+.......+++.........+...+.......+.........+.....+++++...+...+++++++++++.......+...............+...............+...................",
|
||||||
|
"...............................................................................................................................................................................+......................................+..........................................................................................................................................................................+...................................................................................................................................................................................................................................................................................................................+.............................................................................................................................................................................................................................................................................................................+.......+..................................+.......+.........................................................................+.......................+...............................................................................................................+......................+..............+..............+....................",
|
||||||
|
"..............................................................................................................................................................................+.......................................+.........................................................................................................................................................................+.....................................................................................................................................................................................................................................................................................................................+++.........................................................................................................................................................................................................................................................................................................+.........+.................................+.......+.........................................................................+.......................+.....................................................................................................+.........+.......................+++...........+...........+++.....................",
|
||||||
|
"...................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................+.......+...................................+.....+..........................................................................+.......................+......................................................................................................+.......+..........................................................................",
|
||||||
|
"....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................+++++++.....................................+++++...........................................................................+.......................+.......................................................................................................+++++++...........................................................................",
|
||||||
|
".................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................."};
|
73
wmail/src/xpm_delt/main.xpm
Normal file
73
wmail/src/xpm_delt/main.xpm
Normal file
|
@ -0,0 +1,73 @@
|
||||||
|
/* XPM */
|
||||||
|
static char * main_xpm[] = {
|
||||||
|
"64 64 6 1",
|
||||||
|
" c None",
|
||||||
|
". c #000000",
|
||||||
|
"+ c #282828",
|
||||||
|
"@ c #C0C4C0",
|
||||||
|
"# c #FFFFFF",
|
||||||
|
"$ c #A7A7A7",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ....................................................... ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++.............+++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++..+++++++++..+++.......+++......+++....++..+++++++++@ ",
|
||||||
|
" .++...+++++++...+++..+..+..++..+++..+++..+++..+++++++++@ ",
|
||||||
|
" .++.+..+++++..+.+++..+..+..++..+++..+++..+++..+++++++++@ ",
|
||||||
|
" .++.++..+++..++.+++..+..+..++..+++..+++..+++..+++++++++@ ",
|
||||||
|
" .++.++...+...++.+++..+..+..++.......+++..+++..+++++++++@ ",
|
||||||
|
" .++.+..+...+..+.+++..++++..++..+++..+++..+++..+++++++++@ ",
|
||||||
|
" .++...+++.+++...+++..++++..++..+++..+++..+++..+++++++++@ ",
|
||||||
|
" .++..+++++++++..+++..++++..++..+++..++....++......+++++@ ",
|
||||||
|
" .++.............+++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" .++++++++++++++++++++++++++++++++++++++++++++++++++++++@ ",
|
||||||
|
" @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ........................... ........................ ",
|
||||||
|
" .++++++++++++++++++++++++++@ .######################$@ ",
|
||||||
|
" .++++++++...+++...+++...+++@ .#$$$$$$$$$$$$$$$$$$$$$.@ ",
|
||||||
|
" .+..++++.+++.+.+++.+.+++.++@ .#$$$$$$$$$$$$$$$$$$$+$.@ ",
|
||||||
|
" .++..+++.+++.+.+++.+.+++.++@ .#$+++$$$$$$$$$$$$$$$+$.@ ",
|
||||||
|
" .+++..++.+++.+.+++.+.+++.++@ .#$+$$+$$$$$$$$$$$$$$+$.@ ",
|
||||||
|
" .++++..++...+++...+++...+++@ .#$+$$+$$++$$$+++$$+++$.@ ",
|
||||||
|
" .+++..++.+++.+.+++.+.+++.++@ .#$+++$$+$++$+$$+$+$$+$.@ ",
|
||||||
|
" .++..+++.+++.+.+++.+.+++.++@ .#$+$$+$++$$$+$$+$+$$+$.@ ",
|
||||||
|
" .+..++++.+++.+.+++.+.+++.++@ .#$+$$+$$+++$$+++$$+++$.@ ",
|
||||||
|
" .++++++++...+++...+++...+++@ .#$$$$$$$$$$$$$$$$$$$$$.@ ",
|
||||||
|
" .++++++++++++++++++++++++++@ .$......................@ ",
|
||||||
|
" @@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@ ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" "};
|
16
wmail/src/xpm_delt/numbers.xpm
Normal file
16
wmail/src/xpm_delt/numbers.xpm
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
/* XPM */
|
||||||
|
static char * numbers_xpm[] = {
|
||||||
|
"55 9 4 1",
|
||||||
|
" c None",
|
||||||
|
". c #282828",
|
||||||
|
"+ c #D3D3D3",
|
||||||
|
"@ c #000000",
|
||||||
|
".+++..@@@..+++..+++..@@@..+++..+++..+++..+++..+++......",
|
||||||
|
"+...+@...+@...+@...++...++...@+...@@...++...++...+++...",
|
||||||
|
"+...+@...+@...+@...++...++...@+...@@...++...++...+.++..",
|
||||||
|
"+...+@...+@...+@...++...++...@+...@@...++...++...+..++.",
|
||||||
|
".@@@..@@@..+++..+++..+++..+++..+++..@@@..+++..+++....++",
|
||||||
|
"+...+@...++...@@...+@...+@...++...+@...++...+@...+..++.",
|
||||||
|
"+...+@...++...@@...+@...+@...++...+@...++...+@...+.++..",
|
||||||
|
"+...+@...++...@@...+@...+@...++...+@...++...+@...+++...",
|
||||||
|
".+++..@@@..+++..+++..@@@..+++..+++..@@@..+++..+++......"};
|
18
wmail/src/xpm_delt/symbols.xpm
Normal file
18
wmail/src/xpm_delt/symbols.xpm
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
/* XPM */
|
||||||
|
static char * symbols_xpm[] = {
|
||||||
|
"51 12 3 1",
|
||||||
|
" c None",
|
||||||
|
". c #20B2AA",
|
||||||
|
"+ c #282828",
|
||||||
|
"+++++++++++++++++++++++++++++++++++++++++++++++++++",
|
||||||
|
".............++++++++++++++++++++++++++++++++++++++",
|
||||||
|
"..+++++++++..+++.......+++......+++....++..++++++++",
|
||||||
|
"...+++++++...+++..+..+..++..+++..+++..+++..++++++++",
|
||||||
|
".+..+++++..+.+++..+..+..++..+++..+++..+++..++++++++",
|
||||||
|
".++..+++..++.+++..+..+..++..+++..+++..+++..++++++++",
|
||||||
|
".++...+...++.+++..+..+..++.......+++..+++..++++++++",
|
||||||
|
".+..+...+..+.+++..++++..++..+++..+++..+++..++++++++",
|
||||||
|
"...+++.+++...+++..++++..++..+++..+++..+++..++++++++",
|
||||||
|
"..+++++++++..+++..++++..++..+++..++....++......++++",
|
||||||
|
".............++++++++++++++++++++++++++++++++++++++",
|
||||||
|
"+++++++++++++++++++++++++++++++++++++++++++++++++++"};
|
120
wmail/wmailrc-sample
Normal file
120
wmail/wmailrc-sample
Normal file
|
@ -0,0 +1,120 @@
|
||||||
|
#-*-shell-script-*-############################################################
|
||||||
|
#
|
||||||
|
# .wmailrc - wmail v2.0 configuration file
|
||||||
|
# note: cmd-line options always overide the settings in this file unless you
|
||||||
|
# force runtime reconfiguration by clicking on the docklets display area
|
||||||
|
#
|
||||||
|
# Format:
|
||||||
|
# identifier '=' value
|
||||||
|
# - identifiers are not case-sensitive
|
||||||
|
# - each identifier expects a typed value to be assigned with
|
||||||
|
# - typed value means either "string", boolean-switch (yes,on,true|no,off,false), some enum or int number
|
||||||
|
# - string values must be enclosed with `"'-characters (quoting)
|
||||||
|
# - string values supportes escape-sequences like \n,\r,\b,\t and decimal numbers \XXX (except \0)
|
||||||
|
# - # comments (only at beginning of lines)
|
||||||
|
|
||||||
|
|
||||||
|
# specify X display to open (not re-configurable during run-time)
|
||||||
|
# string value, default: ""
|
||||||
|
# Window.Display = "localhost:0.0"
|
||||||
|
|
||||||
|
# turn on non-shaped window-mode
|
||||||
|
# boolean value, default: No
|
||||||
|
# Window.NonShaped = Yes
|
||||||
|
|
||||||
|
# command to execute on button-click
|
||||||
|
# string value, default: "xterm -e mail"
|
||||||
|
Window.Button.Command = "wterm -fg white -bg black -T Pine -e pine &"
|
||||||
|
|
||||||
|
# specify your mailbox (if not, the $MAIL evironment-variable is used)
|
||||||
|
# string value, default: unset
|
||||||
|
# Mail.MailBox = "/var/spool/mail/YOUR_LOGIN"
|
||||||
|
|
||||||
|
# what file to use to store the cksums which help identify the mails
|
||||||
|
# string value, default: "" (causes fallback to $HOME/.wmail-cksums)
|
||||||
|
# Mail.ChecksumFile = "/home/YOUR_LOGIN/.wmail-cksums"
|
||||||
|
|
||||||
|
# enable wmail to ticker (and count) only new (unread) mails
|
||||||
|
# boolean value, default: No
|
||||||
|
Mail.ShowOnlyNew = Yes
|
||||||
|
|
||||||
|
# mail-check interval in seconds
|
||||||
|
# integer value, default: 1
|
||||||
|
Mail.CheckIntervall = 5
|
||||||
|
|
||||||
|
# setup the ticker-line: allowed values are: Address | NickName | FamilyName
|
||||||
|
# enum value, default: Address
|
||||||
|
Ticker.Mode = FamilyName
|
||||||
|
|
||||||
|
# set the ticker-frame-rate per seconds
|
||||||
|
# integer value, default: 60
|
||||||
|
# Ticker.Frames = 100
|
||||||
|
|
||||||
|
# like to use a real X11 font instead of the buildin ?
|
||||||
|
# Note the buildin font does not support all possible latin1 characters, so
|
||||||
|
# if you would like to see them you must make use of this.
|
||||||
|
# Ticker.X11Font = "-*-helvetica-medium-r-*-*-16-*-*-*-*-*-*-*"
|
||||||
|
|
||||||
|
# command to execute when receiving new mail (for example "/usr/bin/play somefile.wav &")
|
||||||
|
# string value, default: unset
|
||||||
|
# Mail.OnNew.Command = "/usr/bin/play /hda1/win98/media/notify.wav &"
|
||||||
|
|
||||||
|
# sender-skip-list, use this command multiple times to skip more then one sender-name
|
||||||
|
# string value, default: unset
|
||||||
|
Mail.SkipSender = "MAILER-DAEMON"
|
||||||
|
|
||||||
|
# force wmail to display and count only those mails who have their Status-field
|
||||||
|
# not set to RO (old read mail)
|
||||||
|
# this is useful if you do not remove your mails from the mbox after reading them
|
||||||
|
# default: Off
|
||||||
|
# Mail.UseStatusField = On
|
||||||
|
|
||||||
|
# supply the content of the status field that markes you email as read
|
||||||
|
# (The given value is substring-matched)
|
||||||
|
# default: "O"
|
||||||
|
# Mail.ReadStatus = "ro"
|
||||||
|
|
||||||
|
# color definitions follow: note that you can specify either
|
||||||
|
# - a X color-name like "Grey", "White", "light green" etc. or
|
||||||
|
# - a rgb-value using a hex-string like "#RRGGBB"
|
||||||
|
|
||||||
|
|
||||||
|
# color of the upper symbols
|
||||||
|
# string value, default: "#20B2AA"
|
||||||
|
# Colors.Symbols = "yellow"
|
||||||
|
|
||||||
|
# color of the ticker
|
||||||
|
# string value, default: "#D3D3D3"
|
||||||
|
# Colors.Font = "light grey"
|
||||||
|
|
||||||
|
# color of the dockapps background
|
||||||
|
# string value, default: "#282828"
|
||||||
|
# Colors.Backlight = "dark slate grey"
|
||||||
|
|
||||||
|
# color of inactive symbols
|
||||||
|
# string value, default: "black"
|
||||||
|
# Colors.OffLight = "#282828"
|
||||||
|
|
||||||
|
# color of the outer frame (using it will force non-shaped window mode)
|
||||||
|
# string value, default: unset
|
||||||
|
# Colors.NonShapedFrame = "grey"
|
||||||
|
|
||||||
|
|
||||||
|
### some color schemes :)
|
||||||
|
|
||||||
|
#############################
|
||||||
|
# wmcpuload like colors
|
||||||
|
#
|
||||||
|
# Colors.Symbols = "#131313"
|
||||||
|
# Colors.Font = "black"
|
||||||
|
# Colors.Backlight = "#6e766e"
|
||||||
|
# Colors.OffLight = "#5e665a"
|
||||||
|
|
||||||
|
#############################
|
||||||
|
# dark blue
|
||||||
|
#
|
||||||
|
# Colors.Symbols = "Yellow"
|
||||||
|
# Colors.Font = "White"
|
||||||
|
# Colors.Backlight = "DarkBlue"
|
||||||
|
# Colors.OffLight = "Black"
|
||||||
|
|
Loading…
Reference in a new issue