Index: /trunk/AUTHORS
===================================================================
--- /trunk/AUTHORS	(revision 134)
+++ /trunk/AUTHORS	(revision 134)
@@ -0,0 +1,1 @@
+Guy Rutenberg guyrutenberg@gmail.com
Index: /trunk/COPYING
===================================================================
--- /trunk/COPYING	(revision 134)
+++ /trunk/COPYING	(revision 134)
@@ -0,0 +1,345 @@
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+                       59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+
+		    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+			    NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
+
+
+	    How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Library General
+Public License instead of this License.
Index: /trunk/ChangeLog
===================================================================
--- /trunk/ChangeLog	(revision 134)
+++ /trunk/ChangeLog	(revision 134)
@@ -0,0 +1,61 @@
+$Header$
+
+OPEN YAHTZEE CHANGELOG
+===========================
+This file lists the changes betweeen Open Yahtzee releases. For a 
+complete list of changes see the SVN changelog of the project.
+
+Open Yahtzee 1.9:
+-----------------
+- Fixed bug #1775620 (Settings dialog enables roll button).
+- Improved randomness of the dice.
+- Fixed window's title caption (bug #1836473).
+
+Open Yahtzee 1.8:
+-----------------
+- New horizontal layout for user interface is available as an option.
+- Clicking on the dice sets the "keep" checkbox.
+- "Keeping" the dice now makes them grayscale.
+- Realigned the "keep" checkboxes to the dice.
+- Fixed bug #1700729 (undoing the first move of the game).
+- Fixed bug #1719068 (UI behavior of the dialog box asking for the user's name).
+- Fixed bug #1719063 (double clicking on the roll button).
+- Fixed bug #1731178 (undoing yahtzee still qualifies for yahtzee-bonus).
+- Refactored the code of the dialog box that asks the user for his name for
+  the high score table.
+- Redesigned "About" dialog box.
+- Reduced installer and binary size for windows.
+- Better integration with Windows XP themes.
+
+Open Yahtzee 1.7:
+-----------------
+- New dice graphics.
+- Dice rolling animation.
+- Fixed bug #1634542 (undoing of scoring that involves Yahtzee Bonus).
+- Fixed minor misalignment in the UI.
+- Code refactoring and cleanup.
+- Redesigned the Settings Dialog.
+- The main window of the game is now unresizable (fixed size).
+- Disabled the ability to undo the last move of the game (this allowed people 
+  to re-enter their score to the high score table over and over again).
+- Implemented the Yahtzee Joker scoring rules.
+- Added accelerator key for the Undo button (CTRL+Z).
+- Added ability to send comments to the developer (via the Open Yahtzee website).
+- Calculates the sub-total score after every score (can be disabled).
+- New icons for windows installer.
+
+Open Yahtzee 1.6:
+-----------------
+-Added an undo button.
+-Improved Windows portability.
+-New icons for the program.
+-Ability to check for updates via the web.
+-Added database initialization, so when the game doesn't find the data 
+ it needs in the database it just goes back to default values.
+-Code refactoring and some code cleanup.
+-fixed some typos in one of the high-score related dialogs.
+
+This changelog was started only during the development of Open Yahtzee 1.6
+so if you are interested in the changelog of older versions, take a look 
+at the CVS log or the changelog attached to the file releases at 
+SourceForge.
Index: /trunk/Doxyfile
===================================================================
--- /trunk/Doxyfile	(revision 134)
+++ /trunk/Doxyfile	(revision 134)
@@ -0,0 +1,281 @@
+# Doxyfile 1.4.7
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+PROJECT_NAME           = OpenYahtzee
+PROJECT_NUMBER         = svn
+OUTPUT_DIRECTORY       = /home/guy/workspace/OpenYahtzee
+CREATE_SUBDIRS         = NO
+OUTPUT_LANGUAGE        = English
+USE_WINDOWS_ENCODING   = NO
+BRIEF_MEMBER_DESC      = YES
+REPEAT_BRIEF           = YES
+ABBREVIATE_BRIEF       = "The $name class" \
+                         "The $name widget" \
+                         "The $name file" \
+                         is \
+                         provides \
+                         specifies \
+                         contains \
+                         represents \
+                         a \
+                         an \
+                         the
+ALWAYS_DETAILED_SEC    = NO
+INLINE_INHERITED_MEMB  = NO
+FULL_PATH_NAMES        = YES
+STRIP_FROM_PATH        = /home/guy/workspace/tictactoe/
+STRIP_FROM_INC_PATH    = 
+SHORT_NAMES            = NO
+JAVADOC_AUTOBRIEF      = NO
+MULTILINE_CPP_IS_BRIEF = NO
+DETAILS_AT_TOP         = NO
+INHERIT_DOCS           = YES
+SEPARATE_MEMBER_PAGES  = NO
+TAB_SIZE               = 8
+ALIASES                = 
+OPTIMIZE_OUTPUT_FOR_C  = NO
+OPTIMIZE_OUTPUT_JAVA   = NO
+BUILTIN_STL_SUPPORT    = NO
+DISTRIBUTE_GROUP_DOC   = NO
+SUBGROUPING            = YES
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+EXTRACT_ALL            = NO
+EXTRACT_PRIVATE        = YES
+EXTRACT_STATIC         = NO
+EXTRACT_LOCAL_CLASSES  = YES
+EXTRACT_LOCAL_METHODS  = NO
+HIDE_UNDOC_MEMBERS     = YES
+HIDE_UNDOC_CLASSES     = YES
+HIDE_FRIEND_COMPOUNDS  = NO
+HIDE_IN_BODY_DOCS      = NO
+INTERNAL_DOCS          = NO
+CASE_SENSE_NAMES       = YES
+HIDE_SCOPE_NAMES       = NO
+SHOW_INCLUDE_FILES     = YES
+INLINE_INFO            = YES
+SORT_MEMBER_DOCS       = YES
+SORT_BRIEF_DOCS        = NO
+SORT_BY_SCOPE_NAME     = NO
+GENERATE_TODOLIST      = YES
+GENERATE_TESTLIST      = YES
+GENERATE_BUGLIST       = YES
+GENERATE_DEPRECATEDLIST= YES
+ENABLED_SECTIONS       = 
+MAX_INITIALIZER_LINES  = 30
+SHOW_USED_FILES        = YES
+SHOW_DIRECTORIES       = YES
+FILE_VERSION_FILTER    = 
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+QUIET                  = NO
+WARNINGS               = YES
+WARN_IF_UNDOCUMENTED   = YES
+WARN_IF_DOC_ERROR      = YES
+WARN_NO_PARAMDOC       = NO
+WARN_FORMAT            = "$file:$line: $text"
+WARN_LOGFILE           = 
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+INPUT                  = /home/guy/workspace/OpenYahtzee
+FILE_PATTERNS          = *.c \
+                         *.cc \
+                         *.cxx \
+                         *.cpp \
+                         *.c++ \
+                         *.java \
+                         *.ii \
+                         *.ixx \
+                         *.ipp \
+                         *.i++ \
+                         *.inl \
+                         *.h \
+                         *.hh \
+                         *.hxx \
+                         *.hpp \
+                         *.h++ \
+                         *.idl \
+                         *.odl \
+                         *.cs \
+                         *.php \
+                         *.php3 \
+                         *.inc \
+                         *.m \
+                         *.mm \
+                         *.dox \
+                         *.C \
+                         *.CC \
+                         *.C++ \
+                         *.II \
+                         *.I++ \
+                         *.H \
+                         *.HH \
+                         *.H++ \
+                         *.CS \
+                         *.PHP \
+                         *.PHP3 \
+                         *.M \
+                         *.MM \
+                         *.C \
+                         *.H \
+                         *.tlh \
+                         *.diff \
+                         *.patch \
+                         *.moc \
+                         *.xpm \
+                         *.dox
+RECURSIVE              = YES
+EXCLUDE                = /home/guy/workspace/OpenYahtzee/optimized \
+                         /home/guy/workspace/OpenYahtzee/debug
+EXCLUDE_SYMLINKS       = NO
+EXCLUDE_PATTERNS       = 
+EXAMPLE_PATH           = 
+EXAMPLE_PATTERNS       = *
+EXAMPLE_RECURSIVE      = NO
+IMAGE_PATH             = 
+INPUT_FILTER           = 
+FILTER_PATTERNS        = 
+FILTER_SOURCE_FILES    = NO
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+SOURCE_BROWSER         = NO
+INLINE_SOURCES         = NO
+STRIP_CODE_COMMENTS    = YES
+REFERENCED_BY_RELATION = NO
+REFERENCES_RELATION    = NO
+REFERENCES_LINK_SOURCE = YES
+USE_HTAGS              = NO
+VERBATIM_HEADERS       = NO
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+ALPHABETICAL_INDEX     = YES
+COLS_IN_ALPHA_INDEX    = 5
+IGNORE_PREFIX          = 
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+GENERATE_HTML          = YES
+HTML_OUTPUT            = html
+HTML_FILE_EXTENSION    = .html
+HTML_HEADER            = 
+HTML_FOOTER            = 
+HTML_STYLESHEET        = 
+HTML_ALIGN_MEMBERS     = YES
+GENERATE_HTMLHELP      = NO
+CHM_FILE               = 
+HHC_LOCATION           = 
+GENERATE_CHI           = NO
+BINARY_TOC             = NO
+TOC_EXPAND             = NO
+DISABLE_INDEX          = NO
+ENUM_VALUES_PER_LINE   = 4
+GENERATE_TREEVIEW      = NO
+TREEVIEW_WIDTH         = 250
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+GENERATE_LATEX         = NO
+LATEX_OUTPUT           = latex
+LATEX_CMD_NAME         = latex
+MAKEINDEX_CMD_NAME     = makeindex
+COMPACT_LATEX          = NO
+PAPER_TYPE             = a4wide
+EXTRA_PACKAGES         = 
+LATEX_HEADER           = 
+PDF_HYPERLINKS         = NO
+USE_PDFLATEX           = NO
+LATEX_BATCHMODE        = NO
+LATEX_HIDE_INDICES     = NO
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+GENERATE_RTF           = NO
+RTF_OUTPUT             = rtf
+COMPACT_RTF            = NO
+RTF_HYPERLINKS         = NO
+RTF_STYLESHEET_FILE    = 
+RTF_EXTENSIONS_FILE    = 
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+GENERATE_MAN           = NO
+MAN_OUTPUT             = man
+MAN_EXTENSION          = .3
+MAN_LINKS              = NO
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+GENERATE_XML           = NO
+XML_OUTPUT             = xml
+XML_SCHEMA             = 
+XML_DTD                = 
+XML_PROGRAMLISTING     = YES
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+GENERATE_AUTOGEN_DEF   = NO
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+GENERATE_PERLMOD       = NO
+PERLMOD_LATEX          = NO
+PERLMOD_PRETTY         = YES
+PERLMOD_MAKEVAR_PREFIX = 
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor   
+#---------------------------------------------------------------------------
+ENABLE_PREPROCESSING   = YES
+MACRO_EXPANSION        = NO
+EXPAND_ONLY_PREDEF     = NO
+SEARCH_INCLUDES        = YES
+INCLUDE_PATH           = 
+INCLUDE_FILE_PATTERNS  = 
+PREDEFINED             = 
+EXPAND_AS_DEFINED      = 
+SKIP_FUNCTION_MACROS   = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references   
+#---------------------------------------------------------------------------
+TAGFILES               = 
+GENERATE_TAGFILE       = openyahtzee.tag
+ALLEXTERNALS           = NO
+EXTERNAL_GROUPS        = YES
+PERL_PATH              = /usr/bin/perl
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool   
+#---------------------------------------------------------------------------
+CLASS_DIAGRAMS         = YES
+HIDE_UNDOC_RELATIONS   = YES
+HAVE_DOT               = NO
+CLASS_GRAPH            = YES
+COLLABORATION_GRAPH    = YES
+GROUP_GRAPHS           = YES
+UML_LOOK               = NO
+TEMPLATE_RELATIONS     = NO
+INCLUDE_GRAPH          = YES
+INCLUDED_BY_GRAPH      = YES
+CALL_GRAPH             = NO
+CALLER_GRAPH           = NO
+GRAPHICAL_HIERARCHY    = YES
+DIRECTORY_GRAPH        = YES
+DOT_IMAGE_FORMAT       = png
+DOT_PATH               = 
+DOTFILE_DIRS           = 
+MAX_DOT_GRAPH_WIDTH    = 1024
+MAX_DOT_GRAPH_HEIGHT   = 1024
+MAX_DOT_GRAPH_DEPTH    = 1000
+DOT_TRANSPARENT        = NO
+DOT_MULTI_TARGETS      = NO
+GENERATE_LEGEND        = YES
+DOT_CLEANUP            = YES
+#---------------------------------------------------------------------------
+# Configuration::additions related to the search engine   
+#---------------------------------------------------------------------------
+SEARCHENGINE           = NO
Index: /trunk/INSTALL
===================================================================
--- /trunk/INSTALL	(revision 134)
+++ /trunk/INSTALL	(revision 134)
@@ -0,0 +1,167 @@
+Basic Installation
+==================
+
+   These are generic installation instructions.
+
+   The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation.  It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions.  Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, a file
+`config.cache' that saves the results of its tests to speed up
+reconfiguring, and a file `config.log' containing compiler output
+(useful mainly for debugging `configure').
+
+   If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release.  If at some point `config.cache'
+contains results you don't want to keep, you may remove or edit it.
+
+   The file `configure.in' is used to create `configure' by a program
+called `autoconf'.  You only need `configure.in' if you want to change
+it or regenerate `configure' using a newer version of `autoconf'.
+
+The simplest way to compile this package is:
+
+  1. `cd' to the directory containing the package's source code and type
+     `./configure' to configure the package for your system.  If you're
+     using `csh' on an old version of System V, you might need to type
+     `sh ./configure' instead to prevent `csh' from trying to execute
+     `configure' itself.
+
+     Running `configure' takes a while.  While running, it prints some
+     messages telling which features it is checking for.
+
+  2. Type `make' to compile the package.
+
+  3. Type `make install' to install the programs and any data files and
+     documentation.
+
+  4. You can remove the program binaries and object files from the
+     source code directory by typing `make clean'.  
+
+Compilers and Options
+=====================
+
+   Some systems require unusual options for compilation or linking that
+the `configure' script does not know about.  You can give `configure'
+initial values for variables by setting them in the environment.  Using
+a Bourne-compatible shell, you can do that on the command line like
+this:
+     CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
+
+Or on systems that have the `env' program, you can do it like this:
+     env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
+
+Compiling For Multiple Architectures
+====================================
+
+   You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory.  To do this, you must use a version of `make' that
+supports the `VPATH' variable, such as GNU `make'.  `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script.  `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+   If you have to use a `make' that does not supports the `VPATH'
+variable, you have to compile the package for one architecture at a time
+in the source code directory.  After you have installed the package for
+one architecture, use `make distclean' before reconfiguring for another
+architecture.
+
+Installation Names
+==================
+
+   By default, `make install' will install the package's files in
+`/usr/local/bin', `/usr/local/man', etc.  You can specify an
+installation prefix other than `/usr/local' by giving `configure' the
+option `--prefix=PATH'.
+
+   You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files.  If you
+give `configure' the option `--exec-prefix=PATH', the package will use
+PATH as the prefix for installing programs and libraries.
+Documentation and other data files will still use the regular prefix.
+
+   If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+   Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System).  The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+   For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Specifying the System Type
+==========================
+
+   There may be some features `configure' can not figure out
+automatically, but needs to determine by the type of host the package
+will run on.  Usually `configure' can figure that out, but if it prints
+a message saying it can not guess the host type, give it the
+`--host=TYPE' option.  TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name with three fields:
+     CPU-COMPANY-SYSTEM
+
+See the file `config.sub' for the possible values of each field.  If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the host type.
+
+   If you are building compiler tools for cross-compiling, you can also
+use the `--target=TYPE' option to select the type of system they will
+produce code for and the `--build=TYPE' option to select the type of
+system on which you are compiling the package.
+
+Sharing Defaults
+================
+
+   If you want to set default values for `configure' scripts to share,
+you can create a site shell script called `config.site' that gives
+default values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists.  Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Operation Controls
+==================
+
+   `configure' recognizes the following options to control how it
+operates.
+
+`--cache-file=FILE'
+     Use and save the results of the tests in FILE instead of
+     `./config.cache'.  Set FILE to `/dev/null' to disable caching, for
+     debugging `configure'.
+
+`--help'
+     Print a summary of the options to `configure', and exit.
+
+`--quiet'
+`--silent'
+`-q'
+     Do not print messages saying which checks are being made.
+
+`--srcdir=DIR'
+     Look for the package's source code in directory DIR.  Usually
+     `configure' can determine that directory automatically.
+
+`--version'
+     Print the version of Autoconf used to generate the `configure'
+     script, and exit.
+
+`configure' also accepts some other, not widely useful, options.
+
Index: /trunk/Makefile.am
===================================================================
--- /trunk/Makefile.am	(revision 134)
+++ /trunk/Makefile.am	(revision 134)
@@ -0,0 +1,6 @@
+# not a GNU package. You can remove this line, if
+# have all needed files, that a GNU package needs
+AUTOMAKE_OPTIONS = foreign 1.4
+
+SUBDIRS = src
+AM_CXXFLAGS = `wx-config --cxxflags`
Index: /trunk/TODO
===================================================================
--- /trunk/TODO	(revision 134)
+++ /trunk/TODO	(revision 134)
@@ -0,0 +1,23 @@
+$Header$
+
+Open Yahtzee - TODO FILE
+========================
+
+- Set a better icon for the windows installer.
+- Add ability to adjust the length of the sleep between dice rolls.
+- Multiplayer mode.
+
+DONE:
+------------------
+Open Yahtzee 1.7
+- Add a frame around the dices.
+- Make the dice roll a couple of times before they stop.
+- Change the "reset high score" toggle button to a checkbox.
+- Disable the ability to undo the last move of the game.
+- Add a menu item for sending a comment to the developers.
+
+
+
+Open Yahtzee 1.6
+-cleanup code at the end of every scoring button
+-cleanup code for the icon settings for the dialogs/frames
Index: /trunk/configure.in
===================================================================
--- /trunk/configure.in	(revision 134)
+++ /trunk/configure.in	(revision 134)
@@ -0,0 +1,10 @@
+AC_INIT(configure.in)
+
+AM_CONFIG_HEADER(config.h)
+AM_INIT_AUTOMAKE(openyahtzee, 0.1)
+
+AC_LANG_CPLUSPLUS
+AC_PROG_CXX
+AM_PROG_LIBTOOL
+
+AC_OUTPUT(Makefile src/Makefile)
Index: /trunk/icons/dice.svg
===================================================================
--- /trunk/icons/dice.svg	(revision 134)
+++ /trunk/icons/dice.svg	(revision 134)
@@ -0,0 +1,285 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="744.09448819"
+   height="1052.3622047"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.45.1"
+   sodipodi:docbase="/home/guy/workspace/openyahtzee/trunk/OpenYahtzee/icons"
+   sodipodi:docname="w.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/guy/workspace/openyahtzee/trunk/OpenYahtzee/icons/w.png"
+   inkscape:export-xdpi="62.489536"
+   inkscape:export-ydpi="62.489536">
+  <defs
+     id="defs4">
+    <linearGradient
+       inkscape:collect="always"
+       id="linearGradient3940">
+      <stop
+         style="stop-color:#000000;stop-opacity:1"
+         offset="0"
+         id="stop3942" />
+      <stop
+         style="stop-color:#343434;stop-opacity:0"
+         offset="1"
+         id="stop3944" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2182">
+      <stop
+         style="stop-color:#b4b4b4;stop-opacity:1;"
+         offset="0"
+         id="stop2184" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1;"
+         offset="1"
+         id="stop2186" />
+    </linearGradient>
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient2182"
+       id="linearGradient2188"
+       x1="216.95358"
+       y1="254.25331"
+       x2="216.95358"
+       y2="162.07788"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient3946"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient3355"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117"
+       gradientTransform="translate(-30,0)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient5311"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient5315"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient5319"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient5327"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117"
+       gradientTransform="translate(-62,0)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient8341"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient8345"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient8349"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient8353"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient8364"
+       gradientUnits="userSpaceOnUse"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117"
+       gradientTransform="translate(0,0.25)" />
+    <linearGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient3940"
+       id="linearGradient8385"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(0,0.5)"
+       x1="112.7802"
+       y1="166.68858"
+       x2="112.7802"
+       y2="200.5117" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="3.0314331"
+     inkscape:cx="240.65929"
+     inkscape:cy="807.8442"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     inkscape:window-width="1272"
+     inkscape:window-height="944"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     style="display:inline">
+    <rect
+       style="fill:url(#linearGradient2188);fill-opacity:1;stroke:#7f7f7f;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:5;stroke-dasharray:none;stroke-opacity:1"
+       id="rect1307"
+       width="91.17543"
+       height="91.17543"
+       x="171.36586"
+       y="162.57788"
+       rx="10" />
+  </g>
+  <g
+     inkscape:groupmode="layer"
+     id="layer3"
+     inkscape:label="Dots"
+     sodipodi:insensitive="true">
+    <g
+       id="g8376"
+       transform="translate(0,-0.25)">
+      <path
+         transform="translate(103.721,29.15951)"
+         d="M 124.72781 179.1362 A 11.947612 11.947612 0 1 1  100.83259,179.1362 A 11.947612 11.947612 0 1 1  124.72781 179.1362 z"
+         sodipodi:ry="11.947612"
+         sodipodi:rx="11.947612"
+         sodipodi:cy="179.1362"
+         sodipodi:cx="112.7802"
+         id="path3065"
+         style="fill:url(#linearGradient8385);fill-opacity:1;stroke:#007f7f;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:5;stroke-dasharray:none;stroke-opacity:1"
+         sodipodi:type="arc" />
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(-30,0)"
+         id="use8248"
+         xlink:href="#path3065"
+         y="0"
+         x="0" />
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(30,0)"
+         id="use8250"
+         xlink:href="#path3065"
+         y="0"
+         x="0" />
+    </g>
+    <g
+       id="g8381">
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(-60,29.25)"
+         id="use8254"
+         xlink:href="#use8250"
+         y="0"
+         x="0" />
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(0,29.25)"
+         id="use8252"
+         xlink:href="#use8250"
+         y="0"
+         x="0" />
+    </g>
+    <g
+       id="g8372">
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(-30,-29.75)"
+         id="use8256"
+         xlink:href="#path3065"
+         y="0"
+         x="0" />
+      <use
+         height="1052.3622"
+         width="744.09448"
+         transform="translate(30,-29.75)"
+         id="use8258"
+         xlink:href="#path3065"
+         y="0"
+         x="0" />
+    </g>
+  </g>
+</svg>
Index: /trunk/icons/five.svg
===================================================================
--- /trunk/icons/five.svg	(revision 134)
+++ /trunk/icons/five.svg	(revision 134)
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="64"
+   height="64"
+   id="svg2763"
+   sodipodi:version="0.32"
+   inkscape:version="0.44.1"
+   version="1.0"
+   sodipodi:docbase="/home/guy/workspace/OpenYahtzee/icons"
+   sodipodi:docname="five.svg">
+  <defs
+     id="defs2765" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.8"
+     inkscape:cx="-2.3745207"
+     inkscape:cy="36.025061"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="64px"
+     height="64px"
+     inkscape:window-width="1272"
+     inkscape:window-height="944"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata2768">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.98461545;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2771"
+       width="63.015381"
+       height="63.015385"
+       x="0.49230772"
+       y="0.49230534"
+       rx="7"
+       ry="7" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3668"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,-13.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3688"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,23.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3690"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,23.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3692"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,-13.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3694"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(4.285715,5)" />
+  </g>
+</svg>
Index: /trunk/icons/four.svg
===================================================================
--- /trunk/icons/four.svg	(revision 134)
+++ /trunk/icons/four.svg	(revision 134)
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="64"
+   height="64"
+   id="svg2763"
+   sodipodi:version="0.32"
+   inkscape:version="0.44.1"
+   version="1.0"
+   sodipodi:docbase="/home/guy/workspace/OpenYahtzee/icons"
+   sodipodi:docname="four.svg">
+  <defs
+     id="defs2765" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.8"
+     inkscape:cx="-2.3745207"
+     inkscape:cy="36.025061"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="64px"
+     height="64px"
+     inkscape:window-width="1272"
+     inkscape:window-height="944"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata2768">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.98461545;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2771"
+       width="63.015381"
+       height="63.015385"
+       x="0.49230772"
+       y="0.49230534"
+       rx="7"
+       ry="7" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3668"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,-13.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3688"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,23.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3690"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,23.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3692"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,-13.6)" />
+  </g>
+</svg>
Index: /trunk/icons/icon.svg
===================================================================
--- /trunk/icons/icon.svg	(revision 134)
+++ /trunk/icons/icon.svg	(revision 134)
@@ -0,0 +1,300 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="64px"
+   height="64px"
+   id="svg1880"
+   sodipodi:version="0.32"
+   inkscape:version="0.44.1"
+   sodipodi:docbase="/home/guy/workspace/OpenYahtzee/icons"
+   sodipodi:docname="icon.svg"
+   inkscape:export-filename="/home/guy/workspace/OpenYahtzee/icons/icon.png"
+   inkscape:export-xdpi="90.015518"
+   inkscape:export-ydpi="90.015518">
+  <defs
+     id="defs1882">
+    <linearGradient
+       id="linearGradient5512">
+      <stop
+         style="stop-color:#f0f0f0;stop-opacity:1;"
+         offset="0"
+         id="stop5558" />
+      <stop
+         id="stop5570"
+         offset="0.5"
+         style="stop-color:#e6e6e6;stop-opacity:1;" />
+      <stop
+         id="stop5522"
+         offset="1"
+         style="stop-color:black;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3680">
+      <stop
+         style="stop-color:#f0f0f0;stop-opacity:1;"
+         offset="0"
+         id="stop3682" />
+      <stop
+         id="stop3688"
+         offset="0.5"
+         style="stop-color:#f0f0f0;stop-opacity:1;" />
+      <stop
+         style="stop-color:#dcdcdc;stop-opacity:1;"
+         offset="0.75"
+         id="stop3690" />
+      <stop
+         id="stop3692"
+         offset="0.875"
+         style="stop-color:#919393;stop-opacity:1;" />
+      <stop
+         style="stop-color:black;stop-opacity:1;"
+         offset="1"
+         id="stop3684" />
+    </linearGradient>
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient3686"
+       cx="12.909091"
+       cy="31.818182"
+       fx="12.909091"
+       fy="31.818182"
+       r="4.244318"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient3700"
+       cx="12.909091"
+       cy="31.818182"
+       fx="12.909091"
+       fy="31.818182"
+       r="4.244318"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient3708"
+       cx="12.909091"
+       cy="31.818182"
+       fx="12.909091"
+       fy="31.818182"
+       r="4.244318"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient3716"
+       cx="12.909091"
+       cy="31.818182"
+       fx="12.909091"
+       fy="31.818182"
+       r="4.244318"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient3724"
+       cx="12.909091"
+       cy="31.818182"
+       fx="12.909091"
+       fy="31.818182"
+       r="4.244318"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient5568"
+       cx="17.870518"
+       cy="19.90225"
+       fx="17.870518"
+       fy="19.90225"
+       r="3.6623163"
+       gradientTransform="matrix(1,0,0,0.684057,0,6.28798)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient5578"
+       cx="17.870518"
+       cy="19.90225"
+       fx="17.870518"
+       fy="19.90225"
+       r="3.6623163"
+       gradientTransform="matrix(1,0,0,0.684057,0,6.28798)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient5586"
+       cx="17.870518"
+       cy="19.90225"
+       fx="17.870518"
+       fy="19.90225"
+       r="3.6623163"
+       gradientTransform="matrix(1,0,0,0.684057,0,6.28798)"
+       gradientUnits="userSpaceOnUse" />
+    <radialGradient
+       inkscape:collect="always"
+       xlink:href="#linearGradient5512"
+       id="radialGradient6480"
+       cx="17.870518"
+       cy="19.90225"
+       fx="17.870518"
+       fy="19.90225"
+       r="3.6623163"
+       gradientTransform="matrix(1,0,0,0.684057,0,6.28798)"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="11"
+     inkscape:cx="31.551296"
+     inkscape:cy="34.571297"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:document-units="px"
+     inkscape:grid-bbox="true"
+     gridspacingx="1px"
+     gridoriginx="0px"
+     gridoriginy="0px"
+     gridempspacing="1"
+     showguides="true"
+     inkscape:grid-points="true"
+     inkscape:window-width="1272"
+     inkscape:window-height="944"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata1885">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     id="layer1"
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer">
+    <path
+       style="fill:red;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.2;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+       d="M 5.5,23.909091 C 40.5,23.909091 40.5,23.909091 40.5,23.909091 L 40.5,58.909091 L 5.5,58.909091 L 5.5,23.909091 z "
+       id="path1888" />
+    <path
+       style="fill:#e80000;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+       d="M 20,9.4545455 C 5.6568543,24 5.5142595,24 5.5142595,24 L 40,24 L 54.581818,9 L 20,9.4545455 z "
+       id="path1890"
+       sodipodi:nodetypes="ccccc" />
+    <path
+       style="fill:#cd0000;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
+       d="M 54.485741,9 L 55,43.181818 L 40.545455,59 L 40,24 L 54.485741,9 z "
+       id="path2779"
+       sodipodi:nodetypes="ccccc" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient3700);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path2783"
+       sodipodi:cx="12.909091"
+       sodipodi:cy="31.818182"
+       sodipodi:rx="4.181818"
+       sodipodi:ry="4.181818"
+       d="M 17.090909 31.818182 A 4.181818 4.181818 0 1 1  8.727273,31.818182 A 4.181818 4.181818 0 1 1  17.090909 31.818182 z" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient3686);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path2785"
+       sodipodi:cx="12.909091"
+       sodipodi:cy="31.818182"
+       sodipodi:rx="4.181818"
+       sodipodi:ry="4.181818"
+       d="M 17.090909 31.818182 A 4.181818 4.181818 0 1 1  8.727273,31.818182 A 4.181818 4.181818 0 1 1  17.090909 31.818182 z"
+       transform="translate(17,0)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient3716);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path2787"
+       sodipodi:cx="12.909091"
+       sodipodi:cy="31.818182"
+       sodipodi:rx="4.181818"
+       sodipodi:ry="4.181818"
+       d="M 17.090909 31.818182 A 4.181818 4.181818 0 1 1  8.727273,31.818182 A 4.181818 4.181818 0 1 1  17.090909 31.818182 z"
+       transform="translate(-1,18)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient3724);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path2789"
+       sodipodi:cx="12.909091"
+       sodipodi:cy="31.818182"
+       sodipodi:rx="4.181818"
+       sodipodi:ry="4.181818"
+       d="M 17.090909 31.818182 A 4.181818 4.181818 0 1 1  8.727273,31.818182 A 4.181818 4.181818 0 1 1  17.090909 31.818182 z"
+       transform="translate(17,18)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient3708);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path2793"
+       sodipodi:cx="12.909091"
+       sodipodi:cy="31.818182"
+       sodipodi:rx="4.181818"
+       sodipodi:ry="4.181818"
+       d="M 17.090909 31.818182 A 4.181818 4.181818 0 1 1  8.727273,31.818182 A 4.181818 4.181818 0 1 1  17.090909 31.818182 z"
+       transform="translate(8.200227,9.5995)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient5586);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3726"
+       sodipodi:cx="17.870518"
+       sodipodi:cy="19.90225"
+       sodipodi:rx="3.5998163"
+       sodipodi:ry="2.4427326"
+       d="M 21.470334 19.90225 A 3.5998163 2.4427326 0 1 1  14.270701,19.90225 A 3.5998163 2.4427326 0 1 1  21.470334 19.90225 z"
+       transform="translate(-1.532834,0.514259)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient5578);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path4613"
+       sodipodi:cx="17.870518"
+       sodipodi:cy="19.90225"
+       sodipodi:rx="3.5998163"
+       sodipodi:ry="2.4427326"
+       d="M 21.470334 19.90225 A 3.5998163 2.4427326 0 1 1  14.270701,19.90225 A 3.5998163 2.4427326 0 1 1  21.470334 19.90225 z"
+       transform="translate(12.82843,-3.407483)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient5568);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path4615"
+       sodipodi:cx="17.870518"
+       sodipodi:cy="19.90225"
+       sodipodi:rx="3.5998163"
+       sodipodi:ry="2.4427326"
+       d="M 21.470334 19.90225 A 3.5998163 2.4427326 0 1 1  14.270701,19.90225 A 3.5998163 2.4427326 0 1 1  21.470334 19.90225 z"
+       transform="translate(27.58533,-7.571297)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:url(#radialGradient6480);fill-opacity:1.0;fill-rule:evenodd;stroke:black;stroke-width:0.1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path4617"
+       sodipodi:cx="17.870518"
+       sodipodi:cy="19.90225"
+       sodipodi:rx="3.5998163"
+       sodipodi:ry="2.4427326"
+       d="M 21.470334 19.90225 A 3.5998163 2.4427326 0 1 1  14.270701,19.90225 A 3.5998163 2.4427326 0 1 1  21.470334 19.90225 z"
+       transform="matrix(0,-1,1,0,28.59706,50.53283)" />
+  </g>
+</svg>
Index: /trunk/icons/one.svg
===================================================================
--- /trunk/icons/one.svg	(revision 134)
+++ /trunk/icons/one.svg	(revision 134)
@@ -0,0 +1,77 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="64"
+   height="64"
+   id="svg2763"
+   sodipodi:version="0.32"
+   inkscape:version="0.44.1"
+   version="1.0"
+   sodipodi:docbase="/home/guy/workspace/OpenYahtzee/icons"
+   sodipodi:docname="one.svg">
+  <defs
+     id="defs2765" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.8"
+     inkscape:cx="-2.3745207"
+     inkscape:cy="36.025061"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="64px"
+     height="64px"
+     inkscape:window-width="1272"
+     inkscape:window-height="944"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata2768">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.98461545;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2771"
+       width="63.015381"
+       height="63.015385"
+       x="0.49230772"
+       y="0.49230534"
+       rx="7"
+       ry="7" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3668"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(4.285714,4)" />
+  </g>
+</svg>
Index: /trunk/icons/six.svg
===================================================================
--- /trunk/icons/six.svg	(revision 134)
+++ /trunk/icons/six.svg	(revision 134)
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="64"
+   height="64"
+   id="svg2763"
+   sodipodi:version="0.32"
+   inkscape:version="0.44.1"
+   version="1.0"
+   sodipodi:docbase="/home/guy/workspace/OpenYahtzee/icons"
+   sodipodi:docname="six.svg">
+  <defs
+     id="defs2765" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.8"
+     inkscape:cx="-2.3745207"
+     inkscape:cy="36.025061"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="64px"
+     height="64px"
+     inkscape:window-width="1272"
+     inkscape:window-height="944"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata2768">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.98461545;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2771"
+       width="63.015381"
+       height="63.015385"
+       x="0.49230772"
+       y="0.49230534"
+       rx="7"
+       ry="7" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3668"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,-13.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3688"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,23.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3690"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,23.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3692"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,-13.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3694"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,5)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3696"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,5)" />
+  </g>
+</svg>
Index: /trunk/icons/three.svg
===================================================================
--- /trunk/icons/three.svg	(revision 134)
+++ /trunk/icons/three.svg	(revision 134)
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="64"
+   height="64"
+   id="svg2763"
+   sodipodi:version="0.32"
+   inkscape:version="0.44.1"
+   version="1.0"
+   sodipodi:docbase="/home/guy/workspace/OpenYahtzee/icons"
+   sodipodi:docname="three.svg">
+  <defs
+     id="defs2765" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.8"
+     inkscape:cx="-2.3745207"
+     inkscape:cy="36.025061"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="64px"
+     height="64px"
+     inkscape:window-width="1272"
+     inkscape:window-height="944"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata2768">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.98461545;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2771"
+       width="63.015381"
+       height="63.015385"
+       x="0.49230772"
+       y="0.49230534"
+       rx="7"
+       ry="7" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3668"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,-13.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3688"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,23.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3690"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(4.285715,5)" />
+  </g>
+</svg>
Index: /trunk/icons/two.svg
===================================================================
--- /trunk/icons/two.svg	(revision 134)
+++ /trunk/icons/two.svg	(revision 134)
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="64"
+   height="64"
+   id="svg2763"
+   sodipodi:version="0.32"
+   inkscape:version="0.44.1"
+   version="1.0"
+   sodipodi:docbase="/home/guy/workspace/OpenYahtzee/icons"
+   sodipodi:docname="two.svg">
+  <defs
+     id="defs2765" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10"
+     objecttolerance="10"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.8"
+     inkscape:cx="-2.3745207"
+     inkscape:cy="36.025061"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     width="64px"
+     height="64px"
+     inkscape:window-width="1272"
+     inkscape:window-height="944"
+     inkscape:window-x="0"
+     inkscape:window-y="0" />
+  <metadata
+     id="metadata2768">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1">
+    <rect
+       style="opacity:1;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:0.98461545;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="rect2771"
+       width="63.015381"
+       height="63.015385"
+       x="0.49230772"
+       y="0.49230534"
+       rx="7"
+       ry="7" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3668"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(22.88572,-13.6)" />
+    <path
+       sodipodi:type="arc"
+       style="opacity:1;fill:black;fill-opacity:1;fill-rule:evenodd;stroke:black;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path3688"
+       sodipodi:cx="26.964285"
+       sodipodi:cy="27.75"
+       sodipodi:rx="6.25"
+       sodipodi:ry="6.25"
+       d="M 33.214285 27.75 A 6.25 6.25 0 1 1  20.714285,27.75 A 6.25 6.25 0 1 1  33.214285 27.75 z"
+       transform="translate(-14.31428,23.6)" />
+  </g>
+</svg>
Index: /trunk/macros/autogen.sh
===================================================================
--- /trunk/macros/autogen.sh	(revision 134)
+++ /trunk/macros/autogen.sh	(revision 134)
@@ -0,0 +1,7 @@
+#!/bin/sh
+aclocal
+autoheader
+libtoolize --automake --force --copy
+automake -a -c
+autoconf
+
Index: /trunk/openyahtzee.kdevelop
===================================================================
--- /trunk/openyahtzee.kdevelop	(revision 134)
+++ /trunk/openyahtzee.kdevelop	(revision 134)
@@ -0,0 +1,279 @@
+<?xml version = '1.0'?>
+<kdevelop>
+  <general>
+    <author>Guy Rutenberg</author>
+    <email>guyrutenberg@gmail.com</email>
+    <version>1.8.0</version>
+    <projectmanagement>KDevAutoProject</projectmanagement>
+    <primarylanguage>C++</primarylanguage>
+    <keywords>
+      <keyword>C++</keyword>
+      <keyword>Code</keyword>
+    </keywords>
+    <ignoreparts/>
+    <projectdirectory>.</projectdirectory>
+    <absoluteprojectpath>false</absoluteprojectpath>
+    <description/>
+    <versioncontrol/>
+    <projectname>openyahtzee</projectname>
+    <defaultencoding/>
+  </general>
+  <kdevautoproject>
+    <general>
+      <activetarget>src/openyahtzee</activetarget>
+      <useconfiguration>debug</useconfiguration>
+    </general>
+    <run>
+      <mainprogram>src/openyahtzee</mainprogram>
+      <terminal>true</terminal>
+      <directoryradio>executable</directoryradio>
+      <runarguments>
+        <openyahtzee/>
+      </runarguments>
+      <customdirectory>/</customdirectory>
+      <programargs/>
+      <autocompile>true</autocompile>
+      <envvars/>
+      <debugarguments>
+        <openyahtzee/>
+      </debugarguments>
+      <cwd>
+        <openyahtzee>/home/guy/workspace/openyahtzee/trunk/OpenYahtzee/debug/./src</openyahtzee>
+      </cwd>
+    </run>
+    <configurations>
+      <optimized>
+        <builddir>optimized</builddir>
+        <ccompiler>kdevgccoptions</ccompiler>
+        <cxxcompiler>kdevgppoptions</cxxcompiler>
+        <f77compiler>kdevg77options</f77compiler>
+        <cxxflags>-O2 -g0 `wx-config --cxxflags`</cxxflags>
+        <envvars/>
+        <configargs/>
+        <topsourcedir/>
+        <cppflags/>
+        <ldflags>`wx-config --libs`</ldflags>
+        <ccompilerbinary/>
+        <cxxcompilerbinary/>
+        <f77compilerbinary/>
+        <cflags/>
+        <f77flags/>
+      </optimized>
+      <debug>
+        <configargs>--enable-debug=full --prefix=/home/guy/programs</configargs>
+        <builddir>debug</builddir>
+        <ccompiler>kdevgccoptions</ccompiler>
+        <cxxcompiler>kdevgppoptions</cxxcompiler>
+        <f77compiler>kdevg77options</f77compiler>
+        <cxxflags>-O0 -g3 `wx-config --cxxflags`</cxxflags>
+        <envvars/>
+        <topsourcedir/>
+        <cppflags/>
+        <ldflags>`wx-config --libs`</ldflags>
+        <ccompilerbinary/>
+        <cxxcompilerbinary/>
+        <f77compilerbinary/>
+        <cflags/>
+        <f77flags/>
+      </debug>
+    </configurations>
+    <make>
+      <envvars>
+        <envvar value="1" name="WANT_AUTOCONF_2_5" />
+        <envvar value="1" name="WANT_AUTOMAKE_1_6" />
+      </envvars>
+      <abortonerror>true</abortonerror>
+      <runmultiplejobs>false</runmultiplejobs>
+      <numberofjobs>1</numberofjobs>
+      <dontact>false</dontact>
+      <makebin/>
+      <prio>0</prio>
+    </make>
+  </kdevautoproject>
+  <kdevdoctreeview>
+    <ignoretocs>
+      <toc>ada</toc>
+      <toc>ada_bugs_gcc</toc>
+      <toc>bash</toc>
+      <toc>bash_bugs</toc>
+      <toc>clanlib</toc>
+      <toc>w3c-dom-level2-html</toc>
+      <toc>fortran_bugs_gcc</toc>
+      <toc>gnome1</toc>
+      <toc>gnustep</toc>
+      <toc>gtk</toc>
+      <toc>gtk_bugs</toc>
+      <toc>haskell</toc>
+      <toc>haskell_bugs_ghc</toc>
+      <toc>java_bugs_gcc</toc>
+      <toc>java_bugs_sun</toc>
+      <toc>kde2book</toc>
+      <toc>opengl</toc>
+      <toc>pascal_bugs_fp</toc>
+      <toc>php</toc>
+      <toc>php_bugs</toc>
+      <toc>perl</toc>
+      <toc>perl_bugs</toc>
+      <toc>python</toc>
+      <toc>python_bugs</toc>
+      <toc>qt-kdev3</toc>
+      <toc>ruby</toc>
+      <toc>ruby_bugs</toc>
+      <toc>sdl</toc>
+      <toc>w3c-svg</toc>
+      <toc>sw</toc>
+      <toc>w3c-uaag10</toc>
+      <toc>wxwidgets_bugs</toc>
+    </ignoretocs>
+    <ignoreqt_xml>
+      <toc>Guide to the Qt Translation Tools</toc>
+      <toc>Qt Assistant Manual</toc>
+      <toc>Qt Designer Manual</toc>
+      <toc>Qt Reference Documentation</toc>
+      <toc>qmake User Guide</toc>
+    </ignoreqt_xml>
+    <ignoredoxygen>
+      <toc>KDE Libraries (Doxygen)</toc>
+    </ignoredoxygen>
+  </kdevdoctreeview>
+  <kdevfilecreate>
+    <filetypes/>
+    <useglobaltypes>
+      <type ext="cpp" />
+      <type ext="h" />
+    </useglobaltypes>
+  </kdevfilecreate>
+  <kdevfileview>
+    <groups>
+      <group pattern="*.h" name="Header files" />
+      <group pattern="*.cpp" name="Source files" />
+      <hidenonprojectfiles>false</hidenonprojectfiles>
+      <hidenonlocation>false</hidenonlocation>
+    </groups>
+    <tree>
+      <hidepatterns>*.o,*.lo,CVS</hidepatterns>
+      <hidenonprojectfiles>false</hidenonprojectfiles>
+    </tree>
+  </kdevfileview>
+  <kdevdocumentation>
+    <projectdoc>
+      <docsystem>Doxygen Documentation Collection</docsystem>
+      <docurl>openyahtzee.tag</docurl>
+      <usermanualurl/>
+    </projectdoc>
+  </kdevdocumentation>
+  <substmap>
+    <APPNAME>openyahtzee</APPNAME>
+    <APPNAMELC>openyahtzee</APPNAMELC>
+    <APPNAMESC>Openyahtzee</APPNAMESC>
+    <APPNAMEUC>OPENYAHTZEE</APPNAMEUC>
+    <AUTHOR>Guy Rutenberg</AUTHOR>
+    <EMAIL>guy@Guy_Computer</EMAIL>
+    <LICENSE>GPL</LICENSE>
+    <LICENSEFILE>COPYING</LICENSEFILE>
+    <VERSION>0.1</VERSION>
+    <YEAR>2006</YEAR>
+    <dest>/home/guy/workspace/openyahtzee</dest>
+  </substmap>
+  <cppsupportpart>
+    <filetemplates>
+      <interfacesuffix>.h</interfacesuffix>
+      <implementationsuffix>.cpp</implementationsuffix>
+    </filetemplates>
+  </cppsupportpart>
+  <kdevcppsupport>
+    <codecompletion>
+      <includeGlobalFunctions>true</includeGlobalFunctions>
+      <includeTypes>true</includeTypes>
+      <includeEnums>true</includeEnums>
+      <includeTypedefs>false</includeTypedefs>
+      <automaticCodeCompletion>true</automaticCodeCompletion>
+      <automaticArgumentsHint>true</automaticArgumentsHint>
+      <automaticHeaderCompletion>true</automaticHeaderCompletion>
+      <codeCompletionDelay>250</codeCompletionDelay>
+      <argumentsHintDelay>400</argumentsHintDelay>
+      <headerCompletionDelay>250</headerCompletionDelay>
+      <showOnlyAccessibleItems>false</showOnlyAccessibleItems>
+      <completionBoxItemOrder>0</completionBoxItemOrder>
+      <howEvaluationContextMenu>true</howEvaluationContextMenu>
+      <showCommentWithArgumentHint>true</showCommentWithArgumentHint>
+      <statusBarTypeEvaluation>false</statusBarTypeEvaluation>
+      <namespaceAliases>std=_GLIBCXX_STD;__gnu_cxx=std</namespaceAliases>
+      <processPrimaryTypes>true</processPrimaryTypes>
+      <processFunctionArguments>false</processFunctionArguments>
+      <preProcessAllHeaders>true</preProcessAllHeaders>
+      <parseMissingHeadersExperimental>false</parseMissingHeadersExperimental>
+      <resolveIncludePathsUsingMakeExperimental>false</resolveIncludePathsUsingMakeExperimental>
+      <alwaysParseInBackground>true</alwaysParseInBackground>
+      <usePermanentCaching>true</usePermanentCaching>
+      <alwaysIncludeNamespaces>false</alwaysIncludeNamespaces>
+      <includePaths>.;</includePaths>
+    </codecompletion>
+    <creategettersetter>
+      <prefixGet/>
+      <prefixSet>set</prefixSet>
+      <prefixVariable>m_,_</prefixVariable>
+      <parameterName>theValue</parameterName>
+      <inlineGet>true</inlineGet>
+      <inlineSet>true</inlineSet>
+    </creategettersetter>
+    <references/>
+    <qt>
+      <used>false</used>
+      <version>3</version>
+      <root>/usr/qt/3</root>
+      <includestyle>3</includestyle>
+      <designerintegration>EmbeddedKDevDesigner</designerintegration>
+      <qmake>/usr/qt/3/bin/qmake</qmake>
+      <designer>/usr/qt/3/bin/designer</designer>
+      <designerpluginpaths/>
+    </qt>
+    <splitheadersource>
+      <enabled>false</enabled>
+      <synchronize>true</synchronize>
+      <orientation>Vertical</orientation>
+    </splitheadersource>
+  </kdevcppsupport>
+  <kdevdebugger>
+    <general>
+      <programargs/>
+      <gdbpath/>
+      <dbgshell/>
+      <configGdbScript/>
+      <runShellScript/>
+      <runGdbScript/>
+      <breakonloadinglibs>true</breakonloadinglibs>
+      <separatetty>false</separatetty>
+      <floatingtoolbar>false</floatingtoolbar>
+    </general>
+    <display>
+      <staticmembers>false</staticmembers>
+      <demanglenames>true</demanglenames>
+      <outputradix>10</outputradix>
+    </display>
+  </kdevdebugger>
+  <dist>
+    <custom>false</custom>
+    <bzip>false</bzip>
+    <archname/>
+    <appname>OpenYahtzee</appname>
+    <version>1.8</version>
+    <release/>
+    <vendor>Guy Rutenberg</vendor>
+    <licence>GPL</licence>
+    <summary/>
+    <group/>
+    <packager/>
+    <description/>
+    <changelog/>
+    <devpackage>false</devpackage>
+    <docspackage>false</docspackage>
+    <appicon>false</appicon>
+    <arch>0</arch>
+    <genHTML>false</genHTML>
+    <useRPM>false</useRPM>
+    <ftpkde>false</ftpkde>
+    <appskde>false</appskde>
+    <url/>
+  </dist>
+</kdevelop>
Index: /trunk/openyahtzee.kdevses
===================================================================
--- /trunk/openyahtzee.kdevses	(revision 134)
+++ /trunk/openyahtzee.kdevses	(revision 134)
@@ -0,0 +1,64 @@
+<?xml version = '1.0' encoding = 'UTF-8'?>
+<!DOCTYPE KDevPrjSession>
+<KDevPrjSession>
+ <DocsAndViews NumberOfDocuments="13" >
+  <Doc0 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/About.cpp" >
+   <View0 Encoding="" Type="Source" />
+  </Doc0>
+  <Doc1 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/openyahtzee.cpp" >
+   <View0 Encoding="" Type="Source" />
+  </Doc1>
+  <Doc2 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/MainFrame.cpp" >
+   <View0 Encoding="" Type="Source" />
+  </Doc2>
+  <Doc3 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/MainFrame.h" >
+   <View0 Encoding="" Type="Source" />
+  </Doc3>
+  <Doc4 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/About.h" >
+   <View0 Encoding="" Type="Source" />
+  </Doc4>
+  <Doc5 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/UtilityFunctions.h" >
+   <View0 Encoding="" Type="Source" />
+  </Doc5>
+  <Doc6 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/HighScoreDialog.cpp" >
+   <View0 Encoding="" Type="Source" />
+  </Doc6>
+  <Doc7 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/SettingsDB.cpp" >
+   <View0 Encoding="" Type="Source" />
+  </Doc7>
+  <Doc8 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/SettingsDB.h" >
+   <View0 Encoding="" Type="Source" />
+  </Doc8>
+  <Doc9 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/HighScoreTableDB.cpp" >
+   <View0 Encoding="" Type="Source" />
+  </Doc9>
+  <Doc10 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/HighScoreTableDB.h" >
+   <View0 Encoding="" Type="Source" />
+  </Doc10>
+  <Doc11 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/icon32.ico" >
+   <View0 Type="Other" />
+  </Doc11>
+  <Doc12 NumberOfViews="1" URL="file:///home/guy/workspace/openyahtzee/trunk/OpenYahtzee/src/Icon.h" >
+   <View0 Encoding="" line="34" Type="Source" />
+  </Doc12>
+ </DocsAndViews>
+ <pluginList>
+  <kdevdebugger>
+   <breakpointList/>
+   <showInternalCommands value="0" />
+  </kdevdebugger>
+  <kdevastyle>
+   <Extensions ext="*.cpp *.h,*.c *.h,*.cxx *.hxx,*.c++ *.h++,*.cc *.hh,*.C *.H,*.diff,*.inl,*.java,*.moc,*.patch,*.tlh,*.xpm" />
+   <AStyle IndentPreprocessors="0" FillCount="4" PadParenthesesOut="1" IndentNamespaces="1" IndentLabels="1" Fill="Tabs" MaxStatement="40" Brackets="Break" MinConditional="-1" IndentBrackets="0" PadParenthesesUn="1" BlockBreak="0" KeepStatements="1" KeepBlocks="1" BlockIfElse="0" IndentSwitches="1" PadOperators="0" FStyle="UserDefined" IndentCases="0" FillEmptyLines="0" BracketsCloseHeaders="0" BlockBreakAll="0" PadParenthesesIn="1" IndentClasses="1" IndentBlocks="0" FillForce="0" />
+  </kdevastyle>
+  <kdevbookmarks>
+   <bookmarks/>
+  </kdevbookmarks>
+  <kdevvalgrind>
+   <executable path="" params="" />
+   <valgrind path="/usr/bin/valgrind" params="--tool=memcheck --tool=memcheck --leak-check=yes" />
+   <calltree path="calltree" params="" />
+   <kcachegrind path="kcachegrind" />
+  </kdevvalgrind>
+ </pluginList>
+</KDevPrjSession>
Index: /trunk/src/About.cpp
===================================================================
--- /trunk/src/About.cpp	(revision 134)
+++ /trunk/src/About.cpp	(revision 134)
@@ -0,0 +1,111 @@
+// $Header: $
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+// -*- C++ -*- generated by wxGlade 0.4.1cvs on Tue Feb 27 17:58:29 2007 from /home/guy/about.wgt
+
+#include "About.h"
+#include "icon.xpm"
+
+
+AboutDialog::AboutDialog(wxWindow* parent, int id, const wxString& title, const wxPoint& pos, const wxSize& size, long style):
+    wxDialog(parent, id, title, pos, size, wxDEFAULT_DIALOG_STYLE|wxMINIMIZE_BOX)
+{
+	//wxString temp= wxT(DATA_DIR);
+	//temp += wxT("/OpenYahtzee/icon.gif");
+
+	//wxBitmap *logo = new wxBitmap(temp, wxBITMAP_TYPE_GIF); 
+
+	//scale logo
+	//wxImage tempimage = logo->ConvertToImage();
+	wxBitmap *logo = new wxBitmap; 
+	*logo = wxBitmap(icon_xpm);
+	
+	notebook_main = new wxNotebook(this, -1, wxDefaultPosition, wxDefaultSize, 0);
+	
+	notebook_main_pane_license = new wxScrolledWindow(notebook_main, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL);
+	
+	notebook_main_pane_thanks = new wxScrolledWindow(notebook_main, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL);
+	
+	notebook_main_pane_authors = new wxScrolledWindow(notebook_main, -1, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL);
+	
+	notebook_main_pane_about = new wxPanel(notebook_main, -1);
+	
+	bitmap_1 = new wxDynamicBitmap((wxWindow*)this, (wxWindowID)wxID_ANY,logo);
+#ifdef PORTABLE
+	app_label = new wxStaticText(this, -1, wxT("Open Yahtzee Portable Edition 1.8.0"));
+#else	
+	app_label = new wxStaticText(this, -1, wxT("Open Yahtzee 1.8.0"));
+#endif
+	label_desc = new wxStaticText(notebook_main_pane_about, -1, wxT("A full-featured wxWidgets version of\nthe classic dice game Yahtzee."));
+	label_copyright = new wxStaticText(notebook_main_pane_about, -1, wxT("(c) 2006-2007 Guy Rutenberg"));
+	label_1 = new wxStaticText(notebook_main_pane_about, -1, wxT("http://openyahtzee.sourceforge.net/"));
+	label_7 = new wxStaticText(notebook_main_pane_authors, -1, wxT("Please report bugs to openyahtzee-users@lists.sourceforge.net.\n\nGuy Rutenberg\n\tguyrutenberg@gmail.com\n\tAuthor, maintainer"));
+	label_6 = new wxStaticText(notebook_main_pane_thanks, -1, wxT("Seamous McGill\n\tjohndoe@gmail.com\n\tLogo and dice design\n\nNeil Gierman\n\tngierman@roadrunn.com\n\tRPM packages"));
+    label_15 = new wxStaticText(notebook_main_pane_license, -1, wxT("This program is free software; you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by \nthe Free Software Foundation; either version 2 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of \nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details. \n\nYou should have received a copy of the GNU General Public License \nalong with this program; if not, write to the\nFree Software Foundation, Inc.,\n59 Temple Place - Suite 330, Boston, MA  02111-1307, USA."));
+    close_button = new wxButton(this, wxID_OK, wxT("Close"));
+
+	set_properties();
+	do_layout();
+}
+
+
+void AboutDialog::set_properties()
+{
+	SetSize(wxSize(400, 300));
+	app_label->SetFont(wxFont(14, wxDEFAULT, wxNORMAL, wxBOLD, 0, wxT("")));
+	notebook_main_pane_authors->SetScrollRate(10, 10);
+	notebook_main_pane_thanks->SetScrollRate(10, 10);
+	notebook_main_pane_license->SetScrollRate(10, 10);
+}
+
+
+void AboutDialog::do_layout()
+{
+    // begin wxGlade: AboutDialog::do_layout
+    wxBoxSizer* sizer_1 = new wxBoxSizer(wxVERTICAL);
+    wxBoxSizer* sizer_6 = new wxBoxSizer(wxVERTICAL);
+    wxBoxSizer* sizer_5 = new wxBoxSizer(wxHORIZONTAL);
+    wxBoxSizer* sizer_4 = new wxBoxSizer(wxVERTICAL);
+    wxBoxSizer* sizer_3 = new wxBoxSizer(wxVERTICAL);
+    wxBoxSizer* sizer_2 = new wxBoxSizer(wxHORIZONTAL);
+    sizer_2->Add(bitmap_1, 0, wxALL|wxALIGN_CENTER_VERTICAL, 10);
+    sizer_2->Add(app_label, 0, wxALL|wxALIGN_CENTER_VERTICAL|wxADJUST_MINSIZE, 10);
+    sizer_1->Add(sizer_2, 0, 0, 0);
+    sizer_3->Add(label_desc, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 10);
+    sizer_3->Add(label_copyright, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 10);
+    sizer_3->Add(label_1, 0, wxALL|wxALIGN_CENTER_HORIZONTAL, 10);
+    notebook_main_pane_about->SetSizer(sizer_3);
+    sizer_4->Add(label_7, 0, wxALL, 10);
+    notebook_main_pane_authors->SetSizer(sizer_4);
+    sizer_5->Add(label_6, 0, wxALL, 10);
+    notebook_main_pane_thanks->SetSizer(sizer_5);
+    sizer_6->Add(label_15, 0, wxADJUST_MINSIZE, 0);
+    notebook_main_pane_license->SetSizer(sizer_6);
+    notebook_main->AddPage(notebook_main_pane_about, wxT("About"));
+    notebook_main->AddPage(notebook_main_pane_authors, wxT("Authors"));
+    notebook_main->AddPage(notebook_main_pane_thanks, wxT("Thanks To"));
+    notebook_main->AddPage(notebook_main_pane_license, wxT("License Agreement"));
+    sizer_1->Add(notebook_main, 1, wxEXPAND, 0);
+    sizer_1->Add(close_button, 0, wxALL|wxALIGN_RIGHT, 10);
+    SetSizer(sizer_1);
+    Layout();
+    // end wxGlade
+}
+
Index: /trunk/src/About.h
===================================================================
--- /trunk/src/About.h	(revision 134)
+++ /trunk/src/About.h	(revision 134)
@@ -0,0 +1,70 @@
+// $Header: $
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+// -*- C++ -*- generated by wxGlade 0.4.1cvs on Tue Feb 27 17:58:29 2007 from /home/guy/about.wgt
+
+#include <wx/wx.h>
+#include <wx/image.h>
+#include "wxDynamicBitmap.h"
+
+// begin wxGlade: ::dependencies
+#include <wx/notebook.h>
+// end wxGlade
+
+
+#ifndef ABOUT_H
+#define ABOUT_H
+
+
+class AboutDialog: public wxDialog {
+public:
+    // begin wxGlade: AboutDialog::ids
+    // end wxGlade
+
+    AboutDialog(wxWindow* parent, int id, const wxString& title, const wxPoint& pos=wxDefaultPosition, const wxSize& size=wxDefaultSize, long style=wxDEFAULT_DIALOG_STYLE);
+
+private:
+    // begin wxGlade: AboutDialog::methods
+    void set_properties();
+    void do_layout();
+    // end wxGlade
+
+protected:
+    // begin wxGlade: AboutDialog::attributes
+    wxDynamicBitmap* bitmap_1;
+    wxStaticText* app_label;
+    wxStaticText* label_desc;
+    wxStaticText* label_copyright;
+    wxStaticText* label_1;
+    wxPanel* notebook_main_pane_about;
+    wxStaticText* label_7;
+    wxScrolledWindow* notebook_main_pane_authors;
+    wxStaticText* label_6;
+    wxScrolledWindow* notebook_main_pane_thanks;
+    wxStaticText* label_15;
+    wxScrolledWindow* notebook_main_pane_license;
+    wxNotebook* notebook_main;
+    wxButton* close_button;
+    // end wxGlade
+}; // wxGlade: end class
+
+
+
+#endif // ABOUT_H
Index: /trunk/src/DBwrapper.cpp
===================================================================
--- /trunk/src/DBwrapper.cpp	(revision 134)
+++ /trunk/src/DBwrapper.cpp	(revision 134)
@@ -0,0 +1,165 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+#include "DBwrapper.h"
+
+#ifdef WIN32
+#include <windows.h>
+#endif
+
+using namespace std;
+
+#include <iostream>
+
+
+
+
+/**
+ * This constructor takes the filename of the database and opens it.
+ * \param[in] filename a pointer a UNICODE string which make the filename of the sqllite database file
+ * \return none
+ */
+
+DBwrapper::DBwrapper(std::string filename)
+{
+	m_errmsg=0; //set the pointer to null
+	
+	m_errorcode = sqlite3_open(filename.c_str(), &m_db);
+	
+	if (m_errorcode!=SQLITE_OK)
+		cerr<<"ERROR: couldn't open database (DBhandler constructor). filename: "<< filename<<endl;
+
+}
+/** 
+* \brief Default constructor
+*
+* When using this consturctor the created object should call Open(std::string filename) in order to open the
+* datatabase for reading/writing.
+*/
+DBwrapper::DBwrapper(){
+
+}
+
+/**
+ * The destructor for DBwrapper. The destructor is marked as virtual so derieved classes will be able to use it easily/
+ * \return none
+ */
+DBwrapper::~DBwrapper()
+{
+	sqlite3_close(m_db);
+}
+
+/**
+ * This function queries the database
+ *
+ * \param[in] query a unicode string which holds the SQL query 
+ * \param[in] maxbusy the number of 0.1 seconds to wait for the database in case it is busy. after this time expires the query will stop excute. defualts to 20.
+ * \return a std::list of std::string holding the database query results.
+ */
+list<string> DBwrapper::Query (std::string query, const int maxbusy)
+{
+	list<string> values;
+	const char* tail;
+	sqlite3_stmt* stmt;
+
+#ifdef DEBUG
+	cout<<query<<endl;
+#endif
+
+	m_errorcode = sqlite3_prepare( m_db, query.c_str(), query.length(), &stmt, &tail );
+
+
+	if ( m_errorcode != SQLITE_OK )
+	{
+		cerr << "sqlite3_compile error:" <<endl;
+		cerr << sqlite3_errmsg( m_db ) <<endl;
+		cerr << "on insert: " << query <<endl;
+		values = list<string>::list();
+	} else {
+		int busyCnt = 0;
+		int number = sqlite3_column_count( stmt );
+		//execute virtual machine by iterating over rows
+		while ( true )
+		{
+			m_errorcode = sqlite3_step( stmt );
+			if ( m_errorcode == SQLITE_BUSY )
+			{
+				if ( busyCnt++ > maxbusy ) {
+					cerr << "Busy-counter has reached maximum. Aborting this sql statement!\n";
+					break;
+				}
+#ifdef WIN32
+				Sleep(100);
+#else
+				::usleep( 100000 ); // Sleep 100 msec
+#endif
+				cerr << "sqlite3_step: BUSY counter: " << busyCnt << endl;
+			}
+			
+			if ( m_errorcode == SQLITE_MISUSE )
+				cerr << "sqlite3_step: MISUSE" << endl;
+			if ( m_errorcode == SQLITE_DONE || m_errorcode == SQLITE_ERROR )
+				break;
+
+			//iterate over columns
+			for ( int i = 0; i < number; i++ )
+			{
+				values.push_back((string)((char*)sqlite3_column_text( stmt, i)));
+			}
+			
+		}
+		//deallocate vm ressources
+		sqlite3_finalize( stmt );
+
+		if ( m_errorcode != SQLITE_DONE )
+		{
+			cerr <<  "sqlite_step error.\n";
+			cerr << sqlite3_errmsg( m_db ) << endl;
+			cerr << "on query: " << query << endl;
+			values = list<string>::list();
+        }
+    }
+
+	return values;
+}
+
+/**
+ * Opens a new connection to database file
+ * \param filename filename a pointer a UNICODE string which make the filename of the SQLite database file
+ * \return The error code returned by sqlite3_open. On success should be SQLITE_OK
+ */
+int DBwrapper::Open( std::string filename )
+{
+	m_errorcode = sqlite3_open(filename.c_str(), &m_db);
+	
+	if (m_errorcode!=SQLITE_OK)
+		cerr<<"ERROR: couldn't open database (DBhandler constructor). filename: "<< filename<<endl;
+	
+	return m_errorcode;
+}
+
+/**
+ * Closes the connection to the database
+ */
+void DBwrapper::Close()
+{
+	sqlite3_free(m_errmsg);
+	sqlite3_close(m_db);
+}
Index: /trunk/src/DBwrapper.h
===================================================================
--- /trunk/src/DBwrapper.h	(revision 134)
+++ /trunk/src/DBwrapper.h	(revision 134)
@@ -0,0 +1,60 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+/**\file DBwrapper.h
+ *\brief Header file for DBwrapper class.
+ *
+ * This file contains the header for the DBwrapper class and all the nessecery include files.
+*/
+
+/// DBwrapper class - a wrapper for databases
+/**
+the DBwrapper class is a c++ wrapper for databases. It is designed
+to allow to access different kinds of data bases seamlessly
+*/
+
+#include <sqlite3.h>
+#include <string>
+#include <list>
+
+#ifndef DBWRAPPER_INC
+#define DBWRAPPER_INC
+
+class DBwrapper {
+
+public:
+	DBwrapper(std::string filename);
+	DBwrapper();
+	virtual ~DBwrapper();
+
+	int Open(std::string filename);
+	void Close();
+
+	std::list<std::string> Query(std::string query, const int maxbusy = 20);
+
+protected:
+	
+private:
+	sqlite3* m_db; ///< holds the sqllite database
+	char *m_errmsg; ///< holds the sqllite error messages
+	int m_errorcode; ///< holds the returned sqllite errorcode
+};
+
+#endif
Index: /trunk/src/HighScoreDialog.cpp
===================================================================
--- /trunk/src/HighScoreDialog.cpp	(revision 134)
+++ /trunk/src/HighScoreDialog.cpp	(revision 134)
@@ -0,0 +1,114 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+#include <wx/wx.h>
+#include <wx/dialog.h>
+#include <wx/button.h>
+#include <wx/sizer.h>
+#include <wx/listctrl.h>
+
+#include "ObjectsID.h"
+#include "HighScoreDialog.h"
+
+#include "Icon.h"
+
+using namespace std;
+
+HighScoreDialog::HighScoreDialog(wxWindow* parent,wxWindowID id,HighScoreTableDB *highscoredb) :
+	wxDialog(parent, id, wxT("High-Score Table"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE)
+{
+
+	SetIcon(wxIcon(ICON));
+
+
+	list<string> table;
+
+	table = highscoredb->GetHighScoreTable();	
+
+	list<string>::iterator lip = table.begin();
+	wxString buf;
+
+
+	//Now create the dialog
+	//Create The top-level sizer
+	wxBoxSizer *topSizer = new wxBoxSizer( wxVERTICAL );
+	wxListCtrl *highscorelist = new wxListCtrl(this,wxID_ANY,wxDefaultPosition,wxSize(400,400),wxLC_REPORT);
+	
+	topSizer->Add(
+		highscorelist,
+		0,
+		wxALL,
+		10);
+		
+	topSizer->Add(
+		new wxButton(this,wxID_OK),
+		0, //no streching
+		wxALL, //we want border around everything
+		10);
+	
+	///////////////////////////////////////
+	////Enter content into highscoretable
+
+	//create the columns
+	wxListItem itemCol;
+	itemCol.SetText(wxT("Place"));
+	itemCol.SetImage(-1);
+	highscorelist->InsertColumn(0, itemCol);
+	itemCol.SetText(wxT("Name"));
+	itemCol.SetImage(-1);
+	highscorelist->InsertColumn(1, itemCol);
+	itemCol.SetText(wxT("Date"));
+	itemCol.SetImage(-1);
+	highscorelist->InsertColumn(2, itemCol);
+	itemCol.SetText(wxT("Score"));
+	itemCol.SetImage(-1);
+	highscorelist->InsertColumn(3, itemCol);
+	
+	int i =0;
+	while(lip != table.end()) {
+		if (i%4){
+			buf = wxString(lip->c_str(),wxConvUTF8);
+			highscorelist->SetItem(i/4,i%4,buf);
+			lip++;
+
+		} else { 
+			buf.Clear();
+			buf << (i/4+1);
+			highscorelist->InsertItem(i/4,buf,-1);
+		}
+		i++;
+	}
+	
+
+	//size the collumns
+	highscorelist->SetColumnWidth(0, wxLIST_AUTOSIZE_USEHEADER );
+	highscorelist->SetColumnWidth(1, wxLIST_AUTOSIZE );
+	highscorelist->SetColumnWidth(2, wxLIST_AUTOSIZE );
+	highscorelist->SetColumnWidth(3, wxLIST_AUTOSIZE_USEHEADER );
+
+	
+
+	SetSizer( topSizer ); // use the sizer for layout
+	topSizer->Fit( this );          // fit the dialog to the contents
+	topSizer->SetSizeHints( this ); // set hints to honor min size
+
+}
+
Index: /trunk/src/HighScoreDialog.h
===================================================================
--- /trunk/src/HighScoreDialog.h	(revision 134)
+++ /trunk/src/HighScoreDialog.h	(revision 134)
@@ -0,0 +1,36 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+#ifndef HIGHSCOREDIALOG_INC
+#define HIGHSCOREDIALOG_INC
+
+#include "HighScoreTableDB.h"
+
+class HighScoreDialog : public wxDialog
+{
+public:
+	HighScoreDialog(wxWindow* parent,wxWindowID id,HighScoreTableDB* highscoredb);
+
+private:
+
+};
+
+
+#endif
Index: /trunk/src/HighScoreTableDB.cpp
===================================================================
--- /trunk/src/HighScoreTableDB.cpp	(revision 134)
+++ /trunk/src/HighScoreTableDB.cpp	(revision 134)
@@ -0,0 +1,222 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+#include "HighScoreTableDB.h"
+#include <sstream>
+#include <iostream>
+
+using namespace std;
+
+///Default constructor
+HighScoreTableDB::HighScoreTableDB()
+{
+	/* Open the database which holds the settings. */
+#ifdef PORTABLE
+	m_path = "";
+#else
+	m_path = ((wxFileName::GetHomeDir()).mb_str());
+	m_path += "/";
+#endif
+	m_path += DBFILENAME;
+
+#ifdef DEBUG
+	if (this->Open(m_path)==SQLITE_OK)
+		cerr<<"file opened: "<<m_path<<endl;
+#else
+	this->Open(m_path);
+#endif
+	/* Initialize the database table */
+	CreateTable();
+
+}
+
+/**
+\brief Destructor
+*
+* Closes the connection to the database
+*/
+HighScoreTableDB::~HighScoreTableDB()
+{
+	Close();
+}
+
+/**
+ * Creates the highscore database table if the table doesn't exist already. 
+ *
+*/
+void HighScoreTableDB::CreateTable()
+{
+	//Create the database table.
+	Query("CREATE TABLE IF NOT EXISTS highscore (place INTEGER PRIMARY KEY, name TEXT, date TEXT, score INTEGER)"); // create the table
+	
+	//Create the unique index on the 'key' column.
+	Query("CREATE UNIQUE INDEX IF NOT EXISTS place ON highscore ( place )");	
+}
+
+/**
+ * Returns the size of the high-score table stored in the database.
+ * \return high-score table size
+ */
+int HighScoreTableDB::GetSize()
+{
+	return m_size;
+}
+/**
+ * Set the size of the high-score table stored in the database.
+ * \param size the desired size for the high-score table.
+ */
+void HighScoreTableDB::SetSize(int size)
+{
+	string tmp_query;
+	std::ostringstream sstr;
+	
+	for(int i = 1; i<=size; i++){
+		sstr.str("");
+		tmp_query="INSERT OR IGNORE INTO highscore (place,name,score,date) VALUES( ";
+		sstr<<i<<flush; //make sure the number realiy gets into the stream
+		tmp_query += sstr.str(); 
+		tmp_query += ",\"anonymous\", 0, \"never\")";
+		Query(tmp_query);
+	}
+	
+	sstr.str("");
+	sstr << size<<flush;
+	tmp_query = "DELETE FROM highscore WHERE place > " + sstr.str();
+	Query(tmp_query);
+	
+	m_size = size;
+
+}
+
+/**
+ * Check if a score qualifies for the highscore table
+ *\param score the score to be checked
+ *\return highscore position or 0 if doesn't qualify
+*/
+int HighScoreTableDB::IsHighScore(int score)
+{
+	list<string> scores;
+	int temp_score;
+	scores = Query("SELECT score FROM highscore");
+	
+	list<string>::iterator p = scores.begin();
+	int i = 1;
+	while (p != scores.end()) {
+		temp_score = atoi(p->c_str());
+		if(score > temp_score)
+			break;
+		i++;
+		p++;
+	}
+	if (i<=m_size)
+		return i;
+	return 0; // the score doesn't qualifiy
+}
+
+/**
+ * Submits a score to the high-score table.
+ *
+ * The function checks if the scores qualifies using (IsHighScore())and then adds
+ * the score to the high-score table stored in the database.
+ * \see IsHighScore()
+ * \param name the name of the submitted score's holder.
+ * \param date the date and time of the game in which the submited score was scored.
+ * \param score the actual submited score that was scored.
+ * \return the place in the high score table of the submited score. 0 if the score didn't qualify.
+ */
+int HighScoreTableDB::SendHighScore(std::string name, std::string date, int score)
+{
+	int place;
+	std::ostringstream sstr;
+	
+	std::string tmp_date, tmpswap_date="", tmp_name,tmpswap_name="";
+	int tmp_score, tmpswap_score=0;
+
+	place = IsHighScore(score);
+	if(!place) //the score doesn't qualify
+		return 0;
+
+	string tmp_query;
+	list<string> result;
+	list<string>::iterator p;
+
+		
+	//first move all the rows starting at 'place' one row down
+	for (int i = place; i <= m_size ; i++){
+		sstr.str("");
+		//Get the current score and details of the row and then move them one row below;
+		tmp_query="SELECT name,date,score FROM highscore WHERE place=";
+		sstr<<i<<flush; //make sure the number realiy gets into the stream
+		tmp_query += sstr.str(); 
+		result = Query(tmp_query);
+		p = result.begin();
+		tmp_name=*(p);
+		tmp_date=*(++p);
+		tmp_score= atoi((++p)->c_str());
+
+		sstr.str("");
+		tmp_query="REPLACE INTO highscore (place,name,date,score) VALUES(";
+		sstr<<i<<flush; //make sure the number realiy gets into the stream
+		tmp_query += sstr.str(); 
+		tmp_query += ",";
+		tmp_query +="\""+tmpswap_name+"\"" +", " + "\""+tmpswap_date+"\"" + ", ";
+
+		sstr.str("");
+		sstr<<tmpswap_score<<flush; //make sure the number realiy gets into the stream
+		tmp_query += sstr.str()+")"; 
+		result = Query(tmp_query);
+
+		//pass the info to the next item
+		tmpswap_score = tmp_score;
+		tmpswap_name = tmp_name;
+		tmpswap_date = tmp_date;
+	}
+	//now replace the row at 'place'
+	sstr.str("");
+	tmp_query="REPLACE INTO highscore (place,name,date,score) VALUES(";
+	sstr<<place<<flush; //make sure the number realiy gets into the stream
+	tmp_query += sstr.str(); 
+	sstr.str("");
+	tmp_query += ",";
+	tmp_query +="\""+name+"\"" +", " + "\""+date+"\"" + ", ";
+	sstr<<score<<flush; //make sure the number realiy gets into the stream
+	tmp_query += sstr.str()+")"; 
+	result = Query(tmp_query);
+
+	return place;
+}
+
+
+/**
+ * Return the entire high-score table.
+ * @return a list of strings where each three strings represent an entire column.
+ */
+std::list<std::string> HighScoreTableDB::GetHighScoreTable()
+{
+	std::ostringstream sstr;
+	sstr.str("");
+	string tmp_query = "SELECT name,date,score FROM highscore LIMIT ";
+	sstr<<m_size<<flush;
+	tmp_query += sstr.str();
+	
+	return Query(tmp_query);
+}
+
Index: /trunk/src/HighScoreTableDB.h
===================================================================
--- /trunk/src/HighScoreTableDB.h	(revision 134)
+++ /trunk/src/HighScoreTableDB.h	(revision 134)
@@ -0,0 +1,65 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+/**\file HighScoreTableDB.h
+ *\brief Header file for HighScoreTableDB class.
+ *
+ * This file contains the header for the SettingsDB class and all the nessecery include files.
+*/
+
+/// HighScoreTableDB - a class for the management of highscore tables.
+/**
+HighScoreTableDB is designed to handle all the managment and keeping of an high-score table.
+This will be pretty generic class with some specific setting for the class in the beginning of it's definitions.
+*/
+
+#include "DBwrapper.h"
+#include "wx/filename.h"
+
+
+#ifndef HIGHSCORETABLEDB_INC
+#define HIGHSCORETABLEDB_INC
+
+///Sets the file name of the database the class will open.
+#ifndef PORTABLE
+	#define DBFILENAME ".OpenYahtzee" 
+#else
+	#define DBFILENAME "OpenYahtzee.dat"
+#endif
+
+class HighScoreTableDB : public DBwrapper
+{
+public:
+	HighScoreTableDB();
+	~HighScoreTableDB();
+	int IsHighScore(int score); //return the place or return zero if outside the table.
+	int SendHighScore(std::string name, std::string date, int score);
+	void SetSize(int size);
+	int GetSize();
+
+	std::list<std::string> GetHighScoreTable();
+private:
+	std::string m_path;
+	void CreateTable();
+	int m_size; ///holds the highscoretable size. -1 for unlimited.
+};
+
+
+#endif
Index: /trunk/src/Icon.h
===================================================================
--- /trunk/src/Icon.h	(revision 134)
+++ /trunk/src/Icon.h	(revision 134)
@@ -0,0 +1,34 @@
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+/**\file Icon.h
+ *\brief Header file for icons.
+ *
+ * This file includes the neccessery includes and definitions for the icons in the program.
+*/
+
+
+#ifdef WIN32 //windows demands 32x32 icons for the program
+	#include "icon32.xpm"
+	#define ICON icon32_xpm
+#else
+	#include "icon.xpm"
+	#define ICON icon_xpm
+#endif
Index: /trunk/src/MainFrame.cpp
===================================================================
--- /trunk/src/MainFrame.cpp	(revision 134)
+++ /trunk/src/MainFrame.cpp	(revision 134)
@@ -0,0 +1,1386 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+ /***********************************************
+ *	This File contains the definitions	*
+ *	of MainFrame's functions                *
+ ***********************************************/
+
+//#define DEBUG
+
+#include <wx/wx.h>
+
+#include "MainFrame.h"
+#include "wxDynamicBitmap.h"
+#include "ObjectsID.h"
+#include "HighScoreDialog.h"
+#include "SettingsDialog.h"
+#include "About.h"
+#include "UtilityFunctions.h"
+#include <iostream>
+#include <sstream>
+#include <cstdlib>
+#include <wx/version.h>
+
+//include the icon file
+#include "Icon.h"
+
+//default values - design
+#define SPACE_SIZE 1
+#define DICE_SPACE 3
+#ifdef WIN32
+	#define KEEP_SPACE 13
+	#define VERTICAL_ROLL_SIZEX 64
+	#define VERTICAL_ROLL_SIZEY 53
+#else
+	#define KEEP_SPACE 5
+	#define VERTICAL_ROLL_SIZEX 64
+	#define VERTICAL_ROLL_SIZEY 64
+#endif
+#define VER_DICE_SPACER 10
+
+//default values - settings
+#define DEF_HIGHSCORESIZE 20
+#define OY_VERSION "1.8.0"
+
+const wxEventType wxEVT_ENABLE_ROLL = wxNewEventType();
+
+MainFrame::MainFrame(const wxString& title, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE)
+        : wxFrame(NULL, wxID_ANY, title, wxDefaultPosition, size, style)
+{
+	//give the frame an icon
+	SetIcon(wxIcon(ICON));
+
+	m_settingsdb = new SettingsDB(); //Get the settings database connection
+	m_highscoredb = new HighScoreTableDB();
+
+	m_evt_handler = new MainFrameEvtHandler(this);
+	
+	InitializeDatabase();//this must come _after_ m_settingsdb and m_highscoredb are created
+
+	//bitmap_dices[0] = new wxBitmap(one_xpm);
+	//bitmap_dices[1] = new wxBitmap(two_xpm);
+	//bitmap_dices[2] = new wxBitmap(three_xpm);
+	//bitmap_dices[3] = new wxBitmap(four_xpm);
+	//bitmap_dices[4] = new wxBitmap(five_xpm);
+	//bitmap_dices[5] = new wxBitmap(six_xpm);
+	
+	//randomize the random-number generator based on the time
+	srand( (unsigned)time( NULL ) );
+	
+	AddMenus();
+
+	AddControlsAndLayout();
+	
+	//make the text boxes uneditable to the user	
+	wxTextCtrl *textctrl;
+	for(int i = ID_ACESTEXT;i<=ID_GRANDTOTAL;i++) {
+		textctrl = (wxTextCtrl*) FindWindow(i);
+		textctrl->SetEditable(false);
+	}
+	
+	//disable the undo button
+	(GetMenuBar()->FindItem(ID_UNDO))->Enable(false);
+
+	ConnectEventTable();
+	
+	ResetRolls();
+	m_yahtzee = false;
+	m_yahtzeebonus = false;
+	m_numofplaysleft = 13;
+
+}
+
+/**
+ * Adds the menus and menu items to the MainFrame.
+ */
+void MainFrame::AddMenus()
+{
+	/*Create the menus*/
+	wxMenu *gameMenu = new wxMenu;	//create Game menu
+	wxMenu *helpMenu = new wxMenu;	//create Help menu
+	
+	
+	//insert menu items into menu Help
+	helpMenu->Append(ID_CHECK_FOR_UPDATES, wxT("&Check for Updates"),
+			wxT("Check for new version of the game via the web"));
+	helpMenu->AppendSeparator();
+	helpMenu->Append(ID_SENDCOMMENT, wxT("&Send a Comment to Developers"),
+			wxT("Send a comment to the developers of the game"));
+	helpMenu->AppendSeparator();
+	helpMenu->Append(wxID_ABOUT, wxT("&About...\tF1"),
+			wxT("Show about dialog"));
+
+	//insert menu items into menu Game
+	gameMenu->Append(ID_NEWGAME,wxT("&New Game\tF2"),wxT("Start a new game"));
+	//create the undo button and make it disabled
+	gameMenu->Append(ID_UNDO,wxT("&Undo\tCTRL+Z"),wxT("Undo the last move"));
+	gameMenu->Append(ID_SHOWHIGHSCORE,wxT("High &Scores"),wxT("Show high-scores table"));
+	gameMenu->Append(ID_SETTINGS,wxT("Settings"),wxT("Show settings dialog"));
+	gameMenu->Append(wxID_EXIT, wxT("E&xit\tAlt-X"),
+			wxT("Quit this program"));
+	
+	// Declare the menu-bar and append the freshly created menus to the menu bar...
+	wxMenuBar *menuBar = new wxMenuBar();
+	menuBar->Append(gameMenu, wxT("&Game"));
+	menuBar->Append(helpMenu, wxT("&Help"));
+	
+	// ... and attach this menu bar to the frame
+	SetMenuBar(menuBar);
+}
+
+/**
+ * Add the controls to the frame and use sizers to lay them out.
+ */
+void MainFrame::AddControlsAndLayout()
+{
+	wxPanel* panel = new wxPanel(this, ID_PANEL,
+   		wxDefaultPosition, wxDefaultSize);
+
+	wxBoxSizer *topSizer;
+	wxFlexGridSizer *diceSizer;
+
+	if (m_settings.horizontal_layout) {
+		topSizer = new wxBoxSizer( wxVERTICAL );
+		sectionsSizer = new wxBoxSizer( wxHORIZONTAL );
+		diceSizer = new wxFlexGridSizer(2, 0, 0, 0);
+	} else {
+		topSizer = new wxBoxSizer( wxHORIZONTAL );
+		sectionsSizer = new wxBoxSizer( wxVERTICAL );
+		diceSizer = new wxFlexGridSizer(1, 0, 0);;
+	}
+
+	uppersection = new wxStaticBoxSizer( new wxStaticBox( 
+		panel, wxID_ANY, wxT("Upper Section") ), wxVERTICAL);
+	
+	lowersection = new wxStaticBoxSizer(new wxStaticBox(
+		panel, wxID_ANY, wxT("Lower Section") ), wxVERTICAL);
+	
+	wxFlexGridSizer* uppergrid = new wxFlexGridSizer(2, 0, 10);
+	wxFlexGridSizer* lowergrid = new wxFlexGridSizer(2, 0, 10);
+
+	//BEGIN layout for the upper section of the score board
+	uppergrid->Add(new wxButton(panel,ID_ACES,wxT("Aces")),
+		0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_ACESTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(new wxButton(panel,ID_TWOS,wxT("Twos")),
+		0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_TWOSTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(new wxButton(panel,ID_THREES,wxT("Threes")),
+		0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_THREESTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(new wxButton(panel,ID_FOURS,wxT("Fours")),
+		0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_FOURSTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(new wxButton(panel,ID_FIVES,wxT("Fives")),
+		0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_FIVESTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(new wxButton(panel,ID_SIXES,wxT("Sixes")),
+		0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_SIXESTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(new wxStaticText(panel, wxID_ANY, wxT("Total score:")),
+		0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_UPPERSECTIONTOTAL),
+		1, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxStaticText(panel, wxID_ANY, wxT("Bonus:")),
+		0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_BONUS),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(new wxStaticText(panel, wxID_ANY,
+		wxT("Total of upper section:")), 0, wxALL, SPACE_SIZE);
+	uppergrid->Add(new wxTextCtrl(panel, ID_UPPERTOTAL),
+		1, wxALL, SPACE_SIZE);
+	//END layout for the upper section of the score board
+
+	//BEGIN layout for the lower section of the score board
+	lowergrid->Add(new wxButton(panel,ID_THREEOFAKIND,wxT("3 of a kind")),
+		0, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_THREEOFAKINDTEXT),
+		1, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxButton(panel,ID_FOUROFAKIND,wxT("4 of a kind")),
+		0, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_FOUROFAKINDTEXT),
+		1, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxButton(panel,ID_FULLHOUSE,wxT("Full House")),
+		0, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_FULLHOUSETEXT),
+		1, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxButton(panel, ID_SMALLSEQUENCE,
+		wxT("Sequence of 4")), 0, wxALL,SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_SMALLSEQUENCETEXT),
+		1, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxButton(panel, ID_LARGESEQUENCE,
+		wxT("Sequence of 5")), 0, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_LARGESEQUENCETEXT),
+		1, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxButton(panel, ID_YAHTZEE, wxT("Yahtzee")),
+		0, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel,ID_YAHTZEETEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(new wxButton(panel, ID_CHANCE, wxT("Chance")),
+		0, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_CHANCETEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(new wxStaticText(panel, wxID_ANY,
+		wxT("Yahtzee Bonus")), 0, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_YAHTZEEBONUSTEXT),
+		1, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxStaticText(panel, wxID_ANY, 
+		wxT("Total of lower section:")),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_LOWERTOTAL),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(new wxStaticText(panel, wxID_ANY, wxT("Grand Total:")),
+		0, wxALL, SPACE_SIZE);
+	lowergrid->Add(new wxTextCtrl(panel, ID_GRANDTOTAL),1,wxALL,SPACE_SIZE);
+	//END layout for the lower section of the score board
+
+	uppersection->Add(uppergrid);
+	lowersection->Add(lowergrid);
+	sectionsSizer->Add(uppersection, 0, wxALL, 5);
+	sectionsSizer->Add(lowersection, 0, wxALL, 5);
+
+	//BEGIN layout for the dice section of the score board
+	if (m_settings.horizontal_layout) {
+		diceSizer->Add(new wxDynamicBitmap(panel, ID_DICE1,
+			m_dice_graphics.GetDice(1)), 0, wxALL, DICE_SPACE);
+		diceSizer->Add(new wxDynamicBitmap(panel,
+			ID_DICE2, m_dice_graphics.GetDice(2)), 0, wxALL, DICE_SPACE);
+		diceSizer->Add(new wxDynamicBitmap(panel,
+			ID_DICE3, m_dice_graphics.GetDice(3)), 0, wxALL,DICE_SPACE);
+		diceSizer->Add(new wxDynamicBitmap(panel,
+			ID_DICE4, m_dice_graphics.GetDice(4)), 0, wxALL,DICE_SPACE);
+		diceSizer->Add(new wxDynamicBitmap(panel,
+			ID_DICE5, m_dice_graphics.GetDice(5)), 0, wxALL,DICE_SPACE);
+		diceSizer->Add(new wxButton(panel, ID_ROLL, wxT("Roll!"),
+			wxDefaultPosition, wxSize(64,64)), 0, wxALL,DICE_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE1KEEP,
+			wxT("Keep")), 0, wxBOTTOM | wxLEFT,KEEP_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE2KEEP,
+			wxT("Keep")), 0, wxBOTTOM | wxLEFT, KEEP_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE3KEEP,
+			wxT("Keep")), 0, wxBOTTOM | wxLEFT, KEEP_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE4KEEP,
+			wxT("Keep")), 0, wxBOTTOM | wxLEFT, KEEP_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE5KEEP,
+			wxT("Keep")), 0, wxBOTTOM | wxLEFT, KEEP_SPACE);
+	} else {
+		diceSizer->Add(new wxDynamicBitmap(panel, ID_DICE1,
+			m_dice_graphics.GetDice(1)), 0, wxALL, DICE_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE1KEEP,
+			wxT("Keep")), 0, wxLEFT, KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(new wxDynamicBitmap(panel,ID_DICE2,
+			m_dice_graphics.GetDice(2)), 0, wxALL, DICE_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE2KEEP,
+			wxT("Keep")), 0, wxLEFT, KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(new wxDynamicBitmap(panel, ID_DICE3,
+			m_dice_graphics.GetDice(3)), 0, wxALL, DICE_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE3KEEP,
+			wxT("Keep")), 0, wxLEFT, KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(new wxDynamicBitmap(panel, ID_DICE4,
+			m_dice_graphics.GetDice(4)), 0, wxALL, DICE_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE4KEEP,
+			wxT("Keep")), 0, wxLEFT, KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(new wxDynamicBitmap(panel, ID_DICE5, 
+			m_dice_graphics.GetDice(5)), 0, wxALL, DICE_SPACE);
+		diceSizer->Add(new wxCheckBox(panel, ID_DICE5KEEP,
+			wxT("Keep")), 0, wxLEFT, KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(new wxButton(panel, ID_ROLL, wxT("Roll!"),
+			wxDefaultPosition, wxSize(VERTICAL_ROLL_SIZEX,
+			VERTICAL_ROLL_SIZEY)), 0, wxALL, DICE_SPACE);
+	}
+	//END layout for the dice section of the score board *******/
+	
+	topSizer->Add(sectionsSizer);
+	topSizer->Add(diceSizer);	
+
+	panel->SetSizer(topSizer);
+	
+	topSizer->Fit(this);
+	topSizer->SetSizeHints(this);
+}
+
+/**
+ * Connects the tables to the event handlers
+ */
+void MainFrame::ConnectEventTable()
+{
+	//BEGIN connecting the menu items' events
+	Connect(wxID_EXIT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(MainFrame::OnQuit));
+	Connect(wxID_ABOUT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(MainFrame::OnAbout));
+	Connect(ID_CHECK_FOR_UPDATES, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(MainFrame::OnCheckForUpdates));
+	Connect(ID_SENDCOMMENT, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(MainFrame::OnSendComment));
+	Connect(ID_NEWGAME, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(MainFrame::OnNewGame));
+	Connect(ID_UNDO, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(MainFrame::OnUndo));
+	Connect(ID_SHOWHIGHSCORE, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(MainFrame::OnShowHighscore));
+	Connect(ID_SETTINGS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler(MainFrame::OnSettings));
+	//END connecting the menu items' events
+
+	Connect(ID_ROLL, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::OnRollButton));
+	Connect(ID_ROLL, wxEVT_ENABLE_ROLL, wxCommandEventHandler (MainFrame::OnRollButton));
+
+	//BEGIN connecting the scoreboard buttons to the events
+	Connect(ID_ACES,ID_SIXES, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::OnUpperButtons));
+	Connect(ID_THREEOFAKIND, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::On3ofakindButton));
+	Connect(ID_FOUROFAKIND, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::On4ofakindButton));
+	Connect(ID_FULLHOUSE, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::OnFullHouseButton));
+	Connect(ID_SMALLSEQUENCE, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::OnSmallSequenceButton));
+	Connect(ID_LARGESEQUENCE, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::OnLargeSequenceButton));
+	Connect(ID_YAHTZEE, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::OnYahtzeeButton));
+	Connect(ID_CHANCE, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::OnChanceButton));
+	Connect(ID_DICE1,ID_DICE5, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (MainFrame::OnDiceClick));
+	Connect(ID_DICE1KEEP,ID_DICE5KEEP, wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler (MainFrame::OnKeepClick));
+	//END connecting the scoreboard buttons to the event
+
+	/* The following code connects the on wxEVT_ENTER_WINDOW and 
+	 * wxEVT_LEAVE_WINDOW events to the score buttons to handle the score
+	 * hints. For some unknown technical problem we have to directly connect
+	 * the events, otherwise the wxEVT_LEAVE_WINDOW doesn't get generated.
+	 * We have to use event handler other than MainFrame's as the regular
+	 * event handler leads to segmantation fault.
+	 */
+	wxButton *temp;
+	for (int i = ID_ACES; i<=ID_CHANCE; i++) {
+		temp = ((wxButton *)FindWindow(i));
+		((wxWindow *)FindWindow(i))->PushEventHandler(m_evt_handler);
+		((wxWindow *)FindWindow(i))->Connect(wxEVT_LEAVE_WINDOW, wxMouseEventHandler(MainFrameEvtHandler::OnScoreMouseLeave), temp, m_evt_handler);
+		((wxWindow *)FindWindow(i))->Connect(wxEVT_ENTER_WINDOW, wxMouseEventHandler(MainFrameEvtHandler::OnScoreMouseEnter), temp, m_evt_handler);
+	}
+}
+
+
+/*********EVENT PROCCESSING FUNCTIONS********/
+
+void MainFrame::OnAbout(wxCommandEvent& event)
+{
+#ifdef PORTABLE
+	AboutDialog *about = new AboutDialog(this,wxID_ANY,wxT("About Open Yahtzee PE"));
+#else
+	AboutDialog *about = new AboutDialog(this,wxID_ANY,wxT("About Open Yahtzee"));
+#endif
+	about->ShowModal();
+}
+
+/**
+ * Connects to the Open Yahtzee website on sourceforge.net and checks for 
+ * updates to the game.
+ * \param event 
+ */
+void MainFrame::OnCheckForUpdates (wxCommandEvent& event)
+{
+	
+	wxString link = wxT("http://openyahtzee.sourceforge.net/update.php?version=");
+	
+	link += wxT(OY_VERSION);
+
+	LaunchBrowser(link);
+}
+
+
+/**
+ * Starts up the user browser and connects to the Open Yahtzee website's
+ * feedback page.
+ * \param event 
+ */
+void MainFrame::OnSendComment (wxCommandEvent& event)
+{
+	wxString link = wxT("http://openyahtzee.sourceforge.net/feedback.php");
+	
+	LaunchBrowser(link);
+}
+
+void MainFrame::OnQuit(wxCommandEvent& event)
+{
+	// Destroy the frame
+	Close();
+}
+
+/**
+ * This is the event handler of the New Game menu item. It starts a new 
+ * game and clears the board from the last game.
+ * \param event 
+ */
+void MainFrame::OnNewGame(wxCommandEvent& event)
+{
+	//disable the undo button so it won't be enabled when a new game is started.
+	(GetMenuBar()->FindItem(ID_UNDO))->Enable(false);
+	
+	ResetRolls();
+	m_yahtzee = false;
+	m_numofplaysleft = 13;
+	
+	for (int i = ID_ACESTEXT; i<= ID_GRANDTOTAL; i++)
+		((wxTextCtrl*) FindWindow(i))->Clear();
+	for (int i = ID_ACES; i<= ID_CHANCE; i++)
+		((wxButton*) FindWindow(i))->Enable(true);
+}
+
+/**
+ * This function handles the undo events. It's connected to the Undo menu item.
+ *
+ * Note that the function only allows undoing of scoring actions and not dice
+ * rolls. Also it won't allow the undoing of the last move of the game because
+ * of a technical problem relating to the case an high-score was made and then
+ * the user undo the last move and rescore another high-score and so on.
+ * \param event 
+ */
+void MainFrame::OnUndo(wxCommandEvent& event)
+{
+	m_rolls = m_rollsundo;
+
+	//after the user scored the button was enabled, check if it should be disabled
+	if (m_rolls <= 0) //we don't have remaining rolls 
+		((wxButton*) FindWindow(ID_ROLL)) -> Enable(false);
+
+	//restore the 'keep' checkboxes
+	for (int i=0; i<5; i++)
+		((wxCheckBox*) FindWindow(i + ID_DICE1KEEP)) -> Enable(true);
+	
+	//reset the users last choice
+	FindWindow(m_lastmove)->Enable(true);
+
+	//clear the score;
+	((wxTextCtrl*)FindWindow(ID_ACESTEXT + (m_lastmove - ID_ACES)))->SetValue(wxT(""));
+	
+	//Undo the Yahtzee flag if needed
+	if (m_lastmove == ID_YAHTZEE) {
+		m_yahtzee = false;
+	}
+
+	//undo also the yahtzee bonus if needed
+	if (m_yahtzeebonus) {
+		long temp;
+		wxString tempstr;
+	
+		tempstr = ((wxTextCtrl*) FindWindow(ID_YAHTZEEBONUSTEXT)) -> GetValue();
+		tempstr.ToLong(&temp,10);
+		temp -= 100; //this line reduces the points given for the yahtzee bonus
+		tempstr.Printf(wxT("%i"),temp);
+		((wxTextCtrl*) FindWindow(ID_YAHTZEEBONUSTEXT)) -> SetValue(tempstr);
+	}
+
+	//recalculate the subtotals
+	CalculateSubTotal();
+
+	(GetMenuBar()->FindItem(ID_UNDO))->Enable(false);
+	//cancel the counting for the choice that was canceled
+	m_numofplaysleft++;
+}
+
+/**
+ * This function enables the undo button and stores the last move
+ * \param id 
+ */
+inline void MainFrame::EnableUndo(int id)
+{
+	if (m_numofplaysleft) {
+		(GetMenuBar()->FindItem(ID_UNDO))->Enable(true);
+		m_lastmove = id;
+	}
+}
+
+/**
+ * Shows the high-score dialog. Connected to the Game->"Show High Score" menu item.
+ * \param event 
+ */
+void MainFrame::OnShowHighscore(wxCommandEvent& event)
+{
+	HighScoreDialog *dialog = new HighScoreDialog(this,wxID_ANY,m_highscoredb);
+	dialog->ShowModal();
+}
+
+/**
+ * Shows the settings dialog. This event-handler is connected to Game->Settings
+ * menu item.
+ * \param event 
+ */
+void MainFrame::OnSettings( wxCommandEvent& event)
+{
+	SettingsDialog *dialog = new SettingsDialog(this,wxID_ANY);
+	SettingsDialogData data;
+	std::ostringstream sstr;
+	
+	data.highscoresize = m_highscoredb->GetSize();
+
+	data.animate = (m_settingsdb->GetKey("animate")=="Yes")?true:false;
+	data.subtotal = (m_settingsdb->GetKey("calculatesubtotal")=="Yes")?true:false;
+	data.score_hints = m_settings.score_hints;
+	data.horizontal = (m_settingsdb->GetKey("horizontallayout")=="Yes")?true:false;
+	
+	dialog->SetData(data);
+	
+	if(dialog->ShowModal()!=wxID_OK)
+		return;
+	
+	data = dialog->GetData();
+
+	if(data.reset)
+		m_highscoredb->SetSize(0);
+	
+	sstr<<data.highscoresize<<std::flush;
+	m_settingsdb->SetKey("highscoresize",sstr.str());
+			
+	m_highscoredb->SetSize(data.highscoresize);
+	
+	if (data.animate){
+		m_settingsdb->SetKey("animate","Yes");
+		m_settings.animate = true;
+	} else {
+		m_settingsdb->SetKey("animate","No");
+		m_settings.animate = false;
+	}
+
+	if (data.subtotal){
+		m_settingsdb->SetKey("calculatesubtotal","Yes");
+		m_settings.calculate_subtotal = true;
+	} else {
+		m_settingsdb->SetKey("calculatesubtotal","No");
+		m_settings.calculate_subtotal = false;
+	}
+	((wxTextCtrl*) FindWindow(ID_UPPERSECTIONTOTAL)) -> SetValue(wxT(""));
+	((wxTextCtrl*) FindWindow(ID_LOWERTOTAL)) -> SetValue(wxT(""));
+	CalculateSubTotal();
+
+	if (data.score_hints){
+		m_settingsdb->SetKey("score_hints","Yes");
+		m_settings.score_hints = true;
+	} else {
+		m_settingsdb->SetKey("score_hints","No");
+		m_settings.score_hints = false;
+	}
+
+	if (data.horizontal){
+		m_settingsdb->SetKey("horizontallayout","Yes");
+		m_settings.horizontal_layout = true;
+		Relayout();			
+	} else {
+		m_settingsdb->SetKey("horizontallayout","No");
+		m_settings.horizontal_layout = false;
+		Relayout();
+	}
+}
+
+/**
+ * Event handler for the Roll button. It checks the settings if it should
+ * animate the dice and then rolls them accordingly. It also checks for the
+ * status of the "keep" checkboxes.
+ * \param event 
+ */
+void MainFrame::OnRollButton (wxCommandEvent& event)
+{
+	short int dice[5];	//holds the dices score
+	
+	if (event.GetEventType() == wxEVT_IDLE) {
+		m_skiproll = false;
+		Disconnect(wxEVT_IDLE,  wxCommandEventHandler(MainFrame::OnRollButton));
+		return;
+	}
+	
+	//skip rolling the dice if the user accidently rolled the dice before they finished spinning.
+	if (m_skiproll) return;
+	m_skiproll = true;
+
+	//fill the dice array with the old values
+	dice[0]=m_score_dice.GetDice(1);
+	dice[1]=m_score_dice.GetDice(2);
+	dice[2]=m_score_dice.GetDice(3);
+	dice[3]=m_score_dice.GetDice(4);
+	dice[4]=m_score_dice.GetDice(5);
+	//roll the dice...
+	if (m_settings.animate) {
+		int dice_throws[5] = {0,0,0,0,0};
+		for (int i=0; i<5; i++) { //set the number of rolls for each dice
+			if (!((wxCheckBox*) FindWindow(i + ID_DICE1KEEP))->IsChecked()) {
+				dice_throws[i] = (rand()%15)+3; //ensures the number is at least one.
+			}
+		}
+		while (dice_throws[0] || dice_throws[1] || dice_throws[2] || dice_throws[3] || dice_throws[4]) {
+			for (int i=0 ; i<5; i++){
+				if(dice_throws[i]){
+					dice_throws[i]--;
+					dice[i] = (int)(6.0*rand()/RAND_MAX)+1;
+					((wxDynamicBitmap*) FindWindow(i + 
+						ID_DICE1)) -> SetBitmap(
+						m_dice_graphics.GetDice(dice[i]));
+				}
+			}
+			::wxMilliSleep(100);
+		}
+	} else {
+		for (int i=0; i<5; i++) {
+			if (!((wxCheckBox*) FindWindow(i + ID_DICE1KEEP))->IsChecked()) {
+				dice[i] = (int)(6.0*rand()/RAND_MAX)+1;
+				((wxDynamicBitmap*) FindWindow(i + ID_DICE1))->
+					SetBitmap(m_dice_graphics.GetDice(dice[i]));
+			}
+		}
+	}
+
+	m_score_dice.SetDice(dice);
+	m_score_dice.SetYahtzeeJoker(YahtzeeJoker());
+	m_rolls -= 1;
+	#ifndef DEBUG
+	if (m_rolls <= 0) 
+		((wxButton*) FindWindow(ID_ROLL)) -> Enable(false);
+	#endif
+	
+	//enable the keep checkboxes
+	for (int i=0; i<5; i++)
+		((wxCheckBox*) FindWindow(i + ID_DICE1KEEP)) -> Enable(true);
+	
+	//we rolled the dices so undoing isn't allowed
+	(GetMenuBar()->FindItem(ID_UNDO))->Enable(false);
+	m_yahtzeebonus = false; //if we scored yahtzee bonus before we don't care anymore.
+	
+	Connect(wxEVT_IDLE, wxCommandEventHandler(MainFrame::OnRollButton));
+}
+
+/**
+ * This is the event-handler for all of the scoring buttons of the upper section.
+ *
+ * It gets the id of the button that called the event handler by comparing it 
+ * to the id of the aces button it figures what button was pressed, And updates
+ * the suiting score textbox (again by comparing the id to the one of the aces
+ * checbox).
+ * \param event 
+ */
+void MainFrame::OnUpperButtons (wxCommandEvent& event)
+{
+	wxString out;
+	short int temp;
+	if(m_rolls < 3){
+		YahtzeeBonus();
+		switch(event.GetId()) {
+		case ID_ACES:
+			temp = m_score_dice.Aces();
+			break;
+		case ID_TWOS:
+			temp = m_score_dice.Twos();
+			break;
+		case ID_THREES:
+			temp = m_score_dice.Threes();
+			break;
+		case ID_FOURS:
+			temp = m_score_dice.Fours();
+			break;
+		case ID_FIVES:
+			temp = m_score_dice.Fives();
+			break;
+		case ID_SIXES:
+			temp = m_score_dice.Sixes();
+			break;
+		}
+	
+		out.Printf(wxT("%i"),temp);
+		((wxTextCtrl*) FindWindow(event.GetId() - ID_ACES + ID_ACESTEXT))->SetValue(out);
+		((wxTextCtrl*) FindWindow(event.GetId() - ID_ACES + ID_ACESTEXT))->SetBackgroundColour(*wxWHITE);
+		
+		PostScore(event.GetId());
+	}
+	else 
+		wxMessageBox(wxT("First you need to roll, and after you roll you may score"), wxT("Open Yahtzee"), wxOK | wxICON_INFORMATION, this);
+}
+
+/**
+ * Event handler for the "3 of a kind" score button.
+ * \param event 
+ */
+void MainFrame::On3ofakindButton(wxCommandEvent& event)
+{
+	if(m_rolls>=3) {
+		wxMessageBox(wxT("First you need to roll, and after you roll you may score"), wxT("Open Yahtzee"), wxOK | wxICON_INFORMATION, this);
+		return;
+	}
+	YahtzeeBonus();
+	wxString out;
+	
+	out.Printf(wxT("%i"),m_score_dice.ThreeOfAKind());
+	((wxTextCtrl*) FindWindow(ID_THREEOFAKINDTEXT))->SetValue(out);
+	((wxTextCtrl*) FindWindow(ID_THREEOFAKINDTEXT))->SetBackgroundColour(*wxWHITE);
+	
+	PostScore(event.GetId());
+}
+
+/**
+ * Event handler for the "4 of a kind" score button.
+ * \param event 
+ */
+void MainFrame::On4ofakindButton(wxCommandEvent& event)
+{
+	if(m_rolls>=3) {
+		wxMessageBox(wxT("First you need to roll, and after you roll you may score"), wxT("Open Yahtzee"), wxOK | wxICON_INFORMATION, this);
+		return;
+	}
+	YahtzeeBonus();
+	wxString out;
+
+	out.Printf(wxT("%i"),m_score_dice.FourOfAKind());
+	((wxTextCtrl*) FindWindow(ID_FOUROFAKINDTEXT))->SetValue(out);
+	((wxTextCtrl*) FindWindow(ID_FOUROFAKINDTEXT))->SetBackgroundColour(*wxWHITE);
+	
+	PostScore(event.GetId());
+}
+
+/**
+ * Event handler for the full-house score button.
+ * \param event 
+ */
+void MainFrame::OnFullHouseButton(wxCommandEvent& event)
+{
+	wxString out;
+
+	if(m_rolls>=3) {
+		wxMessageBox(wxT("First you need to roll, and after you roll you may score"), wxT("Open Yahtzee"), wxOK | wxICON_INFORMATION, this);
+		return;
+	}
+	YahtzeeBonus();
+
+	out.Printf(wxT("%i"), m_score_dice.FullHouse());
+	((wxTextCtrl*) FindWindow(ID_FULLHOUSETEXT))->SetValue(out);
+	((wxTextCtrl*) FindWindow(ID_FULLHOUSETEXT))->SetBackgroundColour(*wxWHITE);
+	
+	PostScore(event.GetId());
+}
+
+/**
+ * Event handler for the small-sequence score button.
+ * \param event 
+ */
+void MainFrame::OnSmallSequenceButton(wxCommandEvent& event)
+{
+	wxString out;
+
+	if(m_rolls>=3) {
+		wxMessageBox(wxT("First you need to roll, and after you roll you may score"), wxT("Open Yahtzee"), wxOK | wxICON_INFORMATION, this);
+		return;
+	}
+
+	YahtzeeBonus();
+	
+	out.Printf(wxT("%i"), m_score_dice.SmallSequence());
+	((wxTextCtrl*) FindWindow(ID_SMALLSEQUENCETEXT))->SetValue(out);
+	((wxTextCtrl*) FindWindow(ID_SMALLSEQUENCETEXT))->SetBackgroundColour(*wxWHITE);
+	
+	PostScore(event.GetId());
+}
+
+/**
+ * Event handler for the large-sequence score button.
+ * \param event 
+ */
+void MainFrame::OnLargeSequenceButton(wxCommandEvent& event)
+{
+	wxString out;
+	
+	if(m_rolls>=3) {
+		wxMessageBox(wxT("First you need to roll, and after you roll you may score"), wxT("Open Yahtzee"), wxOK | wxICON_INFORMATION, this);
+		return;
+	}
+
+	YahtzeeBonus();
+
+	out.Printf(wxT("%i"), m_score_dice.LargeSequence());
+	((wxTextCtrl*) FindWindow(ID_LARGESEQUENCETEXT))->SetValue(out);
+	((wxTextCtrl*) FindWindow(ID_LARGESEQUENCETEXT))->SetBackgroundColour(*wxWHITE);
+	
+	PostScore(event.GetId());
+}
+
+/**
+ * Event handler for the yahtzee score button.
+ * \param event 
+ */
+void MainFrame::OnYahtzeeButton(wxCommandEvent& event)
+{
+	wxString out;
+	
+	if(m_rolls>=3) {
+		wxMessageBox(wxT("First you need to roll, and after you roll you may score"), wxT("Open Yahtzee"), wxOK | wxICON_INFORMATION, this);
+		return;
+	}
+	
+	if (m_score_dice.IsYahtzee()) m_yahtzee = true;
+	out.Printf(wxT("%i"), m_score_dice.Yahtzee());
+	((wxTextCtrl*) FindWindow(ID_YAHTZEETEXT))->SetValue(out);
+	((wxTextCtrl*) FindWindow(ID_YAHTZEETEXT))->SetBackgroundColour(*wxWHITE);
+
+	PostScore(event.GetId());
+}
+
+/**
+ * Evnet handler for the chance score button.
+ * \param event 
+ */
+void MainFrame::OnChanceButton (wxCommandEvent& event)
+{
+	wxString out;
+	int temp = 0;
+	if(m_rolls < 3){
+		YahtzeeBonus();
+	
+		out.Printf(wxT("%i"),m_score_dice.Chance());
+		((wxTextCtrl*) FindWindow(ID_CHANCETEXT))->SetValue(out);
+		((wxTextCtrl*) FindWindow(ID_CHANCETEXT))->SetBackgroundColour(*wxWHITE);
+		
+		PostScore(event.GetId());
+	}
+	else 
+		wxMessageBox(wxT("First you need to roll, and after you roll you may score"), wxT("Open Yahtzee"), wxOK | wxICON_INFORMATION, this);
+
+}
+
+/**
+ * Event handler for mouse clicks on the dice.
+ *
+ * When clicking on the dice this event-handler ticks the appropriate "keep" checkbox.
+ * \param event 
+ */
+void MainFrame::OnDiceClick (wxCommandEvent& event)
+{
+	//tick the checkbox
+	if (((wxCheckBox*) FindWindow(event.GetId()-ID_DICE1 + ID_DICE1KEEP))->IsEnabled()){
+		bool newvalue = (((wxCheckBox*) FindWindow(event.GetId()-ID_DICE1 + ID_DICE1KEEP))->GetValue())?false:true;
+		((wxCheckBox*) FindWindow(event.GetId()-ID_DICE1 + ID_DICE1KEEP)) -> SetValue(newvalue);
+	}
+
+	//dispatch a click event on the checkbox
+	wxCommandEvent clickevent((event.GetId()-ID_DICE1 + ID_DICE1KEEP),wxEVT_COMMAND_CHECKBOX_CLICKED);
+	clickevent.SetEventObject( this );
+	clickevent.SetId(event.GetId()-ID_DICE1 + ID_DICE1KEEP);
+	this->OnKeepClick(clickevent); ///\todo find a better way to call the event handler.
+}
+
+void MainFrame::OnKeepClick (wxCommandEvent& event)
+{
+	wxCheckBox *temp = (wxCheckBox*) FindWindow(event.GetId());
+	((wxDynamicBitmap*) FindWindow(event.GetId()-ID_DICE1KEEP + ID_DICE1))->SetGrayScale(temp->GetValue());
+}
+
+
+//********************************************
+//******	General Functions	******
+//********************************************
+
+/**
+ * This function handles everything related to reseting the dice rolls after scoring.
+ */
+void MainFrame::ResetRolls()
+{
+	m_rollsundo = m_rolls;
+	m_rolls = 3;
+	((wxButton*) FindWindow(ID_ROLL)) -> Enable(true);
+	for (int i=0; i<5; i++){ 
+		((wxCheckBox*) FindWindow(i + ID_DICE1KEEP)) -> SetValue(false);
+		((wxCheckBox*) FindWindow(i + ID_DICE1KEEP)) -> Enable(false);
+		((wxDynamicBitmap*) FindWindow(i+ID_DICE1)) -> SetGrayScale(false);
+	}
+}
+
+/**
+ * This function checks for a Yahtzee Bonus situation and if one exists it scores accordingly.
+ */
+void MainFrame::YahtzeeBonus()
+{
+	long temp;
+	wxString tempstr;
+	
+	//if the player didn't have any yathzees yet he can't have the bonus;
+	if (!m_yahtzee)
+		return;
+	if (m_score_dice.IsYahtzee()) {
+		tempstr = ((wxTextCtrl*) FindWindow(ID_YAHTZEEBONUSTEXT)) -> GetValue();
+		tempstr.ToLong(&temp,10);
+		temp += 100;
+		tempstr.Printf(wxT("%i"),temp);
+		((wxTextCtrl*) FindWindow(ID_YAHTZEEBONUSTEXT)) -> SetValue(tempstr);
+		m_yahtzeebonus = true;
+	}	
+}
+
+/**
+ * This function checks whether we have a Yahtzee Joker situation.
+ * \return true if there is Yahtzee Joker, false otherwise.
+ */
+bool MainFrame::YahtzeeJoker()
+{
+	if (m_score_dice.IsYahtzee() && !(FindWindow(ID_ACES + 
+		m_score_dice.GetDice(1)-1)->IsEnabled()) && 
+		!(FindWindow(ID_YAHTZEE)->IsEnabled())) {
+		return true;
+	}
+	return false;
+}
+
+/**
+ * This function handles the end of game.
+ *
+ * When a game ends it calculates the total score and submit it to the high
+ * score list.
+ */
+void MainFrame::EndofGame()
+{
+	if(m_numofplaysleft>0)
+		return;
+	
+	wxString tempstr;
+	long temp;
+	long upperscore = 0;
+	long lowerscore = 0;
+
+	for (int i = ID_ACESTEXT; i<=ID_SIXESTEXT; i++){
+		tempstr = ((wxTextCtrl*) FindWindow(i)) -> GetValue();
+		tempstr.ToLong(&temp,10);
+		upperscore +=temp;
+	}
+	
+	tempstr.Printf(wxT("%i"),upperscore);
+	((wxTextCtrl*) FindWindow(ID_UPPERSECTIONTOTAL)) -> SetValue(tempstr);
+	
+	//check for bonus
+	if(upperscore>=63) {
+		((wxTextCtrl*) FindWindow(ID_BONUS)) -> SetValue(wxT("35"));
+		upperscore +=35;
+	} else
+		((wxTextCtrl*) FindWindow(ID_BONUS)) -> SetValue(wxT("0"));
+	
+	tempstr.Printf(wxT("%i"),upperscore);
+	((wxTextCtrl*) FindWindow(ID_UPPERTOTAL)) -> SetValue(tempstr);
+	
+	//calculate total on lower section
+	for (int i = ID_THREEOFAKINDTEXT; i<=ID_YAHTZEEBONUSTEXT; i++) {
+		tempstr = ((wxTextCtrl*) FindWindow(i)) -> GetValue();
+		tempstr.ToLong(&temp,10);
+		lowerscore +=temp;
+	}
+	
+	tempstr.Printf(wxT("%i"),lowerscore);
+	((wxTextCtrl*) FindWindow(ID_LOWERTOTAL)) -> SetValue(tempstr);
+	tempstr.Printf(wxT("%i"),upperscore + lowerscore);
+	((wxTextCtrl*) FindWindow(ID_GRANDTOTAL)) -> SetValue(tempstr);
+
+	//disable the roll button;
+	((wxButton*) FindWindow(ID_ROLL)) -> Enable(false);
+
+	tempstr.Printf(wxT("Your final score is %i points!"),lowerscore+upperscore);
+	wxMessageBox(tempstr, wxT("Game Ended"), wxOK | wxICON_INFORMATION, this);
+
+	//submit to high score
+	HighScoreHandler(lowerscore+upperscore);
+	
+}
+
+/**
+ * This function checks if a given score qualifies for the high score list and
+ * adds it to the list if it does.
+ * @param score The score submitted to the high score list.
+ */
+void MainFrame::HighScoreHandler(int score)
+{
+	int place;
+	std::string name,date;
+	wxCommandEvent newevent;
+
+
+	place = m_highscoredb->IsHighScore(score);
+	
+	if(!place)  //if the score didn't make it to the highscore table do nothing
+		return;
+	
+	wxString msg;
+	msg.Printf(wxT("Your score made it to the high score table. Your place is number %i.\nPlease enter your name below:"),place);
+
+	wxTextEntryDialog infodialog(this,msg,wxT("Please enter your name"),wxT(""),wxOK | wxCENTRE);
+	infodialog.ShowModal();
+
+	name = infodialog.GetValue().mb_str();
+
+	//get the date
+	wxDateTime now = wxDateTime::Now();
+	date = now.FormatISOTime().mb_str();
+	date +=" ";
+	date += now.FormatDate().mb_str();
+
+	m_highscoredb->SendHighScore(name,date,score);
+
+	//now show the high score table
+	newevent.SetId(ID_SHOWHIGHSCORE);
+	newevent.SetEventType(wxEVT_COMMAND_MENU_SELECTED);
+	ProcessEvent(newevent);
+
+}
+
+///this function handles all the post scoring stuff such as disabling the right button.
+/**
+ * This function is always called after scoring and it handles all the post-score
+ * stuff such as reseting the dice rolls, enabling the undo button, calculating
+ * the sub-total scores and ending the game if necessary.
+ * \param id 
+ */
+void MainFrame::PostScore(int id)
+{
+	//now after the scoring reset the rolls
+	ResetRolls();
+
+	CalculateSubTotal();
+
+	//and disable the button
+	FindWindow(id)->Enable(false);
+	m_numofplaysleft--;
+	EnableUndo(id);
+	EndofGame();
+}
+
+/**
+ * This function calculates the sub-total scores and should be called after
+ * every score. It does so only if this feature is requested in the settings
+ * dialog.
+ */
+void MainFrame::CalculateSubTotal()
+{
+	if (!m_settings.calculate_subtotal)
+		return;
+	long upperscore = 0;
+	long lowerscore = 0;
+	wxString tempstr;
+	long temp;
+
+
+	for (int i = ID_ACESTEXT; i<=ID_SIXESTEXT; i++){
+		tempstr = ((wxTextCtrl*) FindWindow(i)) -> GetValue();
+		tempstr.ToLong(&temp,10);
+		upperscore +=temp;
+	}
+	
+	tempstr.Printf(wxT("%i"),upperscore);
+	((wxTextCtrl*) FindWindow(ID_UPPERSECTIONTOTAL)) -> SetValue(tempstr);
+
+	for (int i = ID_THREEOFAKINDTEXT; i<=ID_YAHTZEEBONUSTEXT; i++) {
+		tempstr = ((wxTextCtrl*) FindWindow(i)) -> GetValue();
+		tempstr.ToLong(&temp,10);
+		lowerscore +=temp;
+	}
+	
+	tempstr.Printf(wxT("%i"),lowerscore);
+	((wxTextCtrl*) FindWindow(ID_LOWERTOTAL)) -> SetValue(tempstr);
+}
+
+
+/**
+ * Initializes the database and stores default settings if needed.
+ * @return 0 if some error
+ */
+int MainFrame::InitializeDatabase()
+{
+	std::ostringstream sstr;
+
+
+	if (m_settingsdb->GetKey("highscoresize") == "") { //check if we need to create a new high score table
+		m_highscoredb->SetSize(DEF_HIGHSCORESIZE);
+		sstr<<DEF_HIGHSCORESIZE<<std::flush;
+		m_settingsdb->SetKey("highscoresize", sstr.str());
+	} else {
+		int highscoresize = atoi((m_settingsdb->GetKey("highscoresize")).c_str());
+		//m_highscoredb->SetSize((highscoresize>0)?highscoresize:DEF_HIGHSCORESIZE);
+		m_highscoredb->SetSize(highscoresize);
+	}
+	
+	if (m_settingsdb->GetKey("animate") == "Yes") {
+		m_settings.animate = true;
+	} else if (m_settingsdb->GetKey("animate") == "No") {
+		m_settings.animate = false;
+	} else {
+		m_settingsdb->SetKey("animate", "Yes");
+		m_settings.animate = true;
+	}
+
+	if (m_settingsdb->GetKey("calculatesubtotal") == "Yes") {
+		m_settings.calculate_subtotal = true;
+	} else if (m_settingsdb->GetKey("calculatesubtotal") == "No") {
+		m_settings.calculate_subtotal = false;
+	} else {
+		m_settingsdb->SetKey("calculatesubtotal", "Yes");
+		m_settings.calculate_subtotal = true;
+	}
+
+	if (m_settingsdb->GetKey("horizontallayout") == "Yes") {
+		m_settings.horizontal_layout = true;
+	} else if (m_settingsdb->GetKey("horizontallayout") == "No") {
+		m_settings.horizontal_layout = false;
+	} else {
+		m_settingsdb->SetKey("horizontallayout", "No");
+		m_settings.horizontal_layout = true;
+	}
+
+	if (m_settingsdb->GetKey("score_hints") == "Yes") {
+		m_settings.score_hints = true;
+	} else if (m_settingsdb->GetKey("score_hints") == "No") {
+		m_settings.score_hints = false;
+	} else {
+		m_settingsdb->SetKey("score_hints", "Yes");
+		m_settings.score_hints = true;
+	}
+
+	if (m_settingsdb->GetKey("openyahtzeehomepage") == "") {
+		m_settingsdb->SetKey("openyahtzeehomepage", "http://openyahtzee.sourceforge.net/");
+	}
+
+	if (m_settingsdb->GetKey("updateurl") == "") {
+		/*the version string will be appended in the end of the
+		  given url */
+		m_settingsdb->SetKey("updateurl", "http://openyahtzee.sourceforge.net/update.php?version=");
+	}
+	
+	return 1;
+}
+
+void MainFrame::Relayout()
+{
+	wxBoxSizer *topSizer;
+	wxFlexGridSizer *diceSizer;
+	bool roll_button_enabled;
+
+	lowersection->GetStaticBox()->Destroy();
+	uppersection->GetStaticBox()->Destroy();
+	sectionsSizer->Remove(lowersection);
+	sectionsSizer->Remove(uppersection);
+
+	if (m_settings.horizontal_layout) {
+		topSizer = new wxBoxSizer( wxVERTICAL );
+		sectionsSizer = new wxBoxSizer( wxHORIZONTAL );
+		diceSizer = new wxFlexGridSizer(2, 0, 0, 0);
+	} else {
+		topSizer = new wxBoxSizer( wxHORIZONTAL );
+		sectionsSizer = new wxBoxSizer( wxVERTICAL );
+		diceSizer = new wxFlexGridSizer(1, 0, 0);;
+	}
+
+	uppersection = new wxStaticBoxSizer( new wxStaticBox( FindWindow(ID_PANEL), wxID_ANY, wxT("Upper Section") ), wxVERTICAL);
+	lowersection = new wxStaticBoxSizer( new wxStaticBox( FindWindow(ID_PANEL), wxID_ANY, wxT("Lower Section") ), wxVERTICAL);
+	
+	wxFlexGridSizer* uppergrid = new wxFlexGridSizer(2, 0, 10);
+	wxFlexGridSizer* lowergrid = new wxFlexGridSizer(2, 0, 10);
+
+	//BEGIN layout for the upper section of the score board
+	uppergrid->Add(FindWindow(ID_ACES),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_ACESTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_TWOS),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_TWOSTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_THREES),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_THREESTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_FOURS),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_FOURSTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_FIVES),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_FIVESTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_SIXES),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_SIXESTEXT),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindowByLabel(wxT("Total score:")),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_UPPERSECTIONTOTAL),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindowByLabel(wxT("Bonus:")),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_BONUS),1,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindowByLabel(wxT("Total of upper section:")),0,wxALL,SPACE_SIZE);
+	uppergrid->Add(FindWindow(ID_UPPERTOTAL),1,wxALL,SPACE_SIZE);
+	//END layout for the upper section of the score board
+
+	//BEGIN layout for the lower section of the score board
+	lowergrid->Add(FindWindow(ID_THREEOFAKIND),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_THREEOFAKINDTEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_FOUROFAKIND),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_FOUROFAKINDTEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_FULLHOUSE),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_FULLHOUSETEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_SMALLSEQUENCE),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_SMALLSEQUENCETEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_LARGESEQUENCE),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_LARGESEQUENCETEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_YAHTZEE),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_YAHTZEETEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_CHANCE),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_CHANCETEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindowByLabel(wxT("Yahtzee Bonus")),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_YAHTZEEBONUSTEXT),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindowByLabel(wxT("Total of lower section:")),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_LOWERTOTAL),1,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindowByLabel(wxT("Grand Total:")),0,wxALL,SPACE_SIZE);
+	lowergrid->Add(FindWindow(ID_GRANDTOTAL),1,wxALL,SPACE_SIZE);
+	//END layout for the lower section of the score board
+
+	uppersection->Add(uppergrid);
+	lowersection->Add(lowergrid);
+	sectionsSizer->Add(uppersection,0,wxALL,5);
+	sectionsSizer->Add(lowersection,0,wxALL,5);
+
+	//Change the roll button size if we need to
+	roll_button_enabled = FindWindow(ID_ROLL)->IsEnabled();
+	if (m_settings.horizontal_layout) {
+		FindWindow(ID_ROLL)->Destroy();
+		new wxButton(FindWindow(ID_PANEL), ID_ROLL, wxT("Roll!"),wxDefaultPosition,wxSize(64,64));
+	} else {
+		FindWindow(ID_ROLL)->Destroy();
+		new wxButton(FindWindow(ID_PANEL), ID_ROLL, wxT("Roll!"),wxDefaultPosition,wxSize(VERTICAL_ROLL_SIZEX,VERTICAL_ROLL_SIZEY));
+	}
+	FindWindow(ID_ROLL)->Enable(roll_button_enabled);
+	
+	//BEGIN layout for the dice section of the score board
+	if (m_settings.horizontal_layout) {
+		diceSizer->Add(FindWindow(ID_DICE1),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE2),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE3),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE4),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE5),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_ROLL),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE1KEEP),0,wxBOTTOM | wxLEFT,KEEP_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE2KEEP),0,wxBOTTOM | wxLEFT,KEEP_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE3KEEP),0,wxBOTTOM | wxLEFT,KEEP_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE4KEEP),0,wxBOTTOM | wxLEFT,KEEP_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE5KEEP),0,wxBOTTOM | wxLEFT,KEEP_SPACE);
+	} else {
+		diceSizer->Add(FindWindow(ID_DICE1),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE1KEEP),0,wxLEFT,KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(FindWindow(ID_DICE2),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE2KEEP),0,wxLEFT,KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(FindWindow(ID_DICE3),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE3KEEP),0,wxLEFT,KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(FindWindow(ID_DICE4),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE4KEEP),0,wxLEFT,KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(FindWindow(ID_DICE5),0,wxALL,DICE_SPACE);
+		diceSizer->Add(FindWindow(ID_DICE5KEEP),0,wxLEFT,KEEP_SPACE);
+		diceSizer->AddSpacer(VER_DICE_SPACER);
+		diceSizer->Add(FindWindow(ID_ROLL),0,wxALL,DICE_SPACE);
+	}
+	//END layout for the dice section of the score board *******/
+
+	
+	topSizer->Add(sectionsSizer);
+	topSizer->Add(diceSizer);	
+	
+	topSizer->SetSizeHints(this);
+
+	topSizer->Layout();
+	FindWindow(ID_PANEL)->SetSizerAndFit(topSizer);
+	
+	topSizer->Fit(this);
+	
+}
+
+/**
+ * Check whether the dice should be rolled or if the user already rolled them.
+ * \return true if the dice are valid (rolled).
+ */
+bool MainFrame::IsValidDice()
+{
+	if ( m_rolls < 3 )
+		return true;
+	return false;
+}
+
+/**
+ *
+ */
+void MainFrameEvtHandler::OnScoreMouseEnter (wxMouseEvent& event)
+{
+	int id;
+	wxTextCtrl *text_control;
+	wxString out;
+	if (! m_main_frame->m_settings.score_hints) {
+		event.Skip();
+		return;
+	}
+	if (! m_main_frame->IsValidDice()){
+		event.Skip();
+		return;
+	}
+	
+	id = ((wxWindow *)event.GetEventObject())->GetId();
+	text_control = ((wxTextCtrl*)m_main_frame->FindWindow(id-ID_ACES+ID_ACESTEXT));
+	switch (id) {
+	case ID_ACES:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.Aces());
+		break;
+	case ID_TWOS:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.Twos());
+		break;
+	case ID_THREES:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.Threes());
+		break;
+	case ID_FOURS:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.Fours());
+		break;
+	case ID_FIVES:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.Fives());
+		break;
+	case ID_SIXES:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.Sixes());
+		break;
+	case ID_THREEOFAKIND:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.ThreeOfAKind());
+		break;
+	case ID_FOUROFAKIND:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.FourOfAKind());
+		break;
+	case ID_FULLHOUSE:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.FullHouse());
+		break;
+	case ID_SMALLSEQUENCE:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.SmallSequence());
+		break;
+	case ID_LARGESEQUENCE:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.LargeSequence());
+		break;
+	case ID_YAHTZEE:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.Yahtzee());
+		break;
+	case ID_CHANCE:
+		out.Printf(wxT("%i"), m_main_frame->m_score_dice.Chance());
+		break;
+	}
+	text_control->SetValue(out); 		
+	text_control->SetBackgroundColour(wxColour(239,239,239));
+	
+	event.Skip(); //allow default proccesing
+}
+
+/**
+ *
+ */
+void MainFrameEvtHandler::OnScoreMouseLeave (wxMouseEvent& event)
+{
+	//we dont have the id of the control that generated the event
+	wxTextCtrl *text_control;
+	
+	if (! m_main_frame->IsValidDice()){
+		event.Skip();
+		return;
+	}
+
+	for (int i = ID_ACESTEXT; i<=ID_CHANCETEXT; i++) {
+		text_control = (wxTextCtrl *)m_main_frame->FindWindow(i);
+		if (text_control->GetBackgroundColour()==wxColour(239,239,239)){
+			text_control->Clear();
+			text_control->SetBackgroundColour(*wxWHITE);
+		}
+	}
+
+	event.Skip(); //allow default proccesing
+}
Index: /trunk/src/MainFrame.h
===================================================================
--- /trunk/src/MainFrame.h	(revision 134)
+++ /trunk/src/MainFrame.h	(revision 134)
@@ -0,0 +1,136 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+/**\file MainFrame.h
+ *\brief Header file for MainFrame class.
+ *
+ * This File contains the declaration of the class MainFrame
+*/
+
+#include "SettingsDB.h"
+#include "HighScoreTableDB.h"
+#include "ScoreDice.h"
+#include "dice_graphics.h"
+#ifndef MAINFRAME_INC
+#define MAINFRAME_INC
+
+/// MainFrame class - the main window
+/**
+The Main Frame class is a derieved class from wxFrame which is responsible to 
+the main window of the application. This class also hold all the functions 
+that process the dice and handles the gameplay. This function are called as
+event handlers.
+*/
+class MainFrame : public wxFrame
+{
+public:
+	// Constructor
+	MainFrame(const wxString& title,  const wxSize& size, long style);
+
+	// Event handlers
+	void OnQuit(wxCommandEvent& event);
+	void OnAbout(wxCommandEvent& event);
+	void OnNewGame (wxCommandEvent& event);
+	void OnUndo (wxCommandEvent& event);
+	void OnShowHighscore (wxCommandEvent& event);
+	void OnSettings (wxCommandEvent& event);
+	void OnCheckForUpdates (wxCommandEvent& event);
+	void OnSendComment (wxCommandEvent& event);
+
+	void OnRollButton (wxCommandEvent& event);
+	void OnUpperButtons (wxCommandEvent& event);
+	void On3ofakindButton (wxCommandEvent& event);
+	void On4ofakindButton (wxCommandEvent& event);	
+	void OnFullHouseButton (wxCommandEvent& event);
+	void OnSmallSequenceButton (wxCommandEvent& event);
+	void OnLargeSequenceButton (wxCommandEvent& event);
+	void OnYahtzeeButton (wxCommandEvent& event);
+	void OnChanceButton (wxCommandEvent& event);
+	void OnDiceClick (wxCommandEvent& event);
+	void OnKeepClick (wxCommandEvent& event);	
+
+	void OnScoreMouseEnter (wxMouseEvent& event);
+	void OnScoreMouseLeave (wxMouseEvent& event);
+
+	bool IsValidDice();
+
+	ScoreDice m_score_dice;
+
+	struct {
+		bool animate;
+		bool calculate_subtotal;
+		bool horizontal_layout;
+		bool score_hints;
+	} m_settings;
+
+private:
+	void ClearDiceHash();
+	void ResetRolls();
+	void YahtzeeBonus();
+	bool YahtzeeJoker();
+	void EndofGame();
+	void HighScoreHandler(int score);
+	inline void EnableUndo(int id);
+	void PostScore(int id);
+	void CalculateSubTotal();
+	int InitializeDatabase();
+	void Relayout();
+	void AddMenus();
+	void ConnectEventTable();
+	void AddControlsAndLayout();
+
+	wxStaticBoxSizer *uppersection, *lowersection;
+	wxBoxSizer *sectionsSizer;
+
+	//pointers to hold bitmap data for the dices
+	wxBitmap *bitmap_dices[6];
+	DiceGraphics m_dice_graphics;
+
+	short int m_rolls;	//holds how many rolls left
+	short int m_numofplaysleft; //holds how many times the user got to score untill the end of the game
+	bool m_yahtzee;
+	bool m_yahtzeebonus; //tells the undo if there is also an yahtzee bonus to undo
+
+	short int m_lastmove; //stores the ID of the last button pressed.
+	short int m_rollsundo; //holds the number of remaining rolls for use with the undo option
+
+	SettingsDB *m_settingsdb; //handles the settings database
+	HighScoreTableDB *m_highscoredb; //handles the highscore database managment
+	
+	bool m_skiproll; ///used to prevent the user from accidently rolling the dice twice
+
+	class MainFrameEvtHandler *m_evt_handler;
+};
+
+/**
+ * This class handles events for windows in MainFrame where it hasn't been
+ * possible to use the regular event handler.
+ */
+class MainFrameEvtHandler : public wxEvtHandler
+{
+public: 
+	MainFrameEvtHandler(MainFrame *main_frame) { m_main_frame = main_frame;}
+	void OnScoreMouseEnter (wxMouseEvent& event);
+	void OnScoreMouseLeave (wxMouseEvent& event);
+private:
+	MainFrame *m_main_frame;
+
+};
+#endif
Index: /trunk/src/Makefile.am
===================================================================
--- /trunk/src/Makefile.am	(revision 134)
+++ /trunk/src/Makefile.am	(revision 134)
@@ -0,0 +1,26 @@
+bin_PROGRAMS = openyahtzee
+openyahtzee_SOURCES = openyahtzee.cpp MainFrame.cpp DBwrapper.cpp DBwrapper.h \
+	SettingsDB.cpp HighScoreTableDB.cpp HighScoreDialog.cpp SettingsDialog.cpp \
+	icon.xpm icon32.xpm openyahtzee.rc wxDynamicBitmap.cpp About.cpp \
+	UtilityFunctions.cpp ScoreDice.cpp dice_graphics.cpp
+
+# set the include path found by configure
+INCLUDES = $(all_includes)
+
+# the library search path.
+
+noinst_HEADERS = MainFrame.h ObjectsID.h SettingsDB.h HighScoreTableDB.h \
+	HighScoreDialog.h SettingsDialog.h Icon.h icon32.ico wxDynamicBitmap.h \
+	UtilityFunctions.h ScoreDice.h dice_graphics.cpp
+
+noinst_dicedir = dice
+noinst_dice_HEADERS = dice/theme1/one.xpm dice/theme1/two.xpm dice/theme1/three.xpm \
+	dice/theme1/four.xpm dice/theme1/five.xpm dice/theme1/six.xpm
+	dice/theme2/one.xpm dice/theme2/two.xpm dice/theme2/three.xpm \
+	dice/theme2/four.xpm dice/theme2/five.xpm dice/theme2/six.xpm
+	dice/theme3/1.xpm dice/theme3/2.xpm dice/theme3/3.xpm \
+	dice/theme3/4.xpm dice/theme3/5.xpm dice/theme3/6.xpm
+
+AM_CXXFLAGS = `wx-config --cxxflags`
+openyahtzee_LDADD = -lsqlite3
+openyahtzee_LDFLAGS = `wx-config --libs`
Index: /trunk/src/ObjectsID.h
===================================================================
--- /trunk/src/ObjectsID.h	(revision 134)
+++ /trunk/src/ObjectsID.h	(revision 134)
@@ -0,0 +1,89 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+#ifndef OBJECTSID_INC
+#define OBJECTSID_INC
+
+enum {
+	ID_PANEL,
+	ID_NEWGAME,
+	ID_UNDO,
+	ID_SHOWHIGHSCORE,
+	ID_SETTINGS,
+	ID_CHECK_FOR_UPDATES,
+	ID_SENDCOMMENT,
+	
+	ID_ACES,
+	ID_TWOS,
+	ID_THREES,
+	ID_FOURS,
+	ID_FIVES,
+	ID_SIXES,
+	ID_THREEOFAKIND,
+	ID_FOUROFAKIND,
+	ID_FULLHOUSE,
+	ID_SMALLSEQUENCE,
+	ID_LARGESEQUENCE,
+	ID_YAHTZEE,
+	ID_CHANCE,
+
+	ID_ACESTEXT,
+	ID_TWOSTEXT,
+	ID_THREESTEXT,
+	ID_FOURSTEXT,
+	ID_FIVESTEXT,
+	ID_SIXESTEXT,
+	ID_THREEOFAKINDTEXT,
+	ID_FOUROFAKINDTEXT,
+	ID_FULLHOUSETEXT,
+	ID_SMALLSEQUENCETEXT,
+	ID_LARGESEQUENCETEXT,
+	ID_YAHTZEETEXT,
+	ID_CHANCETEXT,
+	ID_YAHTZEEBONUSTEXT,
+
+	ID_UPPERSECTIONTOTAL,
+	ID_BONUS,
+	ID_UPPERTOTAL,
+	ID_LOWERTOTAL,
+	ID_GRANDTOTAL,
+	
+	ID_ROLL,
+	ID_DICE1,
+	ID_DICE2,
+	ID_DICE3,
+	ID_DICE4,
+	ID_DICE5,
+	
+	ID_DICE1KEEP,
+	ID_DICE2KEEP,
+	ID_DICE3KEEP,
+	ID_DICE4KEEP,
+	ID_DICE5KEEP,
+
+	ID_INFODIALOGNAMEBOX,
+
+	//SettingsDialog
+	ID_RESETHIGHSCORE,
+	ID_ANIMATECHECKBOX,
+};
+
+
+#endif
Index: /trunk/src/ScoreDice.cpp
===================================================================
--- /trunk/src/ScoreDice.cpp	(revision 134)
+++ /trunk/src/ScoreDice.cpp	(revision 134)
@@ -0,0 +1,256 @@
+
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+ 
+#include "ScoreDice.h"
+
+/**
+ * \brief constructor
+ *
+ * This constructor also sets the values of the dice.
+ */
+ScoreDice::ScoreDice(short int dice[5])
+{
+	SetDice(dice);
+}
+
+/**
+ * \brief default constructor
+ * \note if you use this constructor you must call ScoreDice::SetDice before
+ * using the class.
+ * \see ScoreDice::SetDice
+ */
+ScoreDice::ScoreDice()
+{
+	//nothing to do here
+}
+/**
+ * \brief Sets the dice values
+ * \param dice An array of 5 short ints containing the values of the dice.
+ */
+void ScoreDice::SetDice(short int dice[5])
+{
+	for (int i=0; i<5; i++) 
+		m_dice[i] = dice[i];
+	
+	//fill the dice hash
+	for (int i=0; i<6; i++)
+		m_dicehash[i] = 0;
+	for (int i=0; i<5; i++)
+		m_dicehash[dice[i]-1] += 1;	
+	
+	m_yahtzee_joker = false;
+}
+
+/**
+ * Tells the scoring class wheter or not we have a Yahtzee Joker.
+ * \param is_yahtzee_joker [bool] true if there is a Yahtzee Joker.
+ * \note checking whether we got a yahtzee joker is done by an outside function,
+ * and it needs the dice set before it can operate.
+ * \see MainFrame::YahtzeeJoker()
+ */
+void ScoreDice::SetYahtzeeJoker(bool is_yahtzee_joker)
+{
+	m_yahtzee_joker = is_yahtzee_joker;
+}
+
+/**
+ * \brief Gets the value of a dice.
+ * \param number the index of the dice wanted.
+ * \return the value of the dice. 0 if wrong input.
+ */
+short int ScoreDice::GetDice(short int number)
+{
+	if (number<=5 && number >=1)
+		return m_dice[number-1];
+	return 0;
+}
+/**
+ * \return the score for the aces box.
+ */
+short int ScoreDice::Aces() const
+{
+	return m_dicehash[0];
+}
+
+/**
+ * \return the score for the twos box.
+ */
+short int ScoreDice::Twos() const
+{
+	return 2*m_dicehash[1];
+}
+
+
+/**
+ * \return the score for the threes box.
+ */
+short int ScoreDice::Threes() const
+{
+	return 3*m_dicehash[2];
+}
+
+/**
+ * \return the score for the fours box.
+ */
+short int ScoreDice::Fours() const
+{
+	return 4*m_dicehash[3];
+}
+
+/**
+ *
+ * \return the score for the fives box.
+ */
+short int ScoreDice::Fives() const
+{
+	return 5*m_dicehash[4];
+}
+
+/**
+ *
+ * \return the score for the sixes box.
+ */
+short int ScoreDice::Sixes() const
+{
+	return 6*m_dicehash[5];
+}
+
+/**
+ *
+ * \return the score for the "Three of A Kind" box.
+ */
+short int ScoreDice::ThreeOfAKind() const
+{
+	bool three = false;
+	short int temp = 0;
+	
+	for (int i=0; i<6; i++)
+		if (m_dicehash[i] >= 3)
+			three = true;
+	if (three)
+		return Chance();
+	return 0;
+}
+
+/**
+ *
+ * \return the score for the "Four of A Kind" box.
+ */
+short int ScoreDice::FourOfAKind() const
+{
+	bool four = false;
+	short int temp = 0;
+	
+	for (int i=0; i<6; i++)
+		if (m_dicehash[i] >= 4)
+			four = true;
+	if (four)
+		return Chance();
+	return 0;
+}
+
+/**
+ *
+ * \return the score for the "Full House" box.
+ */
+short int ScoreDice::FullHouse() const
+{
+	bool two = false;
+	bool three = false;
+
+	for (int i=0; i<6; i++)
+		if (m_dicehash[i] == 2)
+			two = true;
+	for (int i=0; i<6; i++)
+		if (m_dicehash[i] == 3)
+			three = true;
+	if ((two && three) || m_yahtzee_joker)
+		return 25;
+	return 0;
+}
+
+/**
+ *
+ * \return the score for the small sequence box.
+ */
+short int ScoreDice::SmallSequence() const
+{
+	if ( (m_dicehash[0]>=1 && m_dicehash[1]>=1 && m_dicehash[2]>=1 &&
+		m_dicehash[3]>=1) || (m_dicehash[1]>=1 && m_dicehash[2]>=1 &&
+		m_dicehash[3]>=1 && m_dicehash[4]>=1) || (m_dicehash[2]>=1 &&
+		m_dicehash[3]>=1 && m_dicehash[4]>=1 && m_dicehash[5]>=1))
+		return 30;
+	else if (m_yahtzee_joker)
+		return 30;
+	return 0;
+}
+
+/**
+ *
+ * \return the score for the large sequence box.
+ */
+short int ScoreDice::LargeSequence() const
+{
+	if ( (m_dicehash[0]==1 && m_dicehash[1]==1 && m_dicehash[2]==1 &&
+		m_dicehash[3]==1 && m_dicehash[4]==1) || (m_dicehash[1]==1 &&
+		m_dicehash[2]==1 && m_dicehash[3]==1 && m_dicehash[4]==1 &&
+		m_dicehash[5]==1))
+		return 40;
+	else if (m_yahtzee_joker)
+		return 40;
+	return 0;
+}
+/**
+ *
+ * \return the score for the Yahtzee box.
+ */
+short int ScoreDice::Yahtzee() const
+{
+	if (IsYahtzee()) 
+		return 50;
+	return 0;
+}
+
+
+/**
+ *
+ * \return the score for the chance box.
+ */
+short int ScoreDice::Chance() const
+{
+	short int temp = 0;
+	for(int i = 0; i<5; i++) 
+		temp += m_dice[i];
+	
+	return temp;
+}
+
+/**
+ * \brief determines wheter the current dice hold a Yahtzee or not.
+ * \return true or false depending on whether there is a Yahtzee or not.
+ */
+bool ScoreDice::IsYahtzee() const
+{
+	if ((m_dice[0]==m_dice[1]) && (m_dice[1]==m_dice[2]) && \
+			(m_dice[1]==m_dice[3]) && (m_dice[1]==m_dice[4]))
+		return true;
+	return false;
+}
Index: /trunk/src/ScoreDice.h
===================================================================
--- /trunk/src/ScoreDice.h	(revision 134)
+++ /trunk/src/ScoreDice.h	(revision 134)
@@ -0,0 +1,53 @@
+
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+
+class ScoreDice {
+public:
+	ScoreDice();
+	ScoreDice(short int dice[5]);
+	void SetDice(short int dice[5]);
+	void SetYahtzeeJoker(bool is_yahtzee_joker);
+	short int GetDice(short int number);
+
+	short int Aces() const;
+	short int Twos() const;
+	short int Threes() const;
+	short int Fours() const;
+	short int Fives() const;
+	short int Sixes() const;
+
+	short int ThreeOfAKind() const;
+	short int FourOfAKind() const;
+	short int FullHouse() const;
+	short int SmallSequence() const;
+	short int LargeSequence() const;
+	short int Yahtzee() const;
+	short int Chance() const;
+
+	bool IsYahtzee() const;
+
+private:
+	short int m_dice[5]; 
+	short int m_dicehash[6];
+	bool m_yahtzee_joker;
+
+};
Index: /trunk/src/SettingsDB.cpp
===================================================================
--- /trunk/src/SettingsDB.cpp	(revision 134)
+++ /trunk/src/SettingsDB.cpp	(revision 134)
@@ -0,0 +1,112 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+#include "SettingsDB.h"
+#include <iostream>
+
+using namespace std;
+
+///Default constructor
+SettingsDB::SettingsDB()
+{
+	/* Open the database which holds the settings. */
+#ifdef PORTABLE
+	m_path = "";
+#else
+	m_path = ((wxFileName::GetHomeDir()).mb_str());
+	m_path += "/";
+#endif
+	m_path += DBFILENAME;
+
+#ifdef DEBUG
+	if (this->Open(m_path)==SQLITE_OK)
+		cerr<<"file opened: "<<m_path<<endl;
+#else
+	this->Open(m_path);
+#endif
+
+	/* Initialize the database table */
+	CreateTable();
+
+}
+
+/**
+\brief Destructor
+*
+* Closes the connection to the database
+*/
+SettingsDB::~SettingsDB()
+{
+	Close();
+}
+
+/**
+ * Creates the settings database table if the table doesn't exist already. 
+ *
+*/
+void SettingsDB::CreateTable()
+{
+	//Create the database table.
+	Query("CREATE TABLE IF NOT EXISTS settings (key TEXT, value TEXT)"); // create the table
+	
+	//Create the unique index on the 'key' column.
+	Query("CREATE UNIQUE INDEX IF NOT EXISTS key ON settings ( key )");	
+}
+
+/**
+ * Sets a settings key in the database. If the key doesn't exist it will create it
+ *
+ *\param key a string which holds the key's name.
+ *\param value a string which holds the value which should be assigned to the key
+*/
+
+int SettingsDB::SetKey(std::string key, std::string value)
+{
+	string tmp_query;
+	
+	//build the replace query	
+	tmp_query = "REPLACE INTO settings ( key , value ) VALUES ( \"" + key + "\" , \"" + value + "\" )";
+	
+	Query(tmp_query);
+
+	return 0;
+}
+
+/**
+ * Gets a settings key from the database.
+ *
+ *\param key a string which holds the key's name.
+ *\return the value of the requested key or empty string if key doesn't exist
+*/
+
+std::string SettingsDB::GetKey(std::string key)
+{
+	string tmp_query;
+	std::list<string> tmp_value;
+	
+	tmp_query = "SELECT value FROM settings WHERE key = \"" + key + "\"";
+
+	tmp_value = Query(tmp_query);
+	if (tmp_value.empty()) { //if there was no result return an empty string
+		tmp_query = "";	//use tmp_query for holding a tmp_string
+		return tmp_query;
+	}
+	return	*(tmp_value.begin());
+}
Index: /trunk/src/SettingsDB.h
===================================================================
--- /trunk/src/SettingsDB.h	(revision 134)
+++ /trunk/src/SettingsDB.h	(revision 134)
@@ -0,0 +1,60 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+/**\file SettingsDB.h
+ *\brief Header file for SettingsDB class.
+ *
+ * This file contains the header for the SettingsDB class and all the nessecery include files.
+*/
+
+/// SettingsDB - a settings managemnet class built on top of a DB.
+/**
+SettingsDB is designed to handle all the settings managemnet in a database file. This will be pretty generic class with some specific
+setting for the class in the beginning of it's definitions.
+*/
+
+#include "DBwrapper.h"
+#include "wx/filename.h"
+
+
+#ifndef SETTINGSDB_INC
+#define SETTINGSDB_INC
+
+///Sets the file name of the database the class will open.
+#ifndef PORTABLE
+	#define DBFILENAME ".OpenYahtzee" 
+#else
+	#define DBFILENAME "OpenYahtzee.dat"
+#endif
+
+class SettingsDB : public DBwrapper
+{
+public:
+	SettingsDB();
+	~SettingsDB();
+	std::string GetKey(std::string key);
+	int SetKey(std::string key, std::string value);
+private:
+	std::string m_path;
+	void CreateTable();
+};
+
+
+#endif
Index: /trunk/src/SettingsDialog.cpp
===================================================================
--- /trunk/src/SettingsDialog.cpp	(revision 134)
+++ /trunk/src/SettingsDialog.cpp	(revision 134)
@@ -0,0 +1,114 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guy@Guy_Computer   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+#include "SettingsDialog.h"
+#include "MainFrame.h"
+
+#include "Icon.h"
+
+SettingsDialog::SettingsDialog(wxWindow* parent, int id):
+    wxDialog(parent, wxID_ANY, wxT("Settings Dialog"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE)
+{
+
+	SetIcon(wxIcon(ICON));
+
+	label_1 = new wxStaticText(this, -1, wxT("High score table size:"));
+	spin_ctrl = new wxSpinCtrl(this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, wxSP_ARROW_KEYS,0,1024,20);
+	checkbox_reset = new wxCheckBox(this, ID_RESETHIGHSCORE, wxT("Reset high score table"));
+	animate_checkbox = new wxCheckBox(this, ID_ANIMATECHECKBOX, wxT("Animate dice"));
+	subtotal_checkbox = new wxCheckBox(this, wxID_ANY, wxT("Calculate "
+		"sub-total score for the upper and lower sections"));
+	score_hints_checkbox = new wxCheckBox(this, wxID_ANY, wxT("Display "
+		"score hints."));
+	horizontal_checkbox = new wxCheckBox(this, wxID_ANY, wxT("Enable horizontal layout for user interface."));
+
+	ConnectEventTable();
+	DoLayout();
+}
+
+
+void SettingsDialog::ConnectEventTable()
+{
+	Connect(ID_RESETHIGHSCORE,wxEVT_COMMAND_CHECKBOX_CLICKED,wxCommandEventHandler(SettingsDialog::OnResetHighScore));
+}
+
+
+void SettingsDialog::DoLayout()
+{
+	wxBoxSizer* top_sizer = new wxBoxSizer(wxVERTICAL);
+	wxBoxSizer* highscoresizer = new wxBoxSizer(wxHORIZONTAL);
+
+	highscoresizer->Add(label_1, 0, wxALL, 5);
+	highscoresizer->Add(spin_ctrl, 0, wxALL, 5);
+	top_sizer->Add(highscoresizer, 0, 0, 0);
+	top_sizer->Add(checkbox_reset, 0,wxALL, 5);
+
+	top_sizer->Add(animate_checkbox,0,wxALL,5);
+	top_sizer->Add(subtotal_checkbox,0,wxALL,5);
+	top_sizer->Add(score_hints_checkbox,0,wxALL,5);
+	top_sizer->Add(horizontal_checkbox,0,wxALL,5);
+
+	top_sizer->Add(CreateButtonSizer(wxOK|wxCANCEL), 1, wxBOTTOM, 10);
+	SetAutoLayout(true);
+	SetSizer(top_sizer);
+	top_sizer->Fit(this);
+	top_sizer->SetSizeHints(this);
+	Layout();
+}
+
+
+void SettingsDialog::OnResetHighScore(wxCommandEvent& event)
+{
+	if(!checkbox_reset->GetValue()){
+		checkbox_reset->SetValue(0);
+		return;
+	}
+	
+	int answer = wxMessageBox(wxT("Are you sure you want to reset the high "
+		"score table? After reseting the high score table, you won't be"
+		" able to restore it!\n\nThe new high score table size will be "
+		"as specified in this dialog."), wxT("High-score table reset"),
+		wxYES_NO|wxICON_EXCLAMATION,this);
+
+	if(answer==wxNO)
+		checkbox_reset->SetValue(0);
+}
+
+void SettingsDialog::SetData(SettingsDialogData data)
+{
+	spin_ctrl->SetValue(data.highscoresize);
+	animate_checkbox->SetValue(data.animate);
+	subtotal_checkbox->SetValue(data.subtotal);
+	score_hints_checkbox->SetValue(data.score_hints);
+	horizontal_checkbox->SetValue(data.horizontal);
+}
+
+SettingsDialogData SettingsDialog::GetData()
+{
+	SettingsDialogData data;
+	data.highscoresize = spin_ctrl->GetValue();
+	data.reset = checkbox_reset->GetValue();
+	data.animate = animate_checkbox->GetValue();
+	data.subtotal = subtotal_checkbox->GetValue();
+	data.score_hints = score_hints_checkbox->GetValue();
+	data.horizontal = horizontal_checkbox->GetValue();
+	return data;
+}
Index: /trunk/src/SettingsDialog.h
===================================================================
--- /trunk/src/SettingsDialog.h	(revision 134)
+++ /trunk/src/SettingsDialog.h	(revision 134)
@@ -0,0 +1,66 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+#include <wx/wx.h>
+#include <wx/spinctrl.h>
+#include "ObjectsID.h"
+
+
+#ifndef SETTINGSDIALOG_H
+#define SETTINGSDIALOG_H
+
+struct SettingsDialogData {
+	int highscoresize;
+	bool reset;
+	bool animate;
+	bool subtotal;
+	bool horizontal;
+	bool score_hints;
+};
+
+class SettingsDialog: public wxDialog {
+public:
+	SettingsDialog(wxWindow* parent, int id);
+	
+	SettingsDialogData GetData();
+	void SetData(SettingsDialogData data);
+	
+	void OnResetHighScore(wxCommandEvent& event);
+private:
+	void DoLayout();
+	void ConnectEventTable();
+	
+
+
+protected:
+	wxStaticText* label_1;
+	wxSpinCtrl* spin_ctrl;
+	wxCheckBox* checkbox_reset; //the reset button
+	
+	wxCheckBox* animate_checkbox;
+	wxCheckBox* subtotal_checkbox;
+	wxCheckBox* score_hints_checkbox;
+	wxCheckBox* horizontal_checkbox;
+	
+};
+
+
+#endif // SETTINGSDIALOG_H
Index: /trunk/src/UtilityFunctions.cpp
===================================================================
--- /trunk/src/UtilityFunctions.cpp	(revision 134)
+++ /trunk/src/UtilityFunctions.cpp	(revision 134)
@@ -0,0 +1,88 @@
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+/**\file UtilityFunctions.cpp
+ *\brief General purpuse functions.
+ *
+ * This file contains the implementation for some general
+ * purpuse utility functions.
+*/
+
+#include "UtilityFunctions.h"
+#include <sstream>
+
+
+
+
+/**
+ * This function launches the default browser and directs it to a given url.
+ *
+ * This function extends the wxWidgets default function for this job by checking manually for
+ * different browsers if the wxWidgets' function doesn't find one. This is usually necessary 
+ * under linux when epiphany isn't installed for some unknown reason.
+ * @param link The url that the browser will go to when it stats.
+ */
+void LaunchBrowser (wxString link)
+{
+	if (!wxLaunchDefaultBrowser(link)){
+		 //if builtin function doesn't work search for couple of browsers manually. see
+		 //http://linux-consulting.buanzo.com.ar/2006/05/wxwidgets-code-to-launch-browser.html
+
+		// variable declarations
+		wxArrayString browsers;
+		wxPathList path_list;
+		bool BrowserWasFound = false;
+		unsigned int i = 0;
+		wxString path;
+
+		// Add directories to wxPathList's search path from PATH environment variable
+		path_list.AddEnvList(wxT("PATH"));
+		
+		// Add browsers filenames. First item = most priority
+		browsers.Add(wxT("firefox"));
+		browsers.Add(wxT("firefox-bin"));
+		browsers.Add(wxT("mozilla"));
+		browsers.Add(wxT("mozilla-bin"));
+		browsers.Add(wxT("opera"));
+		browsers.Add(wxT("konqueror"));
+		browsers.Add(wxT("epiphany"));
+		
+		for (i = 0; i < browsers.GetCount(); i++) {
+			path = path_list.FindAbsoluteValidPath(browsers[i]);
+			if (path.IsEmpty()) {
+				continue;
+			} else {
+				BrowserWasFound = true;
+				break;
+			}
+		}
+		
+		browsers.Clear();
+		
+		if (BrowserWasFound) {
+			path += wxT(" ");
+			path += link;
+			::wxExecute(path);
+		} else {
+			wxMessageBox(wxT("No browser has been found."),
+				wxT("Open Yahtzee"));
+		}
+	}
+}
Index: /trunk/src/UtilityFunctions.h
===================================================================
--- /trunk/src/UtilityFunctions.h	(revision 134)
+++ /trunk/src/UtilityFunctions.h	(revision 134)
@@ -0,0 +1,30 @@
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+/**\file UtilityFunctions.h
+ *\brief General purpuse functions.
+ *
+ * This file contains the declaration for some general
+ * purpuse utility functions.
+*/
+
+#include <wx/wx.h>
+
+void LaunchBrowser (wxString link);
Index: /trunk/src/dice/theme1/five.xpm
===================================================================
--- /trunk/src/dice/theme1/five.xpm	(revision 134)
+++ /trunk/src/dice/theme1/five.xpm	(revision 134)
@@ -0,0 +1,316 @@
+/* XPM */
+static char *theme1_five_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 246 2",
+"   c black",
+".  c #010101",
+"X  c #020202",
+"o  c gray1",
+"O  c #040404",
+"+  c #060606",
+"@  c #070707",
+"#  c #090909",
+"$  c #13120E",
+"%  c #13130E",
+"&  c #14130F",
+"*  c gray16",
+"=  c gray23",
+"-  c #423E31",
+";  c #434031",
+":  c #434033",
+">  c #494536",
+",  c #494636",
+"<  c #494637",
+"1  c #414141",
+"2  c #434343",
+"3  c #464646",
+"4  c gray28",
+"5  c #4C4C4C",
+"6  c #4E4E4E",
+"7  c #505050",
+"8  c #515151",
+"9  c #565656",
+"0  c #625E49",
+"q  c #635E49",
+"w  c #645F4A",
+"e  c #65604B",
+"r  c #66614B",
+"t  c #67624C",
+"y  c #68634D",
+"u  c #69644E",
+"i  c #6A654E",
+"p  c #6B6650",
+"a  c #6F6A52",
+"s  c #726D54",
+"d  c #736D55",
+"f  c #746E56",
+"g  c #756F56",
+"h  c #726E5F",
+"j  c #726F5F",
+"k  c #767057",
+"l  c #777259",
+"z  c #787359",
+"x  c #79745A",
+"c  c #7A745B",
+"v  c #7B755B",
+"b  c #7C765C",
+"n  c #7D775D",
+"m  c #7E785D",
+"M  c #7F795E",
+"N  c #686868",
+"B  c #6D6D6D",
+"V  c #736F60",
+"C  c #767676",
+"Z  c #777777",
+"A  c gray47",
+"S  c #797979",
+"D  c gray50",
+"F  c #817B5F",
+"G  c #827C60",
+"H  c #847E62",
+"J  c #857F63",
+"K  c #857F65",
+"L  c #857F66",
+"P  c #888265",
+"I  c #898366",
+"U  c #898367",
+"Y  c #8A8366",
+"T  c #8B8569",
+"R  c #8C8568",
+"E  c #8D8668",
+"W  c #8E8769",
+"Q  c #8F886A",
+"!  c #8F896A",
+"~  c #918B6C",
+"^  c #928B6C",
+"/  c #918A6E",
+"(  c #918B6F",
+")  c #938C6D",
+"_  c #958E6E",
+"`  c #8D8A7B",
+"'  c #979070",
+"]  c #989171",
+"[  c #999271",
+"{  c #9A9272",
+"}  c #9B9373",
+"|  c #9B9473",
+" . c #9D9675",
+".. c #9E9775",
+"X. c #A09977",
+"o. c #A19A77",
+"O. c #A39B79",
+"+. c #A49C79",
+"@. c #A69E7B",
+"#. c #A79F7C",
+"$. c #A8A07C",
+"%. c #A8A17D",
+"&. c #A9A17E",
+"*. c #ABA37F",
+"=. c gray52",
+"-. c #868686",
+";. c gray54",
+":. c #8B8B8B",
+">. c gray55",
+",. c #ADA580",
+"<. c #AEA681",
+"1. c #AFA782",
+"2. c #B0A882",
+"3. c #B1A983",
+"4. c #B2A984",
+"5. c #B3AA84",
+"6. c #B4AB85",
+"7. c #B6AE87",
+"8. c #B7AF88",
+"9. c #B7AF89",
+"0. c #B8B089",
+"q. c #B9B089",
+"w. c #B8B08B",
+"e. c #BAB18A",
+"r. c #BCB38B",
+"t. c #BDB48C",
+"y. c #BEB58D",
+"u. c #BFB68D",
+"i. c #A7A7A7",
+"p. c #A9A9A9",
+"a. c #AAAAAA",
+"s. c #C0B78E",
+"d. c #C1B88F",
+"f. c #C2B990",
+"g. c #C3BA91",
+"h. c #C4BB91",
+"j. c #C5BC92",
+"k. c #C6BD93",
+"l. c #C3BB95",
+"z. c #C7BE94",
+"x. c #C5BD96",
+"c. c #C8BF94",
+"v. c #C9BF95",
+"b. c #CAC096",
+"n. c #CBC196",
+"m. c #CCC297",
+"M. c #CDC398",
+"N. c #CDC498",
+"B. c #CEC498",
+"V. c #CEC599",
+"C. c #CFC69A",
+"Z. c #D0C79A",
+"A. c #D1C79B",
+"S. c #D2C89C",
+"D. c #D3C99C",
+"F. c #D2C99F",
+"G. c #D3CA9E",
+"H. c #D4CA9D",
+"J. c #D5CB9E",
+"K. c #D6CC9F",
+"L. c #D7CD9F",
+"P. c #D2C9A0",
+"I. c #D7CDA1",
+"U. c #D3CBA4",
+"Y. c #D8CEA0",
+"T. c #D9CEA1",
+"R. c #DAD0A2",
+"E. c #DBD1A3",
+"W. c #DCD2A3",
+"Q. c #DBD2A5",
+"!. c #DDD3A4",
+"~. c #DED4A5",
+"^. c #DFD5A5",
+"/. c #E0D6A6",
+"(. c #E1D6A7",
+"). c #E2D7A7",
+"_. c #E3D8A8",
+"`. c #E4D9A9",
+"'. c #E5DAAA",
+"]. c #E6DBAA",
+"[. c #E6DCAB",
+"{. c #E7DDAC",
+"}. c #E8DDAC",
+"|. c #E9DEAD",
+" X c #EADFAE",
+".X c #EBE0AE",
+"XX c #ECE1AF",
+"oX c #ECE1B0",
+"OX c #ECE2B1",
+"+X c #EDE2B1",
+"@X c #EDE2B2",
+"#X c #EDE3B4",
+"$X c #EEE3B6",
+"%X c #EEE4B6",
+"&X c #EEE4B7",
+"*X c #EEE4B8",
+"=X c #EEE5B8",
+"-X c #EEE5B9",
+";X c #EFE5BA",
+":X c #EFE5BB",
+">X c #EFE6BB",
+",X c #EFE6BC",
+"<X c #EFE6BD",
+"1X c #F0E7BE",
+"2X c #F0E7BF",
+"3X c #F0E7C0",
+"4X c #F0E8C1",
+"5X c #F0E8C2",
+"6X c #F1E8C2",
+"7X c #F1E8C3",
+"8X c #F1E9C3",
+"9X c #F1E9C4",
+"0X c #F1E9C5",
+"qX c #F1E9C6",
+"wX c #F1EAC6",
+"eX c #F2EAC6",
+"rX c #F2EAC7",
+"tX c #F2EAC8",
+"yX c #F2EBC9",
+"uX c #F2EBCA",
+"iX c #F3EBCB",
+"pX c #F3ECCB",
+"aX c #F3ECCC",
+"sX c #F3ECCD",
+"dX c #F3EDCE",
+"fX c #F4EDCF",
+"gX c #F4EDD0",
+"hX c #F4EED1",
+"jX c #F4EED2",
+"kX c #F5EFD4",
+"lX c #F5EFD5",
+"zX c #F5F0D6",
+"xX c #F5F0D7",
+"cX c #F6F1DA",
+"vX c #F6F1DB",
+"bX c #F7F2DC",
+"nX c #F7F2DD",
+"mX c #F7F3DF",
+"MX c #F8F4E2",
+"NX c #F9F5E4",
+"BX c #F9F6E6",
+"VX c #F9F6E7",
+"CX c #F9F6E8",
+"ZX c #FAF7E9",
+"AX c #FAF7EB",
+"SX c None",
+/* pixels */
+"SXSXSXSXSXb.c.k.g.d.d.s.y.y.r.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.e.w.w.w.7.7.6.5.*.&.#.+.X.{ ' SXSXSXSXSX",
+"SXSXSXV.M.M.b.m.b.m.m.b.c.c.c.k.z.z.k.k.k.k.k.k.k.k.k.k.z.c.k.k.k.k.k.k.k.k.k.k.k.c.k.k.k.j.j.j.d.d.r.w.6.3.&.+. .' ) W Y SXSXSX",
+"SXSXV.Z.V.Z.Z.D.L.L.T.T.T.I.L.L.L.D.L.L.L.L.D.I.D.L.D.I.L.D.D.L.D.I.D.L.D.I.D.T.L.D.D.L.D.D.L.D.D.Z.m.c.s.w.5.#.X.' ~ Y G F SXSX",
+"SXV.V.Z.D.L.R.^.).].[.}.[.{.{.].].[.'.[.'.].{.].[.].].[.].[.[.[.}.].}.].}.].].].].[.[.[.}.].].]._./.W.L.V.k.r.3.#.{ W H F c g SX",
+"SXV.Z.D.T.^.]..X-X8X0X0X0X8X3X1X1X<X<X-X1X>X-X1X<X<X<X-X1X<X-X1X-X<X-X<X1X-X1X-X<X-X1X<X<X<X-X-X$X@X}._.W.D.c.s.1.X.~ G c g a SX",
+"b.M.V.L.^.}.-XuXxXbXmXcXxXgXfXsXsXsXpXsXpXsXsXsXpXsXsXsXsXpXsXsXfXpXfXsXuXfXuXfXsXsXsXpXuXaXaXuXrX8X1XXX]./.D.c.e.&._ H z a i r ",
+"c.m.Z.T.].-XgXmXBXBXMXMXcXxXgXgXsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXsXfXsXsXfXfXsXfXsXsXsXsXsXsXsXfXpX8X-X X].W.Z.d.<.{ Y l p r 0 ",
+"k.b.D./..XuXMXCXAXBXMXmXgXfXsXsXpXpXsXpXpXpXpXpXpXpXsXpXpXpXsXpXpXpXiXaXuXaXuXpXuXpXsXuXsXpXuXpX0XrX3X1X@X}._.L.b.7.X.W z y 0 0 ",
+"g.m.D.].-XxXCXCXBXMXbXkXgXiXuX0X0X0X0X0X0XpXqXqXwXwXwX0XwX0X0X0X0X0X0X0X0X0XwXwXwXwXwXwX0X0X0X0X0X0X3X-X@X}.].T.V.y.#.! c t 0 0 ",
+"d.b.I.[.8XbXCXCXMXmXkXfXuX0X8X8X4X8X8X4X4X4X4X4X4X4X4X4X4X4X4X8X8X4X4X4X4X8X4X4X4X4X4X4X4X8X4X4X3X1X<X$XOX{.[.!.D.u.,.~ c t 0 0 ",
+"d.m.T.}.0XbXMXMXcXkXfXuX7X1X1X1X<X<X<X<X<X<X<X<X1X<X<X<X1X<X<X<X<X<X1X<X<X<X<X<X<X<X1X<X<X<X<X<X<X-X#X@X}.}.].!.D.k.<._ b t 0 0 ",
+"s.c.T.}.0XcXmXmXxXfXuX0X3X-X1X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X#X$X@X X}.].!.L.z.3.' m t 0 0 ",
+"y.c.T.}.0XxXcXkXfXuX0X3X1X$XP.L : & & : P P.#X#X#XOX#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XP.P : % & : P P.@X}.{.[.(.^.D.b.3.' m t 0 0 ",
+"y.c.T.}.8XgXkXgXuX0X3X1X$Xw.<             > 9..XOXOXOXOX.X@X@X.XOXOX.X@X.X@X.X@X.X9.<             < 9..X{.].(.^.L.b.3.{ n t 0 0 ",
+"e.z.L.].1XfXgXaXuX3X1X-XP.<                 > D.XXXX.X.XXXXXXXXX.X.XXXXXXXXXXXXXD.<                 > V.{.]./.Q.D.z.3.{ b r 0 0 ",
+"e.z.L.[.1XfXgXaXiX3X<X-XL                     H XXXX.X@XXXXXXXXX.X@XXXXXXXXXXXXXG                     F {.].(.!.D.z.3.' b r 0 0 ",
+"e.z.D.[.1XfXfXuXwX4X1X-X:                     : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;                     - [.[.(.!.D.c.6.' n w w w ",
+"e.k.I.].1XuXfXiXwX4X<X-X&                     % XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&                     % [.].(.T.D.c.6.' n w 0 0 ",
+"e.k.L.].<XpXsXpXwX4X<X-X&           4 Z 5     % XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&           4 A 5     % [.`./.W.P.c.6.' n w 0 0 ",
+"e.k.D.{.-XpXfXuXqX4X<X-X:           Z p.:.4   : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:           S i.-.1   - [.].(.W.D.c.6.' n w 0 0 ",
+"e.z.I.].1XsXsXpXqX4X<X-XP           5 :.>.N = / XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXH           8 -.D 9 * U [.]./.!.D.z.3.{ n w 0 0 ",
+"e.c.D.].<XpXfXuXqX4X<X-XP.>           3 N B ` !.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXZ.>         # 2 9 5 V D.[.]./.Q.D.c.6.' n w 0 0 ",
+"e.k.D.{.-XsXsXsXqX4X<X-X#X9.>         o = ` U..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX7.>         O * V x.}.[.'.^.!.D.c.6.' n w 0 0 ",
+"e.k.L.].1XpXfXuXqX4X<X*X#XOXD.H : % % : / Q.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXD.H ; & & - W T.OX{.[.'.(.Q.D.c.6.' n w 0 0 ",
+"e.k.D.}.-XfXsXpX0X8X-X-X#X@X.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX X}.[.].(.T.P.c.3.' n w w 0 ",
+"e.k.I.].<XpXsXsX0X8X<X-X#X.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXX@X X}.[.[.(.!.D.c.6.{ n w 0 0 ",
+"e.k.D.}.1XsXfXiX0X4X<X-X#X@XXXXXXXXXXXXXXXXXXXXXXXXXXXXXD.G : % % : H D.XXXXXXXXXXXXXXXXXXXXXXXXXXXX X}.[.].(.!.D.c.6.' n w 0 0 ",
+"e.k.L.].-XsXsXaX0X8X<X-X#XXXXXXXXXXXXXXXXXXXXXXXXXXXXX7.>             > 9.XXXXXXXXXXXXXXXXXXXXXXXXXX X}.[.`.(.!.D.c.6.' n w 0 0 ",
+"e.k.D.[.1XpXsXuX0X4X<X-X#XOXXXXXXXXXXXXXXXXXXXXXXXXXD.>                 > D..X.XXXXXXXXXXXXXXXXXXXXX X}.[.`.(.!.D.z.3.{ n w 0 0 ",
+"e.k.I.].-XfXfXaXwX4X<X-X@XOXXXXXXXXXXXXXXXXXXXXXXXXXH                     H XXXXXXXXXXXXXXXXXXXXXXXXXX}.[.[.(.T.P.c.6.' n w 0 0 ",
+"e.k.D.].1XuXfXuXwX4X1X-X#XOX.X.XXXXXXXXXXXXXXXXXXXXX;                     : XXXXXXXXXXXXXXXXXXXXXXXX X}.[.`.(.!.D.c.6.' n w 0 0 ",
+"e.k.T.].-XfXsXpXwX4X<X-X#XOX.X@XXXXXXXXXXXXXXXXXXXXX&                     % XXXXXXXXXXXXXXXXXXXXXXXXXX}.[.].(.!.D.c.6.' n w 0 0 ",
+"e.k.L.].-XsXsXpX0X4X<X-X#X.XXXXXXXXXXXXXXXXXXXXXXXXX&           4 S 8 @   % XXXXXXXXXXXXXXXXXXXXXXXX.X}.[.].~.Q.D.c.6.' n w 0 0 ",
+"e.k.G.].1XsXsXpX0X8X<X-X#X@XXXXXXXXXXXXXXXXXXXXXXXXX:           S p.:.4 + : XXXXXXXXXXXXXXXXXXXXXXXX.X}.[.].(.!.D.z.6.' n w 0 0 ",
+"e.k.L.].<XpXsXsX0X4X<X-X#X@XXXXXXXXXXXXXXXXXXXXXXXXXH           7 :.:.N = ~ XXXXXXXXXXXXXXXXXXXXXXXX.X}.[.]./.W.D.c.6.{ n w 0 0 ",
+"e.k.I.[.-XsXsXpXwX4X<X-X#X.XXXXXXXXXXXXXXXXXXXXXXXXXD.>         @ 4 N B ` Q.XXXXXXXXXXXXXXXXXXXXXXXX.X}.[.].(.W.D.c.3.' n w 0 0 ",
+"e.k.L.].1XpXsXpXwX4X1X-X#X@X.XXXXXXXXXXXXXXXXXXXXXXXXX7.>         + = ` U.XXXXXXXXXXXXXXXXXXXXXXXXXX.X}.[.].(.!.D.z.3.{ n w 0 0 ",
+"e.k.L.].>XsXsXsXwX4X<X-X#X.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXZ.H ; & % : ~ Q.XXXXXXXXXXXXXXXXXXXXXXXXXXXX.X}.].]./.!.P.c.6.' n w 0 0 ",
+"e.z.L.'.-XsXsXpX0X4X<X-X#XOXXX.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX@X.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.X}.[.'.^.R.D.c.6.' n w 0 0 ",
+"e.h.L.].1XsXsXsXwX4X<X-X@X@XXX@XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.X}.[.]./.!.D.c.6.' n w 0 0 ",
+"e.z.L.'.-XsXsXpXqX4X1X-X#XOXD.G ; & % : H D..X.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXD.G : % % : H Z. X}.[.`./.W.D.c.6.' n w w 0 ",
+"e.h.I.].<XsXsXuXqX4X-X-X#X9.>             > 9.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX9.>             > w.}.[.].(.Q.P.c.6.{ v w 0 0 ",
+"e.z.D.].<XpXsXsXpX4X<X-XP.>                 > D.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXD.>                 < M.[.].(.!.D.c.6.' n w 0 0 ",
+"e.z.I.].-XsXsXsX0X4X<X-XP                     G XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXG                     G [.`.(.!.D.c.6.' n w 0 0 ",
+"9.z.I.].<XsXsXpX0X4X<X-X:                     : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:                     - [.`.(.!.D.z.6.' n w 0 0 ",
+"e.z.D.].<XpXsXpX0X4X<X-X&                     % XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX%                     & [.].(.T.D.z.6.{ n w 0 0 ",
+"w.j.D.[.-XuXsXpX0X4X<X-X&           3 S 8 #   % XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX%           4 A 5     & [.].(.T.D.c.3.' n w 0 0 ",
+"e.d.D.'.-XuXsXpX8X8X<X-X:           A i.-.2 O : XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX:           A i.-.1   - [.].(.!.D.x.4.' c w 0 0 ",
+"7.g.D.).$X0XsXuX0X3X1X#XP           5 -.=.9 * T @XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXH           5 -.L 9 * T [.'.^.R.D.k.5._ z w 0 0 ",
+"7.d.D./.@X0XuX0X8X3X-X-XP.<           1 9 5 V T.OX.XXXXXXXXXXXXXXXXXXXXXXXXXXX@XD.>         X 1 9 8 N U.[.].^.R.Z.g.*.~ k 0 0 0 ",
+"3.t.m.W.}.-X3X8X1X1X#X@X@X9.>           * V x.}..X.X.X.X@X X X}.XX XXX X X X X X}.9.>           * V x.[.]./.^.L.V.y.&.W s 0 0 0 ",
+"3.e.z.L.].XX1X-X-X$X$XXX}.}.V.G - % & - P D.{.{.}.}.}.}.}.}.}.}.}.}.}.}.}.}.[.[.}.}.V.G - $ $ - Y P.[.[./.^.R.L.b.e.X.H i 0 0 0 ",
+"<.6.d.V.W.[.XX@X@X@X@X}.}.{.{.{.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.}.].].].[.[.[.[.{.].[.[.[.[.[.[.[.[.].(./.R.L.V.d.5.{ n r 0 0 0 ",
+"&.<.8.k.D.^.].}.}.}.}.[.}.].].].].`.`.].`.].`.].].].].].].`.`.].].].].].].].].].].].'.'.].].].(.].(.(./.R.T.V.b.e.@.W d 0 0 0 0 ",
+"&.&.5.e.c.D.^./.].].].].]././.(.(.(.(.(.(.(.(.(././././.(.(.(.(./././.(./.(.(./.(.(.^.(./.(.(./.^.^.^.R.T.Z.b.y.<.' F i 0 0 0 0 ",
+"O.@.@.5.y.k.Z.T.T.W.!.!.!.W.W.Q.!.!.!.!.T.!.!.!.Q.W.!.W.T.!.!.!.!.W.W.Q.W.W.!.W.!.R.!.Q.!.R.!.Q.Q.T.I.D.V.b.y.5. .Y s 0 0 0 0 0 ",
+".. ...@.1.9.d.b.V.D.D.L.D.L.D.D.D.D.D.D.D.D.D.D.D.P.D.D.D.P.D.D.D.D.D.D.D.P.D.D.D.D.D.D.D.L.D.D.D.D.V.b.d.e.*. .R l r 0 0 0 0 0 ",
+" .' { { X.&.<.7.y.s.k.k.b.k.z.z.x.c.c.c.c.c.x.c.c.c.c.c.c.c.c.c.c.c.z.c.c.c.c.c.z.z.b.z.z.z.z.z.h.h.y.e.5.+. .R l r 0 0 0 0 0 0 ",
+"_ ~ ! W ~ _ { X.#.*.5.5.7.3.3.6.6.6.6.6.6.6.6.6.6.6.6.3.6.6.3.6.6.6.6.6.3.6.6.6.3.6.7.3.3.3.6.3.1.*.$...' ! F d r 0 0 0 0 0 0 0 ",
+"SX! R H G P P W ! / _ _ ' ' ' { ' ' ' ' ' { ' ' ' ' { ' ' ' { ' ' ' ' ' ' { ' ' ' { ' ' { ' { ' ' ~ R P b s i 0 0 0 0 0 0 0 0 SX",
+"SXY H m c z l l c c b n m n b b n v n n n n n n n n n n n n n n n n n n n n n n c n c b c c c c z k s i r 0 0 0 0 0 0 0 0 0 0 SX",
+"SXSXm c g a p i t t t t t t r r y w w w w w w w w w w w w w w w w w w w w w w w r r r r r r r e 0 0 0 e 0 0 0 0 0 0 0 0 0 0 SXSX",
+"SXSXSXk a i r 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 w 0 0 0 0 0 0 0 0 0 0 0 w 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SXSXSX",
+"SXSXSXSXSXr 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 SXSXSXSXSX"
+};
Index: /trunk/src/dice/theme1/four.xpm
===================================================================
--- /trunk/src/dice/theme1/four.xpm	(revision 134)
+++ /trunk/src/dice/theme1/four.xpm	(revision 134)
@@ -0,0 +1,291 @@
+/* XPM */
+static char *theme1_four_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 221 2",
+"   c black",
+".  c #010101",
+"X  c #020202",
+"o  c #13120E",
+"O  c #13130E",
+"+  c #14130F",
+"@  c gray16",
+"#  c #423E31",
+"$  c #434031",
+"%  c #434033",
+"&  c #494536",
+"*  c #494636",
+"=  c #494637",
+"-  c #414141",
+";  c gray28",
+":  c #4C4C4C",
+">  c #4E4E4E",
+",  c #565656",
+"<  c #625E49",
+"1  c #635E49",
+"2  c #645F4A",
+"3  c #65604B",
+"4  c #66614B",
+"5  c #67624C",
+"6  c #68634D",
+"7  c #69644E",
+"8  c #6A654E",
+"9  c #6B6650",
+"0  c #6F6A52",
+"q  c #726D54",
+"w  c #736D55",
+"e  c #746E56",
+"r  c #756F56",
+"t  c #726E5F",
+"y  c #726F5F",
+"u  c #767057",
+"i  c #777259",
+"p  c #787359",
+"a  c #79745A",
+"s  c #7A745B",
+"d  c #7B755B",
+"f  c #7C765C",
+"g  c #7D775D",
+"h  c #7E785D",
+"j  c #7F795E",
+"k  c #736F60",
+"l  c #767676",
+"z  c gray50",
+"x  c #817B5F",
+"c  c #827C60",
+"v  c #847E62",
+"b  c #857F63",
+"n  c #857F65",
+"m  c #857F66",
+"M  c #888265",
+"N  c #898366",
+"B  c #898367",
+"V  c #8A8366",
+"C  c #8B8569",
+"Z  c #8C8568",
+"A  c #8D8668",
+"S  c #8E8769",
+"D  c #8F886A",
+"F  c #8F896A",
+"G  c #918B6C",
+"H  c #928B6C",
+"J  c #938C6D",
+"K  c #958E6E",
+"L  c #979070",
+"P  c #989171",
+"I  c #999271",
+"U  c #9A9272",
+"Y  c #9B9373",
+"T  c #9B9473",
+"R  c #9D9675",
+"E  c #9E9775",
+"W  c #A09977",
+"Q  c #A19A77",
+"!  c #A39B79",
+"~  c #A49C79",
+"^  c #A69E7B",
+"/  c #A79F7C",
+"(  c #A8A07C",
+")  c #A8A17D",
+"_  c #A9A17E",
+"`  c #ABA37F",
+"'  c gray52",
+"]  c #ADA580",
+"[  c #AEA681",
+"{  c #AFA782",
+"}  c #B0A882",
+"|  c #B1A983",
+" . c #B2A984",
+".. c #B3AA84",
+"X. c #B4AB85",
+"o. c #B6AE87",
+"O. c #B7AF88",
+"+. c #B7AF89",
+"@. c #B8B089",
+"#. c #B9B089",
+"$. c #B8B08B",
+"%. c #BAB18A",
+"&. c #BCB38B",
+"*. c #BDB48C",
+"=. c #BEB58D",
+"-. c #BFB68D",
+";. c #A7A7A7",
+":. c #C0B78E",
+">. c #C1B88F",
+",. c #C2B990",
+"<. c #C3BA91",
+"1. c #C4BB91",
+"2. c #C5BC92",
+"3. c #C6BD93",
+"4. c #C3BB95",
+"5. c #C7BE94",
+"6. c #C5BD96",
+"7. c #C6BE97",
+"8. c #C8BF94",
+"9. c #C9BF95",
+"0. c #CAC096",
+"q. c #CBC196",
+"w. c #CCC297",
+"e. c #CDC398",
+"r. c #CDC498",
+"t. c #CEC498",
+"y. c #CEC599",
+"u. c #CFC69A",
+"i. c #D0C79A",
+"p. c #D1C79B",
+"a. c #D2C89C",
+"s. c #D3C99C",
+"d. c #D2C99F",
+"f. c #D3CA9E",
+"g. c #D4CA9D",
+"h. c #D5CB9E",
+"j. c #D6CC9F",
+"k. c #D7CD9F",
+"l. c #D2C9A0",
+"z. c #D7CDA1",
+"x. c #D8CEA0",
+"c. c #D9CEA1",
+"v. c #DAD0A2",
+"b. c #DBD1A3",
+"n. c #DCD2A3",
+"m. c #DDD3A4",
+"M. c #DED4A5",
+"N. c #DFD5A5",
+"B. c #E0D6A6",
+"V. c #E1D6A7",
+"C. c #E2D7A7",
+"Z. c #E3D8A8",
+"A. c #E4D9A9",
+"S. c #E5DAAA",
+"D. c #E6DBAA",
+"F. c #E6DCAB",
+"G. c #E7DDAC",
+"H. c #E8DDAC",
+"J. c #E9DEAD",
+"K. c #EADFAE",
+"L. c #EBE0AE",
+"P. c #ECE1AF",
+"I. c #ECE1B0",
+"U. c #ECE2B1",
+"Y. c #EDE2B1",
+"T. c #EDE2B2",
+"R. c #EDE3B4",
+"E. c #EEE3B6",
+"W. c #EEE4B6",
+"Q. c #EEE4B7",
+"!. c #EEE4B8",
+"~. c #EEE5B8",
+"^. c #EEE5B9",
+"/. c #EFE5BA",
+"(. c #EFE5BB",
+"). c #EFE6BB",
+"_. c #EFE6BC",
+"`. c #EFE6BD",
+"'. c #F0E7BE",
+"]. c #F0E7BF",
+"[. c #F0E7C0",
+"{. c #F0E8C1",
+"}. c #F0E8C2",
+"|. c #F1E8C2",
+" X c #F1E8C3",
+".X c #F1E9C3",
+"XX c #F1E9C4",
+"oX c #F1E9C5",
+"OX c #F1E9C6",
+"+X c #F1EAC6",
+"@X c #F2EAC6",
+"#X c #F2EAC7",
+"$X c #F2EAC8",
+"%X c #F2EBC9",
+"&X c #F2EBCA",
+"*X c #F3EBCB",
+"=X c #F3ECCB",
+"-X c #F3ECCC",
+";X c #F3ECCD",
+":X c #F3EDCE",
+">X c #F4EDCF",
+",X c #F4EDD0",
+"<X c #F4EED1",
+"1X c #F4EED2",
+"2X c #F5EFD4",
+"3X c #F5EFD5",
+"4X c #F5F0D6",
+"5X c #F5F0D7",
+"6X c #F6F1DA",
+"7X c #F6F1DB",
+"8X c #F7F2DC",
+"9X c #F7F2DD",
+"0X c #F7F3DF",
+"qX c #F8F4E2",
+"wX c #F9F5E4",
+"eX c #F9F6E6",
+"rX c #F9F6E7",
+"tX c #F9F6E8",
+"yX c #FAF7E9",
+"uX c #FAF7EB",
+"iX c None",
+/* pixels */
+"iXiXiXiXiX0.8.3.<.>.>.:.=.=.&.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.%.+.+.o.X.| ` ` / ! E U L iXiXiXiXiX",
+"iXiXiXy.e.e.0.w.0.w.w.0.8.8.8.3.5.5.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.1.1.<.<.>.&.%.X.{ ` ! R P J S V iXiXiX",
+"iXiXy.i.y.i.i.s.k.k.c.c.c.z.k.k.k.s.k.k.k.k.s.z.s.k.s.z.s.z.k.z.k.k.s.z.s.k.s.c.s.z.k.z.k.s.k.s.s.i.e.5.:.$. ./ W P G V v x iXiX",
+"iXy.y.i.s.k.v.N.C.D.F.H.F.G.G.D.D.D.D.F.S.D.G.D.F.D.D.F.D.D.D.F.D.D.G.D.G.D.D.D.D.D.D.F.D.D.D.S.S.C.v.k.y.3.=. .^ P S v h s r iX",
+"iXy.i.s.c.N.D.L.^..XoXoXoX.X[.'.'.'.^.).^.'.^.'.`.`.^.'.`.^.`.^.^.`.'.^.'.^.'.^.^.'.`.^.`.`.`.^.E.U.H.D.b.s.8.=.{ E G v d w 0 iX",
+"0.e.y.k.N.H.^.&X5X8X0X6X5X,X>X;X;X;X;X;X;X;X;X;X;X=X;X;X=X>X=X;X>X=X;X;X&X>X&X>X;X;X=X;X=X&X&X&X&X.X^.P.G.N.s.8.%.` J v p q 8 4 ",
+"8.w.i.c.D.^.,X0XeXeXqXqX6X5X,X,X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X>X;X;X>X>X;X>X;X;X;X;X;X;X;X&X&X.X^.H.G.b.i.>.{ T V i 9 2 < ",
+"3.0.s.B.L.&XqXtXuXeXqX0X,X>X;X;X=X=X;X=X=X;X=X;X=X=X;X=X;X=X;X=X=X;X-X&X=X*X&X;X&X=X;X&X;X=X&X=X&XoX[.'.T.H.Z.c.8.o.W Z p 8 < < ",
+"<.w.s.D.^.5XtXtXeXqX8X2X,X*X&XoXoXoXoXoXoX+XoX+X+X+X+XOX+X+X+XoXoXoXoXoXoXoX+X+X+X+X+X+XoXoXoXoXoX.X.X^.T.H.D.b.y.=./ F s 5 < < ",
+">.0.z.F..X8XtXtXqX0X2X>X&XoX.X.X{..X.X{.{.{.{.{.{.{.{.{.{.{.{.{..X{.{.{.{..X{.{.{.{.{.{.{..X{.{.[.'.'.R.T.H.G.b.s.:.] J s 5 < < ",
+">.w.c.H.oX8XqXqX6X2X>X&X X'.'.'.`.`.`.`.'.`.`.`.'.`.`.`.'.`.'.'.`.`.'.`.`.`.`.`.`.`.'.`.`.`.`.`.`.^.R.T.H.H.G.b.s.5.{ J f 5 < < ",
+":.8.c.H.oX6X0X0X5X>X&XoX[.^.'.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.^.R.E.T.H.H.D.N.s.8. .L h 5 < < ",
+"=.8.c.H.oX5X6X2X>X&XoX[.'.E.l.m % + + % n l.R.R.R.R.R.R.U.R.R.R.R.R.R.R.R.R.R.R.U.R.l.M % O + % m l.T.P.G.G.C.b.s.8. .P h 5 < < ",
+"=.8.c.H..X,X2X,X&XoX[.'.E.$.=             = +.L.L.U.U.L.T.U.T.L.L.U.L.T.L.T.L.T.U.$.&             = o.H.G.D.C.b.k.3.o.P f 5 < < ",
+"%.5.k.D.'.>X,X-X&X[.'.^.l.=                 & s.P.P.L.L.P.P.P.P.U.P.P.P.P.P.P.P.s.&                 & y.G.D.B.N.s.5. .P f 4 < < ",
+"%.5.k.F.'.>X,X-X*X[.`.^.m                     M P.P.L.T.P.P.P.P.L.P.P.P.P.P.P.P.c                     x G.D.C.b.s.5. .L f 5 < < ",
+"%.5.s.F.'.>X>X&X+X{.'.^.%                     % P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.%                     # S.S.V.M.l.5. .P f 5 < < ",
+"%.3.z.D.'.&X>X*X+X{.`.^.+                     O P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.O                     + K.S.V.M.l.5.X.P f 5 < < ",
+"%.3.k.D.`.=X;X=X+X{.`.^.+           ; l : X   O P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.O           ; l >     + S.S.M.M.s.5. .P f 2 < < ",
+"%.3.s.G.^.=X>X&XOX{.`.^.%           l ;.' -   % P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.%           l ;.' -   # S.S.V.b.s.5. .P f 5 < < ",
+"%.5.z.D.'.;X;X=XOX{.`.^.M           > ' C , @ C P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.v           > ' m , @ B F.S.V.M.s.5.X.P f 5 < < ",
+"%.8.s.D.`.=X>X&XOX{.`.^.l.&           - , > k l.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.i.&           - , > k l.F.S.M.b.s.8. .P f 2 < < ",
+"%.3.s.G.^.;X;X;XOX{.`.^.R.+.&       o   @ k 7.!.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.o.&           @ k 7.G.F.S.M.M.k.5. .P f 2 < < ",
+"%.3.k.D.'.=X>X&XOX{.`.!.R.U.s.v % + + @ C z.K.R.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.i.M % + + $ C b.E.F.F.S.M.M.s.5. .P f 2 < < ",
+"%.3.s.H.^.>X;X=XoX.X^.^.R.T.L.P.L.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.T.H.G.S.C.b.s.8. .P f 4 < < ",
+"%.3.z.D.`.=X;X;XoX.X`.^.R.L.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.T.H.H.D.G.C.b.s.5.X.P f 5 < < ",
+"%.3.s.H.'.;X>X*XoX{.`.^.R.T.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.H.H.G.C.C.b.z.5. .P f 5 < < ",
+"%.3.k.D.^.;X;X-XoX.X`.^.R.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.H.G.G.G.C.b.s.5. .P f 2 < < ",
+"%.3.s.F.'.=X;X&XoX{.`.^.R.U.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.H.D.S.N.b.s.5.X.P f 2 < < ",
+"%.3.z.D.^.>X>X-X+X{.`.^.T.U.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.H.H.G.S.C.b.s.8. .P f 2 < < ",
+"%.3.s.D.'.&X>X&X+X{.'.^.R.U.L.L.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.H.D.D.S.b.k.5. .P f 2 < < ",
+"%.3.c.D.^.>X;X=X+X{.`.^.R.U.L.T.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.H.G.D.B.b.s.5. .L f 5 < < ",
+"%.5.k.D.'.;X;X=XoX{.`.^.T.T.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.H.D.S.N.b.s.8. .P f 5 < < ",
+"%.5.s.D.^.;X;X=XoX.X`.^.R.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.H.G.D.C.b.s.5.X.P f 2 < < ",
+"%.3.k.D.'.=X;X;XoX{.`.^.R.U.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.H.D.D.B.n.z.5. .P f 2 < < ",
+"%.3.z.F.^.;X;X=X+X{.`.^.R.L.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.H.G.D.B.n.s.5. .P f 2 < < ",
+"%.3.k.S.^.;X;X=X+X{.'.^.R.T.L.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.H.F.D.B.n.s.5. .P f 2 < < ",
+"%.3.k.D.'.;X;X;X+X{.`.^.R.L.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.H.D.D.S.b.s.5.X.P f 5 < < ",
+"%.3.s.G.^.;X;X=XoX{.`.^.R.T.T.L.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.H.F.S.N.b.s.8.X.P f 5 < < ",
+"%.3.z.D.'.;X;X;X+X{.`.^.R.P.L.T.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.L.H.F.D.B.b.s.8. .P f 2 < < ",
+"%.3.s.F.`.;X;X=XOX{.`.^.R.L.s.c # + + $ v s.L.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.i.v % O O % v i.H.H.G.G.C.b.z.5.X.P f 2 < < ",
+"%.3.k.D.`.=X;X=X=X{.`.^.R.$.&             & +.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.+.&             & $.H.D.G.C.b.s.5. .P f 2 < < ",
+"%.3.s.D.^.;X;X;XoX{.`.^.s.=                 & s.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.s.&                 & e.G.C.C.b.s.8. .P f 2 < < ",
+"%.3.z.F.`.;X;X=XoX{.`.^.M                     c P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.v                     c G.S.C.b.s.8.X.P f 5 < < ",
+"$.5.z.D.`.=X;X;XoX{.`.^.$                     % P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.%                     # G.G.M.b.s.5.X.P f 5 < < ",
+"$.3.s.D.`.=X;X=XoX{.`.^.+                     O P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.O                     + G.C.V.c.s.8. .P f 2 < < ",
+"O.1.s.G.^.&X;X=XoX{.'.^.+           ; l >     O P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.O           ; l >     + G.D.C.b.z.3. .P f 2 < < ",
+"$.1.s.D.^.&X=X=XoX.X`.^.%           l ;.' -   % P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.%           l ;.' -   # G.C.C.b.s.3. .L s 2 < < ",
+"O.>.g.Z.E.#X>XoXoX.X^.^.M           > ' C , @ C R.I.I.I.P.P.P.P.P.P.P.P.P.P.P.P.v           > ' m , @ C F.S.N.v.s.2.| J s < < < ",
+"O.:.i.B.T.[.oX*X.X'.`.R.l.&         X - , > k l.I.I.T.H.P.T.P.P.P.P.P.P.P.P.P.L.s.&           - , > k l.F.S.N.v.p.<.` G u 3 < < ",
+"X.&.t.n.H.'.[.'.'.'.E.E.T.+.&   X   X X @ k 4.R.P.H.H.T.K.K.I.H.L.L.L.L.L.L.H.T.H.+.&           @ k -.E.S.N.N.x.y.=.` Z q < < < ",
+"| $.8.k.D.K.'.'.^.E.T.P.H.H.y.c & + + @ C l.G.G.H.H.H.H.H.H.H.G.H.H.H.H.H.H.G.G.H.H.e.c # O O # B l.G.S.S.N.v.s.0.$.E M 8 < < < ",
+"` X.:.i.n.D.K.T.T.T.K.H.H.F.H.G.G.G.S.G.F.G.S.G.F.F.G.D.G.D.G.G.F.D.G.D.G.D.G.S.G.D.G.D.G.G.S.S.F.F.S.A.N.M.z.y.>.| L h 4 < < < ",
+"` { O.8.g.B.D.H.H.H.H.G.H.D.D.D.S.G.S.S.S.S.S.S.D.D.D.D.S.D.Z.G.D.D.S.S.D.D.S.S.D.D.S.S.D.D.S.S.S.V.M.N.b.z.p.0.%.^ F q < < < < ",
+"/ ` { &.8.s.b.C.D.D.G.D.B.S.B.C.C.N.N.C.N.N.S.N.B.B.C.C.N.C.C.C.C.C.N.C.S.B.C.C.C.C.N.C.C.C.C.C.M.M.M.z.z.u.0.=.{ P x 8 < < < < ",
+"! ! / ..&.8.a.c.v.n.b.N.N.b.b.b.N.b.b.b.N.b.b.m.n.n.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.l.u.5.=. .R V q < < < < < ",
+"E R E ^ { %.>.0.y.s.s.z.s.s.s.k.s.s.z.s.s.s.s.s.s.s.s.s.s.s.z.s.s.s.s.s.k.s.s.s.s.s.k.s.s.s.s.s.s.s.y.0.>.%.{ T Z i 4 < < < < < ",
+"T P P P E ( { O.=.>.1.5.0.8.5.5.5.0.5.5.5.0.5.0.8.8.8.5.5.5.5.5.5.0.5.8.5.5.5.0.5.5.5.5.5.0.3.3.2.<.=.%.| ( L Z i 4 < < < < < < ",
+"L J F F J J P W / ] {  .X. . .X. . . . . .X.X.X.X. . .X. .X. .X. . .o. . .o. . . .X. . . . .o.| { ` ) W L F x w 4 < < < < < < < ",
+"iXF M M c M V Z F G J L P P P P P P P L L L L L P P P P P P P L P P L L L P P P P P P L P P L L J G F c h w 8 < < < < < < < < iX",
+"iXV v h s p i i s s f f h h f f f f f f f f f f f f f f f f f f f f f f f f f f s f f f d s s s s u q 8 4 < < < < < < < < < < iX",
+"iXiXh s r 0 9 8 8 5 6 5 4 4 4 4 2 5 2 5 2 2 5 2 5 2 2 5 2 2 5 2 5 2 2 5 5 2 < 5 4 4 4 4 4 4 4 4 4 < < < < < < < < < < < < < iXiX",
+"iXiXiXu 0 8 2 < < < < < < < < < < < < < 2 2 < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < iXiXiX",
+"iXiXiXiXiX4 < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < iXiXiXiXiX"
+};
Index: /trunk/src/dice/theme1/one.xpm
===================================================================
--- /trunk/src/dice/theme1/one.xpm	(revision 134)
+++ /trunk/src/dice/theme1/one.xpm	(revision 134)
@@ -0,0 +1,273 @@
+/* XPM */
+static char *theme1_one_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 203 2",
+"   c black",
+".  c #010101",
+"X  c #020202",
+"o  c #13130E",
+"O  c gray16",
+"+  c #434031",
+"@  c #494636",
+"#  c #414141",
+"$  c gray28",
+"%  c #4C4C4C",
+"&  c #4E4E4E",
+"*  c #565656",
+"=  c #625E49",
+"-  c #635E49",
+";  c #645F4A",
+":  c #65604B",
+">  c #66614B",
+",  c #67624C",
+"<  c #68634D",
+"1  c #69644E",
+"2  c #6A654E",
+"3  c #6B6650",
+"4  c #6F6A52",
+"5  c #726D54",
+"6  c #736D55",
+"7  c #746E56",
+"8  c #756F56",
+"9  c #767057",
+"0  c #777259",
+"q  c #787359",
+"w  c #79745A",
+"e  c #7A745B",
+"r  c #7B755B",
+"t  c #7C765C",
+"y  c #7D775D",
+"u  c #7E785D",
+"i  c #7F795E",
+"p  c #736F60",
+"a  c #767676",
+"s  c gray50",
+"d  c #817B5F",
+"f  c #847E62",
+"g  c #857F63",
+"h  c #888265",
+"j  c #898366",
+"k  c #8A8366",
+"l  c #8B8569",
+"z  c #8C8568",
+"x  c #8D8668",
+"c  c #8E8769",
+"v  c #8F886A",
+"b  c #8F896A",
+"n  c #918B6C",
+"m  c #928B6C",
+"M  c #938C6D",
+"N  c #958E6E",
+"B  c #979070",
+"V  c #989171",
+"C  c #999271",
+"Z  c #9A9272",
+"A  c #9B9373",
+"S  c #9B9473",
+"D  c #9D9675",
+"F  c #9E9775",
+"G  c #A09977",
+"H  c #A19A77",
+"J  c #A39B79",
+"K  c #A49C79",
+"L  c #A69E7B",
+"P  c #A79F7C",
+"I  c #A8A07C",
+"U  c #A8A17D",
+"Y  c #A9A17E",
+"T  c #ABA37F",
+"R  c gray52",
+"E  c #ADA580",
+"W  c #AEA681",
+"Q  c #AFA782",
+"!  c #B0A882",
+"~  c #B1A983",
+"^  c #B2A984",
+"/  c #B3AA84",
+"(  c #B4AB85",
+")  c #B6AE87",
+"_  c #B7AF88",
+"`  c #B8B089",
+"'  c #B9B089",
+"]  c #BAB18A",
+"[  c #BCB38B",
+"{  c #BDB48C",
+"}  c #BEB58D",
+"|  c #BFB68D",
+" . c #A7A7A7",
+".. c #C0B78E",
+"X. c #C1B88F",
+"o. c #C2B990",
+"O. c #C3BA91",
+"+. c #C4BB91",
+"@. c #C5BC92",
+"#. c #C6BD93",
+"$. c #C7BE94",
+"%. c #C6BE97",
+"&. c #C8BF94",
+"*. c #C9BF95",
+"=. c #CAC096",
+"-. c #CBC196",
+";. c #CCC297",
+":. c #CDC398",
+">. c #CDC498",
+",. c #CEC599",
+"<. c #CFC69A",
+"1. c #D0C79A",
+"2. c #D1C79B",
+"3. c #D2C89C",
+"4. c #D3C99C",
+"5. c #D4CA9D",
+"6. c #D5CB9E",
+"7. c #D6CC9F",
+"8. c #D7CD9F",
+"9. c #D7CDA1",
+"0. c #D8CEA0",
+"q. c #D9CEA1",
+"w. c #DAD0A2",
+"e. c #DBD1A3",
+"r. c #DCD2A3",
+"t. c #DDD3A4",
+"y. c #DED4A5",
+"u. c #DFD5A5",
+"i. c #E0D6A6",
+"p. c #E1D6A7",
+"a. c #E2D7A7",
+"s. c #E3D8A8",
+"d. c #E4D9A9",
+"f. c #E5DAAA",
+"g. c #E6DBAA",
+"h. c #E6DCAB",
+"j. c #E7DDAC",
+"k. c #E8DDAC",
+"l. c #E9DEAD",
+"z. c #EADFAE",
+"x. c #EBE0AE",
+"c. c #ECE1AF",
+"v. c #ECE1B0",
+"b. c #ECE2B1",
+"n. c #EDE2B1",
+"m. c #EDE2B2",
+"M. c #EDE3B3",
+"N. c #EDE3B4",
+"B. c #EDE3B5",
+"V. c #EEE3B6",
+"C. c #EEE4B6",
+"Z. c #EEE4B7",
+"A. c #EEE4B8",
+"S. c #EEE5B8",
+"D. c #EEE5B9",
+"F. c #EFE5BA",
+"G. c #EFE5BB",
+"H. c #EFE6BB",
+"J. c #EFE6BC",
+"K. c #EFE6BD",
+"L. c #F0E7BE",
+"P. c #F0E7BF",
+"I. c #F0E7C0",
+"U. c #F0E8C1",
+"Y. c #F0E8C2",
+"T. c #F1E8C2",
+"R. c #F1E8C3",
+"E. c #F1E9C3",
+"W. c #F1E9C4",
+"Q. c #F1E9C5",
+"!. c #F1E9C6",
+"~. c #F1EAC6",
+"^. c #F2EAC6",
+"/. c #F2EAC7",
+"(. c #F2EAC8",
+"). c #F2EBC9",
+"_. c #F2EBCA",
+"`. c #F3EBCB",
+"'. c #F3ECCB",
+"]. c #F3ECCC",
+"[. c #F3ECCD",
+"{. c #F3EDCE",
+"}. c #F4EDCF",
+"|. c #F4EDD0",
+" X c #F4EED1",
+".X c #F4EED2",
+"XX c #F5EFD4",
+"oX c #F5EFD5",
+"OX c #F5F0D6",
+"+X c #F5F0D7",
+"@X c #F6F1DA",
+"#X c #F6F1DB",
+"$X c #F7F2DC",
+"%X c #F7F2DD",
+"&X c #F7F3DF",
+"*X c #F8F4E2",
+"=X c #F9F5E4",
+"-X c #F9F6E6",
+";X c #F9F6E7",
+":X c #F9F6E8",
+">X c #FAF7E9",
+",X c #FAF7EB",
+"<X c None",
+/* pixels */
+"<X<X<X<X<X=.&.#.O.X.X...} } [ ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ) ] ` ` _ ) ( ~ Q P P J F A B <X<X<X<X<X",
+"<X<X<X,.:.:.=.;.=.;.;.=.&.&.&.#.#.+.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.#.O.O...[ ] ( Q Y K S A M c j <X<X<X",
+"<X<X,.1.,.1.1.4.8.8.q.q.q.9.8.8.8.8.5.8.8.8.4.8.4.9.8.4.4.9.8.8.8.8.4.9.8.8.4.9.8.8.8.8.4.8.4.4.4.1.:.$...] ~ P G B v j f d <X<X",
+"<X,.,.1.4.8.w.u.a.g.h.k.h.j.j.g.g.h.h.h.g.g.h.g.h.g.g.j.g.g.g.g.g.g.j.g.g.g.g.g.h.h.s.h.h.g.g.g.g.i.e.8.,.#.} ^ L A v f u w 8 <X",
+"<X,.1.4.q.u.g.x.D.E.Q.Q.Q.E.I.L.L.L.D.L.D.K.K.K.K.K.K.D.L.K.D.L.D.K.D.K.K.K.D.K.K.K.D.L.D.K.D.D.V.v.k.g.e.4.&.} Q G n f w 6 4 <X",
+"=.:.,.8.u.k.D._.+X$X&X@X+X|.}.[.[.[.[.[.[.'.[.[.'.[.'.[.[.'.[.[.}.'.}.[.`.[.[.[.[.[.[.[.[.[.`.'._.Q.K.c.g.u.4.&.] I N f w 5 2 > ",
+"&.;.1.q.g.D.|.&X-X-X*X*X@X+X|.|.[.[.[.[.[.[.[.[.[.}.[.}.[.}.[.}.[.[.}.[.[.}.[.[.[.[.[.[.[.[.[.[._._.E.A.x.g.t.1...Q A j 0 3 ; = ",
+"#.=.4.i.x._.*X:X,X-X*X&X|.}.[.[.'.'.[.'.'.[.'.'.'._.[._.'._.'._.'.'.`._.[._.'.'._.'.[.'.[.'.'.'._.Q.I.L.m.k.i.q.&.) G l w 2 = = ",
+"O.;.4.s.D.XX-X:X-X*X$XXX|.`._.Q.Q.~.~.~.~.~.~.~.~.~.~.~.Q.Q.Q.Q.Q.Q.Q.Q.~.~.~.~.~.~.~.~.~.~.Q.Q.Q.Q.E.D.V.k.s.e.,.} Y v w < = = ",
+"X.=.q.g.E.&X:X-X*X&XXX}._.Q.E.E.U.U.U.U.U.U.U.U.U.U.U.U.U.L.E.E.E.E.U.U.U.U.U.U.U.U.U.U.U.U.U.U.I.L.D.B.c.k.f.t.4...Y M w < = = ",
+"X.;.q.j.Q.&X-X*X@XXX}._.R.L.L.L.L.L.L.L.L.K.K.K.K.K.K.K.L.K.L.K.K.K.L.K.L.L.L.L.K.K.K.K.L.D.L.H.L.D.B.m.x.k.g.t.4.$.Q N t , = = ",
+"..=.q.k.Q.@X&X&X+X}._.Q.I.D.L.D.D.D.B.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.B.D.D.D.D.D.D.D.D.D.D.B.V.m.k.j.g.t.4.&.^ B t , = = ",
+"} &.q.k.Q.@X@XXX|._.E.E.L.A.V.V.B.M.B.B.M.B.M.M.B.B.b.B.B.B.B.m.B.b.B.M.B.M.B.M.B.b.M.M.B.M.B.B.B.m.m.x.j.j.s.u.4.=.^ B u , = = ",
+"{ &.q.j.E.|.|.|.`.Q.K.K.V.m.m.v.b.M.b.x.v.v.v.m.v.v.v.v.k.m.c.m.v.v.x.m.x.m.x.m.v.v.m.c.v.v.x.m.m.c.c.k.j.g.i.t.8.&.^ B u > = = ",
+"[ $.8.h.L.}.|.}._.E.L.D.m.m.x.c.c.c.c.c.x.c.c.c.c.c.x.m.c.c.c.c.v.x.c.c.c.c.c.c.v.x.M.c.x.c.c.c.c.c.c.k.j.g.i.t.4.$.^ A t > = = ",
+"] #.8.h.L.[.}._._.I.K.D.B.m.c.c.c.c.c.c.c.c.c.c.c.c.c.x.c.c.c.c.x.m.c.c.c.c.c.c.x.v.x.c.c.c.c.c.c.c.x.k.k.g.i.e.4.$.~ A t > = = ",
+"] #.9.g.K.'.}.'.Q.U.L.D.B.v.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.j.f.s.t.4.$.^ A t > = = ",
+"] #.4.g.K.[.[._.~.U.K.D.B.b.c.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.f.g.u.e.4.$.^ B t > = = ",
+"] #.8.g.K.'.[.[.~.U.K.D.B.b.v.b.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.f.g.i.e.9.$.^ B t ; = = ",
+"] #.8.g.D.[.[.[.~.U.K.D.b.v.v.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.g.g.s.t.4.$.^ A t > = = ",
+"] #.4.g.L.[.[.'.~.U.L.D.M.m.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.h.g.s.w.4.$.^ A t = = = ",
+"] #.9.g.K.'.[.'.~.U.K.D.M.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.g.g.i.t.4.$.^ B t , = = ",
+"] #.8.g.D.[.[.[.~.U.L.D.B.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.h.g.u.w.4.=.^ A t ; = = ",
+"] #.8.h.L.[.[.'.Q.U.K.D.M.m.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.h.g.i.t.4.$.^ B t , = = ",
+"] #.8.g.D.}.[.'.Q.E.D.D.M.m.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.x.k.j.g.s.e.4.=.( B y : = = ",
+"] #.8.g.K.'.[.[.Q.E.K.D.B.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.m.x.j.f.s.s.e.4.$.^ B t > = = ",
+"] #.4.j.L.[.}.`.Q.U.K.D.M.m.c.c.c.c.c.c.c.c.c.c.c.c.c.c.1.f + o o + f 1.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.j.j.s.s.e.4.$.^ A t : = = ",
+"] #.9.g.D.[.[._.Q.E.K.D.B.c.c.c.c.c.c.c.c.c.c.c.c.c.x.` @ . . . . . . @ _ c.c.c.c.c.c.c.c.c.c.c.c.c.x.j.j.f.u.u.8.$.^ B t : = = ",
+"] #.8.g.K._.[.[.~.U.K.D.B.x.c.c.c.c.c.c.c.c.c.c.c.c.4.@ . . . . . . . . @ 1.c.c.c.c.c.c.c.c.c.c.c.c.x.k.h.s.s.e.4.$.^ A t : = = ",
+"] #.8.g.K.[.}.`.~.U.K.D.B.v.c.c.c.c.c.c.c.c.c.c.c.c.f . . . . . . . . . . f c.c.c.c.c.c.c.c.c.c.c.c.x.k.j.j.u.e.5.$.( B t : = = ",
+"] #.4.g.D.'.[._.~.U.L.D.B.v.x.c.c.c.c.c.c.c.c.c.c.c.+ . . . . . . . . . . + c.c.c.c.c.c.c.c.c.c.c.c.x.k.j.s.u.r.5.=.( B t : = = ",
+"] #.9.g.L.[.[.[.~.U.K.D.M.v.m.x.c.c.c.c.c.c.c.c.c.c.o . . . . . . . . . . o c.c.c.c.c.c.c.c.c.c.c.c.x.k.j.s.s.r.4.#.^ B t : = = ",
+"] #.8.h.L.[.[.'.Q.U.K.D.M.m.c.c.c.c.c.c.c.c.c.c.c.c.o . . . . . $ a & . . o x.c.c.c.c.c.c.c.c.c.c.c.x.k.f.f.s.t.4.$.^ A t > = = ",
+"] #.8.h.D.[.[.'.~.U.K.D.M.c.c.c.c.c.c.c.c.c.c.c.c.x.+ . . . . . a  .R # . + c.c.c.c.c.c.c.c.c.c.c.c.x.k.j.s.u.e.4.$.^ B t > = = ",
+"] #.8.s.L.'.[.[.~.U.K.D.B.x.c.c.c.c.c.c.c.c.c.c.c.c.f . . . . . % R s * O l c.c.c.c.c.c.c.c.c.c.c.c.x.k.j.g.s.e.9.$.^ B t : = = ",
+"] #.8.h.D.[.[.'.~.U.L.D.M.m.c.c.c.c.c.c.c.c.c.c.c.c.1.@ . . . . . # * & p 9.c.c.c.c.c.c.c.c.c.c.c.c.x.k.f.g.i.e.4.$.^ A t : = = ",
+"] #.8.s.D.[.[.'.~.U.L.D.M.m.x.c.c.c.c.c.c.c.c.c.c.c.c._ @ . . . . . O p $.x.m.x.c.c.c.c.c.c.c.c.c.c.x.k.h.g.s.w.4.$.^ B t : = = ",
+"] #.9.h.L.[.[.[.~.U.K.D.B.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.1.f + o o + l 9.v.v.c.c.c.c.c.c.c.c.c.c.c.c.x.k.g.g.s.e.8.$.( B t : = = ",
+"] $.8.g.D.[.[.'.~.U.K.D.M.m.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.h.s.s.t.4.$.^ A t : = = ",
+"] $.4.g.K.[.[.'.~.U.K.D.B.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.h.g.u.e.4.$.^ B t : = = ",
+"] #.4.h.K.'.[.'.~.U.L.D.B.v.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.x.k.j.g.s.e.4.=.( B y : = = ",
+"] #.9.g.K.[.}._.~.U.K.D.B.v.c.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.m.x.j.f.s.s.e.4.$.^ S t : = = ",
+"] #.8.g.K.'.[.[.~.U.K.D.b.v.x.M.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.j.j.s.s.e.4.$.^ B t : = = ",
+"] #.4.j.D.[.}._.Q.U.K.D.B.v.v.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.j.j.f.u.u.5.=.^ B t : = = ",
+"` $.9.g.L.'.[.'.Q.U.L.D.V.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.h.s.s.e.4.#.( B t : = = ",
+"` #.4.g.K.'.[._.Q.U.K.D.m.m.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.j.h.u.e.5.=.^ B t : = = ",
+"` @.4.g.K._.[.'.Q.U.K.D.V.x.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.h.s.s.w.5.#.^ A w : = = ",
+"` @.4.g.D._.[._.Q.U.K.D.B.v.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.x.k.j.s.a.w.5.#.^ B w : = = ",
+"` @.1.s.V.Q.}._.Q.L.L.B.V.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.m.c.c.c.c.c.c.x.v.c.c.k.k.h.s.i.w.4.#.~ N w - - - ",
+") ..1.i.m.Q._.Q.E.L.L.B.m.m.c.c.x.m.c.c.c.c.c.c.c.c.c.c.x.m.c.c.c.c.c.c.c.c.c.k.c.c.c.c.c.x.m.v.c.x.x.k.h.g.u.w.1.O.T n 9 - - - ",
+"( ..:.t.k.L.R.I.L.L.D.m.m.c.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.v.c.c.k.c.c.c.z.m.x.x.x.x.x.x.x.x.k.k.k.j.g.i.u.8.,.} Y z 4 = - = ",
+"^ ` &.4.s.m.A.L.D.V.m.c.x.k.k.k.j.j.j.j.k.k.k.k.k.k.k.k.k.k.j.k.k.k.k.k.k.k.j.j.k.k.k.k.k.k.j.j.k.j.j.g.a.u.w.4.=.] G h 2 = = = ",
+"E ( X.1.q.k.k.m.m.m.m.k.k.h.h.j.j.j.j.j.h.j.h.h.h.h.f.f.j.f.f.f.g.g.g.h.f.f.j.j.h.g.h.h.f.j.f.j.j.j.g.s.t.e.8.,.O.~ B y > = = = ",
+"P W ` #.4.t.g.k.k.k.k.j.h.g.g.g.s.j.s.g.s.h.s.h.g.g.g.g.f.f.g.s.g.g.s.g.g.g.g.s.g.g.s.g.g.g.g.s.s.g.s.u.w.q.4.=.] L v 6 : = = = ",
+"P E ^ [ &.4.t.s.g.g.g.s.g.i.i.i.s.u.s.s.u.s.u.s.i.i.s.i.s.s.u.s.i.s.s.u.s.i.u.s.s.s.s.u.s.i.i.s.i.u.u.w.9.1.=.} Q B i 2 = = = = ",
+"K K P W ..&.3.q.w.e.u.t.t.t.e.t.e.e.e.e.e.e.e.e.w.t.w.t.e.t.e.t.e.e.t.e.e.t.e.e.w.e.t.e.e.e.e.w.e.w.9.4.,.=.} ~ F j 5 = = = = = ",
+"F D F L Q ` X.&.,.4.4.4.8.4.4.8.4.5.5.4.5.5.5.5.5.4.4.4.4.4.8.4.4.4.4.4.8.4.4.4.4.4.4.4.4.8.4.4.4.4.>.=.X.] T D l 0 : - = = = = ",
+"A A B A F Y Q ) } ..#.$.&.$.$.$.$.$.=.#.+.=.#.=.=.#.=.=.$.$.$.$.&.&.$.$.$.$.$.=.$.$.=.$.$.$.#.#.#.X...` ~ L S l 0 > = = = = = = ",
+"B M v v M N A G P Y ~ ~ ^ ^ ^ ( ( ( ^ ( ( ( ( ( ~ ^ ( ^ ^ ( ^ ( ^ ^ ^ ^ ^ ( ^ ^ ^ ( ^ ^ ^ ^ ^ ~ ~ T I G V c d 6 > = = = = = = = ",
+"<Xc h h f f h c v M N B A B B A C B B B B B B B B B B B A B B B A B A B A B B A B B A B A B A V N m l h u 5 2 = : - = = = = = <X",
+"<Xj f u t 0 0 0 w w t u u t t t t t t t t t t t y t t t t t t t t t t t w t t t t t t t t t w w q 9 5 2 > = = = = = = = = = = <X",
+"<X<Xd w 6 4 3 2 2 , , , , > > > > > : : : : : : , : : : : : : : : : : : , > : : > ; ; , > > > > - - = = = = = = = = = = = = <X<X",
+"<X<X<X8 4 2 > = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = <X<X<X",
+"<X<X<X<X<X> = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = <X<X<X<X<X"
+};
Index: /trunk/src/dice/theme1/six.xpm
===================================================================
--- /trunk/src/dice/theme1/six.xpm	(revision 134)
+++ /trunk/src/dice/theme1/six.xpm	(revision 134)
@@ -0,0 +1,325 @@
+/* XPM */
+static char *theme1_six_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 255 2",
+"   c black",
+".  c #010101",
+"X  c #020202",
+"o  c #13120E",
+"O  c #13130E",
+"+  c #14130F",
+"@  c #141310",
+"#  c gray16",
+"$  c #403C2F",
+"%  c #413E30",
+"&  c #423E31",
+"*  c #423F31",
+"=  c #434031",
+"-  c #434032",
+";  c #434033",
+":  c #434034",
+">  c #444236",
+",  c #444237",
+"<  c #474435",
+"1  c #484435",
+"2  c #494536",
+"3  c #494636",
+"4  c #494637",
+"5  c #494638",
+"6  c #4A4739",
+"7  c #4A473A",
+"8  c #4A473B",
+"9  c #4A483B",
+"0  c #414141",
+"q  c gray28",
+"w  c #4C4C4C",
+"e  c #4E4E4E",
+"r  c #565656",
+"t  c #625E49",
+"y  c #635E49",
+"u  c #645F4A",
+"i  c #65604B",
+"p  c #66614B",
+"a  c #67624C",
+"s  c #68634D",
+"d  c #69644E",
+"f  c #6A654E",
+"g  c #6B6650",
+"h  c #6F6A52",
+"j  c #726D54",
+"k  c #736D55",
+"l  c #746E56",
+"z  c #756F56",
+"x  c #706D5E",
+"c  c #716E5E",
+"v  c #726F5F",
+"b  c #767057",
+"n  c #777259",
+"m  c #787359",
+"M  c #79745A",
+"N  c #7A745B",
+"B  c #7B755B",
+"V  c #7C765C",
+"C  c #7D775D",
+"Z  c #7E785D",
+"A  c #7E785E",
+"S  c #7F795E",
+"D  c #736F60",
+"F  c #767676",
+"G  c gray50",
+"H  c #817B5F",
+"J  c #827C60",
+"K  c #847E62",
+"L  c #857F63",
+"P  c #847F64",
+"I  c #857F64",
+"U  c #857F65",
+"Y  c #878166",
+"T  c #888265",
+"R  c #898366",
+"E  c #898367",
+"W  c #8A8366",
+"Q  c #868169",
+"!  c #87826C",
+"~  c #87826D",
+"^  c #8B8569",
+"/  c #8C8568",
+"(  c #8D8668",
+")  c #8E8769",
+"_  c #8F886A",
+"`  c #8F896A",
+"'  c #918B6C",
+"]  c #928B6C",
+"[  c #938C6D",
+"{  c #958E6E",
+"}  c #979070",
+"|  c #989171",
+" . c #999271",
+".. c #9A9272",
+"X. c #9B9373",
+"o. c #9B9473",
+"O. c #9D9675",
+"+. c #9E9775",
+"@. c #A09977",
+"#. c #A19A77",
+"$. c #A39B79",
+"%. c #A49C79",
+"&. c #A69E7B",
+"*. c #A79F7C",
+"=. c #A8A07C",
+"-. c #A8A17D",
+";. c #A9A17E",
+":. c #ABA37F",
+">. c gray52",
+",. c #ADA580",
+"<. c #AEA681",
+"1. c #AFA782",
+"2. c #B0A882",
+"3. c #B1A983",
+"4. c #B2A984",
+"5. c #B3AA84",
+"6. c #B4AB85",
+"7. c #B6AE87",
+"8. c #B7AF88",
+"9. c #B7AF89",
+"0. c #B8B089",
+"q. c #B9B089",
+"w. c #BAB18A",
+"e. c #BCB38B",
+"r. c #B9B18F",
+"t. c #BDB48C",
+"y. c #BEB58D",
+"u. c #BFB68D",
+"i. c #BAB393",
+"p. c #BEB691",
+"a. c #BAB395",
+"s. c #A7A7A7",
+"d. c #C0B78E",
+"f. c #C1B88F",
+"g. c #C2B990",
+"h. c #C3BA91",
+"j. c #C1B893",
+"k. c #C4BB91",
+"l. c #C5BC92",
+"z. c #C6BD93",
+"x. c #C7BE94",
+"c. c #C5BD96",
+"v. c #C6BE97",
+"b. c #C8BF94",
+"n. c #C9BF95",
+"m. c #CAC096",
+"M. c #CBC196",
+"N. c #CCC297",
+"B. c #CBC398",
+"V. c #CCC398",
+"C. c #CDC398",
+"Z. c #CDC39A",
+"A. c #CDC498",
+"S. c #CEC498",
+"D. c #CEC599",
+"F. c #CEC49A",
+"G. c #CFC69A",
+"H. c #D0C79A",
+"J. c #D1C79B",
+"K. c #D2C89C",
+"L. c #D3C99C",
+"P. c #D2C99D",
+"I. c #D3CA9E",
+"U. c #D4CA9D",
+"Y. c #D5CB9E",
+"T. c #D6CC9F",
+"R. c #D7CD9F",
+"E. c #D2C9A0",
+"W. c #D7CDA1",
+"Q. c #D3CBA4",
+"!. c #D8CEA0",
+"~. c #D9CEA1",
+"^. c #D5CDA9",
+"/. c #D5CDAA",
+"(. c #D5CEAB",
+"). c #D6CEAD",
+"_. c #DAD0A2",
+"`. c #DBD1A3",
+"'. c #DCD2A3",
+"]. c #DDD3A4",
+"[. c #DED4A5",
+"{. c #DFD5A5",
+"}. c #E0D6A6",
+"|. c #E1D6A7",
+" X c #E2D7A7",
+".X c #E3D8A8",
+"XX c #E4D9A9",
+"oX c #E5DAAA",
+"OX c #E6DBAA",
+"+X c #E6DCAB",
+"@X c #E7DDAC",
+"#X c #E8DDAC",
+"$X c #E9DEAD",
+"%X c #EADFAE",
+"&X c #EBE0AE",
+"*X c #ECE1AF",
+"=X c #ECE1B0",
+"-X c #ECE2B1",
+";X c #EDE2B1",
+":X c #EDE2B2",
+">X c #EDE3B4",
+",X c #EEE3B6",
+"<X c #EEE4B6",
+"1X c #EEE4B7",
+"2X c #EEE4B8",
+"3X c #EEE5B8",
+"4X c #EEE5B9",
+"5X c #EFE5BA",
+"6X c #EFE5BB",
+"7X c #EFE6BB",
+"8X c #EFE6BC",
+"9X c #EFE6BD",
+"0X c #F0E7BE",
+"qX c #F0E7BF",
+"wX c #F0E7C0",
+"eX c #F0E8C1",
+"rX c #F0E8C2",
+"tX c #F1E8C2",
+"yX c #F1E8C3",
+"uX c #F1E9C3",
+"iX c #F1E9C4",
+"pX c #F1E9C5",
+"aX c #F1E9C6",
+"sX c #F1EAC6",
+"dX c #F2EAC6",
+"fX c #F2EAC7",
+"gX c #F2EAC8",
+"hX c #F2EBC9",
+"jX c #F2EBCA",
+"kX c #F3EBCB",
+"lX c #F3ECCB",
+"zX c #F3ECCC",
+"xX c #F3ECCD",
+"cX c #F3EDCE",
+"vX c #F4EDCF",
+"bX c #F4EDD0",
+"nX c #F4EED1",
+"mX c #F4EED2",
+"MX c #F5EFD4",
+"NX c #F5EFD5",
+"BX c #F5F0D6",
+"VX c #F5F0D7",
+"CX c #F6F1DA",
+"ZX c #F6F1DB",
+"AX c #F7F2DC",
+"SX c #F7F2DD",
+"DX c #F7F3DF",
+"FX c #F8F4E2",
+"GX c #F9F5E4",
+"HX c #F9F6E6",
+"JX c #F9F6E7",
+"KX c #F9F6E8",
+"LX c #FAF7E9",
+"PX c #FAF7EB",
+"IX c None",
+/* pixels */
+"IXIXIXIXIXM.b.z.h.h.f.d.y.y.e.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.w.0.0.w.0.9.7.7.2.1.-.*.$.+.X.} IXIXIXIXIX",
+"IXIXIXD.D.N.M.M.M.M.M.M.b.b.x.x.z.z.z.z.z.z.z.z.z.z.z.z.x.x.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.k.z.h.u.w.w.6.1.=.%.+.| [ ) E IXIXIX",
+"IXIXD.H.D.H.H.L.L.T.~.~.~.~.T.T.W.T.L.W.T.T.T.T.T.T.T.T.W.L.L.W.T.T.T.T.T.T.T.T.T.T.Y.W.T.T.T.L.L.H.D.x.y.w.4.=.+.| ' E K H IXIX",
+"IXD.D.H.L.T._.{..XOX#X#X@X@X+X+XOXOX+X@XOXOXOXOXOXOXOXOXOXOX@X+XOXOXOXOXOXOXOXOXOX+X+XoXOX.XOX.X.X}.'.T.D.z.y.4.*.| ) I Z M z IX",
+"IXD.H.L.~.{.OX&X5XrXpXgXpXrXrX0X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X8X5X1X=X#XOX'.L.b.y.2.@.[ K M k h IX",
+"M.V.D.W.{.#X5XlXVXAXAXAXVXbXvXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXzXgXzXgXpX5X*X+X{.L.x.w.=.{ K M j f p ",
+"b.M.H.~.OX5XbXDXGXKXGXAXCXVXbXvXbXzXzXzXbXzXzXzXzXzXbXzXzXzXzXzXzXbXzXbXzXzXzXzXzXbXbXzXzXbXzXzXzXlXrX5X&XOX].H.d.1.| E n g u t ",
+"z.M.L.}.#XlXDXLXPXGXFXAXMXbXzXzXzXzXzXzXzXzXlXlXxXgXzXxXzXxXzXxXxXzXgXxXxXxXxXzXgXxXzXgXxXlXgXlXgXpXrX0X=X#X X~.b.7.@.^ M f t t ",
+"h.M.L..X5XVXKXKXLXFXAXNXzXgXgXgXpXpXpXpXlXpXpXpXsXsXsXsXsXpXpXpXaXaXaXaXsXsXsXsXsXsXsXsXpXpXpXpXpXpXwX2X=X#X+X~.D.y.=.' M s t t ",
+"h.M.W.+XrXAXKXKXFXAXBXbXzXaX).~ , o @ , ! /.rXrXrXqXrXrXrXrXrXrXrXrXqXrXrXrXqXrXrXqX(.! , o @ , ~ /.8X2X=X#X+X].L.d.=.[ B a t t ",
+"f.M.~.@XpXAXGXGXAXBXzXgXpXa.9 . . . . . . 7 i.8XqX7XqX5XqX5X8X8X5XqXqX7XqX5X7XqX5Xi.5 . . . . . . 7 r.=X%X#X+X].L.x.1.{ V a t t ",
+"y.M._.#XpXCXAXAXBXbXlXaX/.7 . . . . . . . . 7 Q.4X4X3X5X5X5X5X5X4X4X4X5X3X5X5X5XQ.9 . . . . . . . . 7 J.%X@X+X[.L.b.4.} V a t t ",
+"y.z.~.@XpXCXCXMXbXgXpXwXQ . . . . . . . . . . Y -X-X3X-X>X>X>X>X-X3X1X-X1X-X1X-XY . . . . . . . . . . J @X+X X[.L.b.6.| Z a t t ",
+"y.M.~.@XrXbXMXbXzXpXwX8X* . . . . . . . . . . - -X-X-X-X=X=X=X=X-X&X=X-X=X=X=X=X- . . . . . . . . . . * @X.X X].T.b.4.| V a t t ",
+"e.m.T.+XwXvXbXzXgXpX8X5Xo . . . . . . . . . . O *X*X&X&X*X*X*X*X&X-X&X*X*X*X*X*Xo . . . . . . . . . . o @XOX X].L.b.4.| B a t t ",
+"w.z.T.+X0XzXvXvXpXrX8X5X+ . . . . . q F e . . O *X&X-X&X*X*X*X*X&X&X*X*X*X*X*X*Xo . . . . . q F w . . o +XOX X].L.b.4.| V a t t ",
+"w.z.T.OX5XzXzXzXsXrXqX4X- . . . . . F s.>.0 . * *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X* . . . . . F s.>.0 . * @X+X[.].L.x.4.| V p t t ",
+"w.z.T.OX8XzXzXzXsXqX7X4XY . . . . . w >.G r # ^ *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XK . . . . . w >.G r # E @X.X X`.L.x.6.| V a t t ",
+"w.z.T.OX8XzXzXzXsXrXqX1XL.5 . . . . . 0 r e v W.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XH.4 . . . . . 0 r e v L.+XOX X].E.b.6.| V a t t ",
+"w.z.T.+X8XzXzXzXsXrX7X5X>X9.< . . . . . # D x.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X7.4 . . . . . # D x.@X@X.X X`.L.b.4.| V u t t ",
+"w.x.W.OX8XzXbXzXsXrXqX5X>X=XH.K - o o - ^ W.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XH.K - o o - ^ W.&X#X+XOX X`.L.x.4.| V u t t ",
+"w.x.L.OX8XzXzXzXpXrX5X5X>X=X=X*X*X*X*X*X=X=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X#X-X&X#XOXOX X`.L.x.6.| V u t t ",
+"w.z.L.@X8XzXzXzXpXrX8X5X>X=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X=X*X*X#XOX.X X`.L.b.6.| V u t t ",
+"w.z.W.@X8XzXzXzXpXrX8X5X>X=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X=X=X&X#X@XOX X`.L.b.4.| V a t t ",
+"w.z.T.OX8XzXzXxXaXrX5X5X>X=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X=X=X%X#X+X+X X].L.b.4.| V a t t ",
+"w.z.T.OX8XzXbXzXaXrX8X4X>X=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X=X%X#X+XXX X].E.b.6.| V u t t ",
+"w.z.T.OX8XzXzXgXaXrX8X4X>X=XH.J - o O - K H.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XH.J = o o * K H.%X#X+XXX|.~.L.b.6.| V u t t ",
+"w.z.T.OX8XzXbXxXsXrX8X4X>X9.4 . . . . . . 4 7.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X9.4 . . . . . . 4 9.#X+XXX X].L.b.6.| V u t t ",
+"w.z.T.OX8XzXzXxXsXrX4X4XE.5 . . . . . . . . 4 H.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XH.4 . . . . . . . . 4 N.+X+X|.].L.x.4.| V u t t ",
+"w.z.T.OX8XzXzXxXsXrXqX4XY . . . . . . . . . . J *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XJ . . . . . . . . . . H +XXX|.~.L.x.6.| V a t t ",
+"w.z.T.OX8XzXzXxXsXqXqX4X- . . . . . . . . . . - *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X- . . . . . . . . . . * +XXX X].L.b.6.| V a t t ",
+"w.z.T.OX8XzXzXzXsXrX7X4Xo . . . . . . . . . . o *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*Xo . . . . . . . . . . o +X+X X].L.b.4.| V u t t ",
+"w.z.T.+X9XzXzXzXaXrX8X5Xo . . . . . q F e . . o *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*Xo . . . . . q F e o X @ +XXX|.].E.b.4.| V u u t ",
+"w.z.T.oX9XzXzXzXaXrX8X5X- . . . . . F s.>.0 . - *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X* . . . . . F s.>.# X * +X+X|.~.L.b.6.| V u t t ",
+"w.z.W.oX9XzXcXzXaXrX8X5XI . . . . . e >.G r # ^ *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XK . . . . . w >.G r # E +XXX X].L.b.6.| V u t t ",
+"w.z.Y.oX9XzXzXzXaXrX8X>XQ.4 . . . . . 0 r e D W.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XH.4 . . . . . 0 r e v Q.+X+X[.`.L.b.6.| V u t t ",
+"w.z.T.+X8XzXzXzXaXqXqX3X-X0.4 . . . . . # D x.=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X7.4 . . . . . # v x.@X+XOX X].L.x.6.| V u u t ",
+"w.z.T.+X8XzXzXzXsXrXqX4X1X=XL.J * o o * ^ ~.-X%X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XL.J - O o = ^ ~.*X#X+XOX X~.L.b.4.| V a t t ",
+"w.z.T.+X8XzXzXlXsXrX5X4X-X=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X&X*X*X*X*X*X#X#X+X+X X].E.b.4.| V u t t ",
+"w.z.T.XXqXzXzXjXsXqXqX4X1X=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X#X+X.X[.].L.b.4.X.V u t t ",
+"w.z.T.XX7XvXzXlXsXqXqX4X-X-X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X=X=X=X#X+X+X X].L.b.6.| V u t t ",
+"w.z.T.+X7XlXzXlXsXrX7X4X3X-X=X=X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X=X=X#X#X+X X X].L.b.6.| V u t t ",
+"w.z.T.XXqXzXzXzXaXrX8X4X-X-X&X=X*X*X*X*X&X&X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X%X#X+X+X|.~.E.b.6.| V a t t ",
+"w.z.T.+XqXzXzXzXaXrX8X4X-X-XH.J - o O = K L.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X=XH.K - o o * K H.%X#X+XXX|.].L.b.6.| V u t t ",
+"0.x.W.@X5XzXzXzXaXrX8X5X=X9.4 . . . . . . 4 7.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X9.4 . . . . . . 4 7.#X+X+X|.].L.x.6.| V u u t ",
+"w.k.T..X7XlXzXlXaXqX8X5XQ.4 . . . . . . . . 4 H.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XH.4 . . . . . . . . 4 N.+XXX|.~.L.b.4.| V u t t ",
+"0.z.W..X8XgXzXlXaXrX8X5XI . . . . . . . . . . K *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*XK . . . . . . . . . . H +X+X X~.L.b.4.| V u t t ",
+"0.h.L..X5XlXzXlXaXrX8X5X* . . . . . . . . . . * *X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X= . . . . . . . . . . & +XXX X].L.x.4.| N u t t ",
+"7.h.L..X1XgXzXlXrXrX5X5XO . . . . . . . . . . o &X*X*X*X=X*X*X*X*X*X*X*X*X*X*X=Xo . . . . . . . . . . o +X.X}.`.L.z.1.{ M t t t ",
+"7.f.L.}.=XpXlXpXrX0X5X1XO . . . . . q F e . . @ *X*X*X*X=X=X*X*X*X*X*X*X*X*X*X=Xo . . . . . q F w . . o +XOX{._.H.h.1.' z t t t ",
+"6.t.M._.#X5XpXrXqX5X5X1X* . . . . . F s.>.# o : &X&X&X&X=X%X%X%X*X%X*X%X%X%X%X%X* . . . . . F s.>.0 . $ OX}.{.~.D.y.=.) j t t t ",
+"2.w.x.W.OX*X5X5X5X1X=X*XK . . . . . w >.G r # ^ #X#X#X#X#X#X#X+X#X#X#X#X#X#X#X#XH . . . . . w >.G r # Y  X{._.L.M.9.$.K f t t t ",
+"1.2.f.D._.@X&X=X=X=X*X#XD.4 . . . . . 0 r e v L.+X+X+X+X+X+X+X+X#XOXOXOX+X+X+X+XV., . . X X X 8 r e v D.{.`.T.D.h.4.| V p t t t ",
+"=.2.0.x.L.{.+X@X#X#X#XOXOX4., . . . . . # D p.OXOXOXOXOX XOXXX+XOXOXOXOXOXOXOXXXOX4., . X X X X # v p.{.`.W.H.M.w.%.) k t t t t ",
+"=.=.4.t.M.L.]. XOXOXOXOX.X Xb.V % o o % P V.}. X}.}. X}. X X X X X}.}. X}. X}.}.}.}.b.Z # @ o % J B.{._.W.H.M.y.1.| H f t t t t ",
+"%.%.=.4.t.x.J.W.`.].].{.{.].'.'._.].`.`.].`.].].`.].`.].`.].~.].].]._.].'.'.].'.'.'.'.'.].].~.].`._.W.L.D.M.y.2.+.W k t t t t t ",
+"+.+.@.%.2.8.f.M.D.L.T.L.W.T.L.L.L.E.L.L.L.L.L.L.L.L.L.L.L.E.L.L.J.L.L.L.L.L.E.L.L.L.L.L.L.E.L.L.L.H.D.M.h.w.1.+.) n p t t t t t ",
+"o.| | | @.=.1.8.t.f.k.x.x.x.x.x.x.x.M.x.x.M.x.z.b.b.b.x.b.b.b.b.b.b.x.x.b.b.b.b.x.x.b.b.b.b.z.x.z.h.y.w.2.%.} E n p t t t t t t ",
+"| { ) _ ' { | @.*.,.1.4.6.4.4.6.4.4.4.4.4.4.4.7.6.4.4.6.6.6.4.4.4.6.4.6.4.6.6.6.4.6.6.4.6.6.6.4.2.:.-.@.| _ H k p t t t t t t t ",
+"IX( E Y K K E ^ _ [ [ } | | | | } X.} X.| | | | | | | | | | | X.| | | | | | | | | | | | | | | { { ] ) K Z k f t t t t t t t t IX",
+"IXE K H B M n n M B B Z Z Z V V B V V B V V V V V V V V V V V V V V V V V V V V V V V B V V B M M b j f p t t t t t t t t t t IX",
+"IXIXZ M k h g f f a a a p p p p a u u a u a u u u u u a u u a u u a u u u u a u u a u a u p p u t u t t t t t t t t t t t t IXIX",
+"IXIXIXz h f i t t t t t t t t t t t t t u u t t t t u t t t t t u t t t t t t t t t t t t t t t t t t t t t t t t t t t t IXIXIX",
+"IXIXIXIXIXp t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t t IXIXIXIXIX"
+};
Index: /trunk/src/dice/theme1/three.xpm
===================================================================
--- /trunk/src/dice/theme1/three.xpm	(revision 134)
+++ /trunk/src/dice/theme1/three.xpm	(revision 134)
@@ -0,0 +1,297 @@
+/* XPM */
+static char *theme1_three_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 227 2",
+"   c black",
+".  c #010101",
+"X  c #020202",
+"o  c #040404",
+"O  c #090909",
+"+  c #13120E",
+"@  c #13130E",
+"#  c #14130F",
+"$  c gray16",
+"%  c #423E31",
+"&  c #434031",
+"*  c #434033",
+"=  c #494536",
+"-  c #494636",
+";  c #494637",
+":  c #414141",
+">  c #434343",
+",  c gray28",
+"<  c #484848",
+"1  c #4C4C4C",
+"2  c #4E4E4E",
+"3  c #515151",
+"4  c #565656",
+"5  c #625E49",
+"6  c #635E49",
+"7  c #645F4A",
+"8  c #65604B",
+"9  c #66614B",
+"0  c #67624C",
+"q  c #68634D",
+"w  c #69644E",
+"e  c #6A654E",
+"r  c #6B6650",
+"t  c #6F6A52",
+"y  c #726D54",
+"u  c #736D55",
+"i  c #746E56",
+"p  c #756F56",
+"a  c #726F5F",
+"s  c #767057",
+"d  c #777259",
+"f  c #787359",
+"g  c #79745A",
+"h  c #7A745B",
+"j  c #7B755B",
+"k  c #7C765C",
+"l  c #7D775D",
+"z  c #7E785D",
+"x  c #7F795E",
+"c  c #736F60",
+"v  c #767676",
+"b  c #777777",
+"n  c #797979",
+"m  c gray50",
+"M  c #817B5F",
+"N  c #827C60",
+"B  c #847E62",
+"V  c #857F63",
+"C  c #857F65",
+"Z  c #888265",
+"A  c #898366",
+"S  c #898367",
+"D  c #8A8366",
+"F  c #8B8569",
+"G  c #8C8568",
+"H  c #8D8668",
+"J  c #8E8769",
+"K  c #8F886A",
+"L  c #8F896A",
+"P  c #918B6C",
+"I  c #928B6C",
+"U  c #938C6D",
+"Y  c #958E6E",
+"T  c #979070",
+"R  c #989171",
+"E  c #999271",
+"W  c #9A9272",
+"Q  c #9B9373",
+"!  c #9B9473",
+"~  c #9D9675",
+"^  c #9E9775",
+"/  c #A09977",
+"(  c #A19A77",
+")  c #A39B79",
+"_  c #A49C79",
+"`  c #A69E7B",
+"'  c #A79F7C",
+"]  c #A8A07C",
+"[  c #A8A17D",
+"{  c #A9A17E",
+"}  c #ABA37F",
+"|  c gray52",
+" . c #868686",
+".. c #ADA580",
+"X. c #AEA681",
+"o. c #AFA782",
+"O. c #B0A882",
+"+. c #B1A983",
+"@. c #B2A984",
+"#. c #B3AA84",
+"$. c #B4AB85",
+"%. c #B6AE87",
+"&. c #B7AF88",
+"*. c #B7AF89",
+"=. c #B8B089",
+"-. c #B9B089",
+";. c #BAB18A",
+":. c #BCB38B",
+">. c #BDB48C",
+",. c #BEB58D",
+"<. c #BFB68D",
+"1. c #A7A7A7",
+"2. c #C0B78E",
+"3. c #C1B88F",
+"4. c #C2B990",
+"5. c #C3BA91",
+"6. c #C4BB91",
+"7. c #C5BC92",
+"8. c #C6BD93",
+"9. c #C7BE94",
+"0. c #C5BD96",
+"q. c #C6BE97",
+"w. c #C8BF94",
+"e. c #C9BF95",
+"r. c #CAC096",
+"t. c #CBC196",
+"y. c #CCC297",
+"u. c #CDC398",
+"i. c #CDC498",
+"p. c #CEC498",
+"a. c #CEC599",
+"s. c #CFC69A",
+"d. c #D0C79A",
+"f. c #D1C79B",
+"g. c #D2C89C",
+"h. c #D3C99C",
+"j. c #D2C99F",
+"k. c #D3CA9E",
+"l. c #D4CA9D",
+"z. c #D5CB9E",
+"x. c #D6CC9F",
+"c. c #D7CD9F",
+"v. c #D2C9A0",
+"b. c #D7CDA1",
+"n. c #D8CEA0",
+"m. c #D9CEA1",
+"M. c #DAD0A2",
+"N. c #DBD1A3",
+"B. c #DCD2A3",
+"V. c #DDD3A4",
+"C. c #DED4A5",
+"Z. c #DFD5A5",
+"A. c #E0D6A6",
+"S. c #E1D6A7",
+"D. c #E2D7A7",
+"F. c #E3D8A8",
+"G. c #E4D9A9",
+"H. c #E5DAAA",
+"J. c #E6DBAA",
+"K. c #E6DCAB",
+"L. c #E7DDAC",
+"P. c #E8DDAC",
+"I. c #E9DEAD",
+"U. c #EADFAE",
+"Y. c #EBE0AE",
+"T. c #ECE1AF",
+"R. c #ECE1B0",
+"E. c #ECE2B1",
+"W. c #EDE2B1",
+"Q. c #EDE2B2",
+"!. c #EDE3B3",
+"~. c #EDE3B4",
+"^. c #EDE3B5",
+"/. c #EEE3B6",
+"(. c #EEE4B6",
+"). c #EEE4B7",
+"_. c #EEE4B8",
+"`. c #EEE5B8",
+"'. c #EEE5B9",
+"]. c #EFE5BA",
+"[. c #EFE5BB",
+"{. c #EFE6BB",
+"}. c #EFE6BC",
+"|. c #EFE6BD",
+" X c #F0E7BE",
+".X c #F0E7BF",
+"XX c #F0E7C0",
+"oX c #F0E8C1",
+"OX c #F0E8C2",
+"+X c #F1E8C2",
+"@X c #F1E8C3",
+"#X c #F1E9C3",
+"$X c #F1E9C4",
+"%X c #F1E9C5",
+"&X c #F1E9C6",
+"*X c #F1EAC6",
+"=X c #F2EAC6",
+"-X c #F2EAC7",
+";X c #F2EAC8",
+":X c #F2EBC9",
+">X c #F2EBCA",
+",X c #F3EBCB",
+"<X c #F3ECCB",
+"1X c #F3ECCC",
+"2X c #F3ECCD",
+"3X c #F3EDCE",
+"4X c #F4EDCF",
+"5X c #F4EDD0",
+"6X c #F4EED1",
+"7X c #F4EED2",
+"8X c #F5EFD4",
+"9X c #F5EFD5",
+"0X c #F5F0D6",
+"qX c #F5F0D7",
+"wX c #F6F1DA",
+"eX c #F6F1DB",
+"rX c #F7F2DC",
+"tX c #F7F2DD",
+"yX c #F7F3DF",
+"uX c #F8F4E2",
+"iX c #F9F5E4",
+"pX c #F9F6E6",
+"aX c #F9F6E7",
+"sX c #F9F6E8",
+"dX c #FAF7E9",
+"fX c #FAF7EB",
+"gX c None",
+/* pixels */
+"gXgXgXgXgXr.w.8.5.3.3.2.,.,.:.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.;.=.=.&.%.#.#.o.' ' ) ^ Q T gXgXgXgXgX",
+"gXgXgXa.u.u.r.y.r.y.y.r.w.w.w.8.8.8.8.8.8.8.8.7.8.8.8.8.8.9.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.7.8.8.5.3.,.=.$.o.{ _ ! Q U J S gXgXgX",
+"gXgXa.d.a.d.d.h.c.c.m.m.m.b.c.c.c.z.z.c.c.c.c.c.c.b.c.h.c.h.c.c.c.c.h.b.c.c.h.b.c.h.c.c.c.c.h.h.h.d.y.9.2.;.+.' / T K S B M gXgX",
+"gXa.a.d.h.c.M.Z.D.J.K.P.K.L.L.J.J.J.K.K.F.K.J.J.J.J.J.K.J.J.J.K.J.J.L.J.J.J.J.J.J.J.J.K.J.F.J.F.F.S.M.c.a.8.>.#.` Q K B z g p gX",
+"gXa.d.h.m.Z.J.Y.'.#X%X%X%X#XXX X X X'. X'.|.|.|.|.'.'.|.|.|.'. X'.|.|.|.|.|.'.|.|.|.'. X|.|.|.'.^.Q.P.J.N.h.w.,.o./ P B g u t gX",
+"r.u.a.c.Z.P.'.>XqXrXyXwXqX5X4X2X2X2X2X2X2X<X2X2X2X2X2X2X2X<X2X2X4X<X2X2X,X2X2X2X2X2X2X2X<X<X>X>X>X%X|.T.J.Z.h.w.;.] Y B g y e 9 ",
+"w.y.d.m.J.'.5XyXpXpXuXuXwXqX5X5X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X<X<X#X'.Y.J.V.d.2.o.Q S d r 7 5 ",
+"8.r.h.A.Y.>XuXsXfXpXuXyX5X4X2X2X<X<X2X<X<X2X<X<X>X,X2X2X<X<X2X<X<X<X>X2X2X>X<X<X>X2X2X,X>X<X>X<X>X%X#X'.Q.P.A.m.w.%./ F g e 5 5 ",
+"5.y.h.F.'.8XpXsXpXuXrX8X5X,X>X%X%X*X*X*X*X*X*X*X*X*X*X*X*X*X%X%X%X%X%X*X*X*X*X*X*X*X*X*X%X%X%X%X%X#X|.'.Q.P.J.m.a.>.' K g q 5 5 ",
+"3.r.m.J.#XyXsXpXuXyX8X4X>X%X#X#XoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoX#X#XoXoXoXoXoXoXoXoXoXoXXX#XoXoXXX X|./.R.L.K.V.h.3...I g 0 5 5 ",
+"3.y.m.L.%XyXpXuXwX8X4X>X@X X X X X X X X X|.|.|.|.|.|.|. X|.|.|.|.|. X|. X X X X|.|.|.|.|.|.|.|.|.'.'.Q.P.P.J.V.h.8.O.Y k 0 5 5 ",
+"2.r.m.P.%XwXyXyXqX4X>X%XXX'. X'.'.'.^.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.^.'.'.'.'.'.'.'.'.'.'.'./.Q.U.P.J.Z.h.w.#.T k 0 5 5 ",
+",.w.m.P.%XwXwX8X5X>X#X#X X_././.^.!.^.^.^.!.^.!.^.^.^.!./.Q./.^.E.^.^.!.^.!.^.!.^.E.v.C & # + & C h.R.Y.L.K.S.Z.h.9.#.T z 0 5 5 ",
+">.w.m.L.#X5X5X5X,X%X|.|./.Q.Q.R.E.!.E.Y.Y.Q.Y.Q.Y.R.R.R.Y.Q.Y.R.R.R.Y.Q.Y.Q.Y.Q.R.=.= . . . . . . = &.P.L.J.S.V.b.9.#.T k 0 5 5 ",
+":.9.c.K. X4X5X4X>X#X X'.Q.Q.Y.T.T.T.T.T.T.T.T.T.T.T.Y.T.T.T.T.T.Y.T.T.T.T.T.T.T.d.= . . . . . . . . ; a.L.J.A.V.h.9.#.Q k 0 5 5 ",
+";.8.c.K. X2X4X>X>XXX|.'.^.Q.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Q.Y.T.T.T.T.T.T.B . . . . . . . . . . N L.J.S.V.h.9.#.T k 0 5 5 ",
+";.8.b.J.|.<X4X<X%XoX X'.^.R.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.% . . . . . . . . . . % L.F.S.N.h.9.#.T k 0 5 5 ",
+";.8.h.J.|.2X2X>X*XoX|.'.^.E.T.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.+ . . . . . . . . . . + L.K.S.V.h.9.#.T k 0 5 5 ",
+";.8.c.J.|.<X2X2X*XoX|.'.^.E.R.E.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.@ . . . . . < b 1 . . + J.F.S.N.h.9.#.T k 8 5 5 ",
+";.8.c.J.'.2X2X2X*XoX|.'.E.R.R.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.& . . . . . n 1.| : . % L.J.S.V.b.9.#.Q k 8 5 5 ",
+";.8.h.J. X2X2X<X*XoX X'.!.Q.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.B . . . . . 3 | m 4 $ S K.J.S.N.h.9.#.T k 8 5 5 ",
+";.8.b.J.|.<X2X<X*XoX|.'.!.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.d.= . . . . O : 4 1 c v.J.J.S.V.h.9.#.Q k 8 5 5 ",
+";.8.c.J.'.2X2X2X*XoX X'.^.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.&.= . . . . o $ c 9.L.L.K.Z.N.h.r.#.T k 8 5 5 ",
+";.8.c.K. X2X2X<X%XoX|.'.!.Q.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.d.B & + + & J b.U.L.J.F.S.V.h.9.#.T k 8 5 5 ",
+";.8.c.J.'.4X2X<X%X#X'.'.!.Q.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.Y.P.L.J.S.N.h.r.#.T l 8 5 5 ",
+";.8.c.J.|.<X2X2X%X#X|.'.^.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Q.Y.P.L.J.S.V.h.9.$.W k 8 5 5 ",
+";.8.h.L. X2X4X,X%XoX|.'.!.Q.T.T.T.T.T.T.T.T.T.T.T.T.T.T.d.B & + + % B d.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.L.F.K.S.N.h.9.#.T k 8 5 5 ",
+";.8.b.J.'.2X2X>X%X#X|.'.^.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.=.= . . . . . . = &.T.T.T.T.T.T.T.T.T.T.T.T.T.R.L.L.F.S.V.z.9.#.T k 8 5 5 ",
+";.8.c.J.|.>X2X2X*XoX|.'.^.Y.T.T.T.T.T.T.T.T.T.T.T.T.h.- . . . . . . . . = d.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.F.F.N.h.9.$.E k 8 5 5 ",
+";.8.c.J.|.2X4X,X*XoX|.'.^.R.T.T.T.T.T.T.T.T.T.T.T.T.B . . . . . . . . . . B T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.F.Z.V.v.9.#.T k 8 5 5 ",
+";.8.h.J.'.<X2X>X*XoX X'.^.R.Y.T.T.T.T.T.T.T.T.T.T.T.& . . . . . . . . . . & T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.F.F.B.c.9.#.T k 8 5 5 ",
+";.8.b.J. X2X2X2X*XoX|.'.!.R.Q.Y.T.T.T.T.T.T.T.T.T.T.@ . . . . . . . . . . + T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.J.Z.N.h.9.$.T k 8 5 5 ",
+";.8.c.K.|.2X2X<X%X X|.'.^.Y.T.T.T.T.T.T.T.T.T.T.T.T.+ . . . . . , n 3 O . + T.T.T.T.T.T.T.T.T.T.T.T.Y.P.K.F.S.V.h.9.#.T k 8 5 5 ",
+";.8.c.K.|.2X2X<X*X#X|.'.^.Q.T.T.T.T.T.T.T.T.T.T.T.Y.& . . . . . n 1.| : o & T.T.T.T.T.T.T.T.T.T.T.T.Y.P.J.J.S.N.h.9.#.T k 0 5 5 ",
+";.8.c.F.'.2X2X2X*XoX|.'.!.Q.T.T.T.T.T.T.T.T.T.T.T.T.B . . . . . 3 | | 4 $ F T.T.T.T.T.T.T.T.T.T.T.T.Y.P.K.J.A.V.h.9.#.Q k 8 5 5 ",
+";.8.c.K. X2X2X<X*XoX|.'.^.Y.T.T.T.T.T.T.T.T.T.T.T.T.d.= . . . . O : 4 1 c b.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.J.S.M.b.9.#.T k 8 5 5 ",
+";.8.h.K. X2X2X<X*XoX X'.^.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.&.= . . . . o $ c 9.Q.Y.T.T.T.T.T.T.T.T.T.T.T.Y.P.K.J.A.V.h.9.#.Q k 8 5 5 ",
+";.8.c.J.'.2X2X<X*XoX|.'.^.R.T.T.T.T.T.T.T.T.T.T.T.T.T.T.d.B % @ + & F b.Q.Y.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.K.J.F.M.h.9.#.T k 8 5 5 ",
+";.8.c.J.|.<X2X<X%XoX|.'./.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.K.F.S.V.h.r.#.T k 8 5 5 ",
+";.9.h.J. X2X2X<X*XoX|.'.Q.Q.T.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.K.J.S.N.h.9.#.T k 8 5 5 ",
+";.8.b.J.|.<X2X<X%XoX|.'.^.R.d.B & + + & B d.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.J.S.N.h.r.$.T l 8 5 5 ",
+";.8.h.J.|.2X2X>X>XoX|.'.^.=.= . . . . . . = &.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.K.K.S.V.h.9.$.T l 8 5 5 ",
+";.8.c.J.'.2X2X2X%XoX|.'.h.; . . . . . . . . = d.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Q.P.K.F.S.N.h.9.#.T k 8 5 5 ",
+";.8.c.J. X2X2X2X%XoX|.'.Z . . . . . . . . . . B T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.P.L.K.K.Z.Z.v.r.#.T k 8 5 5 ",
+"*.9.b.J.|.<X2X<X%XoX|.'.% . . . . . . . . . . % T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.F.S.N.h.9.#.Q k 8 5 5 ",
+"*.9.h.J.'.4X2X<X%XoX|.'.@ . . . . . . . . . . + T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.F.S.N.h.9.#.T k 8 5 5 ",
+";.7.h.K.'.>X2X<X%XoX|.'.# . . . . . , n 3 O . + T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.J.Z.N.z.9.#.T g 8 5 5 ",
+"*.7.h.J.'.>X2X>X%X#X|.'.% . . . . . b 1.| : o & T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.P.L.F.S.N.h.9.#.T g 8 5 5 ",
+"&.7.d.J.^.>X4X>X%X X X^.Z . . . . . < | | 4 $ F R.Q.Y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.Q.Y.R.T.T.P.P.K.F.A.M.h.8.+.Y g 6 6 6 ",
+"%.2.d.A.Q.XX>X%X#X X'./.v.= . . . . . : 4 1 c b.R.Y.T.T.T.Q.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.Y.R.R.T.Y.Y.P.K.J.Z.M.d.5.} P s 6 6 6 ",
+"$.>.u.N.P. X%XXX X X_./.Q.%.= . . . . . $ c 9.Y.Y.Y.Y.Y.P.T.Q.P.Y.Y.Y.Y.Y.Y.P.Q.Y.Y.Y.Y.Y.Y.R.Y.U.P.P.L.J.A.Z.c.a.,.{ G t 5 6 5 ",
+"#.;.w.h.G.Q.'.'.'./.Q.T.Y.P.a.M % + + % S h.L.L.P.P.P.P.P.P.P.K.P.P.P.P.P.P.L.L.P.P.P.P.P.P.L.L.P.L.K.J.D.Z.M.h.r.;./ Z e 5 5 5 ",
+"..$.3.a.V.J.T.Q.Q.Q.Q.P.P.K.L.L.K.K.K.K.K.K.L.L.K.K.K.K.K.K.K.K.K.J.J.L.L.K.K.J.K.K.K.K.L.L.K.L.L.L.J.S.Z.N.c.a.5.+.T l 9 5 5 5 ",
+"' O.*.8.h.V.J.P.P.P.P.K.K.J.J.J.K.K.H.H.H.H.H.L.J.J.J.J.J.J.J.J.J.J.J.F.J.J.J.J.J.J.F.J.H.H.F.F.S.J.S.Z.N.m.h.r.;.` K u 8 5 5 5 ",
+"' ' #.>.w.h.V.S.J.J.J.G.G.A.A.A.Z.S.S.S.Z.Z.Z.Z.Z.S.S.A.Z.S.S.S.S.S.S.S.D.A.S.S.A.F.S.S.Z.F.F.Z.A.Z.Z.M.b.d.r.,.o.T x e 5 5 5 5 ",
+"_ _ ' #.,.w.g.m.m.N.A.V.V.V.N.V.Z.N.N.N.Z.N.B.B.V.M.V.N.V.N.V.N.N.V.N.N.N.N.V.M.V.M.V.N.N.N.N.N.N.M.m.h.a.r.,.+.^ A y 5 5 5 5 5 ",
+"^ ! ^ ` o.=.3.w.a.h.h.h.c.h.h.h.h.h.z.h.z.h.z.h.z.h.z.h.h.h.h.v.h.h.h.c.h.h.h.c.h.z.h.h.h.z.h.z.h.h.a.r.3.;.} ~ F d 8 6 5 5 5 5 ",
+"! Q T Q ^ { o.%.,.3.8.9.w.w.w.r.9.r.9.9.9.r.7.r.9.9.9.9.r.9.r.9.9.r.9.9.9.9.9.9.9.9.r.9.9.9.7.9.3.8.>.;.+.] E F d 9 5 5 5 5 5 5 ",
+"T U K K U Y Q / ' { +.+.#.#.#.#.$.$.#.#.#.$.#.$.#.#.#.#.#.#.#.#.#.#.#.#.#.$.#.#.#.#.#.#.#.$.$.#.+.} ] ^ T K M u 9 5 5 5 5 5 5 5 ",
+"gXK Z Z B B Z J K U Y T Q T T Q T T T T T T T T T T Q T T T T T T Q T T T T T T Q T T T T T T T Y U F Z z u e 5 8 6 5 5 5 5 5 gX",
+"gXS B z k d d d d k k k k k k k k k k k k k k k l k k k k k k k k k k k z k k k k k k k z g g d f s y e 9 5 5 5 5 5 5 5 5 5 5 gX",
+"gXgXM g u t r e 0 0 0 0 0 0 0 0 8 0 8 8 8 8 8 8 0 8 8 8 8 8 8 8 8 8 8 8 0 8 8 8 8 8 8 8 9 9 9 8 8 6 6 6 5 5 5 5 5 5 5 5 5 5 gXgX",
+"gXgXgXp t e 0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 6 6 5 5 5 5 5 5 5 5 5 gXgXgX",
+"gXgXgXgXgX0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 gXgXgXgXgX"
+};
Index: /trunk/src/dice/theme1/two.xpm
===================================================================
--- /trunk/src/dice/theme1/two.xpm	(revision 134)
+++ /trunk/src/dice/theme1/two.xpm	(revision 134)
@@ -0,0 +1,288 @@
+/* XPM */
+static char *theme1_two_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 218 2",
+"   c black",
+".  c #010101",
+"X  c #020202",
+"o  c #13120E",
+"O  c #13130E",
+"+  c #14130F",
+"@  c gray16",
+"#  c #423E31",
+"$  c #434031",
+"%  c #434033",
+"&  c #494536",
+"*  c #494636",
+"=  c #494637",
+"-  c #414141",
+";  c gray28",
+":  c #4C4C4C",
+">  c #4E4E4E",
+",  c #565656",
+"<  c #625E49",
+"1  c #635E49",
+"2  c #645F4A",
+"3  c #65604B",
+"4  c #66614B",
+"5  c #67624C",
+"6  c #68634D",
+"7  c #69644E",
+"8  c #6A654E",
+"9  c #6B6650",
+"0  c #6F6A52",
+"q  c #726D54",
+"w  c #736D55",
+"e  c #746E56",
+"r  c #756F56",
+"t  c #726F5F",
+"y  c #767057",
+"u  c #777259",
+"i  c #787359",
+"p  c #79745A",
+"a  c #7A745B",
+"s  c #7B755B",
+"d  c #7C765C",
+"f  c #7D775D",
+"g  c #7E785D",
+"h  c #7F795E",
+"j  c #736F60",
+"k  c #767676",
+"l  c gray50",
+"z  c #817B5F",
+"x  c #827C60",
+"c  c #847E62",
+"v  c #857F63",
+"b  c #857F65",
+"n  c #888265",
+"m  c #898366",
+"M  c #898367",
+"N  c #8A8366",
+"B  c #8B8569",
+"V  c #8C8568",
+"C  c #8D8668",
+"Z  c #8E8769",
+"A  c #8F886A",
+"S  c #8F896A",
+"D  c #918B6C",
+"F  c #928B6C",
+"G  c #938C6D",
+"H  c #958E6E",
+"J  c #979070",
+"K  c #989171",
+"L  c #999271",
+"P  c #9A9272",
+"I  c #9B9373",
+"U  c #9B9473",
+"Y  c #9D9675",
+"T  c #9E9775",
+"R  c #A09977",
+"E  c #A19A77",
+"W  c #A39B79",
+"Q  c #A49C79",
+"!  c #A69E7B",
+"~  c #A79F7C",
+"^  c #A8A07C",
+"/  c #A8A17D",
+"(  c #A9A17E",
+")  c #ABA37F",
+"_  c gray52",
+"`  c #ADA580",
+"'  c #AEA681",
+"]  c #AFA782",
+"[  c #B0A882",
+"{  c #B1A983",
+"}  c #B2A984",
+"|  c #B3AA84",
+" . c #B4AB85",
+".. c #B6AE87",
+"X. c #B7AF88",
+"o. c #B7AF89",
+"O. c #B8B089",
+"+. c #B9B089",
+"@. c #BAB18A",
+"#. c #BCB38B",
+"$. c #BDB48C",
+"%. c #BEB58D",
+"&. c #BFB68D",
+"*. c #A7A7A7",
+"=. c #C0B78E",
+"-. c #C1B88F",
+";. c #C2B990",
+":. c #C3BA91",
+">. c #C4BB91",
+",. c #C5BC92",
+"<. c #C6BD93",
+"1. c #C7BE94",
+"2. c #C5BD96",
+"3. c #C8BF94",
+"4. c #C9BF95",
+"5. c #CAC096",
+"6. c #CBC196",
+"7. c #CCC297",
+"8. c #CDC398",
+"9. c #CDC498",
+"0. c #CEC498",
+"q. c #CEC599",
+"w. c #CFC69A",
+"e. c #D0C79A",
+"r. c #D1C79B",
+"t. c #D2C89C",
+"y. c #D3C99C",
+"u. c #D2C99F",
+"i. c #D3CA9E",
+"p. c #D4CA9D",
+"a. c #D5CB9E",
+"s. c #D6CC9F",
+"d. c #D7CD9F",
+"f. c #D2C9A0",
+"g. c #D7CDA1",
+"h. c #D8CEA0",
+"j. c #D9CEA1",
+"k. c #DAD0A2",
+"l. c #DBD1A3",
+"z. c #DCD2A3",
+"x. c #DDD3A4",
+"c. c #DED4A5",
+"v. c #DFD5A5",
+"b. c #E0D6A6",
+"n. c #E1D6A7",
+"m. c #E2D7A7",
+"M. c #E3D8A8",
+"N. c #E4D9A9",
+"B. c #E5DAAA",
+"V. c #E6DBAA",
+"C. c #E6DCAB",
+"Z. c #E7DDAC",
+"A. c #E8DDAC",
+"S. c #E9DEAD",
+"D. c #EADFAE",
+"F. c #EBE0AE",
+"G. c #ECE1AF",
+"H. c #ECE1B0",
+"J. c #ECE2B1",
+"K. c #EDE2B1",
+"L. c #EDE2B2",
+"P. c #EDE3B3",
+"I. c #EDE3B4",
+"U. c #EDE3B5",
+"Y. c #EEE3B6",
+"T. c #EEE4B6",
+"R. c #EEE4B7",
+"E. c #EEE4B8",
+"W. c #EEE5B8",
+"Q. c #EEE5B9",
+"!. c #EFE5BA",
+"~. c #EFE5BB",
+"^. c #EFE6BB",
+"/. c #EFE6BC",
+"(. c #EFE6BD",
+"). c #F0E7BE",
+"_. c #F0E7BF",
+"`. c #F0E7C0",
+"'. c #F0E8C1",
+"]. c #F0E8C2",
+"[. c #F1E8C2",
+"{. c #F1E8C3",
+"}. c #F1E9C3",
+"|. c #F1E9C4",
+" X c #F1E9C5",
+".X c #F1E9C6",
+"XX c #F1EAC6",
+"oX c #F2EAC6",
+"OX c #F2EAC7",
+"+X c #F2EAC8",
+"@X c #F2EBC9",
+"#X c #F2EBCA",
+"$X c #F3EBCB",
+"%X c #F3ECCB",
+"&X c #F3ECCC",
+"*X c #F3ECCD",
+"=X c #F3EDCE",
+"-X c #F4EDCF",
+";X c #F4EDD0",
+":X c #F4EED1",
+">X c #F4EED2",
+",X c #F5EFD4",
+"<X c #F5EFD5",
+"1X c #F5F0D6",
+"2X c #F5F0D7",
+"3X c #F6F1DA",
+"4X c #F6F1DB",
+"5X c #F7F2DC",
+"6X c #F7F2DD",
+"7X c #F7F3DF",
+"8X c #F8F4E2",
+"9X c #F9F5E4",
+"0X c #F9F6E6",
+"qX c #F9F6E7",
+"wX c #F9F6E8",
+"eX c #FAF7E9",
+"rX c #FAF7EB",
+"tX c None",
+/* pixels */
+"tXtXtXtXtX5.3.<.:.-.-.=.%.%.#.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.@.o.o...| { ] / ~ W T I J tXtXtXtXtX",
+"tXtXtXq.8.8.5.7.5.7.7.5.3.3.3.<.<.>.<.<.<.<.<.<.<.<.<.<.1.>.<.<.<.<.1.1.<.<.<.<.<.1.<.<.<.:.1.:.:.-.$.@.| ] / W T K G Z n tXtXtX",
+"tXtXq.e.q.e.e.y.d.d.j.j.j.g.d.d.d.d.d.g.d.d.y.g.d.d.y.g.d.d.d.g.d.g.d.y.y.g.d.y.d.y.d.d.d.y.d.y.y.y.7.1.=.@.| ~ W K D n c z tXtX",
+"tXq.q.e.y.d.k.v.m.V.C.A.C.Z.Z.V.V.V.C.C.V.V.Z.V.V.V.V.V.V.V.V.C.M.C.V.V.C.V.V.Z.V.V.V.C.V.V.V.M.m.n.k.d.q.<.$.| Q K Z b h a r tX",
+"tXq.e.y.j.v.V.F.Q.}. X X X}.`.).).).Q.Q.Q.).Q.).(.Q.(.Q.(.(.(.Q.Q.(.).Q.(.(.Q.(.(.(.Q.(.Q.(.Q.Q.U.H.A.V.k.y.3.%.] R F c a w 0 tX",
+"5.8.q.d.v.A.Q.#X2X5X7X3X2X;X-X*X*X*X*X*X*X*X*X*X*X*X%X*X%X*X%X*X-X%X*X*X*X%X*X*X*X*X-X%X*X*X$X#X#X X(.F.Z.v.y.3.@./ H b i q 8 4 ",
+"3.7.e.j.V.Q.;X7X0X0X8X8X3X2X;X;X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X-X*X*X*X*X*X*X*X*X*X*X*X*X*X%X%X}.Q.F.V.z.e.=.] K n u 9 2 < ",
+"<.5.y.b.F.#X8XwXrX0X8X7X;X-X*X*X%X%X*X%X%X*X%X*X$X$X*X*X*X%X*X%X%X*X#X%X*X%X%X*X#X%X*X%X%X*X#X*X%X X}.Q.L.A.b.j.3...R Z i 8 < < ",
+":.7.y.M.Q.,X0XwX0X8X5X,X;X$X#X XXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXX X X X X XXXXXXXXXXXXXXX X X X X X}.).Q.L.A.Z.j.q.%./ D i 6 < < ",
+"-.5.j.V.}.7XwX0X8X7X,X-X#X X}.}.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.).}.}.'.'.'.'.'.'.'.'.'.'.'.}.'.'.`.).(.Y.H.A.V.x.y.=./ G a 6 < < ",
+"-.7.j.Z. X7X0X8X3X,X-X#X{.).).).).Q.).).).(.(.(.(.(.(.(.).(.).).(.(.).(.(.(.(.).(.(.).(.(.(.(.(.(.Q.E.L.A.A.V.x.y.<.] H d 5 < < ",
+"=.5.j.A. X3X7X7X2X-X#X X`.Q.).Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Y.L.D.A.V.x.y.5.{ J d 5 < < ",
+"%.3.j.A. X3X3X,X;X#X}.}.).E.Y.Y.U.P.U.U.P.P.U.P.J.U.U.U.P.U.P.U.P.P.P.P.U.P.P.P.J.U.f.n # + + % b y.L.A.Z.Z.n.x.y.3.| K h 6 < < ",
+"$.3.j.Z.}.;X;X;X$X X(.(.Y.L.L.H.G.P.J.F.H.L.G.G.H.H.H.F.F.P.L.F.H.H.L.G.H.H.L.G.H.o.*             * o.H.Z.V.n.x.y.1.| K d 4 < < ",
+"#.1.d.C.).-X;X-X#X}.).Q.L.L.F.G.G.G.G.G.F.L.G.G.G.G.H.F.G.G.G.G.F.L.F.G.F.G.G.G.y.*                 * 8.Z.V.b.x.d.3.| K d 4 < < ",
+"@.<.d.C.).*X-X#X#X`.(.Q.U.L.G.G.G.G.G.G.G.F.G.G.G.G.F.P.G.G.G.G.H.F.G.G.L.F.G.G.c                     x Z.V.n.x.y.1.| K d 4 < < ",
+"@.<.g.V.(.%X-X%X X'.).Q.U.H.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.$                     # Z.n.n.z.y.1.| K d 4 < < ",
+"@.<.y.V.(.*X*X#XXX'.(.Q.U.J.G.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.+                     o Z.Z.n.z.y.1.| K d 5 < < ",
+"@.<.d.V.(.%X*X*XXX'.(.Q.U.J.H.J.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.+           ; k >     o V.M.n.z.f.3.| K s 5 < < ",
+"@.<.d.V.Q.*X*X*XXX'.(.Q.J.H.H.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.$           k *._ -   # Z.Z.n.z.y.5.| K s 2 < < ",
+"@.<.y.V.).*X*X%XXX'.).Q.P.L.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.c           > _ _ , @ M C.V.n.z.y.1.| K d 2 < < ",
+"@.<.g.V.(.%X*X%XXX'.(.Q.P.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.y.*           - , : j f.V.V.n.z.f.1.| K d 5 < < ",
+"@.<.d.V.Q.*X*X*XXX'.).Q.U.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G...*           @ j 1.A.Z.Z.v.z.y.5.| K s 5 < < ",
+"@.<.d.C.).*X*X%X X'.(.Q.P.L.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.L.e.c $ + + $ n g.D.Z.V.M.n.z.y.3.| K s 2 < < ",
+"@.<.d.V.Q.-X*X%X X}.Q.Q.P.L.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.Z.M.n.z.y.3.| K d 2 < < ",
+"@.<.d.V.(.%X*X*X X}.(.Q.U.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.L.G.A.Z.Z.n.z.y.3.| K d 4 < < ",
+"@.<.y.Z.).*X-X$X X'.(.Q.P.L.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.Z.n.n.z.y.3.| K s 2 < < ",
+"@.<.g.V.Q.*X*X#X X}.(.Q.U.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.Z.Z.Z.n.z.f.5.| K d 5 < < ",
+"@.<.d.V.(.#X*X*XXX'.(.Q.U.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.Z.M.n.z.y.1.| K d 2 < < ",
+"@.<.d.V.(.*X-X$XXX'.(.Q.U.H.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.Z.M.n.z.f.1.| K d 5 < < ",
+"@.<.y.V.Q.%X*X#XXX'.).Q.U.H.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.V.V.b.x.y.5.| K s 5 < < ",
+"@.<.g.V.).*X*X*XXX'.(.Q.P.H.L.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.Z.V.n.x.y.3.| K s 2 < < ",
+"@.1.d.V.).*X*X%X X'.(.Q.P.L.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.V.M.n.z.y.1.| K d 2 < < ",
+"@.1.y.V.Q.*X*X%X X'.(.Q.P.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.A.Z.Z.n.z.y.1.| K d 5 < < ",
+"@.<.d.V.).%X*X*XXX'.(.Q.U.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.V.M.n.z.f.1.| K d < < < ",
+"@.<.g.C.Q.*X*X%XXX'.(.Q.P.L.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.Z.V.n.z.y.5.| K d 5 < < ",
+"@.<.d.M.Q.*X*X%XXX'.).Q.P.H.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.C.V.n.z.y.1.| K d 2 < < ",
+"@.<.g.C.).*X*X*XXX'.(.Q.U.H.L.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.V.V.n.z.f.1.| K d 5 < < ",
+"@.1.d.V.Q.*X*X%X X'.(.Q.L.H.G.F.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.V.V.v.z.y.5.| K s 5 < < ",
+"@.1.y.V.).*X*X*XXX'.(.Q.Y.G.G.L.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.A.C.V.n.z.y.3.| K s 2 < < ",
+"@.<.y.C.(.*X*X%X X'.).Q.U.F.r.c # + + $ c y.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.Z.n.n.z.y.3.| K d 2 < < ",
+"@.<.g.V.(.%X*X%X X'.(.Q.U.o.*             * ..G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.L.D.A.Z.Z.n.z.y.3.| K d 4 < < ",
+"@.<.d.V.Q.*X*X*X#X'.(.Q.f.*                 * e.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.H.A.Z.n.n.z.y.3.| K s 2 < < ",
+"@.<.y.Z.(.*X*X%X X'.(.Q.n                     c G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.Z.Z.Z.n.z.f.5.| K d 5 < < ",
+"+.<.f.V.(.%X*X*X X'.(.Q.$                     $ G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.V.M.n.z.y.1.| K d 2 < < ",
+"+.,.g.V.(.%X*X%X X'.(.Q.+                     + G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.Z.V.n.z.f.1.| J d 5 < < ",
+"+.,.y.Z.Q.#X*X%X X`.).Q.+           ; k >     + G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.A.Z.V.n.z.y.3.| J s 5 < < ",
+"+.,.y.V.Q.#X%X%X X}.(.Q.%           k *._ -   $ G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.D.A.Z.n.n.x.y.1.| J a < < < ",
+"..:.y.M.Y. X*X%X X`.).U.n           > _ l , @ B H.H.F.L.G.G.G.G.G.G.G.G.G.G.L.D.G.G.G.G.G.G.L.A.G.G.D.A.Z.M.v.z.y.,.{ H a < < < ",
+"..=.e.b.L. X#X X X).Q.Q.f.=           - , > j g.H.F.G.F.G.L.G.G.G.G.G.G.G.G.D.H.G.G.G.G.G.G.G.L.G.G.D.A.V.V.v.k.r.:.) D y < < < ",
+"} %.8.x.A.Q.{.}.).(.U.L.L.o.*           @ j 1.H.F.F.F.F.D.D.H.A.D.G.D.G.D.G.A.H.G.D.G.D.G.D.D.H.G.A.A.V.V.b.v.j.q.%./ V q < < < ",
+"| @.3.y.V.L.Q.Q.Q.Y.L.L.F.A.7.c # o o # M y.Z.Z.A.A.A.A.A.A.A.Z.A.A.A.A.A.A.Z.Z.A.A.A.A.A.A.A.Z.A.A.V.V.M.v.j.y.3.@.W b 8 < < < ",
+"] | =.q.x.V.F.L.L.L.D.D.A.C.C.A.Z.V.Z.Z.Z.Z.V.Z.C.C.Z.V.Z.V.Z.Z.V.V.V.A.Z.Z.V.Z.C.V.V.C.Z.Z.Z.Z.C.C.V.b.b.z.j.q.:.| K d 4 < < < ",
+"/ ] +.<.y.v.C.A.A.A.A.Z.C.V.V.V.V.V.n.Z.N.N.V.V.V.V.V.V.Z.M.n.Z.V.V.V.V.N.V.N.V.V.V.V.V.n.Z.M.M.V.V.b.b.k.j.r.3.@.Q Z r < < < < ",
+"~ / | #.3.y.x.n.V.V.V.M.M.n.b.n.b.n.n.n.n.n.b.n.b.b.n.b.v.n.n.n.n.b.b.b.b.n.n.b.n.b.b.b.v.n.n.n.v.b.x.k.d.e.3.%.] K z 8 < < < < ",
+"W W ~ | %.1.r.j.z.z.v.x.v.x.z.z.x.k.x.x.x.j.x.x.k.x.x.z.z.z.z.z.x.z.z.z.z.z.x.z.x.z.z.z.z.z.z.z.j.k.j.y.e.3.=.| T n q < < < < < ",
+"T T T ^ ] @.-.1.q.r.y.g.y.d.y.y.y.y.y.y.f.y.y.y.y.y.y.y.y.f.y.y.y.y.y.y.f.y.s.y.y.y.y.y.y.d.y.y.y.y.q.5.:.@.] T V u 4 < < < < < ",
+"U K K K T / ] ..$.-.:.1.5.1.1.1.1.1.3.3.3.3.3.3.3.3.5.5.3.3.3.3.3.3.3.3.3.3.3.3.1.1.5.1.1.1.1.1.<.-.=.@.{ Q K n i 4 < < < < < < ",
+"J G A A G G U W ~ ` ] | |  .| | | | | | } } } ..} } } } } } } } } } } } } } } } | | | | | | | | ] ) / R K A z w 4 < < < < < < < ",
+"tXA n c c n n B A G G J J K J J K K K K K K K K K K K K K I K K J K K K I K K K K K K K J K K J H F M n d w 8 < < < < < < < < tX",
+"tXn c z s a u i s s s s h h s s d d d d d d d d h d d d d d d d d d d d d d d d d d d d d a a a a y q 8 4 < < < < < < < < < < tX",
+"tXtXh a w 0 9 6 6 5 5 5 5 5 5 5 2 5 2 5 5 2 2 5 4 2 2 4 2 2 5 2 5 2 2 2 4 2 2 6 2 4 4 2 4 4 4 4 < 1 < < < < < < < < < < < < tXtX",
+"tXtXtXr 0 8 3 < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < 2 < < < < < < < < < < < < < < < < < < < < < < tXtXtX",
+"tXtXtXtXtX5 < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < tXtXtXtXtX"
+};
Index: /trunk/src/dice/theme2/five.xpm
===================================================================
--- /trunk/src/dice/theme2/five.xpm	(revision 134)
+++ /trunk/src/dice/theme2/five.xpm	(revision 134)
@@ -0,0 +1,260 @@
+/* XPM */
+static char *theme2_five_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 190 2",
+"   c #0A0E0E",
+".  c #0C1C1C",
+"X  c #131313",
+"o  c #1C1C1C",
+"O  c #082323",
+"+  c #122424",
+"@  c #1C2222",
+"#  c #1E2929",
+"$  c #063434",
+"%  c #0D3535",
+"&  c #083939",
+"*  c #163232",
+"=  c #143D3D",
+"-  c #1A3939",
+";  c #232323",
+":  c #232929",
+">  c #2D2D2D",
+",  c #2B3131",
+"<  c gray21",
+"1  c #333E3E",
+"2  c gray22",
+"3  c #0C4242",
+"4  c #1E4343",
+"5  c #114D4D",
+"6  c #0F5050",
+"7  c #145454",
+"8  c #165D5D",
+"9  c #1C5D5D",
+"0  c #254646",
+"q  c #244C4C",
+"w  c #2A4848",
+"e  c #314242",
+"r  c #334F4F",
+"t  c #3B4B4B",
+"y  c #2F5050",
+"u  c #305353",
+"i  c #325E5E",
+"p  c #3A5D5D",
+"a  c #156767",
+"s  c #1A6464",
+"d  c #166E6E",
+"f  c #1B6C6C",
+"g  c #1B7474",
+"h  c #1D7C7C",
+"j  c #256262",
+"k  c #216C6C",
+"l  c #2B6D6D",
+"z  c #3C6C6C",
+"x  c #227474",
+"c  c #287575",
+"v  c #217C7C",
+"b  c #2B7C7C",
+"n  c #377171",
+"m  c #397777",
+"M  c #307979",
+"N  c #424242",
+"B  c #454D4D",
+"V  c #4C4C4C",
+"C  c #525252",
+"Z  c #515C5C",
+"A  c #5A5A5A",
+"S  c #4B6161",
+"D  c #476A6A",
+"F  c #5E6565",
+"G  c #4A7373",
+"H  c #407C7C",
+"J  c #4D7B7B",
+"K  c #547575",
+"L  c #597171",
+"P  c #537D7D",
+"I  c #646464",
+"U  c #626A6A",
+"Y  c #6C6C6C",
+"T  c #697272",
+"R  c #6E7B7B",
+"E  c #717171",
+"W  c #747979",
+"Q  c #797979",
+"!  c #258181",
+"~  c #2B8585",
+"^  c #2D8A8A",
+"/  c #328383",
+"(  c #398787",
+")  c #338B8B",
+"_  c #3B8D8D",
+"`  c #369292",
+"'  c #3C9494",
+"]  c #3F9898",
+"[  c #448383",
+"{  c #4A8686",
+"}  c #438E8E",
+"|  c #4E8C8C",
+" . c #548484",
+".. c #5C8383",
+"X. c #429393",
+"o. c #4D9393",
+"O. c #459999",
+"+. c #4D9C9C",
+"@. c #529696",
+"#. c #5A9595",
+"$. c #549C9C",
+"%. c #5B9999",
+"&. c #668585",
+"*. c #6F8686",
+"=. c #638B8B",
+"-. c #6E8D8D",
+";. c #758282",
+":. c #7E8383",
+">. c #619090",
+",. c #6C9191",
+"<. c #649C9C",
+"1. c #6D9999",
+"2. c #769797",
+"3. c #7C9393",
+"4. c #779B9B",
+"5. c #57A0A0",
+"6. c #5AA5A5",
+"7. c #63A4A4",
+"8. c #6BA4A4",
+"9. c #65AAAA",
+"0. c #6DADAD",
+"q. c #73A2A2",
+"w. c #7AA6A6",
+"e. c #71AAAA",
+"r. c #7DACAC",
+"t. c #76B2B2",
+"y. c #7EB5B5",
+"u. c #838383",
+"i. c #818989",
+"p. c #8B8B8B",
+"a. c #879292",
+"s. c #8F9090",
+"d. c #839E9E",
+"f. c #8E9C9C",
+"g. c #939393",
+"h. c #9B9B9B",
+"j. c #85ACAC",
+"k. c #98A3A3",
+"l. c #93AEAE",
+"z. c #9BAFAF",
+"x. c #80B7B7",
+"c. c #89B3B3",
+"v. c #85BABA",
+"b. c #8EBDBD",
+"n. c #94B4B4",
+"m. c #9BB4B4",
+"M. c #9FBCBC",
+"N. c #A3A4A4",
+"B. c #A1B1B1",
+"V. c #A9B4B4",
+"C. c #A3BBBB",
+"Z. c #ADBABA",
+"A. c #B5B5B5",
+"S. c #B6BABA",
+"D. c #BBBBBB",
+"F. c #94C2C2",
+"G. c #9AC3C3",
+"H. c #9DC8C8",
+"J. c #A2C6C6",
+"K. c #ACC3C3",
+"L. c #A3C9C9",
+"P. c #AEC9C9",
+"I. c #B2C4C4",
+"U. c #BCC3C3",
+"Y. c #A6D1D1",
+"T. c #AED3D3",
+"R. c #B3D2D2",
+"E. c #BDD3D3",
+"W. c #BDDADA",
+"Q. c #C4C4C4",
+"!. c #C5CACA",
+"~. c #CCCCCC",
+"^. c #C7D6D6",
+"/. c #CFD2D2",
+"(. c #C4DADA",
+"). c #D4D4D4",
+"_. c #D2DBDB",
+"`. c #DCDCDC",
+"'. c #C7E0E0",
+"]. c #CDE3E3",
+"[. c #D5E3E3",
+"{. c #DEE0E0",
+"}. c #DFEBEB",
+"|. c #E4E4E4",
+" X c #E3E9E9",
+".X c #EBEBEB",
+"XX c #EDF2F2",
+"oX c #F4F4F4",
+"OX c #FBFBFB",
+"+X c None",
+/* pixels */
+"+X+X+X+X+Xg.g.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.g.g.+X+X+X+X+X",
+"+X+X+Xp.~.oXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXoX~.p.+X+X+X",
+"+X+Xh..XOXOXOXOXOX}.T.W.XXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOX].Y.].OXOXOXOXOXOX.Xh.+X+X",
+"+Xp..XOXOXOX XO.v a 3 5 d ! 0.oXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXR.~ g 8 & 8 g ~ T.OXOXOXOX.Xp.+X",
+"+X!.OXOXOXF.v + X X X X X X = ~ '.OXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXXX$.s X X X X X X X 9 $.XXOXOXOX!.+X",
+"g.oXOXOXt.9 @ o o o o o o o o # g (.OXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXoX^ - o o o o o o o o o - ^ oXOXOXoXg.",
+"g.oXoX'.x > > > > > > > > > > > , ~ XXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoX0.q > > > > > > > > > > > q 9.oXoXoXg.",
+"h.oXoX) 1 2 2 2 2 2 2 2 2 2 2 2 2 y 7.oXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoX(.c 2 2 2 2 2 2 2 2 2 2 2 2 2 c W.oXoXh.",
+"h.oXW.l N N N N N N N N N N N N N N ! oXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoX5.t N N N N N N N N N N N N N t +.oXoXh.",
+"h.oXv.p V V V V V V V V V V V V V V M ].oXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoX) V V V V V V V V V V V V V V V ^ oXoXh.",
+"h.oXO.Z A A A A A A A A A A A A A A z G.oXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXXX~ A A A A A A A A A A A A A A A ~ .XoXh.",
+"h.oX` I I I I I I I I I I I I I I I D y.oXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoX}./ I I I I I I I I I I I I I I I / [.oXh.",
+"h.oX7.L Y Y Y Y Y Y Y Y Y Y Y Y Y Y H R.oXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoX^ Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y ^ oXoXh.",
+"h..XH.J Q Q Q Q Q Q Q Q Q Q Q Q Q Q )  X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.XX.W Q Q Q Q Q Q Q Q Q Q Q Q Q W ' .X.Xh.",
+"h..X[.) u.u.u.u.u.u.u.u.u.u.u.u.u.:.` .X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.Xy...u.u.u.u.u.u.u.u.u.u.u.u.u...t..X.Xh.",
+"h..X.X0.=.p.p.p.p.p.p.p.p.p.p.p.p.} R..X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X X` i.p.p.p.p.p.p.p.p.p.p.p.i.`  X.X.Xh.",
+"h..X.X X` a.g.g.g.g.g.g.g.g.g.g.,.9..X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.XE._ g.g.g.g.g.g.g.g.g.g.g.} R..X.X.Xh.",
+"g..X.X.X(.` 2.h.h.h.h.h.h.h.h.#.+. X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.Xb.' f.h.h.h.h.h.h.h.f.' v..X.X.X.Xg.",
+"g..X.X.X.X|.9.o.4.k.N.N.f.1.` F..X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X(.] <.d.N.N.N.d.<.' (..X.X.X.X.Xg.",
+"g. X X X X X XE.x.+.` ` 6.b._. X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X XL.0.O.` ] 0.J.|. X X X X X Xg.",
+"g. X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X Xg.",
+"g.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.g.",
+"g.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.g.",
+"g.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|._.J.7.) o.b.E.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.g.",
+"g.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.{.7.g 3 O   . % 8 ) ^.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.g.",
+"g.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.E.! = X X X X X X X + g y.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.g.",
+"g.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`._.v # ; ; ; ; ; ; ; ; ; ; a G.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.g.",
+"g.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.+.0 > > > > > > > > > > > , h _.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.g.",
+"g.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.P.k < < < < < < < < < < < < < w $.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.g.",
+"g.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.8.r N N N N N N N N N N N N N N ~ `.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.g.",
+"g.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`._ V V V V V V V V V V V V V V V b _.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.g.",
+"g.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.~ C C C C C C C C C C C C C C C n J.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.g.",
+"g.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.~ A A A A A A A A A A A A A A A m K.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.g.",
+"g.).).).).).).).).).).).).).).).).).).).).).).X.U I I I I I I I I I I I I I I / ).).).).).).).).).).).).).).).).).).).).).).).g.",
+"g.).).).).).).).).).).).).).).).).).).).).).).e.K E E E E E E E E E E E E E E ) ).).).).).).).).).).).).).).).).).).).).).).).g.",
+"g.).).).).).).).).).).).).).).).).).).).).).).I.~ Q Q Q Q Q Q Q Q Q Q Q Q Q P 7.).).).).).).).).).).).).).).).).).).).).).).).g.",
+"g.).).).).).).).).).).).).).).).).).).).).).).).8. .u.u.u.u.u.u.u.u.u.u.u.;.^ /.).).).).).).).).).).).).).).).).).).).).).).).g.",
+"g.).).).).).).).).).).).).).).).).).).).).).).).).) *.p.p.p.p.p.p.p.p.p.i.^ K.).).).).).).).).).).).).).).).).).).).).).).).).g.",
+"g.).).).).).).).).).).).).).).).).).).).).).).).).!.O.| s.g.g.g.g.g.g.-.) M.).).).).).).).).).).).).).).).).).).).).).).).).).g.",
+"g.).).).).).).).).).).).).).).).).).).).).).).).).).).c.^ } >.3.,.o.) $.~.).).).).).).).).).).).).).).).).).).).).).).).).).).g.",
+"g.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.I.c.7.r.C.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.g.",
+"g.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.g.",
+"g.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.g.",
+"g.~.~.~.~.~.~.~.~.K.j.n.U.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.!.C.r.M.!.~.~.~.~.~.~.~.~.g.",
+"g.~.~.~.~.~.I./ g 8 & 3 a g o.Q.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.j.v d 7 $ 6 d v j.~.~.~.~.~.~.g.",
+"g.!.!.!.!.q.g . X X X X X X % h m.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.U._ 7 X X X X X X X 7 _ U.!.!.!.!.g.",
+"g.!.!.!.%.7 o o o o o o o o o @ d n.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.Q.! * o o o o o o o o o * v Q.!.!.!.g.",
+"p.!.!.m.f ; ; ; ; ; ; ; ; ; ; ; : v U.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.@.4 ; ; ; ; ; ; ; ; ; ; ; 4 o.!.!.!.p.",
+"p.Q.Q.! , > > > > > > > > > > > > 0 o.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.m.k > > > > > > > > > > > > > k n.Q.Q.p.",
+"p.Q.n.j 2 2 2 2 2 2 2 2 2 2 2 2 2 2 v Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.} e 2 2 2 2 2 2 2 2 2 2 2 2 2 1 _ Q.Q.p.",
+"p.Q.<.u N N N N N N N N N N N N N N l C.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.! N N N N N N N N N N N N N N N ! Q.Q.p.",
+"p.Q._ B V V V V V V V V V V V V V V i w.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.U.v V V V V V V V V V V V V V V V v D.Q.p.",
+"p.Q.~ C C C C C C C C C C C C C C C p <.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.S.b C C C C C C C C C C C C C C C b Z.Q.p.",
+"p.Q.@.S A A A A A A A A A A A A A A n n.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.! A A A A A A A A A A A A A A A ! Q.Q.p.",
+"p.D.r.z I I I I I I I I I I I I I I b S.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.) F I I I I I I I I I I I I I I ) D.D.p.",
+"p.D.V.~ Y Y Y Y Y Y Y Y Y Y Y Y Y U ~ D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.<.G Y Y Y Y Y Y Y Y Y Y Y Y Y G <.D.D.p.",
+"p.D.D.%.J E E E E E E E E E E E E / l.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.S.~ T E E E E E E E E E E E T ~ S.D.D.p.",
+"p.D.D.S.^ R Q Q Q Q Q Q Q Q Q Q P @.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.m./ Q Q Q Q Q Q Q Q Q Q Q / l.D.D.D.p.",
+"i.A.D.D.B.^ ..u.u.u.u.u.u.u.:.[ X.S.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.q.~ ;.u.u.u.u.u.u.u.;.~ q.D.D.D.A.i.",
+"+XN.D.D.D.S.@.( ..;.u.u.*. .~ w.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.B.) { &.:.u.:.&.{ ) B.D.D.D.D.N.+X",
+"+Xu.A.S.S.S.S.z.8.X.^ ^ o.q.V.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.A.j.%.) ^ ) %.j.S.S.S.S.S.A.u.+X",
+"+X+Xp.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.p.+X+X",
+"+X+X+Xu.h.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.h.u.+X+X+X",
+"+X+X+X+X+Xu.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.u.+X+X+X+X+X"
+};
Index: /trunk/src/dice/theme2/four.xpm
===================================================================
--- /trunk/src/dice/theme2/four.xpm	(revision 134)
+++ /trunk/src/dice/theme2/four.xpm	(revision 134)
@@ -0,0 +1,241 @@
+/* XPM */
+static char *theme2_four_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 171 2",
+"   c #0F1E1E",
+".  c #121212",
+"X  c #1C1C1C",
+"o  c #122424",
+"O  c #1C2222",
+"+  c #063434",
+"@  c #0F3333",
+"#  c #083939",
+"$  c #163232",
+"%  c #143B3B",
+"&  c #1A3939",
+"*  c gray14",
+"=  c #232929",
+"-  c #2E2E2E",
+";  c #2B3232",
+":  c #333E3E",
+">  c gray22",
+",  c #0C4242",
+"<  c #1E4343",
+"1  c #114D4D",
+"2  c #0F5050",
+"3  c #145454",
+"4  c #165D5D",
+"5  c #1C5D5D",
+"6  c #274646",
+"7  c #244C4C",
+"8  c #314242",
+"9  c #3B4B4B",
+"0  c #2F5050",
+"q  c #305353",
+"w  c #325E5E",
+"e  c #3A5D5D",
+"r  c #156767",
+"t  c #1A6464",
+"y  c #166E6E",
+"u  c #1B6E6E",
+"i  c #1B7575",
+"p  c #1C7A7A",
+"a  c #256262",
+"s  c #216A6A",
+"d  c #2B6D6D",
+"f  c #3C6C6C",
+"g  c #227474",
+"h  c #287575",
+"j  c #217C7C",
+"k  c #2B7B7B",
+"l  c #377171",
+"z  c #307979",
+"x  c #424242",
+"c  c #454D4D",
+"v  c #4C4C4C",
+"b  c #515151",
+"n  c #515C5C",
+"m  c #595959",
+"M  c #4B6161",
+"N  c #476A6A",
+"B  c #5E6565",
+"V  c #4A7373",
+"C  c #407C7C",
+"Z  c #4D7B7B",
+"A  c #597171",
+"S  c #557C7C",
+"D  c #636363",
+"F  c #656C6C",
+"G  c #6C6C6C",
+"H  c #697272",
+"J  c #6E7B7B",
+"K  c #717171",
+"L  c #747979",
+"P  c #797979",
+"I  c #258181",
+"U  c #2B8585",
+"Y  c #2D8A8A",
+"T  c #328383",
+"R  c #398787",
+"E  c #348B8B",
+"W  c #3C8C8C",
+"Q  c #369292",
+"!  c #3C9494",
+"~  c #3F9898",
+"^  c #448383",
+"/  c #4A8686",
+"(  c #438E8E",
+")  c #558484",
+"_  c #5C8383",
+"`  c #439393",
+"'  c #4C9393",
+"]  c #449999",
+"[  c #4D9D9D",
+"{  c #529696",
+"}  c #5A9595",
+"|  c #539C9C",
+" . c #5B9999",
+".. c #668585",
+"X. c #6F8585",
+"o. c #638B8B",
+"O. c #748282",
+"+. c #7E8383",
+"@. c #6D9090",
+"#. c #649C9C",
+"$. c #6D9999",
+"%. c #769797",
+"&. c #779B9B",
+"*. c #57A0A0",
+"=. c #5AA5A5",
+"-. c #62A7A7",
+";. c #6DA0A0",
+":. c #65AAAA",
+">. c #6DADAD",
+",. c #73A2A2",
+"<. c #7AA6A6",
+"1. c #7FABAB",
+"2. c #76B2B2",
+"3. c #7FB7B7",
+"4. c #838383",
+"5. c #828A8A",
+"6. c #8C8C8C",
+"7. c #879292",
+"8. c #839E9E",
+"9. c #8E9C9C",
+"0. c #949494",
+"q. c #9B9B9B",
+"w. c #85ACAC",
+"e. c #98A3A3",
+"r. c #93AEAE",
+"t. c #9BAFAF",
+"y. c #80B7B7",
+"u. c #85BABA",
+"i. c #8EBEBE",
+"p. c #94B4B4",
+"a. c #9BB4B4",
+"s. c #9FBBBB",
+"d. c #A3A4A4",
+"f. c #A1B1B1",
+"g. c #A9B4B4",
+"h. c #A2BABA",
+"j. c #ADBABA",
+"k. c #B5B5B5",
+"l. c #B6BABA",
+"z. c #BBBBBB",
+"x. c #94C2C2",
+"c. c #98C6C6",
+"v. c #9DC8C8",
+"b. c #A0C7C7",
+"n. c #AEC0C0",
+"m. c #A3C9C9",
+"M. c #B0C0C0",
+"N. c #BCC3C3",
+"B. c #A6D1D1",
+"V. c #AED3D3",
+"C. c #B3D2D2",
+"Z. c #BDD5D5",
+"A. c #BDDADA",
+"S. c #C4C4C4",
+"D. c #C6CACA",
+"F. c #CCCCCC",
+"G. c #C4DADA",
+"H. c #D4D4D4",
+"J. c #D2DEDE",
+"K. c #DCDCDC",
+"L. c #C7E0E0",
+"P. c #CDE3E3",
+"I. c #D5E3E3",
+"U. c #DFEBEB",
+"Y. c #E4E4E4",
+"T. c #E3E9E9",
+"R. c #EBEBEB",
+"E. c #EDF2F2",
+"W. c #F4F4F4",
+"Q. c #FBFBFB",
+"!. c None",
+/* pixels */
+"!.!.!.!.!.0.0.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.0.0.!.!.!.!.!.",
+"!.!.!.6.F.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.W.F.6.!.!.!.",
+"!.!.q.R.Q.Q.Q.Q.Q.U.V.A.E.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.P.B.P.Q.Q.Q.Q.Q.Q.R.q.!.!.",
+"!.6.R.Q.Q.Q.T.] j r , 1 u I >.W.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.C.U i 4 # 4 i U V.Q.Q.Q.Q.R.6.!.",
+"!.D.Q.Q.Q.x.j o . . . . . . % U L.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.E.| t . . . . . . . 5 | E.Q.Q.Q.D.!.",
+"0.W.Q.Q.2.5 O X X X X X X X X O i G.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.W.Y & X X X X X X X X X & Y W.Q.Q.W.0.",
+"0.W.W.L.g - - - - - - - - - - - ; U E.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.>.7 - - - - - - - - - - - 7 :.W.W.W.0.",
+"q.W.W.E : > > > > > > > > > > > > 0 -.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.G.h > > > > > > > > > > > > > h A.W.W.q.",
+"q.W.A.d x x x x x x x x x x x x x x I W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.*.9 x x x x x x x x x x x x x 9 [ W.W.q.",
+"q.W.u.e v v v v v v v v v v v v v v z P.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.E v v v v v v v v v v v v v v v Y W.W.q.",
+"q.W.] n m m m m m m m m m m m m m m f c.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.E.U m m m m m m m m m m m m m m m U R.W.q.",
+"q.W.Q D D D D D D D D D D D D D D D N 3.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.U.T D D D D D D D D D D D D D D D T I.W.q.",
+"q.W.-.A G G G G G G G G G G G G G G C C.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.Y G G G G G G G G G G G G G G G Y W.W.q.",
+"q.R.v.Z P P P P P P P P P P P P P P E T.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.` L P P P P P P P P P P P P P L ! R.R.q.",
+"q.R.I.E 4.4.4.4.4.4.4.4.4.4.4.4.4.+.Q R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.3._ 4.4.4.4.4.4.4.4.4.4.4.4.4._ 2.R.R.q.",
+"q.R.R.>.o.6.6.6.6.6.6.6.6.6.6.6.6.( C.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.T.Q 5.6.6.6.6.6.6.6.6.6.6.6.5.Q T.R.R.q.",
+"q.R.R.T.Q 7.0.0.0.0.0.0.0.0.0.0.@.:.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.Z.W 0.0.0.0.0.0.0.0.0.0.0.( C.R.R.R.q.",
+"0.R.R.R.G.Q %.q.q.q.q.q.q.q.q.} [ T.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.i.! 9.q.q.q.q.q.q.q.9.! u.R.R.R.R.0.",
+"0.R.R.R.R.Y.:.' &.e.d.d.9.$.Q x.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.G.~ #.8.d.d.d.8.#.! G.R.R.R.R.R.0.",
+"0.T.T.T.T.T.T.Z.y.[ Q Q =.i.J.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.m.>.] Q ~ >.b.Y.T.T.T.T.T.T.0.",
+"0.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.0.",
+"0.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.0.",
+"0.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.0.",
+"0.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.0.",
+"0.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.0.",
+"0.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.Y.0.",
+"0.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.0.",
+"0.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.0.",
+"0.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.0.",
+"0.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.0.",
+"0.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.0.",
+"0.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.0.",
+"0.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.0.",
+"0.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.0.",
+"0.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.0.",
+"0.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.0.",
+"0.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.0.",
+"0.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.0.",
+"0.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.0.",
+"0.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.0.",
+"0.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.0.",
+"0.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.0.",
+"0.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.0.",
+"0.F.F.F.F.F.F.F.F.n.w.p.N.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.D.h.1.s.D.F.F.F.F.F.F.F.F.0.",
+"0.F.F.F.F.F.M.T i 4 # , r p ' S.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.w.j y 3 + 2 y j w.F.F.F.F.F.F.0.",
+"0.D.D.D.D.,.i   . . . . . . @ p a.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.N.W 3 . . . . . . . 3 W N.D.D.D.D.0.",
+"0.D.D.D. .3 X X X X X X X X X O y p.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.S.I $ X X X X X X X X X $ j S.D.D.D.0.",
+"6.D.D.a.u * * * * * * * * * * * = j N.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.{ < * * * * * * * * * * * < ' D.D.D.6.",
+"6.S.S.I ; - - - - - - - - - - - - 6 ' S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.a.s - - - - - - - - - - - - - s p.S.S.6.",
+"6.S.p.a > > > > > > > > > > > > > > j S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.( 8 > > > > > > > > > > > > > : W S.S.6.",
+"6.S.#.q x x x x x x x x x x x x x x d h.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.I x x x x x x x x x x x x x x x I S.S.6.",
+"6.S.W c v v v v v v v v v v v v v v w <.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.N.j v v v v v v v v v v v v v v v j z.S.6.",
+"6.S.U b b b b b b b b b b b b b b b e #.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.l.k b b b b b b b b b b b b b b b k j.S.6.",
+"6.S.{ M m m m m m m m m m m m m m m l p.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.I m m m m m m m m m m m m m m m I S.S.6.",
+"6.z.1.f D D D D D D D D D D D D D D k l.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.E B D D D D D D D D D D D D D D E z.z.6.",
+"6.z.g.U G G G G G G G G G G G G G F U z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.#.V G G G G G G G G G G G G G V #.z.z.6.",
+"6.z.z. .Z K K K K K K K K K K K K T r.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.l.U H K K K K K K K K K K K H U l.z.z.6.",
+"6.z.z.l.Y J P P P P P P P P P P S { z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.a.T P P P P P P P P P P P T r.z.z.z.6.",
+"5.k.z.z.f.Y _ 4.4.4.4.4.4.4.+.^ ` l.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.,.U O.4.4.4.4.4.4.4.O.U ,.z.z.z.k.5.",
+"!.d.z.z.z.l.{ R _ O.4.4.X.) U <.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.f.E / ..+.4.+.../ E f.z.z.z.z.d.!.",
+"!.4.k.l.l.l.l.t.;.` Y Y ' ,.g.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.k.w. .E Y E  .w.l.l.l.l.l.k.4.!.",
+"!.!.6.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.6.!.!.",
+"!.!.!.4.q.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.q.4.!.!.!.",
+"!.!.!.!.!.4.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.4.!.!.!.!.!."
+};
Index: /trunk/src/dice/theme2/one.xpm
===================================================================
--- /trunk/src/dice/theme2/one.xpm	(revision 134)
+++ /trunk/src/dice/theme2/one.xpm	(revision 134)
@@ -0,0 +1,270 @@
+/* XPM */
+static char *theme2_one_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 200 2",
+"   c #0A0E0E",
+".  c #091B1B",
+"X  c gray9",
+"o  c #082323",
+"O  c #132424",
+"+  c #1E2929",
+"@  c #0A3636",
+"#  c #153F3F",
+"$  c gray13",
+"%  c #212222",
+"&  c #2C2C2C",
+"*  c #2B3030",
+"=  c gray21",
+"-  c #0E4444",
+";  c #165F5F",
+":  c #234545",
+">  c #2A4848",
+",  c #334F4F",
+"<  c #1A6868",
+"1  c #1A7171",
+"2  c #1B7575",
+"3  c #1F7F7F",
+"4  c #226E6E",
+"5  c #217F7F",
+"6  c #2B7C7C",
+"7  c #367070",
+"8  c #397777",
+"9  c #414141",
+"0  c #4B4B4B",
+"q  c #494D4D",
+"w  c #555555",
+"e  c gray37",
+"r  c #547575",
+"t  c #517D7D",
+"y  c #676767",
+"u  c #606868",
+"i  c #717171",
+"p  c #797979",
+"a  c #268383",
+"s  c #2C8585",
+"d  c #2E8484",
+"f  c #2E8585",
+"g  c #2D8686",
+"h  c #2F8888",
+"j  c #2C8B8B",
+"k  c #2E8C8C",
+"l  c #308484",
+"z  c #338888",
+"x  c #338989",
+"c  c #348B8B",
+"v  c #308D8D",
+"b  c #338C8C",
+"n  c #348F8F",
+"m  c #398E8E",
+"M  c #458F8F",
+"N  c #4E8C8C",
+"B  c #538484",
+"V  c #409292",
+"C  c #4F9090",
+"Z  c #4E9696",
+"A  c #479898",
+"S  c #4F9999",
+"D  c #529A9A",
+"F  c #579E9E",
+"G  c #6F8787",
+"H  c #6E8D8D",
+"J  c #768282",
+"K  c #619090",
+"L  c #6B9191",
+"P  c #7C9393",
+"I  c #61A3A3",
+"U  c #64A3A3",
+"Y  c #65A3A3",
+"T  c #65A4A4",
+"R  c #68A5A5",
+"E  c #6CA7A7",
+"W  c #71AAAA",
+"Q  c #7AADAD",
+"!  c #7EB1B1",
+"~  c #818181",
+"^  c #868686",
+"/  c gray53",
+"(  c #818888",
+")  c #888888",
+"_  c #898989",
+"`  c gray54",
+"'  c #8B8B8B",
+"]  c #8D8D8D",
+"[  c #8E8E8E",
+"{  c gray56",
+"}  c #8F9090",
+"|  c #909090",
+" . c gray57",
+".. c #929292",
+"X. c #939393",
+"o. c gray58",
+"O. c #959595",
+"+. c gray59",
+"@. c #979797",
+"#. c #989898",
+"$. c gray60",
+"%. c #9A9A9A",
+"&. c gray61",
+"*. c #9F9F9F",
+"=. c #88B2B2",
+"-. c #89B3B3",
+";. c #8EBCBC",
+":. c #9FBDBD",
+">. c #A2A2A2",
+",. c #A5BFBF",
+"<. c gray69",
+"1. c #B2B2B2",
+"2. c gray71",
+"3. c #B6B6B6",
+"4. c #B7B7B7",
+"5. c gray72",
+"6. c #B9B9B9",
+"7. c gray73",
+"8. c #BBBBBB",
+"9. c #BCBCBC",
+"0. c gray74",
+"q. c gray75",
+"w. c #9CC0C0",
+"e. c #A1C6C6",
+"r. c #A6C4C4",
+"t. c #ACC3C3",
+"y. c #ABC5C5",
+"u. c #AEC9C9",
+"i. c #B3C4C4",
+"p. c #B4C7C7",
+"a. c #BCD1D1",
+"s. c #BFD3D3",
+"d. c #C0C0C0",
+"f. c #C1C1C1",
+"g. c gray76",
+"h. c #C3C3C3",
+"j. c #C5C5C5",
+"k. c #C6C6C6",
+"l. c gray78",
+"z. c #C2CBCB",
+"x. c #C8C8C8",
+"c. c gray79",
+"v. c #CACACA",
+"b. c #CBCBCB",
+"n. c #C8CDCD",
+"m. c #CACDCD",
+"M. c gray80",
+"N. c #CDCDCD",
+"B. c #CECECE",
+"V. c gray81",
+"C. c #C7D6D6",
+"Z. c #CFD2D2",
+"A. c #D0D0D0",
+"S. c gray82",
+"D. c #D1D2D2",
+"F. c LightGray",
+"G. c #D1D4D4",
+"H. c #D1D7D7",
+"J. c gray83",
+"K. c #D5D5D5",
+"L. c gray84",
+"P. c #D7D7D7",
+"I. c #D0D8D8",
+"U. c #D0DADA",
+"Y. c #D5DADA",
+"T. c #D8D8D8",
+"R. c #DADADA",
+"E. c gray86",
+"W. c gainsboro",
+"Q. c #DDDDDD",
+"!. c gray87",
+"~. c #DFDFDF",
+"^. c #DEE0E0",
+"/. c #E1E1E1",
+"(. c #E2E2E2",
+"). c gray89",
+"_. c #E4E4E4",
+"`. c gray90",
+"'. c #E7E7E7",
+"]. c gray91",
+"[. c #E9E9E9",
+"{. c #EAEAEA",
+"}. c gray92",
+"|. c #ECECEC",
+" X c gray93",
+".X c #EEEEEE",
+"XX c #EFEFEF",
+"oX c gray94",
+"OX c #F1F1F1",
+"+X c gray95",
+"@X c #F3F3F3",
+"#X c gray96",
+"$X c #F6F6F6",
+"%X c gray97",
+"&X c #F8F8F8",
+"*X c #F9F9F9",
+"=X c gray98",
+"-X c gray99",
+";X c #FDFDFD",
+":X c None",
+/* pixels */
+":X:X:X:X:X .+.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.&.+. .:X:X:X:X:X",
+":X:X:X[ b.%X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X;X%Xb.[ :X:X:X",
+":X:X#.XX-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-X-XXX#.:X:X",
+":X[  X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X=X X[ :X",
+":Xx.*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*X*Xx.:X",
+"| +X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X&X+X| ",
+"o.%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%Xo.",
+"%.$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X%.",
+"%.#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X%.",
+"$.@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X@X$.",
+"$.+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X+X$.",
+"$.OXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOXOX$.",
+"$.oXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoXoX$.",
+"$.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX$.",
+"#..X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X#.",
+"#.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.|.#.",
+"#.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.}.#.",
+"@.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.{.@.",
+"@.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.[.@.",
+"@.].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].].@.",
+"@.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.'.@.",
+"+.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.`.+.",
+"+._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._.+.",
+"+.).).).).).).).).).).).).).).).).).).).).).).).).).).).U.e.Y z Z ;.s.).).).).).).).).).).).).).).).).).).).).).).).).).).).).+.",
+"+.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.^.U 1 - o   . @ ; x C.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.(.+.",
+"O././././././././././././././././././././././././.a.a # X X X X X X X O 2 ! /././././././././././././././././././././././././.O.",
+"O.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.Y.5 + $ $ $ $ $ $ $ $ $ % < w.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.~.O.",
+"O.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.S : & & & & & & & & & & & * 3 I.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.!.O.",
+"o.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.u.4 = = = = = = = = = = = = = > D Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.Q.o.",
+"o.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.R , 9 9 9 9 9 9 9 9 9 9 9 9 9 9 d W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.W.o.",
+"o.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.m q 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6 H.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.o.",
+"o.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.s w w w w w w w w w w w w w w w 7 r.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.o.",
+"X.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.g e e e e e e e e e e e e e e e 8 y.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.X.",
+"X.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.V u y y y y y y y y y y y y y y l G.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.P.X.",
+"X.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.W r i i i i i i i i i i i i i i c L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.L.X.",
+"X.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.p.f p p p p p p p p p p p p p t T K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.K.X.",
+"..J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.E B ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ J j Z.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J.J...",
+"..F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.D.n G _ _ _ _ _ _ _ _ _ ( h t.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F.F...",
+"..S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.z.A N }  . . . . . .H v :.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S...",
+" .A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.=.k M K P L C b F n.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A. .",
+" .V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.i.-.I Q ,.m.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V.V. .",
+" .B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B.B. .",
+" .N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N. .",
+" .M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M. .",
+"| v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.| ",
+"| c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.| ",
+"| x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.x.| ",
+"{ l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.l.{ ",
+"{ k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.k.{ ",
+"{ j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.j.{ ",
+"{ h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.h.{ ",
+"[ g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.g.[ ",
+"[ f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.f.[ ",
+"[ d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.d.[ ",
+"[ q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.q.[ ",
+"] 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.] ",
+"] 9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.] ",
+"` 8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.8.` ",
+"/ 4.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.4./ ",
+":X>.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.>.:X",
+":X^ 1.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.1.^ :X",
+":X:X` <.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.3.<.` :X:X",
+":X:X:X^ *.1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.1.*.^ :X:X:X",
+":X:X:X:X:X^ ) ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ) ^ :X:X:X:X:X"
+};
Index: /trunk/src/dice/theme2/six.xpm
===================================================================
--- /trunk/src/dice/theme2/six.xpm	(revision 134)
+++ /trunk/src/dice/theme2/six.xpm	(revision 134)
@@ -0,0 +1,276 @@
+/* XPM */
+static char *theme2_six_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 206 2",
+"   c #0A1111",
+".  c #0C1C1C",
+"X  c #141414",
+"o  c #161E1E",
+"O  c #1C1C1C",
+"+  c #082121",
+"@  c #072929",
+"#  c #122424",
+"$  c #1C2222",
+"%  c #142E2E",
+"&  c #063434",
+"*  c #0C3333",
+"=  c #0B3D3D",
+"-  c #153131",
+";  c #1B3333",
+":  c #143B3B",
+">  c #1A3939",
+",  c #222323",
+"<  c #232929",
+"1  c #2D2D2D",
+"2  c #273737",
+"3  c #2B3232",
+"4  c gray21",
+"5  c #323D3D",
+"6  c gray22",
+"7  c #0C4242",
+"8  c #1E4343",
+"9  c #124D4D",
+"0  c #0F5050",
+"q  c #145454",
+"w  c #1A5252",
+"e  c #155C5C",
+"r  c #1C5D5D",
+"t  c #274646",
+"y  c #244C4C",
+"u  c #314242",
+"i  c #3D4646",
+"p  c #3B4B4B",
+"a  c #2F5050",
+"s  c #225959",
+"d  c #285A5A",
+"f  c #305353",
+"g  c #3C5757",
+"h  c #325E5E",
+"j  c #3A5D5D",
+"k  c #156767",
+"l  c #196565",
+"z  c #166E6E",
+"x  c #1A6C6C",
+"c  c #1B7575",
+"v  c #1D7A7A",
+"b  c #256262",
+"n  c #2B6161",
+"m  c #216A6A",
+"M  c #2C6D6D",
+"N  c #3B6161",
+"B  c #3D6B6B",
+"V  c #227575",
+"C  c #287575",
+"Z  c #227C7C",
+"A  c #2B7C7C",
+"S  c #377171",
+"D  c #307979",
+"F  c #387C7C",
+"G  c #424242",
+"H  c #454D4D",
+"J  c #4C4C4C",
+"K  c #535353",
+"L  c #515C5C",
+"P  c #5B5B5B",
+"I  c #4B6161",
+"U  c #476A6A",
+"Y  c #4C6C6C",
+"T  c #5B6262",
+"R  c #4A7373",
+"E  c #427C7C",
+"W  c #4D7B7B",
+"Q  c #597171",
+"!  c #557C7C",
+"~  c #646464",
+"^  c #656C6C",
+"/  c #6C6C6C",
+"(  c #667272",
+")  c #697272",
+"_  c #647979",
+"`  c #6E7B7B",
+"'  c #717171",
+"]  c #747979",
+"[  c #797979",
+"{  c #258181",
+"}  c #2B8585",
+"|  c #2D8A8A",
+" . c #328383",
+".. c #398787",
+"X. c #348B8B",
+"o. c #3C8C8C",
+"O. c #369292",
+"+. c #3C9292",
+"@. c #3F9898",
+"#. c #428383",
+"$. c #4A8686",
+"%. c #428E8E",
+"&. c #498F8F",
+"*. c #558484",
+"=. c #5C8383",
+"-. c #518F8F",
+";. c #5F8B8B",
+":. c #449494",
+">. c #4B9494",
+",. c #449999",
+"<. c #4D9C9C",
+"1. c #529696",
+"2. c #5A9393",
+"3. c #539C9C",
+"4. c #5B9A9A",
+"5. c #658383",
+"6. c #6C8383",
+"7. c #628C8C",
+"8. c #748282",
+"9. c #7E8383",
+"0. c #7A8A8A",
+"q. c #639090",
+"w. c #6D9090",
+"e. c #649C9C",
+"r. c #6D9999",
+"t. c #769494",
+"y. c #7A9494",
+"u. c #779B9B",
+"i. c #57A0A0",
+"p. c #5DA2A2",
+"a. c #62A5A5",
+"s. c #6CA4A4",
+"d. c #65AAAA",
+"f. c #6DADAD",
+"g. c #73A2A2",
+"h. c #7AA6A6",
+"j. c #72AAAA",
+"k. c #7DADAD",
+"l. c #76B2B2",
+"z. c #7FB4B4",
+"x. c #828282",
+"c. c #838989",
+"v. c #8B8B8B",
+"b. c #879292",
+"n. c #839E9E",
+"m. c #8E9C9C",
+"M. c #939393",
+"N. c #9B9B9B",
+"B. c #85ACAC",
+"V. c #98A3A3",
+"C. c #93AEAE",
+"Z. c #9BAFAF",
+"A. c #82B4B4",
+"S. c #8CB4B4",
+"D. c #85BABA",
+"F. c #8EBEBE",
+"G. c #94B4B4",
+"H. c #9BB4B4",
+"J. c #94B9B9",
+"K. c #9CBDBD",
+"L. c #A3A4A4",
+"P. c #A1B1B1",
+"I. c #A9B4B4",
+"U. c #A2BBBB",
+"Y. c #ADBABA",
+"T. c #B5B5B5",
+"R. c #B6BABA",
+"E. c #BBBBBB",
+"W. c #95C1C1",
+"Q. c #99C4C4",
+"!. c #9DC8C8",
+"~. c #A2C5C5",
+"^. c #ACC3C3",
+"/. c #A3C9C9",
+"(. c #AACACA",
+"). c #B3C4C4",
+"_. c #BCC3C3",
+"`. c #B4CECE",
+"'. c #BDC8C8",
+"]. c #A6D1D1",
+"[. c #AED3D3",
+"{. c #B3D2D2",
+"}. c #BDD3D3",
+"|. c #BDDADA",
+" X c #C4C4C4",
+".X c #C5CCCC",
+"XX c #CCCCCC",
+"oX c #C4D4D4",
+"OX c #CBD4D4",
+"+X c #C4DADA",
+"@X c #CED8D8",
+"#X c #D3D3D3",
+"$X c #D4DCDC",
+"%X c #DCDCDC",
+"&X c #C7E0E0",
+"*X c #CDE3E3",
+"=X c #D5E3E3",
+"-X c #DFE1E1",
+";X c #DFEBEB",
+":X c #E4E4E4",
+">X c #E3E9E9",
+",X c #EBEBEB",
+"<X c #EDF2F2",
+"1X c #F4F4F4",
+"2X c #FBFBFB",
+"3X c None",
+/* pixels */
+"3X3X3X3X3XM.M.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.M.M.3X3X3X3X3X",
+"3X3X3Xv.XX1X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X1XXXv.3X3X3X",
+"3X3XN.,X2X2X2X2X2X;X[.|.<X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X*X].*X2X2X2X2X2X2X,XN.3X3X",
+"3Xv.,X2X2X2X>X:.Z l 7 9 z { f.1X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X{.} c e = e c } [.2X2X2X2X,Xv.3X",
+"3X.X2X2X2XQ.Z # X X X X X X : } &X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X<X3.l X X X X X X X r 3.<X2X2X2X.X3X",
+"M.1X2X2Xl.r $ O O O O O O O O $ c +X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X2X1X| > O O O O O O O O O > | 1X2X2X1XM.",
+"M.1X1X&XV 1 1 1 1 1 1 1 1 1 1 1 3 } <X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1Xf.y 1 1 1 1 1 1 1 1 1 1 1 y d.1X1X1XM.",
+"N.1X1XX.5 6 6 6 6 6 6 6 6 6 6 6 6 a a.1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X+XC 6 6 6 6 6 6 6 6 6 6 6 6 6 C |.1X1XN.",
+"N.1X|.M G G G G G G G G G G G G G G { 1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1Xi.p G G G G G G G G G G G G G p <.1X1XN.",
+"N.1XD.j J J J J J J J J J J J J J J D *X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1XX.J J J J J J J J J J J J J J J | 1X1XN.",
+"N.1X,.L P P P P P P P P P P P P P P B Q.1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X<X} P P P P P P P P P P P P P P P } ,X1XN.",
+"N.1XO.~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ U z.1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X;X .~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~  .=X1XN.",
+"N.1Xa.Q / / / / / / / / / / / / / / E {.1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X1X| / / / / / / / / / / / / / / / | 1X1XN.",
+"N.,X!.W [ [ [ [ [ [ [ [ [ [ [ [ [ [ X.>X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X:.] [ [ [ [ [ [ [ [ [ [ [ [ [ ] +.,X,XN.",
+"N.,X=XX.x.x.x.x.x.x.x.x.x.x.x.x.x.9.O.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,Xz.=.x.x.x.x.x.x.x.x.x.x.x.x.x.=.l.,X,XN.",
+"N.,X,Xf.7.v.v.v.v.v.v.v.v.v.v.v.v.%.{.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X>XO.c.v.v.v.v.v.v.v.v.v.v.v.c.O.>X,X,XN.",
+"N.,X,X>XO.b.M.M.M.M.M.M.M.M.M.M.w.d.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X}.o.M.M.M.M.M.M.M.M.M.M.M.%.{.,X,X,XN.",
+"M.,X,X,X+XO.t.N.N.N.N.N.N.N.N.2.<.>X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,XF.+.m.N.N.N.N.N.N.N.m.+.D.,X,X,X,XM.",
+"M.,X,X,X,X:Xd.>.u.V.L.L.m.r.+.W.,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X,X+X@.e.n.L.L.L.n.e.@.+X,X,X,X,X,XM.",
+"M.>X>X>X>X>X>X}.A.<.O.O.p.F.$X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X/.f.,.O.@.f.~.:X>X>X>X>X>X>XM.",
+"M.>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>X>XM.",
+"M.:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:XM.",
+"M.:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:XM.",
+"M.:X:X:X:X:X:X%X(.s.X.:.A.`.-X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:XOXQ.4.X.3.W.oX:X:X:X:X:X:X:XM.",
+"M.:X:X:X:X:XA.c 9 @   . * e Z `.:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X$X>.k = +   + = k :.$X:X:X:X:X:XM.",
+"M.:X:X:X@XX.w X X X X X X X o x p.-X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X:X~.Z - X X X X X X X % v ~.:X:X:X:XM.",
+"M.%X%X%XX.; , , , , , , , , , , w j.%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%XoXv , , , , , , , , , , , c oX%X%X%XM.",
+"M.%X%Xz.s 1 1 1 1 1 1 1 1 1 1 1 1 V }.%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%XX.2 1 1 1 1 1 1 1 1 1 1 1 2 X.%X%X%XM.",
+"M.%X@XZ 4 4 4 4 4 4 4 4 4 4 4 4 4 5 X.%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%XA.d 4 4 4 4 4 4 4 4 4 4 4 4 4 d z.%X%XM.",
+"M.%XK.n G G G G G G G G G G G G G G Z $X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X+.i G G G G G G G G G G G G G i o.%X%XM.",
+"M.%Xa.g J J J J J J J J J J J J J J M ^.%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X} J J J J J J J J J J J J J J J } %X%XM.",
+"M.%XX.K K K K K K K K K K K K K K K N k.%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%X%XOXA K K K K K K K K K K K K K K K A OX%XM.",
+"M.$X+.T P P P P P P P P P P P P P P B A.$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X$X#X{ P P P P P P P P P P P P P P P { OX$XM.",
+"M.#Xs.Y ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ F ^.#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X| ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ | #X#XM.",
+"M.#XK.E ' ' ' ' ' ' ' ' ' ' ' ' ' ' } #X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X>.( ' ' ' ' ' ' ' ' ' ' ' ' ' ) :.#X#XM.",
+"M.#XOX| ] [ [ [ [ [ [ [ [ [ [ [ [ _ :.#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XJ.#.[ [ [ [ [ [ [ [ [ [ [ [ [ #.J.#X#XM.",
+"M.#X#XJ.#.x.x.x.x.x.x.x.x.x.x.x.9.| .X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X<.5.x.x.x.x.x.x.x.x.x.x.x.6.:.#X#X#XM.",
+"M.#X#X#X3.;.v.v.v.v.v.v.v.v.v.c...S.#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X.X| 0.v.v.v.v.v.v.v.v.v.0.| .X#X#X#XM.",
+"M.#X#X#XXXp.%.v.M.M.M.M.M.M.0.X.S.#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X).+.;.M.M.M.M.M.M.M.7.O.).#X#X#X#XM.",
+"M.#X#X#X#X#XU.O.o.2.t.w.-.X.:.'.#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#X#XXXj.X.&.q.y.q.&.X.s.XX#X#X#X#X#XM.",
+"M.XXXXXXXXXXXXXX'.G.a.j.K..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX^.A.p.k.^.XXXXXXXXXXXXXXXXM.",
+"M.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXM.",
+"M.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXM.",
+"M.XXXXXXXXXXXXXXXX^.B.G._.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.XU.k.K..XXXXXXXXXXXXXXXXXM.",
+"M.XXXXXXXXXX). .c e & 7 k v >. XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXB.Z z q & 0 z Z B.XXXXXXXXXXXXM.",
+"M.XXXXXXXXg.c . X X X X X X * v H.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX_.o.q X X X X X X X q o._.XXXXXXXXM.",
+"M..X.X.X4.q O O O O O O O O O $ z G..X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X.X X{ - O O O O O O O O O - Z  X.X.X.XM.",
+"v. X XH.x , , , , , , , , , , , < Z _. X X X X X X X X X X X X X X X X X X X X X X X X X X1.8 , , , , , , , , , , , 8 >. X X Xv.",
+"v. X X{ 3 1 1 1 1 1 1 1 1 1 1 1 1 t >. X X X X X X X X X X X X X X X X X X X X X X X X XH.m 1 1 1 1 1 1 1 1 1 1 1 1 1 m G. X Xv.",
+"v. XG.b 6 6 6 6 6 6 6 6 6 6 6 6 6 6 Z  X X X X X X X X X X X X X X X X X X X X X X X X X%.u 6 6 6 6 6 6 6 6 6 6 6 6 6 5 o. X Xv.",
+"v. Xe.f G G G G G G G G G G G G G G M U. X X X X X X X X X X X X X X X X X X X X X X X X{ G G G G G G G G G G G G G G G {  X Xv.",
+"v. Xo.H J J J J J J J J J J J J J J h h. X X X X X X X X X X X X X X X X X X X X X X X_.Z J J J J J J J J J J J J J J J Z E. Xv.",
+"v. X} K K K K K K K K K K K K K K K j e. X X X X X X X X X X X X X X X X X X X X X X XR.A K K K K K K K K K K K K K K K A Y. Xv.",
+"v. X1.I P P P P P P P P P P P P P P S G. X X X X X X X X X X X X X X X X X X X X X X X X{ P P P P P P P P P P P P P P P {  X Xv.",
+"v.E.k.B ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ A R.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.X.T ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ X.E.E.v.",
+"v.E.I.} / / / / / / / / / / / / / ^ } E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.e.R / / / / / / / / / / / / / R e.E.E.v.",
+"v.E.E.4.W ' ' ' ' ' ' ' ' ' ' ' '  .C.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.R.} ) ' ' ' ' ' ' ' ' ' ' ' ) } R.E.E.v.",
+"v.E.E.R.| ` [ [ [ [ [ [ [ [ [ [ ! 1.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.H. .[ [ [ [ [ [ [ [ [ [ [  .C.E.E.E.v.",
+"c.T.E.E.P.| =.x.x.x.x.x.x.x.9.#.:.R.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.g.} 8.x.x.x.x.x.x.x.8.} g.E.E.E.T.c.",
+"3XL.E.E.E.R.1...=.8.c.x.6.*.| h.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.E.P.X.$.5.9.c.9.5.$.X.P.E.E.E.E.L.3X",
+"3Xc.T.R.R.R.R.Z.s.:.| | >.g.I.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.R.T.B.4.X.| X.4.B.R.R.R.R.R.T.c.3X",
+"3X3Xv.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.v.3X3X",
+"3X3X3Xc.N.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.T.N.c.3X3X3X",
+"3X3X3X3X3Xc.c.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.v.c.c.3X3X3X3X3X"
+};
Index: /trunk/src/dice/theme2/three.xpm
===================================================================
--- /trunk/src/dice/theme2/three.xpm	(revision 134)
+++ /trunk/src/dice/theme2/three.xpm	(revision 134)
@@ -0,0 +1,229 @@
+/* XPM */
+static char *theme2_three_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 159 2",
+"   c #0A0E0E",
+".  c #0C1C1C",
+"X  c #141414",
+"o  c #1D1D1D",
+"O  c #082323",
+"+  c #132424",
+"@  c #182020",
+"#  c #1E2929",
+"$  c #073737",
+"%  c #0D3535",
+"&  c #083939",
+"*  c #153F3F",
+"=  c #1A3939",
+"-  c #232323",
+";  c #232929",
+":  c #2D2D2D",
+">  c #2B3232",
+",  c gray21",
+"<  c gray22",
+"1  c #0D4444",
+"2  c #175353",
+"3  c #165D5D",
+"4  c #1A5D5D",
+"5  c #254646",
+"6  c #244C4C",
+"7  c #2A4848",
+"8  c #334F4F",
+"9  c #3B4B4B",
+"0  c #305353",
+"q  c #325E5E",
+"w  c #3C5D5D",
+"e  c #156767",
+"r  c #1B6161",
+"t  c #176E6E",
+"y  c #1B6A6A",
+"u  c #1B7474",
+"i  c #1D7C7C",
+"p  c #256262",
+"a  c #226E6E",
+"s  c #296F6F",
+"d  c #3E6F6F",
+"f  c #287575",
+"g  c #217D7D",
+"h  c #2B7E7E",
+"j  c #377171",
+"k  c #397777",
+"l  c #424242",
+"z  c #454D4D",
+"x  c #4C4C4C",
+"c  c #535353",
+"v  c #5B5B5B",
+"b  c #4B6161",
+"n  c #4F7979",
+"m  c #547575",
+"M  c #537D7D",
+"N  c #646464",
+"B  c #626A6A",
+"V  c #6C6C6C",
+"C  c #6E7B7B",
+"Z  c #717171",
+"A  c #747979",
+"S  c #797979",
+"D  c #268282",
+"F  c #2C8585",
+"G  c #2D8A8A",
+"H  c #328383",
+"J  c #398787",
+"K  c #328B8B",
+"L  c #3A8D8D",
+"P  c #359191",
+"I  c #3D9494",
+"U  c #3F9898",
+"Y  c #448383",
+"T  c #438F8F",
+"R  c #4E8C8C",
+"E  c #548484",
+"W  c #5C8383",
+"Q  c #419292",
+"!  c #4D9393",
+"~  c #449999",
+"^  c #4F9B9B",
+"/  c #529696",
+"(  c #549C9C",
+")  c #5A9999",
+"_  c #6F8686",
+"`  c #6E8D8D",
+"'  c #778383",
+"]  c #7F8181",
+"[  c #619090",
+"{  c #6B9191",
+"}  c #639B9B",
+"|  c #7C9393",
+" . c #57A0A0",
+".. c #64A3A3",
+"X. c #6BA4A4",
+"o. c #65A9A9",
+"O. c #6CAEAE",
+"+. c #73A3A3",
+"@. c #7AA6A6",
+"#. c #71AAAA",
+"$. c #7DABAB",
+"%. c #77B3B3",
+"&. c #7FB4B4",
+"*. c #838383",
+"=. c #818989",
+"-. c #8B8B8B",
+";. c #8F9090",
+":. c #839E9E",
+">. c #8F9A9A",
+",. c #939393",
+"<. c #9B9B9B",
+"1. c #84AFAF",
+"2. c #92AEAE",
+"3. c #9BAFAF",
+"4. c #89B3B3",
+"5. c #87BABA",
+"6. c #8EBDBD",
+"7. c #93B4B4",
+"8. c #9CB7B7",
+"9. c #9FBDBD",
+"0. c #A2A4A4",
+"q. c #A0B1B1",
+"w. c #A9B4B4",
+"e. c #A5BCBC",
+"r. c #B5B5B5",
+"t. c #B5BABA",
+"y. c #BBBBBB",
+"u. c #9CC0C0",
+"i. c #A2C6C6",
+"p. c #ACC3C3",
+"a. c #A3C9C9",
+"s. c #AEC9C9",
+"d. c #B2C4C4",
+"f. c #BDC5C5",
+"g. c #A6D1D1",
+"h. c #AFD3D3",
+"j. c #B5D3D3",
+"k. c #BDD3D3",
+"l. c #BFDADA",
+"z. c #C3C3C3",
+"x. c #C2CBCB",
+"c. c #CCCCCC",
+"v. c #C7D6D6",
+"b. c #CFD2D2",
+"n. c #C5DADA",
+"m. c #D4D4D4",
+"M. c #D2D9D9",
+"N. c #DCDCDC",
+"B. c #CEE5E5",
+"V. c #D7E4E4",
+"C. c #DEE0E0",
+"Z. c #DFE8E8",
+"A. c #E4E4E4",
+"S. c #E5E9E9",
+"D. c #EBEBEB",
+"F. c #ECF1F1",
+"G. c #F3F3F3",
+"H. c #FAFAFA",
+"J. c None",
+/* pixels */
+"J.J.J.J.J.,.,.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.<.,.,.J.J.J.J.J.",
+"J.J.J.-.c.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.c.-.J.J.J.",
+"J.J.<.D.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.B.g.B.H.H.H.H.H.H.D.<.J.J.",
+"J.-.D.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.j.F u 3 & 3 u F h.H.H.H.H.D.-.J.",
+"J.c.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.F.( r X X X X X X X 4 ( F.H.H.H.c.J.",
+",.G.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.G.G = o o o o o o o o o = G G.H.H.G.,.",
+",.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.H.O.6 : : : : : : : : : : : 6 o.H.H.H.,.",
+"<.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.n.f < < < < < < < < < < < < < f l.G.G.<.",
+"<.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G. .9 l l l l l l l l l l l l l 9 ^ G.G.<.",
+"<.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.K x x x x x x x x x x x x x x x G G.G.<.",
+"<.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.F.F v v v v v v v v v v v v v v v F D.G.<.",
+"<.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.Z.H N N N N N N N N N N N N N N N H V.G.<.",
+"<.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G.G V V V V V V V V V V V V V V V G G.G.<.",
+"<.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.~ A S S S S S S S S S S S S S A I D.D.<.",
+"<.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.&.W *.*.*.*.*.*.*.*.*.*.*.*.*.W %.D.D.<.",
+"<.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.S.P =.-.-.-.-.-.-.-.-.-.-.-.=.P S.D.D.<.",
+"<.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.k.L ,.,.,.,.,.,.,.,.,.,.,.T j.D.D.D.<.",
+",.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.6.I >.<.<.<.<.<.<.<.>.I 5.D.D.D.D.,.",
+",.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.D.n.U } :.0.0.0.:.} I n.D.D.D.D.D.,.",
+",.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.a.O.~ P U O.i.A.S.S.S.S.S.S.,.",
+",.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.S.,.",
+",.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.,.",
+",.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.,.",
+",.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.M.i...K ! 6.k.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.,.",
+",.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.C...u 1 O   . % 3 K v.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.,.",
+",.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.k.D * X X X X X X X + u &.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.A.,.",
+",.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.M.g # - - - - - - - - - - y u.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.,.",
+",.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.^ 5 : : : : : : : : : : : > i M.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.,.",
+",.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.s.a , , , , , , , , , , , , , 7 ( N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.,.",
+",.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.X.8 l l l l l l l l l l l l l l F N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.,.",
+",.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.L x x x x x x x x x x x x x x x h M.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.,.",
+",.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.F c c c c c c c c c c c c c c c j i.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.N.,.",
+",.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.F v v v v v v v v v v v v v v v k p.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.M.,.",
+",.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.Q B N N N N N N N N N N N N N N H m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.,.",
+",.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.#.m Z Z Z Z Z Z Z Z Z Z Z Z Z Z K m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.,.",
+",.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.d.F S S S S S S S S S S S S S M ..m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.,.",
+",.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.X.E *.*.*.*.*.*.*.*.*.*.*.' G b.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.,.",
+",.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.K _ -.-.-.-.-.-.-.-.-.=.G p.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.,.",
+",.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.x.~ R ;.,.,.,.,.,.,.` K 9.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.,.",
+",.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.4.G T [ | { ! K ( c.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.m.,.",
+",.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.d.4...$.e.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.,.",
+",.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.,.",
+",.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.,.",
+",.c.c.c.c.c.c.c.c.p.1.7.f.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.,.",
+",.c.c.c.c.c.d.H u 3 $ 1 e i ! z.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.,.",
+",.c.c.c.c.+.u . X X X X X X % i 8.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.,.",
+",.c.c.c.) 2 o o o o o o o o o @ t 7.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.c.,.",
+"-.z.z.8.y - - - - - - - - - - - ; g f.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.-.",
+"-.z.z.D > : : : : : : : : : : : : 5 ! z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.-.",
+"-.z.7.p < < < < < < < < < < < < < < g z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.-.",
+"-.z.} 0 l l l l l l l l l l l l l l s e.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.-.",
+"-.z.L z x x x x x x x x x x x x x x q @.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.-.",
+"-.z.F c c c c c c c c c c c c c c c w } z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.-.",
+"-.z./ b v v v v v v v v v v v v v v j 7.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.z.-.",
+"-.y.$.d N N N N N N N N N N N N N N h t.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.-.",
+"-.y.w.D V V V V V V V V V V V V V B F y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.-.",
+"-.y.y.) n Z Z Z Z Z Z Z Z Z Z Z Z H 2.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.-.",
+"-.y.y.t.G C S S S S S S S S S S M / y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.-.",
+"=.r.y.y.q.G W *.*.*.*.*.*.*.] Y Q t.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.r.=.",
+"J.0.y.y.y.t.) J W ' *.*._ E F @.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.0.J.",
+"J.*.r.t.t.t.t.3.X.Q G G ! +.w.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.r.*.J.",
+"J.J.-.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.-.J.J.",
+"J.J.J.*.<.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.<.*.J.J.J.",
+"J.J.J.J.J.*.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.*.J.J.J.J.J."
+};
Index: /trunk/src/dice/theme2/two.xpm
===================================================================
--- /trunk/src/dice/theme2/two.xpm	(revision 134)
+++ /trunk/src/dice/theme2/two.xpm	(revision 134)
@@ -0,0 +1,201 @@
+/* XPM */
+static char *theme2_two_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 131 2",
+"   c #0F1E1E",
+".  c #121313",
+"X  c #1C1D1D",
+"o  c #182020",
+"O  c #073737",
+"+  c #0F3333",
+"@  c #083939",
+"#  c #1A3939",
+"$  c gray14",
+"%  c #232929",
+"&  c #2E2E2E",
+"*  c #2B3333",
+"=  c gray22",
+"-  c #0B4343",
+";  c #175353",
+":  c #165D5D",
+">  c #1A5D5D",
+",  c #274646",
+"<  c #244C4C",
+"1  c #3B4B4B",
+"2  c #305353",
+"3  c #325E5E",
+"4  c #3C5D5D",
+"5  c #156767",
+"6  c #1B6161",
+"7  c #176E6E",
+"8  c #1C6C6C",
+"9  c #1A7575",
+"0  c #1C7A7A",
+"q  c #256262",
+"w  c #296F6F",
+"e  c #3E6F6F",
+"r  c #287575",
+"t  c #217C7C",
+"y  c #2B7F7F",
+"u  c #377171",
+"i  c #424242",
+"p  c #454D4D",
+"a  c #4C4C4C",
+"s  c #515151",
+"d  c #595959",
+"f  c #4B6161",
+"g  c #4F7979",
+"h  c #557C7C",
+"j  c gray39",
+"k  c #656C6C",
+"l  c #6C6C6C",
+"z  c #6E7B7B",
+"x  c #717171",
+"c  c #747979",
+"v  c #797979",
+"b  c #258080",
+"n  c #2C8585",
+"m  c #2D8A8A",
+"M  c #328383",
+"N  c #398787",
+"B  c #308C8C",
+"V  c #3B8D8D",
+"C  c #359191",
+"Z  c #3D9494",
+"A  c #3F9898",
+"S  c #448383",
+"D  c #418F8F",
+"F  c #558484",
+"G  c #5C8383",
+"H  c #419292",
+"J  c #4C9393",
+"K  c #409999",
+"L  c #4F9C9C",
+"P  c #529696",
+"I  c #539C9C",
+"U  c #5A9999",
+"Y  c #6F8585",
+"T  c #778585",
+"R  c #7F8181",
+"E  c #649B9B",
+"W  c #57A0A0",
+"Q  c #6DA0A0",
+"!  c #65A9A9",
+"~  c #6CAEAE",
+"^  c #73A3A3",
+"/  c #7AA6A6",
+"(  c #7FA9A9",
+")  c #77B3B3",
+"_  c #7FB7B7",
+"`  c #838383",
+"'  c #828A8A",
+"]  c #8C8C8C",
+"[  c #839E9E",
+"{  c #8F9A9A",
+"}  c #949494",
+"|  c #9B9B9B",
+" . c #84AFAF",
+".. c #92AEAE",
+"X. c #9BAFAF",
+"o. c #87BABA",
+"O. c #8EBDBD",
+"+. c #93B4B4",
+"@. c #9CB7B7",
+"#. c #A2A4A4",
+"$. c #A0B1B1",
+"%. c #A9B4B4",
+"&. c #A4B8B8",
+"*. c #B5B5B5",
+"=. c #B5BABA",
+"-. c #BBBBBB",
+";. c #A0C7C7",
+":. c #AEC0C0",
+">. c #A3C9C9",
+",. c #B0C0C0",
+"<. c #BDC5C5",
+"1. c #A6D1D1",
+"2. c #AFD3D3",
+"3. c #B5D3D3",
+"4. c #BCD5D5",
+"5. c #BFDADA",
+"6. c #C3C3C3",
+"7. c #CCCCCC",
+"8. c #C5DADA",
+"9. c #D4D4D4",
+"0. c #DCDCDC",
+"q. c #CEE5E5",
+"w. c #D7E4E4",
+"e. c #DFE8E8",
+"r. c #E4E4E4",
+"t. c #E5E9E9",
+"y. c #EBEBEB",
+"u. c #ECF1F1",
+"i. c #F3F3F3",
+"p. c #FAFAFA",
+"a. c None",
+/* pixels */
+"a.a.a.a.a.} } | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | } } a.a.a.a.a.",
+"a.a.a.] 7.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.7.] a.a.a.",
+"a.a.| y.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.q.1.q.p.p.p.p.p.p.y.| a.a.",
+"a.] y.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.3.n 9 : @ : 9 n 2.p.p.p.p.y.] a.",
+"a.7.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.u.I 6 . . . . . . . > I u.p.p.p.7.a.",
+"} i.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.i.m # X X X X X X X X X # m i.p.p.i.} ",
+"} p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.p.~ < & & & & & & & & & & & < ! p.p.p.} ",
+"| i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.8.r = = = = = = = = = = = = = r 5.i.i.| ",
+"| i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.W 1 i i i i i i i i i i i i i 1 L i.i.| ",
+"| i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.B a a a a a a a a a a a a a a a m i.i.| ",
+"| i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.u.n d d d d d d d d d d d d d d d n y.i.| ",
+"| i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.e.M j j j j j j j j j j j j j j j M w.i.| ",
+"| i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.i.m l l l l l l l l l l l l l l l m i.i.| ",
+"| y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.K c v v v v v v v v v v v v v c Z y.y.| ",
+"| y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y._ G ` ` ` ` ` ` ` ` ` ` ` ` ` G ) y.y.| ",
+"| y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.t.C ' ] ] ] ] ] ] ] ] ] ] ] ' C t.y.y.| ",
+"| y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.4.V } } } } } } } } } } } D 3.y.y.y.| ",
+"} y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.O.Z { | | | | | | | { Z o.y.y.y.y.} ",
+"} y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.y.8.A E [ #.#.#.[ E Z 8.y.y.y.y.y.} ",
+"} t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.>.~ K C A ~ ;.r.t.t.t.t.t.t.} ",
+"} t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.t.} ",
+"} r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.} ",
+"} r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.} ",
+"} r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.} ",
+"} r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.} ",
+"} r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.r.} ",
+"} 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.} ",
+"} 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.} ",
+"} 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.} ",
+"} 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.} ",
+"} 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.} ",
+"} 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.} ",
+"} 0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.} ",
+"} 9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.} ",
+"} 9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.} ",
+"} 9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.} ",
+"} 9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.} ",
+"} 9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.} ",
+"} 9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.} ",
+"} 9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.9.} ",
+"} 7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.} ",
+"} 7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.} ",
+"} 7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.} ",
+"} 7.7.7.7.7.7.7.7.:. .+.<.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.} ",
+"} 7.7.7.7.7.,.M 9 : O - 5 0 J 6.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.} ",
+"} 7.7.7.7.^ 9   . . . . . . + 0 @.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.} ",
+"} 7.7.7.U ; X X X X X X X X X o 7 +.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.7.} ",
+"] 6.6.@.8 $ $ $ $ $ $ $ $ $ $ $ % t <.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.] ",
+"] 6.6.b * & & & & & & & & & & & & , J 6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.] ",
+"] 6.+.q = = = = = = = = = = = = = = t 6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.] ",
+"] 6.E 2 i i i i i i i i i i i i i i w &.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.] ",
+"] 6.V p a a a a a a a a a a a a a a 3 / 6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.] ",
+"] 6.n s s s s s s s s s s s s s s s 4 E 6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.] ",
+"] 6.P f d d d d d d d d d d d d d d u +.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.6.] ",
+"] -.( e j j j j j j j j j j j j j j y =.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.] ",
+"] -.%.n l l l l l l l l l l l l l k n -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.] ",
+"] -.-.U g x x x x x x x x x x x x M ..-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.] ",
+"] -.-.=.m z v v v v v v v v v v h P -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.] ",
+"` *.-.-.$.m G ` ` ` ` ` ` ` R S H =.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.*.` ",
+"a.#.-.-.-.=.U N G T ` ` Y F n / -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.#.a.",
+"a.` *.=.=.=.=.X.Q H m m J ^ %.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.=.*.` a.",
+"a.a.] *.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.] a.a.",
+"a.a.a.` | *.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.| ` a.a.a.",
+"a.a.a.a.a.` ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ` a.a.a.a.a."
+};
Index: /trunk/src/dice/theme3/1.xpm
===================================================================
--- /trunk/src/dice/theme3/1.xpm	(revision 134)
+++ /trunk/src/dice/theme3/1.xpm	(revision 134)
@@ -0,0 +1,123 @@
+/* XPM */
+static char *theme3_1_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 53 1",
+"  c gray8",
+". c #1A1A1A",
+"X c #232323",
+"o c #2C2C2C",
+"O c #343434",
+"+ c #3B3B3B",
+"@ c #434343",
+"# c #4C4C4C",
+"$ c #555554",
+"% c #585857",
+"& c #5B5B5B",
+"* c #60605F",
+"= c #646464",
+"- c #6C6C6C",
+"; c #747474",
+": c #7B7B7B",
+"> c #888786",
+", c #8A8987",
+"< c #8C8C8B",
+"1 c #949493",
+"2 c #999999",
+"3 c #A0A09F",
+"4 c #A3A3A1",
+"5 c #ACACAC",
+"6 c #B6B5B2",
+"7 c #BEBCB3",
+"8 c #C1BFB6",
+"9 c #C1C0B7",
+"0 c #C5C3BB",
+"q c #C8C6BE",
+"w c #C5C5C4",
+"e c #C9C7C0",
+"r c #CCCBC4",
+"t c #CCCBC8",
+"y c #D0CFC9",
+"u c #D4D2CC",
+"i c #D7D6D0",
+"p c #D8D7D2",
+"a c #DBDAD5",
+"s c #DEDDD9",
+"d c #E0DFDB",
+"f c #E2E1DD",
+"g c #E6E5E2",
+"h c #E8E7E4",
+"j c #E9E9E6",
+"k c #EDEDEA",
+"l c #F0EFED",
+"z c #F1F0EE",
+"x c #F4F4F3",
+"c c #F8F7F6",
+"v c #F8F8F7",
+"b c #FCFBFB",
+"n c None",
+/* pixels */
+"nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn",
+"nnnn......................................................nnnnnn",
+"nn...+=;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;&o..nnnnn",
+"nn.X2bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbvvvvvvvvvvvccccck;..nnnn",
+"n..5bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbvvvvvccccxxxxxxxxxxzzxcc-..nnn",
+"n.&bbbbbbbbbbbbbbbbbbbbbvvvvvccxxxxxxxxzzkkkkkjjjjhgggffjcko.nnn",
+"..5bbbbbbbbbbbbbbbbbbbbvvvvvccxxxxxxxxzzlkkkkkjjjhhggffffzx-.nnn",
+"..wbbbbbbbbbbbbbbbbbbbvvvvvcccxxxxxxxzzlkkkkkjjjhhgggffffkx,..nn",
+"..tbbbbbbbbbbbbbbbbbbvvvvvcccxxxxxxxzzlkkkkkjjjhhgggffffdjx<. nn",
+"..tbbbbbbbbbbbbbbbbbbvvvvcccxxxxxxxxzzkkkkkjjjjhhgggfffdsjx<. nn",
+"..tbbbbbbbbbbbbbbbbbvvvvvccxxxxxxxxzzlkkkkkjjjhhgggfffdssjx<. nn",
+"..tbbbbbbbbbbbbbbbbvvvvvcccxxxxxxxzzlkkkkkjjjhhgggffffsssjx<. nn",
+"..tbbbbbbbbbbbbbbbvvvvvcccxxxxxxxxzzkkkkkjjjjhhgggfffdsssjx<. nn",
+"..tbbbbbbbbbbbbbbvvvvvccccxxxxxxxzzkkkkkjjjjhhgggfffdsssahx<. nn",
+"..tbbbbbbbbbbbbbvvvvvccccxxxxxxxzzzkkkkkjjjhhgggffffsssaahx<. nn",
+"..tbbbbbbbbbbbbvvvvvccccxxxxxxxzzzlkkkkjjjhhggggfffssssaahx<. nn",
+"..tbbbbbbbbbbbvvvvvccccxxxxxxxzzzlkkkkkjjjhhgggfffdsssaaahx<. nn",
+"..tbbbbbbbbbbvvvvvccccxxxxxxxzzzlkkkkkjjjhhgggfffddssaaapgx<. nn",
+"..tbbbbbbbbbvvvvvccccxxxxxxxxzzlkkkkkjjjhhgggffffdssaaappgx<. nn",
+"..tbbbbbbbbvvvvvccccxxxxxxxxzzzkkkkkjjjjhhgggfffdsssaaapigx<. nn",
+"..tbbbbbbbvvvvvccccxxxxxxxxzzzkkkkkjjjjhhgggfffdsssaaapiigx<. nn",
+"..tbbbbbvvvvvvccccxxxxxxxxzzzkkkkkjjjjhhgggfffdsssaaappiufx<. nn",
+"..tbbbbvvvvvvccccxxxxxxxxzzkhfssfghjjhhgggfffddssaaappiuufx<. nn",
+"..tbbbvvvvvvccccxxxxxxxxzzgssssssssfhhgggffffdsssaaappiuufx<. nn",
+"..wbbvvvvvvccccxxxxxxxxzzffr,$oo$,rffhgggfffdsssaaappiuuufx<. nn",
+"..wbbvvvvcccccxxxxxxxxzzgf6%......%6ffggffffsssaaappiuuuufx<. nn",
+"..wbvvvvccccxxxxxxxxxzzkgt%........%tggffffssssaappiuuuuufx<. nn",
+"..wbvvvcccxxxxxxxxxxzzzkh<...XXXXX..<hgfffdsssaapppuuuuuufx<. nn",
+"..wbvvcccxxxxxxxxxxzzzljj$.XXoooooX.$jhffdsssaapppiuuuuuyfz<. nn",
+"..wbvcccxxxxxxxxxzzzzkkkkoXoO+++++Oookjfdsssaaappiuuuuuytdz<. nn",
+"..wbvcxxxxxxxxxxzzzzkkkkkoo+@@###@@Ookkdsssaaappiiuuuuyttdz<. nn",
+"..wbvxxxxxxxxxxzzzlkkkkzz%o@#$&&&$#O%zksssaaappiiuuuuyytrsz<. nn",
+"..wbcxxxxxxxxxzzzlkkkkklx1X#&=---=&o1xjssaaappiiuuuuyytrrsz<. nn",
+"..wbcxxxxxxxxzzzlkkkkkkkcs&+=;:::;@&scfsaaappiiuuuuuytrrrsz<. nn",
+"..wbcxxxxxxzzzzlkkkkkjjjxvw*+&::=+*wvzsaaappiiuuuuuytrrrrsz<. nn",
+"..wbxxxxxxzzzkkkkkkkjjjjjcbg2%oo%2gbxsaaapppiuuuuuytrrrreaz<. nn",
+"..wbxxxxzzzlkkkkkkkjjjjhhhxbbbbbbbbxsaaapppiuuuuuuttrrreeaz<. nn",
+"..wbxxxzzzlkkkkkkkjjjjhhhggjzcbbxkgsaaaappiuuuuuuttrrreeqaz<. nn",
+"..wbxxzzlkkkkkkkkjjjjhhggggffffdsssaaaappiuuuuuuttrrreeeqal<. nn",
+"..wbxzzlkkkkkkkjjjjjhhggggffffdsssaaaappiuuuuuuttrrrreeqqal<. nn",
+"..wvxzlkkkkkkjjjjjhhhggggffffdsssaaapppiuuuuuuttrrrreeqq0al<. nn",
+"..wvxkkkkkkkjjjjjhhhgggfffffdsssaaapppiuuuuuuytrrrreeeq00ak<. nn",
+"..wvxkkkkkkjjjjhhhggggfffffdsssaaapppiuuuuuuytrrrreeeq000pk<. nn",
+"..wvzkkkkjjjjjhhhggggfffffssssaaapppiuuuuuuytrrrreeeq0000pk<. nn",
+"..wvzkkkjjjjjhhgggggffffdssssaaappiiuuuuuuytrrrreeeq00009pk<. nn",
+"..wvzkkjjjjhhhggggffffddssssaaappiiuuuuuuytrrrreeeqq00099pk<. nn",
+"..wvljjjjjhhhggggffffddssssaaappiiuuuuuuttrrrreeeqq000999ik<. nn",
+"..wvkjjjhhhgggggffffdssssaaapppiiuuuuuuttrrrreeeqq0009998ik,. nn",
+"..wvkjjhhhggggfffffdssssaaapppiiuuuuuuttrrrreeeqq00099987ik,. nn",
+"..wvkjhhgggggffffddsssaaaapppiiuuuuuuttrrrreeeqq000999877ik,. nn",
+"..wvkhhggggfffffddsssaaaapppiuuuuuuyttrrrreeeqq0009998777uk,. nn",
+"..wcjgggggfffffsssssaaaappiuuuuuuuyttrrrreeeqq00099987777uk,. nn",
+"..wcjgggfffffdssssaaaapppiuuuuuuyytrrrrreeeq0000999877777uk,. nn",
+"..wcjgffffffdssssaaaapppiuuuuuuyytrrrreeeeq00009998777777uk,. nn",
+"..wcjfffffdsssssaaaappiiuuuuuuyytrrrreeeqq000099987777777uk>. nn",
+"..5cjffffdssssaaaappiiuuuuuuuyttrrrreeeqq0000999877777777ak;. nn",
+"n.;czfffdssssaaaappiiuuuuuuuyttrrrreeqqq00009998777777779kk+.nnn",
+"n..pczjgffffffddssssaaaapppiiiuuuuuuyyytrrrrreeeeeqqq00ukk3..nnn",
+"n..Owxxxxxxxxxxxxxxxxxxxxxxxzzzzzzzzzzlllkkkkkkkkkkkkkkkk4X. nnn",
+"nn...;5ttttttttttwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww2$.. nnnn",
+"nnn....................................................... nnnnn",
+"nnnnnn.................................................  nnnnnnn",
+"nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn",
+"nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn"
+};
Index: /trunk/src/dice/theme3/2.xpm
===================================================================
--- /trunk/src/dice/theme3/2.xpm	(revision 134)
+++ /trunk/src/dice/theme3/2.xpm	(revision 134)
@@ -0,0 +1,128 @@
+/* XPM */
+static char *theme3_2_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 58 1",
+"  c gray8",
+". c #1A1A1A",
+"X c #232323",
+"o c #282827",
+"O c #2C2C2C",
+"+ c #343434",
+"@ c #3B3B3B",
+"# c #434343",
+"$ c #4A4A47",
+"% c #4D4D4C",
+"& c #504F4D",
+"* c #51514E",
+"= c #555554",
+"- c #5B5B5B",
+"; c #636363",
+": c #6C6C6C",
+"> c #747473",
+", c #797974",
+"< c #7B7B7B",
+"1 c #80807C",
+"2 c #888786",
+"3 c #8C8C8B",
+"4 c #959595",
+"5 c #999999",
+"6 c #A1A09B",
+"7 c #A3A3A1",
+"8 c #ACACAC",
+"9 c #B1B0A8",
+"0 c #B6B6B5",
+"q c #B8B6B0",
+"w c #BEBCB3",
+"e c #C1BFB6",
+"r c #C1C0B7",
+"t c #C5C3BB",
+"y c #C8C6BE",
+"u c #C5C5C4",
+"i c #C9C7C0",
+"p c #CCCBC4",
+"a c #CCCBC8",
+"s c #D0CFC9",
+"d c #D4D2CC",
+"f c #D7D6D1",
+"g c #D8D7D2",
+"h c #DBDAD5",
+"j c #DEDDD9",
+"k c #E0DFDB",
+"l c #E2E1DD",
+"z c #E5E5E2",
+"x c #E8E7E4",
+"c c #EAE9E6",
+"v c #EDEDEB",
+"b c #F0EFED",
+"n c #F1F0EE",
+"m c #F4F4F3",
+"M c #F8F7F6",
+"N c #F8F8F7",
+"B c #FBFBFB",
+"V c None",
+/* pixels */
+"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV",
+"VVVV......................................................VVVVVV",
+"VV...@:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>-O..VVVVV",
+"VV.X5BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBNNNNNNNNNNNMMMMMv>..VVVV",
+"V..8BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBNNNNNMMMMmmmmmmmmmmnnmMM:..VVV",
+"V.-BBBBBBBBBBBBBBBBBBBBBNNNNNMMmmmmmmmmnnvvvvvccccxzzzllcMvO.VVV",
+"..8BBBBBBBBBBBBBBBBBBBBNNNNNMMmmmmmmmmnnbvvvvvcccxxzzllllnm:.VVV",
+"..uBBBBBBBBBBBBBBBBBBBNNNNNMMMmmmmmmmnnbvvvczllllzzzzllllvm2..VV",
+"..aBBBBBBBBBBBBBBBBBBNNNNNMMMmmmmmmmnnbvvvzlllllllllllllkcm3. VV",
+"..aBBBBBBBBBBBBBBBBBBNNNNMMMmmmmmmmmnnvvvzla3=OO=3allllkjcm3. VV",
+"..aBBBBBBBBBBBBBBBBBNNNNNMMmmmmmmmmnnbvvxz0-......-0zzkjjcm3. VV",
+"..aBBBBBBBBBBBBBBBBNNNNNMMMmmmmmmmnnbvvvza-........-azljjcm3. VV",
+"..aBBBBBBBBBBBBBBBNNNNNMMMmmmmmmmmnnvvvcc3..XXXXX...3cljjcm3. VV",
+"..aBBBBBBBBBBBBBBNNNNNMMMMmmmmmmmnnvvvvvc=.oOOOOOoX.=cxjhxm3. VV",
+"..aBBBBBBBBBBBBBNNNNNMMMMmmmmmmmnnnvvvvvvOO+@@@@@+OXOvvhhxm3. VV",
+"..aBBBBBBBBBBBBNNNNNMMMMmmmmmmmnnnbvvvvvvO+#$%%%$#@OOvvhhxm3. VV",
+"..aBBBBBBBBBBBNNNNNMMMMmmmmmmmnnnbvvvvvvm=+%=---=%#O=mvhhxm3. VV",
+"..aBBBBBBBBBBNNNNNMMMMmmmmmmmnnnbvvvvvcvm4O-;:::;-%o4mxhgzm3. VV",
+"..aBBBBBBBBBNNNNNMMMMmmmmmmmmnnbvvvvvccvMj-#><<<>;@-jMlggzm3. VV",
+"..aBBBBBBBBNNNNNMMMMmmmmmmmmnnnvvvvvccccmNu;@;<<-@;uNnhgfzm3. VV",
+"..aBBBBBBBNNNNNMMMMmmmmmmmmnnnvvvvvccccxxMBz5-OO-5zBmhgffzm3. VV",
+"..aBBBBBNNNNNNMMMMmmmmmmmmnnnvvvvvccccxxzzmBBBBBBBBmhggfdlm3. VV",
+"..aBBBBNNNNNNMMMMmmmmmmmmnnnbvvvvvcccxxzzzlcvmBBmvlhggfddlm3. VV",
+"..aBBBNNNNNNMMMMmmmmmmmmnnnbvvvvvcccxxzzzllllkjjjhhhggfddlm3. VV",
+"..uBBNNNNNNMMMMmmmmmmmmnnnbvvvvvccccxxzzzlllkjjjhhhggfdddlm3. VV",
+"..uBBNNNNMMMMMmmmmmmmmnnnbvvvvvccccxxzzzlllljjjjhhggfddddlm3. VV",
+"..uBNNNNMMMMmmmmmmmmmnnnbvvvvvccccxxzzzlllljjjjhhggfdddddlm3. VV",
+"..uBNNNMMMmmmmmmmmmmnnnbvvvvvccccxxzzzllllkjjjhhgggddddddlm3. VV",
+"..uBNNMMMmmmmmmmmmmnnnbvvvvvccccxxzzzllllkjjjhhhggfdddddsln3. VV",
+"..uBNMMMmmmmmmmmmnnnnvvvvvvccccxxzzzllllkjjjhhhggfdddddsakn3. VV",
+"..uBNMmmmmmmmmmmnnnnvvvvvvccccxxzzzllllkjjjhhhggffddddsaakn3. VV",
+"..uBNmmmmmmmmmmnnnbvvvvvvccccxxzzzllllkjjjjhhggffddddssapjn3. VV",
+"..uBMmmmmmmmmmnnnbvvvvvvccccxxzzzllllkjjjjhhhgffddddssappjn3. VV",
+"..uBMmmmmmmmmnnnbvvvvvvccccxxzzzllllkjjjjhhhgffdddddsapppjn3. VV",
+"..uBMmmmmmmnnnnbvvvvvcccccxxzzzllllljjjjhhhgffdddddsappppjn3. VV",
+"..uBmmmmmmnnnvvvvvvvcccccxxzzzllllljjjjhhhggfdddddsappppijn3. VV",
+"..uBmmmmnnnbvvvvvvvccccxxxzzzllllkjjjjhhhggfddddddaapppiihn3. VV",
+"..uBmmmnnnbvvvvvvvccccxxxzzzllllkjjjjhhhggfddddddaapppiiyhn3. VV",
+"..uBmmnnbvvvvvvvvccccxxzzzzllllkjjjjhhhggfddddddaapppiiiyhb3. VV",
+"..uBmnnbvvzfprrpdlccxxzzzzllllkjjjjhhhggfddddddaappppiiyyhb3. VV",
+"..uNmnbvvpeeeeeeeepxxzzzzllllkjjjjhhhggfddddddaappppiiyythb3. VV",
+"..uNmvvvpt9,$oo$,9tpzzzlllllkjjjjhhhggfddddddsappppiiiytthv3. VV",
+"..uNmvvdy6&......&6yszlllllkjjjjhhhggfddddddsappppiiiytttgv3. VV",
+"..uNnvzpq*........*qpjlllljjjjhhhhggfddddddsappppiiiyttttgv3. VV",
+"..uNnvjs1..XXXXX...1sgllkjjjjhhhhgffddddddsappppiiiyttttrgv3. VV",
+"..uNnvhd%.oOOOOOoX.%dgkkjjjjhhhggffddddddsappppiiiyytttrrgv3. VV",
+"..uNbchhoO+@@@@@+OXohhkjjjjhhhggffddddddaappppiiiyytttrrrfv3. VV",
+"..uNvckjO+#$%%%$#@OOjjjjjjhhhggffddddddaappppiiiyytttrrrefv3. VV",
+"..uNvczl=+%=---=%#O=lljjhhhgggffddddddaappppiiiyytttrrrewfv3. VV",
+"..uNvcxc3O-;:::;-%o3cljhhhgggffddddddaappppiiiyytttrrrewwfv3. VV",
+"..uNvxxvf-#><<<>;@-fvkhhhgggfddddddsaappppiiiyytttrrrewwwdv3. VV",
+"..uMczzvmu-@;<<-@-umvhhhggfdddddddsaappppiiiyytttrrrewwwwdv3. VV",
+"..uMczzzmMj4-OO-4jMnhhgggfddddddssapppppiiiyttttrrrewwwwwdv3. VV",
+"..uMczlllmNNNNNNNNnhhgggfddddddssappppiiiiyttttrrrewwwwwwdv3. VV",
+"..uMclllllzvmBBmvlhhggffddddddssappppiiiyyttttrrrewwwwwwqdv2. VV",
+"..8Mcllllkjjjjhhhhggffdddddddsaappppiiiyyttttrrrewwwwwwqqhv>. VV",
+"V.>Mnlllkjjjjhhhhggffdddddddsaappppiiyyyttttrrrewwwwwwqqrvv@.VVV",
+"V..gMnczllllllkkjjjjhhhhhggfffddddddsssapppppiiiiiyyyttdvv6..VVV",
+"V..+ummmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnnbbbvvvvvvvvvvvvvvvv7X. VVV",
+"VV...>8aaaaaaaaaauuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu5=.. VVVV",
+"VVV....................................................... VVVVV",
+"VVVVVV.................................................  VVVVVVV",
+"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV",
+"VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV"
+};
Index: /trunk/src/dice/theme3/3.xpm
===================================================================
--- /trunk/src/dice/theme3/3.xpm	(revision 134)
+++ /trunk/src/dice/theme3/3.xpm	(revision 134)
@@ -0,0 +1,131 @@
+/* XPM */
+static char *theme3_3_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 61 1",
+"  c gray8",
+". c #1A1A1A",
+"X c #232323",
+"o c #282827",
+"O c #2C2C2C",
+"+ c #343434",
+"@ c #3B3B3B",
+"# c #434343",
+"$ c #4A4A47",
+"% c #4D4D4C",
+"& c #504F4D",
+"* c #51514E",
+"= c #555554",
+"- c #585857",
+"; c #5B5B5B",
+": c #60605F",
+"> c #646464",
+", c #6C6C6C",
+"< c #747373",
+"1 c #797974",
+"2 c #7B7B7B",
+"3 c #80807C",
+"4 c #888786",
+"5 c #8A8987",
+"6 c #8C8C8B",
+"7 c #949494",
+"8 c #999999",
+"9 c #A1A09B",
+"0 c #A3A3A1",
+"q c #ACACAC",
+"w c #B1B0A8",
+"e c #B6B5B2",
+"r c #B8B6B0",
+"t c #BEBCB3",
+"y c #C1BFB6",
+"u c #C1C0B7",
+"i c #C5C3BB",
+"p c #C8C6BE",
+"a c #C5C5C4",
+"s c #C9C7C0",
+"d c #CCCBC4",
+"f c #CCCBC8",
+"g c #D0CFC9",
+"h c #D4D2CC",
+"j c #D7D6D1",
+"k c #D8D7D2",
+"l c #DBDAD5",
+"z c #DEDDD9",
+"x c #E0DFDB",
+"c c #E2E1DD",
+"v c #E5E5E2",
+"b c #E8E7E4",
+"n c #E9E9E6",
+"m c #EDEDEB",
+"M c #F0EFED",
+"N c #F1F0EE",
+"B c #F4F4F3",
+"V c #F8F7F6",
+"C c #F8F8F7",
+"Z c #FBFBFB",
+"A c None",
+/* pixels */
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAA......................................................AAAAAA",
+"AA...@><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<;O..AAAAA",
+"AA.X8ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZCCCCCCCCCCCVVVVVm<..AAAA",
+"A..qZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZCCCCCVVVVBBBBBBBBBBNNBVV,..AAA",
+"A.;ZZZZZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNmmmmmnnnnbvvvccnVmO.AAA",
+"..qZZZZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNMmmmmmnnnbbvvccccNB,.AAA",
+"..aZZZZZZZZZZZZZZZZZZZCCCCCVVVBBBBBBBNNMmmnvxzzzxcvvvccccmB5..AA",
+"..fZZZZZZZZZZZZZZZZZZCCCCCVVVBBBBBBBNNMmmczzzzzzzzzcccccxnB6. AA",
+"..fZZZZZZZZZZZZZZZZZZCCCCVVVBBBBBBBBNNmmccd5=OO=5dcccccxznB6. AA",
+"..fZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNMmvce-......-eccvxzznB6. AA",
+"..fZZZZZZZZZZZZZZZZCCCCCVVVBBBBBBBNNMmmvf-........-fvvczznB6. AA",
+"..fZZZZZZZZZZZZZZZCCCCCVVVBBBBBBBBNNmmnb6...XXXXX..6bbczznB6. AA",
+"..fZZZZZZZZZZZZZZCCCCCVVVVBBBBBBBNNmmmnn=..oOOOOOoX=nnbzlbB6. AA",
+"..fZZZZZZZZZZZZZCCCCCVVVVBBBBBBBNNNmmmmmO.O+@@@@@+O+mmmllbB6. AA",
+"..fZZZZZZZZZZZZCCCCCVVVVBBBBBBBNNNMmmmmmO.+#$%%%$#@@mmmllbB6. AA",
+"..fZZZZZZZZZZZCCCCCVVVVBBBBBBBNNNMmmmmMN-.+%=;;;=%#>NNmllbB6. AA",
+"..fZZZZZZZZZZCCCCCVVVVBBBBBBBNNNMmmmmmmB7.O;>,,,>;%8BBblkvB6. AA",
+"..fZZZZZZZZZCCCCCVVVVBBBBBBBBNNMmmmmmnmVz;.#<222<><zVVckkvB6. AA",
+"..fZZZZZZZZCCCCCVVVVBBBBBBBBNNNmmmmmnnnBCa;.@>22;<aCCNlkjvB6. AA",
+"..fZZZZZZZCCCCCVVVVBBBBBBBBNNNmmmmmnnnnbVZv8-OO-8vZZBlkjjvB6. AA",
+"..fZZZZZCCCCCCVVVVBBBBBBBBNNNmmmmmnnnnbbvBZZZZZZZZZBlkkjhcB6. AA",
+"..fZZZZCCCCCCVVVVBBBBBBBBNNNMmmmmmnnnbbvvvnBZZZZCNclkkjhhcB6. AA",
+"..fZZZCCCCCCVVVVBBBBBBBBNNmbczzcvbnnbbvvvccccxzzzlllkkjhhcB6. AA",
+"..aZZCCCCCCVVVVBBBBBBBBNNvzzzzzzzzcnbbvvvcccxzzzlllkkjhhhcB6. AA",
+"..aZZCCCCVVVVVBBBBBBBBNNccd5=OO=5dccbvvvcccczzzzllkkjhhhhcB6. AA",
+"..aZCCCCVVVVBBBBBBBBBNNvce-......-eccvvcccczzzzllkkjhhhhhcB6. AA",
+"..aZCCCVVVBBBBBBBBBBNNmvf-........-fvvccccxzzzllkkkhhhhhhcB6. AA",
+"..aZCCVVVBBBBBBBBBBNNNmb6...XXXXX..6bvcccxzzzlllkkjhhhhhgcN6. AA",
+"..aZCVVVBBBBBBBBBNNNNmnn=.XoOOOOOo.=nbccxzzzlllkkjhhhhhgfxN6. AA",
+"..aZCVBBBBBBBBBBNNNNmmmmOXO+@@@@@+OOmncxzzzlllkkjjhhhhgffxN6. AA",
+"..aZCBBBBBBBBBBNNNMmmmmmOO@#$%%%$#+OmmxzzzzllkkjjhhhhggfdzN6. AA",
+"..aZVBBBBBBBBBNNNMmmmmNN-O#%=;;;=%+-NmzzzzlllkjjhhhhggfddzN6. AA",
+"..aZVBBBBBBBBNNNMmmmmmMB7o%;>,,,>;O7BnzzzlllkjjhhhhhgfdddzN6. AA",
+"..aZVBBBBBBNNNNMmmmmmnmVz;@><222<#;zVczzlllkjjhhhhhgfddddzN6. AA",
+"..aZBBBBBBNNNmmmmmmmnnnBCa:@;22>@:aCNzzlllkkjhhhhhgfddddszN6. AA",
+"..aZBBBBNNNMmmmmmmmnnnnbVZv8-OO-8vZBzzlllkkjhhhhhhffdddsslN6. AA",
+"..aZBBBNNNMmmmmmmmnnnnbbbBZZZZZZZZBzzlllkkjhhhhhhffdddssplN6. AA",
+"..aZBBNNMmmmmmmmmnnnnbbvvvnNVZZBmvzzlllkkjhhhhhhffdddsssplM6. AA",
+"..aZBNNMmmvjduudhcnnbbvvvvccccxzzzzlllkkjhhhhhhffddddsspplM6. AA",
+"..aCBNMmmdyyyyyyyydbbvvvvccccxzzzzlllkkjhhhhhhffddddssppilM6. AA",
+"..aCBmmmdiw1$oo$1widvvvcccccxzzzzlllkkjhhhhhhgfddddssspiilm6. AA",
+"..aCBmmhp9&......&9pgvcccccxzzzzlllkkjhhhhhhgfddddssspiiikm6. AA",
+"..aCNmvdr*........*rdzcccczzzzllllkkjhhhhhhgfddddssspiiiikm6. AA",
+"..aCNmzg3..XXXXX...3gkccxzzzzllllkjjhhhhhhgfddddssspiiiiukm5. AA",
+"..aCNmlh%.oOOOOOoX.%hkxxzzzzlllkkjjhhhhhhgfddddsssppiiiuukm5. AA",
+"..aCMnlloO+@@@@@+OXollxzzzzlllkkjjhhhhhhffddddsssppiiiuuujm5. AA",
+"..aCmnxzO+#$%%%$#@OOzzzzzzlllkkjjhhhhhhffddddsssppiiiuuuyjm5. AA",
+"..aCmnvc=+%=;;;=%#O=cczzlllkkkjjhhhhhhffddddsssppiiiuuuytjm5. AA",
+"..aCmnbn6O;>,,,>;%o6nczlllkkkjjhhhhhhffddddsssppiiiuuuyttjm5. AA",
+"..aCmbbmj;#<222<>@;jmxlllkkkjhhhhhhgffddddsssppiiiuuuyttthm5. AA",
+"..aVnvvmBa;@>22;@;aBmlllkkjhhhhhhhgffddddsssppiiiuuuytttthm5. AA",
+"..aVnvvvBVz7-OO-7zVNllkkkjhhhhhhggfdddddssspiiiiuuuyttttthm5. AA",
+"..aVnvcccBCCCCCCCCNllkkkjhhhhhhggfddddsssspiiiiuuuytttttthm5. AA",
+"..aVncccccvmBZZBmcllkkjjhhhhhhggfddddsssppiiiiuuuyttttttrhm4. AA",
+"..qVnccccxzzzzllllkkjjhhhhhhhgffddddsssppiiiiuuuyttttttrrlm<. AA",
+"A.<VNcccxzzzzllllkkjjhhhhhhhgffddddsspppiiiiuuuyttttttrrumm@.AAA",
+"A..kVNnvccccccxxzzzzlllllkkjjjhhhhhhgggfdddddssssspppiihmm9..AAA",
+"A..+aBBBBBBBBBBBBBBBBBBBBBBBNNNNNNNNNNMMMmmmmmmmmmmmmmmmm0X. AAA",
+"AA...<qffffffffffaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa8=.. AAAA",
+"AAA....................................................... AAAAA",
+"AAAAAA.................................................  AAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+};
Index: /trunk/src/dice/theme3/4.xpm
===================================================================
--- /trunk/src/dice/theme3/4.xpm	(revision 134)
+++ /trunk/src/dice/theme3/4.xpm	(revision 134)
@@ -0,0 +1,131 @@
+/* XPM */
+static char *theme3_4_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 61 1",
+"  c gray8",
+". c #1A1A1A",
+"X c #232323",
+"o c #282827",
+"O c #2C2C2C",
+"+ c #343434",
+"@ c #3A3A3A",
+"# c #434343",
+"$ c #4A4A47",
+"% c #4D4D4C",
+"& c #504F4D",
+"* c #51514E",
+"= c #555554",
+"- c #585857",
+"; c #5B5B5B",
+": c #60605F",
+"> c #646464",
+", c #6C6C6C",
+"< c #737373",
+"1 c #797974",
+"2 c #7B7B7B",
+"3 c #80807C",
+"4 c #888786",
+"5 c #8A8987",
+"6 c #8C8C8B",
+"7 c #949494",
+"8 c #999998",
+"9 c #A1A09B",
+"0 c #A3A3A1",
+"q c #ACACAC",
+"w c #B1B0A8",
+"e c #B6B5B3",
+"r c #B8B6B0",
+"t c #BDBBB3",
+"y c #C1BFB6",
+"u c #C1C0B7",
+"i c #C5C4BC",
+"p c #C8C6BF",
+"a c #C5C5C4",
+"s c #C9C7C1",
+"d c #CCCAC4",
+"f c #CBCBC8",
+"g c #D0CFC9",
+"h c #D4D2CD",
+"j c #D7D6D1",
+"k c #D8D7D2",
+"l c #DBDAD5",
+"z c #DEDDD9",
+"x c #E0DFDB",
+"c c #E2E1DD",
+"v c #E5E5E2",
+"b c #E8E7E4",
+"n c #EAE9E6",
+"m c #EDEDEB",
+"M c #F0EFED",
+"N c #F1F0EE",
+"B c #F4F4F3",
+"V c #F8F7F6",
+"C c #F8F8F7",
+"Z c #FCFCFB",
+"A c None",
+/* pixels */
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAA......................................................AAAAAA",
+"AA...@><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<;O..AAAAA",
+"AA.X8ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZCCCCCCCCCCCVVVVVm<..AAAA",
+"A..qZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZCCCCCVVVVBBBBBBBBBBNNBVV,..AAA",
+"A.;ZZZZZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNmmmmmnnnnbvvvccnVmO.AAA",
+"..qZZZZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNMmmmmmnnnbbvvccccNB,.AAA",
+"..aZZZZZZZVmbccbmBZZZZCCCCCVVVBBBBBBBNNMmmmnvczzccvvvccccmB5..AA",
+"..fZZZZZZnccccccccnZZCCCCCVVVBBBBBBBNNMmmmczzzzzzzzcccccxnB6. AA",
+"..fZZZZZbcf5=OO=5fcbZCCCCVVVBBBBBBBBNNmmmccd5=OO=5dccccxznB6. AA",
+"..fZZZZmve-......-evnCCCCVVBBBBBBBBNNMmmvce-......-eccxzznB6. AA",
+"..fZZZCvf-........-fvBCCVVVBBBBBBBNNMmmmvf-........-fvczznB6. AA",
+"..fZZZBn6...XXXXX..6nNCVVVBBBBBBBBNNmmmnb6...XXXXX..6bczznB6. AA",
+"..fZZZmn=.XoOOOOOo.=nmVVVVBBBBBBBNNmmmmnn=.XoOOOOOo.=nvzlbB6. AA",
+"..fZZZmmOXO+@@@@@+OOmmVVVBBBBBBBNNNmmmmmmOXO+@@@@@+OOmnllbB6. AA",
+"..fZZZNmOO@#$%%%$#+OmNVVBBBBBBBNNNMmmmmmmOO@#$%%%$#+OmmllbB6. AA",
+"..fZZZBB-O#%=;;;=%+-BBVBBBBBBBNNNMmmmmmmN-O#%=;;;=%+-NnllbB6. AA",
+"..fZZZCB7o%;>,,,>;O7BBBBBBBBBNNNMmmmmmnmB7o%;>,,,>;O7BblkvB6. AA",
+"..fZZZZVz;@><222<#;zVBBBBBBBBNNMmmmmmnnmVz;@><222<#;zVckkvB6. AA",
+"..fZZZZZCa>@;22>@>aCCBBBBBBBNNNmmmmmnnnnBCa:@;22>@:aCmlkjvB6. AA",
+"..fZZZZZZZv8;OO;8vZZBBBBBBBNNNmmmmmnnnnbbVZv8-OO-8vZBlkjjvB6. AA",
+"..fZZZZZCZZZZZZZZZZBBBBBBBNNNmmmmmnnnnbbvvBZZZZZZZZBlkkjhcB6. AA",
+"..fZZZZCCCCZZZZZZVBBBBBBBNNNMmmmmmnnnbbvvvcnmVZZBmclkkjhhcB6. AA",
+"..fZZZCCCCCCVVVVBBBBBBBBNNNMmmmmmnnnbbvvvccccxzzzlllkkjhhcB6. AA",
+"..aZZCCCCCCVVVVBBBBBBBBNNNMmmmmmnnnnbbvvvcccxzzzlllkkjhhhcB6. AA",
+"..aZZCCCCVVVVVBBBBBBBBNNNMmmmmmnnnnbbvvvcccczzzzllkkjhhhhcB6. AA",
+"..aZCCCCVVVVBBBBBBBBBNNNMmmmmmnnnnbbvvvcccczzzzllkkjhhhhhcB6. AA",
+"..aZCCCVVVBBBBBBBBBBNNNMmmmmmnnnnbbvvvccccxzzzllkkkhhhhhhcB6. AA",
+"..aZCCVVVBBBBBBBBBBNNNMmmmmmnnnnbbvvvccccxzzzlllkkjhhhhhgcN6. AA",
+"..aZCVVVBBBBBBBBBNNNNmmmmmmnnnnbbvvvccccxzzzlllkkjhhhhhgfxN6. AA",
+"..aZCVBBBBBBBBBBNNNNmmmmmmnnnnbbvvvccccxzzzlllkkjjhhhhgffxN6. AA",
+"..aZCBBBBBBBBBBNNNMmmmmmmnnnnbbvvvccccxzzzzllkkjjhhhhggfdzN6. AA",
+"..aZVBBBBBBBBBNNNMmmmmmmnnnnbbvvvccccxzzzzlllkjjhhhhggfddzN6. AA",
+"..aZVBBBBBBBBNNNMmmmmmmnnnnbbvvvccccxzzzzlllkjjhhhhhgfdddzN6. AA",
+"..aZVBBBBBBNNNNMmmmmmnnnnnbbvvvccccczzzzlllkjjhhhhhgfddddzN6. AA",
+"..aZVBBBBBNNNmmmmmmmnnnnnbbvvvccccczzzzlllkkjhhhhhgfddddszN6. AA",
+"..aZBBBBNNNMmmmmmmmnnnnbbbvvvccccxzzzzlllkkjhhhhhhffdddsslN6. AA",
+"..aZBBBNNNMmmmmmmmnnnnbbbvvvccccxzzzzlllkkjhhhhhhffdddssplN6. AA",
+"..aZBBNNMmmmmmmmmnnnnbbvvvvccccxzzzzlllkkjhhhhhhffdddsssplM6. AA",
+"..aZBNNMmmnvczzcvbnnbbvvvvccccxzzzzlllkkjhhgsiyyupsddsspplM6. AA",
+"..aCBNMmmczzzzzzzzcbbvvvvccccxzzzzlllkkjhhpyyyyyyyyissppilM6. AA",
+"..aCBmmmcxd5=OO=5dxcvvvcccccxzzzzlllkkjhhpiw1$oo$1wiispiilm6. AA",
+"..aCBmmvce-......-eccvcccccxzzzzlllkkjhhdp9&......&9ppiiikm6. AA",
+"..aCNmnvf-........-fvccccczzzzllllkkjhhhdr*........*rdiiukm6. AA",
+"..aCNmnv6...XXXXX..6vvccxzzzzllllkjjhhhhg3...XXXXX..3gsiukm6. AA",
+"..aCNmnn=.XoOOOOOo.=nbxxzzzzlllkkjjhhhhhh%.XoOOOOOo.%hguukm6. AA",
+"..aCMnnnOXO+@@@@@+OOnnxzzzzlllkkjjhhhhhkloXO+@@@@@+Oolkuujm6. AA",
+"..aCmnmmOO@#$%%%$#+OmmzzzzlllkkjjhhhhhhzzOO@#$%%%$#+Ozluyjm5. AA",
+"..aCmnmN-O#%=;;;=%+-Nmzzlllkkkjjhhhhhhfzc=O#%=;;;=%+=clytjm5. AA",
+"..aCmnmB7o%;>,,,>;O7Bbzlllkkkjjhhhhhhffln6o%;>,,,>;O6nhttjm5. AA",
+"..aCmbnBz;@><222<#;zBclllkkkjhhhhhhgffdhmj;@><222<#;jmstthm5. AA",
+"..aVnvvBCa:@;22>@:aCMlllkkjhhhhhhhgffdddvBa;@;22>@;aBcttthm5. AA",
+"..aVnvvvVZv8-OO-8vZBllkkkjhhhhhhggfdddddsmVz7-OO-7zVmtttthm5. AA",
+"..aVnvcccBZZZZZZZZBllkkkjhhhhhhggfddddssssnCCCCCCCCbttttthm5. AA",
+"..aVncccccvmBZZBmcllkkjjhhhhhhggfddddsssppihxmCCmzdtttttrhm4. AA",
+"..qVnccccxzzzzllllkkjjhhhhhhhgffddddsssppiiiiuuuyttttttrrlm<. AA",
+"A.<VNcccxzzzzllllkkjjhhhhhhhgffddddsspppiiiuuuuyttttttrrumm@.AAA",
+"A..kVNnvccccccxxzzzzlllllkkjjjhhhhhhgggfdddddssssspppiihmm9..AAA",
+"A..+aBBBBBBBBBBBBBBBBBBBBBBBNNNNNNNNNNMMMmmmmmmmmmmmmmmmm0X. AAA",
+"AA...<qffffffffffaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa8=.. AAAA",
+"AAA....................................................... AAAAA",
+"AAAAAA.................................................  AAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+};
Index: /trunk/src/dice/theme3/5.xpm
===================================================================
--- /trunk/src/dice/theme3/5.xpm	(revision 134)
+++ /trunk/src/dice/theme3/5.xpm	(revision 134)
@@ -0,0 +1,131 @@
+/* XPM */
+static char *theme3_5_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 61 1",
+"  c gray8",
+". c #1A1A1A",
+"X c #232323",
+"o c #282827",
+"O c #2C2C2C",
+"+ c #343434",
+"@ c #3A3A3A",
+"# c #434343",
+"$ c #4A4A47",
+"% c #4D4D4C",
+"& c #504F4D",
+"* c #51514E",
+"= c #555554",
+"- c #585857",
+"; c #5B5B5B",
+": c #60605F",
+"> c #646464",
+", c #6D6D6D",
+"< c #737373",
+"1 c #797974",
+"2 c #7B7B7B",
+"3 c #80807C",
+"4 c #888786",
+"5 c #8A8987",
+"6 c #8C8C8B",
+"7 c #949494",
+"8 c #999898",
+"9 c #A1A09B",
+"0 c #A3A3A1",
+"q c #ACACAC",
+"w c #B1B0A8",
+"e c #B6B5B3",
+"r c #B8B6B0",
+"t c #BDBBB3",
+"y c #C1BFB6",
+"u c #C1C0B7",
+"i c #C5C4BC",
+"p c #C8C6BF",
+"a c #C5C5C4",
+"s c #C9C7C1",
+"d c #CCCAC4",
+"f c #CCCBC8",
+"g c #D0CFC9",
+"h c #D4D2CD",
+"j c #D7D6D1",
+"k c #D8D7D2",
+"l c #DBDAD5",
+"z c #DEDDD9",
+"x c #E0DFDB",
+"c c #E2E1DD",
+"v c #E5E5E2",
+"b c #E8E7E4",
+"n c #E9E9E6",
+"m c #EDEDEB",
+"M c #F0EFED",
+"N c #F1F0EE",
+"B c #F4F4F3",
+"V c #F8F7F6",
+"C c #F8F8F7",
+"Z c #FCFCFB",
+"A c None",
+/* pixels */
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAA......................................................AAAAAA",
+"AA...@><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<;O..AAAAA",
+"AA.X8ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZCCCCCCCCCCCVVVVVm<..AAAA",
+"A..qZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZCCCCCVVVVBBBBBBBBBBNNBVV,..AAA",
+"A.;ZZZZZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNmmmmmnnnnbvvvccnVmO.AAA",
+"..qZZZZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNMmmmmmnnnbbvvccccNB,.AAA",
+"..aZZZZZZZVmbccbmBZZZZCCCCCVVVBBBBBBBNNMmmmnvczzccvvvccccmB5..AA",
+"..fZZZZZZnccccccccnZZCCCCCVVVBBBBBBBNNMmmmczzzzzzzzcccccxnB6. AA",
+"..fZZZZZbcf5=OO=5fcbZCCCCVVVBBBBBBBBNNmmmccd5=OO=5dccccxznB6. AA",
+"..fZZZZmve-......-evnCCCCVVBBBBBBBBNNMmmvce-......-eccxzznB6. AA",
+"..fZZZCvf-........-fvBCCVVVBBBBBBBNNMmmmvf-........-fvczznB6. AA",
+"..fZZZBn6...XXXXX..6nNCVVVBBBBBBBBNNmmmnb6...XXXXX..6bczznB6. AA",
+"..fZZZmn=.XoOOOOOo.=nmVVVVBBBBBBBNNmmmmnn=.XoOOOOOo.=nvzlbB6. AA",
+"..fZZZmmOXO+@@@@@+OOmmVVVBBBBBBBNNNmmmmmmOXO+@@@@@+OOmnllbB6. AA",
+"..fZZZNmOO@#$%%%$#+OmNVVBBBBBBBNNNMmmmmmmOO@#$%%%$#+OmmllbB6. AA",
+"..fZZZBB-O#%=;;;=%+-BBVBBBBBBBNNNMmmmmmmN-O#%=;;;=%+-NnllbB6. AA",
+"..fZZZCB7o%;>,,,>;O7BBBBBBBBBNNNMmmmmmnmB7o%;>,,,>;O7BblkvB6. AA",
+"..fZZZZVz;@><222<#;zVBBBBBBBBNNMmmmmmnnmVz;@><222<#;zVckkvB6. AA",
+"..fZZZZZCa>@;22>@>aCCBBBBBBBNNNmmmmmnnnnBCa:@;22>@:aCmlkjvB6. AA",
+"..fZZZZZZZv8;OO;8vZZBBBBBBBNNNmmmmmnnnnbbVZv8-OO-8vZBlkjjvB6. AA",
+"..fZZZZZCZZZZZZZZZZBBBBBBBNNNmmmmmnnnnbbvvBZZZZZZZZBlkkjhcB6. AA",
+"..fZZZZCCCCZZZZZZVBBBBBBBNNNMmmmmmnnnbbvvvcnmVZZBmclkkjhhcB6. AA",
+"..fZZZCCCCCCVVVVBBBBBBBBNNNmbczzcvbnbbvvvccccxzzzlllkkjhhcB6. AA",
+"..aZZCCCCCCVVVVBBBBBBBBNNNvzzzzzzzzcbbvvvcccxzzzlllkkjhhhcB6. AA",
+"..aZZCCCCVVVVVBBBBBBBBNNNccd5=OO=5dccvvvcccczzzzllkkjhhhhcB6. AA",
+"..aZCCCCVVVVBBBBBBBBBNNNvce-......-eccvcccczzzzllkkjhhhhhcB6. AA",
+"..aZCCCVVVBBBBBBBBBBNNNmvf-........-fvccccxzzzllkkkhhhhhhcB6. AA",
+"..aZCCVVVBBBBBBBBBBNNNMnb6...XXXXX..6bvccxzzzlllkkjhhhhhgcN6. AA",
+"..aZCVVVBBBBBBBBBNNNNmmnn=.XoOOOOOo.=nbcxzzzlllkkjhhhhhgfxN6. AA",
+"..aZCVBBBBBBBBBBNNNNmmmmmOXO+@@@@@+OOmnxzzzlllkkjjhhhhgffxN6. AA",
+"..aZCBBBBBBBBBBNNNMmmmmmmOO@#$%%%$#+OmmzzzzllkkjjhhhhggfdzN6. AA",
+"..aZVBBBBBBBBBNNNMmmmmmMN-O#%=;;;=%+-NmzzzlllkjjhhhhggfddzN6. AA",
+"..aZVBBBBBBBBNNNMmmmmmmmB7o%;>,,,>;O7BnzzlllkjjhhhhhgfdddzN6. AA",
+"..aZVBBBBBBNNNNMmmmmmnnmVz;@><222<#;zVczlllkjjhhhhhgfddddzN6. AA",
+"..aZVBBBBBNNNmmmmmmmnnnnBCa:@;22>@:aCNzlllkkjhhhhhgfddddszN6. AA",
+"..aZBBBBNNNMmmmmmmmnnnnbbVZv8-OO-8vZBzlllkkjhhhhhhffdddsslN6. AA",
+"..aZBBBNNNMmmmmmmmnnnnbbbvBZZZZZZZZBzlllkkjhhhhhhffdddssplN6. AA",
+"..aZBBNNMmmmmmmmmnnnnbbvvvvnNVZZBmvzlllkkjhhhhhhffdddsssplM6. AA",
+"..aZBNNMmmnvczzcvbnnbbvvvvccccxzzzzlllkkjhhgsiyyupsddsspplM6. AA",
+"..aCBNMmmczzzzzzzzcbbvvvvccccxzzzzlllkkjhhpyyyyyyyyissppilM6. AA",
+"..aCBmmmcxd5=OO=5dxcvvvcccccxzzzzlllkkjhhpiw1$oo$1wiispiilm6. AA",
+"..aCBmmvce-......-eccvcccccxzzzzlllkkjhhdp9&......&9ppiiikm6. AA",
+"..aCNmnvf-........-fvccccczzzzllllkkjhhhdr*........*rdiiukm6. AA",
+"..aCNmnv6...XXXXX..6vvccxzzzzllllkjjhhhhg3...XXXXX..3gsiukm6. AA",
+"..aCNmnn=.XoOOOOOo.=nbxxzzzzlllkkjjhhhhhh%.XoOOOOOo.%hguukm6. AA",
+"..aCMnnnOXO+@@@@@+OOnnxzzzzlllkkjjhhhhhkloXO+@@@@@+Oolkuujm6. AA",
+"..aCmnmmOO@#$%%%$#+OmmzzzzlllkkjjhhhhhhzzOO@#$%%%$#+Ozluyjm5. AA",
+"..aCmnmN-O#%=;;;=%+-Nmzzlllkkkjjhhhhhhfzc=O#%=;;;=%+=clytjm5. AA",
+"..aCmnmB7o%;>,,,>;O7Bbzlllkkkjjhhhhhhffln6o%;>,,,>;O6nhttjm5. AA",
+"..aCmbnBz;@><222<#;zBclllkkkjhhhhhhgffdhmj;@><222<#;jmstthm5. AA",
+"..aVnvvBCa:@;22>@:aCMlllkkjhhhhhhhgffdddvBa;@;22>@;aBcttthm5. AA",
+"..aVnvvvVZv8-OO-8vZBllkkkjhhhhhhggfdddddsmVz7-OO-7zVmtttthm5. AA",
+"..aVnvcccBZZZZZZZZBllkkkjhhhhhhggfddddssssnCCCCCCCCbttttthm5. AA",
+"..aVncccccvmBZZBmcllkkjjhhhhhhggfddddsssppihxmCCmzdtttttrhm4. AA",
+"..qVnccccxzzzzllllkkjjhhhhhhhgffddddsssppiiiiuuuyttttttrrlm<. AA",
+"A.<VNcccxzzzzllllkkjjhhhhhhhgffddddsspppiiiuuuuyttttttrrumm@.AAA",
+"A..kVNnvccccccxxzzzzlllllkkjjjhhhhhhgggfdddddssssspppiihmm9..AAA",
+"A..+aBBBBBBBBBBBBBBBBBBBBBBBNNNNNNNNNNMMMmmmmmmmmmmmmmmmm0X. AAA",
+"AA...<qffffffffffaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa8=.. AAAA",
+"AAA....................................................... AAAAA",
+"AAAAAA.................................................  AAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+};
Index: /trunk/src/dice/theme3/6.xpm
===================================================================
--- /trunk/src/dice/theme3/6.xpm	(revision 134)
+++ /trunk/src/dice/theme3/6.xpm	(revision 134)
@@ -0,0 +1,131 @@
+/* XPM */
+static char *theme3_6_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 61 1",
+"  c gray8",
+". c #1A1A1A",
+"X c #232323",
+"o c #282827",
+"O c #2C2C2C",
+"+ c #343434",
+"@ c #3A3A3A",
+"# c #434343",
+"$ c #4A4A47",
+"% c #4C4C4C",
+"& c #504F4D",
+"* c #51514E",
+"= c #555554",
+"- c #585857",
+"; c #5B5B5B",
+": c #60605F",
+"> c #646464",
+", c #6D6D6D",
+"< c #737373",
+"1 c #797974",
+"2 c #7B7B7B",
+"3 c #80807C",
+"4 c #888786",
+"5 c #8A8987",
+"6 c #8C8C8B",
+"7 c #949493",
+"8 c #989898",
+"9 c #A1A09B",
+"0 c #A3A3A1",
+"q c #ACACAC",
+"w c #B1B0A8",
+"e c #B6B5B2",
+"r c #B8B6B0",
+"t c #BDBBB3",
+"y c #C1BFB6",
+"u c #C1C0B7",
+"i c #C5C4BC",
+"p c #C8C6BF",
+"a c #C5C5C4",
+"s c #C9C7C1",
+"d c #CBCAC4",
+"f c #CBCBC9",
+"g c #D0CFC8",
+"h c #D4D3CD",
+"j c #D7D6D1",
+"k c #D8D7D2",
+"l c #DBDAD5",
+"z c #DEDDD9",
+"x c #E0DFDB",
+"c c #E2E1DD",
+"v c #E5E5E2",
+"b c #E8E7E4",
+"n c #E9E9E6",
+"m c #EDEDEB",
+"M c #F0EFED",
+"N c #F1F0EE",
+"B c #F4F4F3",
+"V c #F8F7F6",
+"C c #F8F8F7",
+"Z c #FCFCFB",
+"A c None",
+/* pixels */
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAA......................................................AAAAAA",
+"AA...@>1<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<;O..AAAAA",
+"AA.X8ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZCCCCCCCCCCCVVVVVm<..AAAA",
+"A..qZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZCCCCCVVVVBBBBBBBBBBNNBVV,..AAA",
+"A.;ZZZZZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNmmmmmnnnnbvvvccnVmO.AAA",
+"..qZZZZZZZZZZZZZZZZZZZZCCCCCVVBBBBBBBBNNMmmmmmnnnbbvvccccNB,.AAA",
+"..aZZZZZZZVmbccbmBZZZZCCCCCVVVBBBBBBBNNMmmmnvczzccvvvccccmB5. AA",
+"..fZZZZZZnccccccccnZZCCCCCVVVBBBBBBBNNMmmmczzzzzzzzcccccxnB6. AA",
+"..fZZZZZbcf5=OO=5fcbZCCCCVVVBBBBBBBBNNmmmccd5=OO=5dccccxznB6. AA",
+"..fZZZZmve-......-evnCCCCVVBBBBBBBBNNMmmvce-......-eccxzznB6. AA",
+"..fZZZCvf-........-fvBCCVVVBBBBBBBNNMmmmvf-........-fvczznB6. AA",
+"..fZZZBn6...XXXXX..6nNCVVVBBBBBBBBNNmmmnb6...XXXXX..6bczznB6. AA",
+"..fZZZmn=.XoOOOOOo.=nmVVVVBBBBBBBNNmmmmnn=.XoOOOOOo.=nvzlbB6. AA",
+"..fZZZmmOXO+@@@@@+OOmmVVVBBBBBBBNNNmmmmmmOXO+@@@@@+OOmnllbB6. AA",
+"..fZZZNmOO@#$%%%$#+OmNVVBBBBBBBNNNMmmmmmmOO@#$%%%$#+OmmllbB6. AA",
+"..fZZZBB-O#%=;;;=%+-BBVBBBBBBBNNNMmmmmmmN-O#%=;;;=%+-NnllbB6. AA",
+"..fZZZCB7o%;>,,,>;O7BBBBBBBBBNNNMmmmmmnmB7o%;>,,,>;O7BblkvB6. AA",
+"..fZZZZVz;@><222<#;zVBBBBBBBBNNMmmmmmnnmVz;@><222<#;zVckkvB6. AA",
+"..fZZZZZCa>@;22>@>aCCBBBBBBBNNNmmmmmnnnnBCa:@;22>@:aCmlkjvB6. AA",
+"..fZZZZZZZv8;OO;8vZZBBBBBBBNNNmmmmmnnnnbbVZv8-OO-8vZBlkjjvB6. AA",
+"..fZZZZZCZZZZZZZZZZBBBBBBBNNNmmmmmnnnnbbvvBZZZZZZZZBlkkjhcB6. AA",
+"..fZZZZCCCCZZZZZZVBBBBBBBNNNMmmmmmnnnbbvvvcnmVZZBmclkkjhhcB6. AA",
+"..fZZZCCCCBmvxxvnNBBBBBBNNNMmmmmmnnnbbvvvcccxzzzzzllkkjhhcB6. AA",
+"..aZZCCCCvzzzzzzzzvBBBBNNNMmmmmmnnnnbbvvvcxzzzzzzzzzkjhhhcB6. AA",
+"..aZZCCCvcd5=OO=5dcvBBNNNMmmmmmnnnnbbvvvcccd5=OO=5dczhhhhcB6. AA",
+"..aZCCCnce-......-ecbNNNMmmmmmnnnnbbvvvccce-......-eczhhhcB6. AA",
+"..aZCCBvf-........-fvmNMmmmmmnnnnbbvvvccvf-........-fvjhhcB6. AA",
+"..aZCCmb6...XXXXX..6bmMmmmmmnnnnbbvvvccvb6...XXXXX..6blhgcN6. AA",
+"..aZCVmn=.XoOOOOOo.=nnmmmmmnnnnbbvvvcccbn=.XoOOOOOo.=ncgfxN6. AA",
+"..aZCVmmOXO+@@@@@+OOmmmmmmnnnnbbvvvccccnmOXO+@@@@@+OOmnffxN6. AA",
+"..aZCBmmOO@#$%%%$#+OmmmmmnnnnbbvvvccccxmmOO@#$%%%$#+OmmfdzN6. AA",
+"..aZVBBN-O#%=;;;=%+-NNmmnnnnbbvvvccccxzmN-O#%=;;;=%+-NbddzN6. AA",
+"..aZVBBB7o%;>,,,>;O7BMmnnnnbbvvvccccxzznB7o%;>,,,>;O7BxddzN6. AA",
+"..aZVBBVz;@><222<#;zVmnnnnbbvvvccccczzzcVz;@><222<#;zVhddzN6. AA",
+"..aZVBBVCa:@;22>@:aCBnnnnbbvvvccccczzzllmCa:@;22>@:aCnddslN6. AA",
+"..aZBBBBCZv8-OO-8vZVnnnbbbvvvccccxzzzlllkBZv8-OO-8vZBddsslN6. AA",
+"..aZBBBNNCZZZZZZZZVnnnbbbvvvccccxzzzllllkkNZZZZZZZZmddssplN6. AA",
+"..aZBBNNMmBBCZZCBmnnnbbvvvvccccxzzzllllkkjhzbBZZNvkdddssplM6. AA",
+"..aZBNNMmmnvczzcvbnnbbvvvvccccxzzzllllkkjhhgsiyyupsddsspplM6. AA",
+"..aCBNMmmczzzzzzzzcbbvvvvccccxzzzlllkkkjhhpyyyyyyyyissppilM6. AA",
+"..aCBmmmcxd5=OO=5dxcvvvcccccxzzzlllkkkjhhpiw1$oo$1wiispiilm6. AA",
+"..aCBmmvce-......-eccvcccccxzzzlllkkkjhhdp9&......&9ppiiikm6. AA",
+"..aCNmnvf-........-fvccccczzzzlllkkkjhhhdr*........*rdiiukm6. AA",
+"..aCNmnv6...XXXXX..6vvccxzzzzlllkkjjhhhhg3...XXXXX..3gsiukm6. AA",
+"..aCNmnn=.XoOOOOOo.=nbxxzzzzlllkkjjhhhhhh%.XoOOOOOo.%hguukm6. AA",
+"..aCMnnnOXO+@@@@@+OOnnxzzzzlllkkjjhhhhhkloXO+@@@@@+Oolkuujm6. AA",
+"..aCmnmmOO@#$%%%$#+OmmzzzllllkkjjhhhhhhzzOO@#$%%%$#+Ozluyjm5. AA",
+"..aCmnmN-O#%=;;;=%+-Nmzzlllkkkjjhhhhhhfzc=O#%=;;;=%+=clytjm5. AA",
+"..aCmnmB7o%;>,,,>;O7Bbllllkkkjjhhhhhhffln6o%;>,,,>;O6nhttjm5. AA",
+"..aCmbnBz;@><222<#;zBclllkkkjhhhhhhgfffhmj;@><222<#;jmstthm5. AA",
+"..aVnvvBCa:@;22>@:aCMlllkkjhhhhhhhgffdddvBa;@;22>@;aBcttthm5. AA",
+"..aVnvvvVZv8-OO-8vZBllkkkjhhhhhhggfdddddsmVz7-OO-7zVmtttthm5. AA",
+"..aVnvcccBZZZZZZZZBllkkkjhhhhhhggfdddddsssnCCCCCCCCbttttthm5. AA",
+"..aVncccccvmBZZBmcllkkjjhhhhhhggfddddsssppihxmCCmzdtttttrhm4. AA",
+"..qVnccccxzzzzllllkkjjhhhhhhhgffddddsssppiiiiuuuyttttttrrlm<. AA",
+"A.<VNcccxzzzzllllkkjjhhhhhhhgffddddsspppiiiuuuuyttttttrrumm@.AAA",
+"A..kVNnvccccccxxzzzzlllllkkjjjhhhhhhgggffdddddsssspppiihmm9. AAA",
+"A..+aBBBBBBBBBBBBBBBBBBBBBBBNNNNNNNNNNMMMmmmmmmmmmmmmmmmm0X. AAA",
+"AA...<qffffffffffdddaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa8=.. AAAA",
+"AAA....................................................... AAAAA",
+"AAAAAA.................................................  AAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",
+"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+};
Index: /trunk/src/dice_graphics.cpp
===================================================================
--- /trunk/src/dice_graphics.cpp	(revision 134)
+++ /trunk/src/dice_graphics.cpp	(revision 134)
@@ -0,0 +1,89 @@
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *               `                                                          *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+#include "dice_graphics.h"
+
+#include "dice/theme1/one.xpm"
+#include "dice/theme1/two.xpm"
+#include "dice/theme1/three.xpm"
+#include "dice/theme1/four.xpm"
+#include "dice/theme1/five.xpm"
+#include "dice/theme1/six.xpm"
+
+#include "dice/theme2/one.xpm"
+#include "dice/theme2/two.xpm"
+#include "dice/theme2/three.xpm"
+#include "dice/theme2/four.xpm"
+#include "dice/theme2/five.xpm"
+#include "dice/theme2/six.xpm"
+
+#include "dice/theme3/1.xpm"
+#include "dice/theme3/2.xpm"
+#include "dice/theme3/3.xpm"
+#include "dice/theme3/4.xpm"
+#include "dice/theme3/5.xpm"
+#include "dice/theme3/6.xpm"
+
+DiceGraphics::DiceGraphics()
+{
+	m_theme = 0;
+
+	LoadTheme1();
+	LoadTheme2();
+	LoadTheme3();
+}
+
+void DiceGraphics::LoadTheme1()
+{
+	m_bitmaps[0][0] = new wxBitmap(theme1_one_xpm);
+	m_bitmaps[0][1] = new wxBitmap(theme1_two_xpm);
+	m_bitmaps[0][2] = new wxBitmap(theme1_three_xpm);
+	m_bitmaps[0][3] = new wxBitmap(theme1_four_xpm);
+	m_bitmaps[0][4] = new wxBitmap(theme1_five_xpm);
+	m_bitmaps[0][5] = new wxBitmap(theme1_six_xpm);
+}
+
+void DiceGraphics::LoadTheme2()
+{
+	m_bitmaps[1][0] = new wxBitmap(theme2_one_xpm);
+	m_bitmaps[1][1] = new wxBitmap(theme2_two_xpm);
+	m_bitmaps[1][2] = new wxBitmap(theme2_three_xpm);
+	m_bitmaps[1][3] = new wxBitmap(theme2_four_xpm);
+	m_bitmaps[1][4] = new wxBitmap(theme2_five_xpm);
+	m_bitmaps[1][5] = new wxBitmap(theme2_six_xpm);
+}
+
+void DiceGraphics::LoadTheme3()
+{
+	m_bitmaps[2][0] = new wxBitmap(theme3_1_xpm);
+	m_bitmaps[2][1] = new wxBitmap(theme3_2_xpm);
+	m_bitmaps[2][2] = new wxBitmap(theme3_3_xpm);
+	m_bitmaps[2][3] = new wxBitmap(theme3_4_xpm);
+	m_bitmaps[2][4] = new wxBitmap(theme3_5_xpm);
+	m_bitmaps[2][5] = new wxBitmap(theme3_6_xpm);
+}
+/**
+ * \param i the number of the dice (1 to 6)
+ * \return a pointer to wxBitmap
+ */
+wxBitmap *DiceGraphics::GetDice(int i)
+{
+	return m_bitmaps[m_theme][i-1];
+}
Index: /trunk/src/dice_graphics.h
===================================================================
--- /trunk/src/dice_graphics.h	(revision 134)
+++ /trunk/src/dice_graphics.h	(revision 134)
@@ -0,0 +1,41 @@
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+#ifndef _DICE_GRAPHICS_INC_
+#define _DICE_GRAPHICS_INC_
+
+#include <wx/bitmap.h>
+#define NUM_OF_THEMES 3
+
+class DiceGraphics {
+public:
+	DiceGraphics();
+	wxBitmap *GetDice(int i);
+
+private:
+	void LoadTheme1();
+	void LoadTheme2();
+	void LoadTheme3();
+	wxBitmap *m_bitmaps[ NUM_OF_THEMES ][6];
+	int m_theme;
+
+};
+
+
+#endif // _DICE_GRAPHICS_INC_
Index: /trunk/src/icon.xpm
===================================================================
--- /trunk/src/icon.xpm	(revision 134)
+++ /trunk/src/icon.xpm	(revision 134)
@@ -0,0 +1,326 @@
+/* XPM */
+static char *icon_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"64 64 256 2",
+"   c #0E3A0E450F00",
+".  c #0F4C0F4B0FB6",
+"X  c #13D613E3143E",
+"o  c #17C2174316A4",
+"O  c #185C17E4173D",
+"+  c #1BD51B2D1A71",
+"@  c #1749175417A8",
+"#  c #20321F271DD7",
+"$  c #221920BC1E87",
+"%  c #1F1F1F421FB8",
+"&  c #23CE23392287",
+"*  c #2845268E2426",
+"=  c #2C7929FF259A",
+"-  c #2CE72C132B15",
+";  c #318A2DF3275B",
+":  c #353631AD2CD7",
+">  c #3A9535162DA9",
+",  c #3C8C380D2F65",
+"<  c #3574348C3389",
+"1  c #3A25371832B4",
+"2  c #3BF7388F31FB",
+"3  c #3B993B403B14",
+"4  c #37BA37B537BA",
+"5  c #419934F92629",
+"6  c #4389377629C6",
+"7  c #46B8398D2A52",
+"8  c #4B3E3D2E2CBE",
+"9  c #432E3C063260",
+"0  c #49BD3E623221",
+"q  c #41BE3E7F396D",
+"w  c #4E6240482F06",
+"e  c #50C840B62F29",
+"r  c #4B8B424E35BD",
+"t  c #451541B63B7B",
+"y  c #4AB045063AF7",
+"u  c #4ED348A93CA1",
+"i  c #467640AD3581",
+"p  c #5451456133E8",
+"a  c #58AD47443422",
+"s  c #561348BC3695",
+"d  c #5B8A494735CD",
+"f  c #532D472A3A8B",
+"g  c #53654AA03DFE",
+"h  c #5B804C813AAA",
+"j  c #5E1350F43D89",
+"k  c #61124DDD3919",
+"l  c #641951993C91",
+"z  c #692454A43E41",
+"x  c #433D43214350",
+"c  c #4A6746D6402F",
+"v  c #4C67492842C6",
+"b  c #4B6F4B0F4ACF",
+"n  c #54334E25443D",
+"m  c #51024E2249CA",
+"M  c #5B7A536A4435",
+"N  c #555451C24A3A",
+"B  c #5AE655104BF8",
+"V  c #564650BF45F0",
+"C  c #547A543F542D",
+"Z  c #5D4659E152D3",
+"A  c #5C695C3F5C4B",
+"S  c #57F4577F56F2",
+"D  c #6351553C4212",
+"F  c #6AE656D54112",
+"G  c #63DB588B4525",
+"H  c #6DE759B742F8",
+"J  c #64015AE248B3",
+"K  c #6A3B5E7F49F6",
+"L  c #73355CE844B0",
+"P  c #70FD5E5747DF",
+"I  c #60525B5752BC",
+"U  c #67F55F13556D",
+"Y  c #6C2161BC4DA4",
+"T  c #790161224758",
+"R  c #741963B54C6C",
+"E  c #7C9265144AC6",
+"W  c #7FCE68934D2C",
+"Q  c #655B60F0576D",
+"!  c #6D5A62F65388",
+"~  c #64A1603E5B42",
+"^  c #6AF465975CAF",
+"/  c #6C4E67E85E34",
+"(  c #721B64AF51EF",
+")  c #752469DE53C1",
+"_  c #7AE66CAC5541",
+"`  c #735E68F25DA3",
+"'  c #7CAB6D64591B",
+"]  c #757966BA56D8",
+"[  c #7EA5709E5722",
+"{  c #7E83724E59E1",
+"}  c #649864786489",
+"|  c #6C25675D6160",
+" . c #6CC56A0865E3",
+".. c #6B006ACC6A95",
+"X. c #73546CC262BD",
+"o. c #75D36F0867B2",
+"O. c #76AC71346B53",
+"+. c #79E1750E6CDD",
+"@. c #785070A4657F",
+"#. c #6FA86FD57010",
+"$. c #7379735D7364",
+"%. c #79FD761F71CA",
+"&. c #7CA4792A7562",
+"*. c #7D627C847BAD",
+"=. c #83E16A6E4E99",
+"-. c #80D5672F4BBD",
+";. c #83C16D0553E7",
+":. c #89C06ED451B5",
+">. c #82846EA5594F",
+",. c #857670C256F1",
+"<. c #8D5C720853F7",
+"1. c #83DF76335C7C",
+"2. c #8D0A746C59CD",
+"3. c #8601790B5EC5",
+"4. c #89177ADB5F06",
+"5. c #91F574C555CB",
+"6. c #967E7A2F5AFD",
+"7. c #9B3D7D065C65",
+"8. c #915D77DD5C42",
+"9. c #8409760E6273",
+"0. c #8ABB7D7F6242",
+"q. c #88317DC46CEB",
+"w. c #9C577F566068",
+"e. c #815D7E197A79",
+"r. c #825C7D4B7212",
+"t. c #A19C81515F0A",
+"y. c #8ED9810164AD",
+"u. c #92BD839D6604",
+"i. c #95A6868B689C",
+"p. c #97A588836A22",
+"a. c #9C678C756CC7",
+"s. c #842A81B07DC0",
+"d. c #8F908A187CD6",
+"f. c #88A382B4759D",
+"g. c #93288B9F7CA6",
+"h. c #975B8A9074EE",
+"j. c #A47D848A61F7",
+"k. c #A91E87476351",
+"l. c #AB6989C16579",
+"z. c #A5E28E5D6BF3",
+"x. c #B27A8F126962",
+"c. c #A12A90776F94",
+"v. c #B64C926A6B9F",
+"b. c #BAF895EB6E26",
+"n. c #A571948A72FD",
+"m. c #A8BB97A17495",
+"M. c #AAA8995675FE",
+"N. c #AEAC9CC078CF",
+"B. c #A66298487CBC",
+"V. c #BF429A18713F",
+"C. c #B0D79E797A29",
+"Z. c #B5BFA2E57D52",
+"A. c #B9E5A6857FDE",
+"S. c #C43C9D317376",
+"D. c #C84AA00575B2",
+"F. c #C7DAA1567657",
+"G. c #C99DA19076C7",
+"H. c #CE3AA5417953",
+"J. c #D105A6F37AB0",
+"K. c #D514AABA7D65",
+"L. c #D967ADF17FCC",
+"P. c #84A3840C836F",
+"I. c #8D0C8CAC8C51",
+"U. c #92FE8DB880FE",
+"Y. c #910B8F828DCF",
+"T. c #9B7C951B873B",
+"R. c #9BD5962487FC",
+"E. c #9415940A9405",
+"W. c #9CE59CBE9C8E",
+"Q. c #A4019B24893A",
+"!. c #BB17A78880C2",
+"~. c #BDB4A9E38271",
+"^. c #AB07A4579472",
+"/. c #AED3A8C898F1",
+"(. c #AA1CA434957F",
+"). c #B2DDABE89B6B",
+"_. c #B74CAB4D925B",
+"`. c #BDA4B06E939E",
+"'. c #A4AFA4A8A4A5",
+"]. c #AC6CAC7BAC8E",
+"[. c #B732B12FA1AD",
+"{. c #BCF7B65AA60C",
+"}. c #B3F6B400B40F",
+"|. c #BBA4BBAEBBB7",
+" X c #C3AEAF1F8642",
+".X c #DA74AF30807C",
+"XX c #C7E1B2E38912",
+"oX c #CAA4B5548AE2",
+"OX c #CBEBB6838BE6",
+"+X c #DDDFB21682BB",
+"@X c #D116BB178F46",
+"#X c #C607B7689883",
+"$X c #D4F0BE979204",
+"%X c #E2EAB5CA8589",
+"&X c #E690B891879F",
+"*X c #E7DBB9B6885A",
+"=X c #EBC6BCF18AC9",
+"-X c #C224BB7CAA84",
+";X c #DD83C69798C7",
+":X c #DF5BC8A49AF9",
+">X c #D917C27F9566",
+",X c #EFD8C1438DD1",
+"<X c #F268C2528EC5",
+"1X c #E3D5CC7B9DAE",
+"2X c #F653C5A6913B",
+"3X c #F943C79E92AF",
+"4X c #FF7DCCBF9686",
+"5X c #FFFFCF2D9851",
+"6X c #CE5EC04BA332",
+"7X c #CC9EC64BB546",
+"8X c #D161CA2AB778",
+"9X c #D43ACD87BC3A",
+"0X c #D7CFD116BF61",
+"qX c #D897D1D4BF04",
+"wX c #DA01CD2DAF85",
+"eX c #E518CEB2A159",
+"rX c #EB57D434A582",
+"tX c #EED7D7A6A8B5",
+"yX c #F1E5DACDAC09",
+"uX c #E79DD926B934",
+"iX c #F592DF5AB20D",
+"pX c #F6A2E0B4B3CB",
+"aX c #FAC7E637BBD4",
+"sX c #FAC8E5DCBAC7",
+"dX c #C4D5C4DAC4DF",
+"fX c #CC76CC7ACC7E",
+"gX c #D538CFC2C08C",
+"hX c #DB45D417C2C0",
+"jX c #D3FCD40FD420",
+"kX c #DBEDDBF8DC04",
+"lX c #D857D858D858",
+"zX c #E4C4DDFCCBFD",
+"xX c #E347DA34C3BE",
+"cX c #EA47E2DBCFF6",
+"vX c #FD42EAA7C419",
+"bX c #FF1FEE7ECB7F",
+"nX c #F455E8DCCCB4",
+"mX c #FFD5F088CFE5",
+"MX c #E660E116D0A0",
+"NX c #EC42E5DAD3D3",
+"BX c #F01EE93DD5CD",
+"VX c #EF83E949D93E",
+"CX c #F19FEA24D727",
+"ZX c #FC0EEF94D27C",
+"AX c #F559EE1BDC10",
+"SX c #FFADF228D4B9",
+"DX c #FF6FF45ADD1A",
+"FX c #FB5CF4B4DF84",
+"GX c #E4C2E4C4E4C5",
+"HX c #E971E971E971",
+"JX c #FF7BF6A2E3CD",
+"KX c #FFFCF969E6B2",
+"LX c #FFE8FAABEA10",
+"PX c #FFFFF871E8A0",
+"IX c #FFFFFC08F286",
+"UX c None",
+/* pixels */
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXI.O.Z n g n g B ^ s.I.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX%.X.' 2.7.x.V.D.D.D.G.S.b.j.8.>.@.O.*.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX*.` >.k.H.*X2X4X5X5X5X5X4X4X5X5X4X3X<XL.b.2.] %.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX%.] 6.H.2X5X5X5X5X4X4X4X4X4X4X4X4X4X4X4X4X4X5X3X%Xl._ | UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX! 6..X3X5X4X4X4X5X4X4X4X4X4X5X4X4X4X4X4X4X4X4X4X4X5X5X*Xv._ %.UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXO.;.H.3X5X5X4X4X4X4X4X4X4X4X4X5X5X5X5X4X4X4X4X4X4X4X4X4X4X4X5X*X7.^ P.UXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXU j.=X5X5X4X4X4X4X4X4X4X4X4X4X5X,XV.j.F.3X5X4X4X4X4X4X4X4X4X4X4X5X3XD.R e.UXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXs.( b.3X5X4X4X4X4X4X4X4X5X5X5X5X<Xb.,.h./.4.,.F.<X4X4X4X4X4X4X4X4X5X4X4X4X+X-.e.lXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUX*.( G.5X5X4X4X4X4X4X4X4X4X4X5X3XS.;.g.9XPXKXSX#X1.<.J.3X4X4X4X4X4X4X4X4X4X4X4X=X;.&.jXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUX( H.5X4X4X4X4X4X4X4X4X4X5X3X.X8.y.8XJXPXAXhXqXNXnX`._ 6.L.3X4X4X4X4X4X4X4X4X4X4X=X;.%.jXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXU S.4X4X4X4X4X4X4X4X4X4X5X+X8.9.{.AXLXJX{.B 1 ; t q.xXuXB.T t.=X4X4X4X4X4X4X4X4X4X4X*XR s.lXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXX.l.3X4X4X4X4X5X4X4X5X4X,Xk.' ).VXLXPXPX8X- X @ % + + @.JXDXuXa.E v.<X4X4X4X4X4X4X4X4X5X.XD E.kXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUX*.2.2X4X4X4X4X4X5X5X5X,Xv.;.R.MXPXPXAXVXFX9X1 X % - < & +.FXJXJXDX6X1.=.F.<X4X4X4X4X4X4X4X5Xb.N }.HXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUX( L.5X4X4X4X4X4X5X3XF.,.g.qXKXKXMXR.Z v B d.^./ y ..f.d.MXKXJXJXJXDXnX#X,.<.L.3X4X4X4X4X4X5X3X:.U dXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXU l.4X4X4X4X4X5X4XH.2.y.7XKXKXKXBXZ X X + + # Z MXNXMXAXJXKXDXJXDXKXKXKXKXnXC.E t.%X4X4X4X4X4X5X+XV P.lXUXUXUXUXUX",
+"UXUXUXUXUXUXUX' =X4X4X4X5X4X+X7.9.{.AXLXLXLXLX9X$ X + & = & 1 hXKXJXJXJXDXKXKXKXMX(.U.U./.hXuXc.E k.=X4X4X4X4X4Xt.m ].GXUXUXUXUX",
+"UXUXUXUXUXUXO.x.4X4X4X5X,Xl.[ ).AXLXKXzX{.).{.hXX.$ + 4 } 3 T.FXJXJXJXJXJXDXKXqXu o o @ $ t {.DX8Xu.E S.<X3X4X5X%Xh $.fXUXUXUXUX",
+"UXUXUXUXUXUX] *X4X4X4XS.' R.MXPXLXAXg.1 # + * c /.[.g.g.{.8XFXJXJXJXDXJXJXKXKXd.. + % % * % B BXKXZX#X_ <.%X3X4X4X6.v ].GXUXUXUX",
+"UXUXUXUXUX&.w.4X4X5XV.1.0XLXLXKXLXR.@ X O % % % c NXKXJXKXKXJXJXJXDXKXKXAXBXKX{.- @ & x 3 & Z CXDXDXSXyX4.=.*X<X4XJ.r *.jXUXUXUX",
+"UXUXUXUXUX` H.4X4X5X7.`.DXKXPXKXKX&.. @ % - < & I BXJXJXJXJXKXKXJXJXhXf.N v ~ R.(.Q q ../ / 8XKXDXSXvXeXc.l F.&X<X<XL C }.UXUXUX",
+"UXUXUXUXUX' =X4X4X5Xj.c.pXbXJXKXKX0Xm & $ m ..^ qXJXJXJXDXJXDXDXKX7X1 X X @ % % Q hXMXhXMXAXDXDXSXpX$Xm.1.d t.G.*X2Xj.3 I.lXUXUX",
+"UXUXUXUXI.w.4X5X4X5XF._ @XrXvXDXKXLXNX[.R./.7XBXKXJXJXJXJXJXKXKXKXg.  O % & * * = {.KXKXDXDXSXbXtXXXa.y.[ p =.x.L.<XH.9 ..dXUXUX",
+"UXUXUXUXO.b.5X4X4X5X%XT N. X:XpXSXKXLXLXLXKXKXKXJXJXDXJXKXJXVXVXFX-X* O & 3 C * 2 qXKXDXFXSXaX:XZ.i.0.0.( w T t.H.=X*Xh C }.UXUX",
+"UXUXUXUX@..X4X4X4X5X2XR z.C.~.>XyXbXDXKXKXKXKXJXJXJXJXJX6XX.v v Q /./.n : b  .Z ).KXDXDXbXyX@Xm.y.0.0.y.T 8 z 7.D.*X2XT x E.kXUX",
+"UXUXUXUX] *X4X4X4X4X3X<.u.N.N.A.OXrXaXSXKXKXKXKXJXJXJXQ.& X @ @ + * r.cX9X7X9XNXDXFXSXvXeXA.p.4.0.0.0.0.D 8 z 7.G.=X3X7.1 *.jXUX",
+"UXUXUXUX>.2X4X4X4X4X5X7.4.m.Y _ C. X:XpXmXKXPXKXPXPXNXq . + % & & & : 9XPXKXKXDXFXbXpX>XC.y.y.y._ u ( 0.h 8 L w.J.=X4Xx.1 ..dXUX",
+"UXUXUXW.2.3X4X4X4X5X5Xv._ n.= o M N.~.>XyXbXDXKXPXPXVXc X % & 3 x & 3 qXKXDXDXDXbXrXXXc.y.4.y.( = . f 0.d e L k.K.<X4XS.1 A }.UX",
+"UXUXUXP.6.4X4X4X4X4X5XH.R M.9 X + Y N.Z.OXeXaXDXPXPXPX[.1 + % S S q ^.JXDXDXmXsX:XZ.p.3.3.y.{ = X o M 1.0 a -.x..X2X5XH.6 C ].HX",
+"UXUXUXO.j.5X4X4X4X4X5X%XP M.) + o $ y.N.Z. X:XpXZXKXPXPXgXT. .O.R.9XJXDXDXbXtX@Xm.y.y.0.y.y.u o X & { [ 7 d =.v..X2X4X.X9 b W.GX",
+"UXUXUX~ k.5X4X4X4X4X4X2XE a.n.u - x Y M.M.N.~.@XtXvXDXPXLXLXPXJXKXJXFXSXaX1X~.a.y.3.3.y.4.{ & X o g y.( 7 k <.b.%X3X4X+X0 b E.kX",
+"UXUXUXU k.5X4X4X4X4X4X3X;.u.N.u.N A V n.M.M.M.Z.XX1XsXSXPXLXPXPXDXDXbXiX>XZ.u.0.3.0.y.y.y.Y O X 9 4.4.Y 7 z 6.S.*X3X5X%X0 x E.lX",
+"UXUXUX| l.4X4X4X4X4X4X5Xj.,.M.M.i.V Y n.m.m.M.M.A. X>XiXbXKXIXKXDXbXtXXXn.0.0.0.y.y.0.0.y.) : y { y.0.M 7 z t.G.=X3X4XL.8 x I.jX",
+"UXUXUX*.7.4X4X4X4X4X4X5XV.) M.m.M.m.n.m.m.M.M.4._ n.~.$XtXvXDXPXvX1XA.i.0.0.4.Y M 3.0.0.0.y.3.0.y.0.y.s e L t.H.=X4X4XK.7 y I.jX",
+"UXUXUXE.2.4X4X4X4X4X4X5XL.R m.m.m.m.m.m.m.m.M.i X , i.A.XX1XyXpX>XN.u.0.0.1.i @ O ) y.y.{ 3.y.0.0.4.{ w a T l.L.<X4X4XF.> b I.jX",
+"UXUXUXW.,.3X4X4X4X4X4X5X,XH c.m.n.M.m.m.m.m.m.y X X ; a.Z.A. X Xc.0.4.0.0.9 X X O ) 3.y % M y.0.3.y.{ 8 d -.v.L.2X4X4Xv.: m E.kX",
+"UXUXUXUX' ,X4X4X4X4X4X4X2XW a.1.i { M.m.m.m.m._ + o . g M.m.m.u.3.3.4.y.B o o X ; { y X X j y.j : ) ) 7 k :.b.L.2X5X5Xt.: b W.GX",
+"UXUXUXUX` +X4X4X4X4X4X4X5X2.4.1.X % { M.m.m.M.c.i & 4 - 4.m.a.4.{ 4.y.3.: X o O Y M O X + ) u X + { Y 5 k y.V.&X3X5X5X;.< C '.HX",
+"UXUXUXUX@.F.5X4X4X4X4X4X5Xl._ n.> X ; i.M.m.n.M.y.t ..x Y m.i.4.3.y.y.( # X o r { = X X t Y + X , y.G w z t.V.*X3X5X2Xz 4 A }.UX",
+"UXUXUXUXf.t.5X4X4X4X4X4X5X+XF u._ = x ! m.m.m.M.M.y.V 1 ! n.a.4.3.3.y.) $ # u 4.Y O X ; { ; X + Y { w w L t.H.=X3X5XL.i 3  .dXUX",
+"UXUXUXUXUX1.2X4X4X4X4X4X4X4Xv.l y.! Z V a.M.n.M.m.M.c.4.a.n.a.4.{ 4.y.3.Y ) y.y.Y % 2 { ) O O j 1.a 5 a E l.L.<X5X5Xb.: x &.fXUX",
+"UXUXUXUXUX] .X5X4X4X4X4X4X4X3Xj.j 3._ M c.M.n.M.m.m.m.m.m.n.a.4.3.y.0.y.y.y.3.y.{ ) 3.y.) ; G [ p 5 8 z :.b.%X2X5X3X=.< b Y.kXUX",
+"UXUXUXUXUXO.x.5X4X4X4X4X4X4X4X,Xl.j 1.c.M.n.M.n.m.m.m.n.m.n.a.4.{ y.0.0.3.y.y.y.3.y.y.y.y.y.W 8 5 8 k E k.H.*X3X5X&Xs 4 C '.UXUX",
+"UXUXUXUXUXUX>.2X4X4X4X4X4X4X4X3X,Xl.j ) c.n.M.c.g V a.m.n.n.a.4.{ 3.0.0.y.3.Y > g y.3.y.y.R 7 5 e k -.7.S.%X2X4X5Xx.> t ..dXUXUX",
+"UXUXUXUXUXUX` G.5X4X4X4X4X4X4X4X2X*Xv.z Y a.m.c.= . , i.M.n.a.0.3.y.y.0.y.V # . i y.y.y.j > 7 e z -.w.S.+X<X3X4X<XL 4 b P.jXUXUX",
+"UXUXUXUXUXUX%.2.3X4X4X4X4X4X4X4X3X2X*XD.z G i.m.V + X r n.n.a.0.{ 0.y.y.( + X @ J y.1.k 5 5 e z =.k.S.%X<X3X4X5XV., 3 S ].GXUXUX",
+"UXUXUXUXUXUXUX! F.4X4X4X4X4X4X4X4X4X<X=XH.E j y.i.2 - 4 ) n.a.0.{ y.0.{ > X X > 3.{ s > 8 a z :.l.D.%X<X3X4X4X2XL < x $.dXUXUXUX",
+"UXUXUXUXUXUXUXe.;.<X4X4X4X4X4X4X4X4X4X3X=XK.<.j 0.[ b } y n.a.0.3.y.y.Y + X = _ _ i > w d L t.l.J.*X<X4X4X4X4Xl.> 3 C W.kXUXUXUX",
+"UXUXUXUXUXUXUXUX^ l.4X4X4X4X4X4X4X4X4X4X3X=X%Xw.k ;.9.y y a.a.0.{ 4.y.Y $ > ) T 8 7 e k T 6.b.L.=X2X4X4X4X5X+Xf 1 x $.dXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUX! H.5X4X4X4X4X4X4X4X4X4X4X=X&Xl.k ) i.i.n.a.0.1.3.0.1._ 1.G 5 5 e l -.7.V.L.=X3X4X4X4X5X2XE : x S '.kXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXY.( &X5X4X4X4X4X4X4X4X4X4X3X=X&Xb.F K a.n.a.0.3.y.y.y.4.j 5 7 a l =.t.D.+X<X3X4X4X4X3X3X7.> 3 b P.fXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUX .:.=X5X4X4X4X4X4X4X4X4X4X4X2X*XS.L l i.a.0.{ 0.4.,.a > 8 k z <.l.D.%X<X3X4X4X4X4X4Xv.> 3 x ..}.UXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUX&.:.=X4X4X4X4X4X4X4X4X4X4X4X2X=XJ.=.l 3.0.3.4._ w 5 8 k z 5.x.J.*X<X3X4X4X4X4X3Xb.0 4 x A '.kXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXjX$.;.&X4X4X4X4X4X4X4X4X4X4X3X3X=XL.5.h R { Y w 6 8 k L 6.b.K.*X2X4X4X4X4X4X2Xl.7 4 x C E.jXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXlX&.H K.4X5X4X4X4X4X4X4X4X4X4X3X=X+Xk.l a p p a l -.7.b.L.=X3X3X4X4X4X4X=X7.> 4 x C I.jXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXlXP.M l.2X5X4X4X4X4X4X4X4X4X4X4X<X%XS.t.<.E E 5.t.D.%X<X3X3X4X4X4X4XJ.L > 3 x C I.fXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXlXW.B T H.2X5X4X4X4X4X4X4X4X4X3X2X&XJ.b.k.k.v.H.%X<X3X4X5X4X4X%X7.r < x x A W.jXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXGX}...u =.H.2X5X4X5X4X4X4X4X4X3X2X,XL.K.K.L.,X<X3X4X4X4X%Xj.h < 4 x b $.].lXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXfXE.S 0 P l..X2X4X5X5X5X5X4X4X3X3X,X<X<X4X4X4X*XS.:.f : 4 3 b A I.|.GXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXkX|.I.S q f L 6.b..X&X=X2X2X3X<X,X*XL.H.t.=.d > < 4 x b A *.].jXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXlX|.Y...b 3 2 9 p h D H L G l g w , : 1 3 x x C } P.}.fXGXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXlXdX'.I.#.A C x x 4 3 4 4 x x x b b S ..P.W.|.jXGXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXlXdX}.'.E.P.*.$.$.#.$.*.P.Y.W.}.dXjXGXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX",
+"UXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXGXlXkXjXfXdXdXfXfXlXlXGXHXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUXUX"
+};
Index: /trunk/src/icon32.xpm
===================================================================
--- /trunk/src/icon32.xpm	(revision 134)
+++ /trunk/src/icon32.xpm	(revision 134)
@@ -0,0 +1,257 @@
+/* XPM */
+static char *icon32_xpm[] = {
+/* columns rows colors chars-per-pixel */
+"32 32 219 2",
+"   c #13C313561338",
+".  c #185D17EF173B",
+"X  c #1DDA1D111C05",
+"o  c #201F1ECD1C64",
+"O  c #236621C01EBD",
+"+  c #252C248223D5",
+"@  c #28C026C72332",
+"#  c #2A3828A125CD",
+"$  c #2C832B6C29D1",
+"%  c #338131062C4F",
+"&  c #398E355E2D78",
+"*  c #360034B93221",
+"=  c #391937133351",
+"-  c #3DF73A4B3304",
+";  c #4D473ED12DE3",
+":  c #41CA3CEB3356",
+">  c #41B33EBB3AE8",
+",  c #4DA6402F2F5C",
+"<  c #510B411C2F5A",
+"1  c #460A406D3547",
+"2  c #494143513771",
+"3  c #43AD41563C45",
+"4  c #4CDC46303A93",
+"5  c #4ECC48603B6C",
+"6  c #54C7450532C0",
+"7  c #55B448EF36D8",
+"8  c #5AE24A3D36C5",
+"9  c #515949FF3CE8",
+"0  c #5AB24D1839F8",
+"q  c #5DE250173C98",
+"w  c #61554E35395A",
+"e  c #63B6528A3D68",
+"r  c #6AD355883EA0",
+"t  c #449E42E14097",
+"y  c #4873461E41F4",
+"u  c #4C1B4A144711",
+"i  c #4CDC4B204979",
+"p  c #548A4D9F449A",
+"a  c #51EC4EDD48C0",
+"s  c #5BF351F442BA",
+"d  c #549451CC4C43",
+"f  c #5B8955364C25",
+"g  c #55F3557A553A",
+"h  c #5E9D5B98544E",
+"j  c #5E365E915F1E",
+"k  c #614354183FC4",
+"l  c #6CC5571B3FC1",
+"z  c #64AE596045AE",
+"x  c #6B87596A42F9",
+"c  c #625455FE4878",
+"v  c #64D15B004B2D",
+"b  c #77415F5D45E0",
+"n  c #60FE5C1A5708",
+"m  c #6C9562174D9A",
+"M  c #7865606946BE",
+"N  c #71F0624F4CF8",
+"B  c #7BB8646B4A41",
+"V  c #690061FC53F9",
+"C  c #65AB61635B5E",
+"Z  c #67F764695C05",
+"A  c #704F660051C8",
+"S  c #757C69A55361",
+"D  c #7A6B6C4F5447",
+"F  c #7B346EA158B1",
+"G  c #7D2B717A596E",
+"H  c #6437647064CC",
+"J  c #678B680468AF",
+"K  c #6BCC6B336AB3",
+"L  c #7B657172669B",
+"P  c #7530711467F2",
+"I  c #787174BE6C21",
+"U  c #73A8731A72A0",
+"Y  c #7BCD767870C9",
+"T  c #7DC57DDD7E13",
+"R  c #807266E24B72",
+"E  c #857B6AD64E6E",
+"W  c #83416F495409",
+"Q  c #80F36FFF558A",
+"!  c #8DE873155502",
+"~  c #82B975765C38",
+"^  c #8ED8762B5B7C",
+"/  c #865779755F2B",
+"(  c #8B297B4E5EED",
+")  c #91707451556B",
+"_  c #9241776B5AA4",
+"`  c #97867C105E6D",
+"'  c #9B727CD65BF7",
+"]  c #834A779A6028",
+"[  c #879C7AA56037",
+"{  c #8ACF7D64621F",
+"}  c #80247B376ED9",
+"|  c #8B1D7CDD6D58",
+" . c #931E7EA7621C",
+".. c #91137E1B6960",
+"X. c #8E8E80EB64E7",
+"o. c #8F4580426FCE",
+"O. c #92FB844B66AB",
+"+. c #9C6582B16285",
+"@. c #955384D869B9",
+"#. c #9A2284536C97",
+"$. c #9CF18C656D21",
+"%. c #85E2815E76BC",
+"&. c #8B8581C5772B",
+"*. c #8B4B868B7C6F",
+"=. c #94AB83E371B3",
+"-. c #9AC8873C71EF",
+";. c #A4EF85D46372",
+":. c #AC0F8AAE6667",
+">. c #A05A87C96D03",
+",. c #A5768A466CCB",
+"<. c #AB928D2168E3",
+"1. c #B2A78F366975",
+"2. c #A18F90DC6FDB",
+"3. c #B24291196B88",
+"4. c #B86594D16E57",
+"5. c #A61E8DC6733E",
+"6. c #A426937E71E5",
+"7. c #ABA194717306",
+"8. c #AB1F99C5762B",
+"9. c #B48096CB7658",
+"0. c #B4F8991376C6",
+"q. c #BD9799E872FA",
+"w. c #B20D9E427D51",
+"e. c #B616A3D77F1D",
+"r. c #BBE7A1357F09",
+"t. c #C2949CB273AB",
+"y. c #C1549EB078F1",
+"u. c #CA77A1D0770D",
+"i. c #C553A2C37C55",
+"p. c #CC68A5907B9B",
+"a. c #D45DAA8A7DB7",
+"s. c #D8F6AD647F69",
+"d. c #85DD86068636",
+"f. c #8EDD8B028130",
+"g. c #92BF8DB3818C",
+"h. c #9C1C9630874B",
+"j. c #9DE098DB8D14",
+"k. c #942F943C945C",
+"l. c #9C179800938E",
+"z. c #9B619BE29C88",
+"x. c #A4099EB492FA",
+"c. c #B82EA46886C6",
+"v. c #B8C6A0B381FF",
+"b. c #BFF0ABF583E1",
+"n. c #BA31A4C088DB",
+"m. c #BA5DA8B58FDB",
+"M. c #A447A0CD9CF5",
+"N. c #ACB7A71B998C",
+"B. c #AD75A8BF9B85",
+"V. c #BCC1AD009238",
+"C. c #BF0EB3E09CD9",
+"Z. c #A2D5A2BFA2B9",
+"A. c #AC1BAA18A7E3",
+"S. c #A7A8A85BA928",
+"D. c #ABCEAC34ACAA",
+"F. c #BD42B6D3A6CA",
+"G. c #BD3EB72CA92C",
+"H. c #B41CB412B40B",
+"J. c #BB3FBB7BBBC1",
+"K. c #C0FCACE884BC",
+"L. c #C17AAE938867",
+"P. c #D5D5AD4F810A",
+"I. c #DACDAF4F80D9",
+"U. c #C5A8B1848977",
+"Y. c #CB24B63C8C5F",
+"T. c #DC8CB18382F5",
+"R. c #CCCAB93991F3",
+"E. c #C11AB16A9A63",
+"W. c #C909B7C49862",
+"Q. c #E329B60485B6",
+"!. c #E6B8B91587DE",
+"~. c #E6B4B99988E7",
+"^. c #EB98BCE78AB3",
+"/. c #C3A4B782A35E",
+"(. c #C664B8A2A264",
+"). c #C561BED8AED7",
+"_. c #D6DAC3299B35",
+"`. c #DA62C4F599E1",
+"'. c #F003C08B8CE1",
+"]. c #F291C2528EB4",
+"[. c #F6BCC5A39126",
+"{. c #F908C7A79272",
+"}. c #FF4FCD0096A0",
+"|. c #FFFFCF6C986E",
+" X c #CF00C27CA9F1",
+".X c #C7ADC0F0B076",
+"XX c #CD8BC571B489",
+"oX c #CE8CC8F7BADB",
+"OX c #D455CD9CBDDB",
+"+X c #DD1ED2AFBD6E",
+"@X c #E0EFCD7BA644",
+"#X c #E727D1F4A73E",
+"$X c #E8F1D477AB25",
+"%X c #EA73D72DB054",
+"&X c #F14DDE91B830",
+"*X c #F2F3E120BC57",
+"=X c #C03EC12CC22E",
+"-X c #CC87CC8ACC8A",
+";X c #DCB9D530C428",
+":X c #DD8FD7AEC8CE",
+">X c #E3C8DAC4C6CD",
+",X c #E434DD84CD65",
+"<X c #E827E0D1CF56",
+"1X c #EBCDE234CD34",
+"2X c #F5E8E560C295",
+"3X c #F941E92CC784",
+"4X c #F129E61BCE7E",
+"5X c #F53AE884CAF5",
+"6X c #FC38ED0DCCA0",
+"7X c #EDA8E59ED3E0",
+"8X c #F194E8F5D694",
+"9X c #FECBF04FD286",
+"0X c #F2CAEC21DBBC",
+"qX c #FEB9F27CD640",
+"wX c #FD47F3DEDD92",
+"eX c #FED7F70CE3F5",
+"rX c #FFFFF9A4E66C",
+"tX c #FFFFFBA4EA12",
+"yX c None",
+/* pixels */
+"yXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyXyX",
+"yXyXyXyXyXyXyXyXyXyXyX#.9.i.P.I.T.P.P.0.5.| yXyXyXyXyXyXyXyXyXyX",
+"yXyXyXyXyXyXyXyXyX,.P.[.|.|.}.|.|.|.}.}.].T.7.| yXyXyXyXyXyXyXyX",
+"yXyXyXyXyXyXyX..p.[.}.}.}.|.}.Q.P.[.}.}.}.}.}.P.#.yXyXyXyXyXyXyX",
+"yXyXyXyXyXyX#.Q.|.}.}.|.}.~.r./. Xv.a.[.|.}.}.}.^.5.M.yXyXyXyXyX",
+"yXyXyXyXyX#.~.}.}.}.}.^.i.E.,XG.*.h.V.0.s.}.}.}.|.].5.Z.yXyXyXyX",
+"yXyXyXyXo.T.|.}.|.].p.V.;X7X;X= X % F.1XV.q.Q.}.}.|.^.=.J.yXyXyX",
+"yXyXyXyXq.}.}.{.a.c.;X0X%.3 i %.x.G.8XrXeX+Xc.t.^.}.|.p.*.yXyXyX",
+"yXyXyX#.].}.T.v.XX<XOX.X3 + 3 B.rXrXrX7X} h } C.w.p.[.{. .Z.yXyX",
+"yXyXyXi.|.i./.0X;Xu @ = h.).;XwXeXwX8X).$ + $ N.qXW.<.].p.Y yXyX",
+"yXyX&.!.{.0.5XtXoX* * d ).rXrXrX<XP 3 g %.j.B.1X6X_.W t.~.F D.yX",
+"yXyX5.[.}.3.U.*XwX:XXX<XeXeXwX7X).# + $ *.rXqX*XL.O.z ) Q.` d.yX",
+"yXyX9.}.|.q.$.K.$XqXtXrXrX;XZ > h *.f.M.>XqX@X8.{ [ w R I.4.K yX",
+"yXyXy.|.|.a.{ s $.`.3XrXtXj.  + + g.rXqX2XR.$.G 2 V 8 ! Q.p.n J.",
+"yXyXp.|.}.Q. .- & 6.R.&XrX,XI C *.;XqX%Xe.O.( 2 o v 8 ' ~.I.c D.",
+"yXyXa.|.}.].+./ y ] 8.b.#XqXeX0XqX6X_.6.{ { F O 9 D 8 :.^.Q.f Z.",
+"yXyXp.|.}.}.;.6.X.@.8.$.2.`.3XeX2XU.O.G G X.G f / N w 3.[.s.s z.",
+"yXyXi.|.}.}.3.$.8.8.8.D @ ~ U._.w.X.m + 5 D m X.X.z r q.{.s.p Z.",
+"yXyXq.}.}.}.u.~ 5 @.8.O.$ - $.$./ / & . 9 O : 5 9 e M a.}.q.a D.",
+"yXyX6.{.}.}.s.~ 1 f 6.8.~ a [ O./ G # 5 4 O 4 O s 0 E s.}.+.g J.",
+"yXyX@.^.|.}.}.3.S V 2.8.8.$.2.O./ / G { v m q 5 0 8 ' ~.{.N J -X",
+"yXyXyXi.}.}.}.].:.G 2.2.G 2.6.O./ X.( m G X.D 8 < R t.[.s.5 d.yX",
+"yXyXyX>.].}.}.}.].1.Q O.& 5 6.O./ X.s X m D 2 6 E t.'.}.` i D.yX",
+"yXyXyXyXp.}.}.}.}.].q.Q m t ~ @./ G O 1 m , 8 ) u.].}.T.9 K yXyX",
+"yXyXyXyX@.~.}.}.}.}.{.p.W A [ @.[ G s k ; r ' a.].}.].W y Z.yXyX",
+"yXyXyXyXyX5.[.|.}.}.}.{.I.) ^ O.[ / e ; l ;.I.{.}.}.;.> T yXyXyX",
+"yXyXyXyXyXl.5.^.|.}.}.}.}.Q.' D D 0 ; b 1.!.{.|.{.;.> J J.yXyXyX",
+"yXyXyXyXyXyXA.-.I.}.|.}.}.}.~.:.B l R t.~.}.|.~.^ > H H.yXyXyXyX",
+"yXyXyXyXyXyXyXH.&.<.Q.}.|.}.}.[.a.t.a.^.}.^.3.c y U H.yXyXyXyXyX",
+"yXyXyXyXyXyXyXyXyXk.L ^ 4.P.^.^.^.Q.s.t._ s t j k.yXyXyXyXyXyXyX",
+"yXyXyXyXyXyXyXyXyXyX-Xk.U n c c c s p u g U k.J.yXyXyXyXyXyXyXyX",
+"yXyXyXyXyXyXyXyXyXyXyXyXyX=XS.z.k.k.z.S.J.yXyXyXyXyXyXyXyXyXyXyX"
+};
Index: /trunk/src/openyahtzee.cpp
===================================================================
--- /trunk/src/openyahtzee.cpp	(revision 134)
+++ /trunk/src/openyahtzee.cpp	(revision 134)
@@ -0,0 +1,69 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+
+// This is the main source file for the project. It includes the creation of the main window
+// but all other stuff is done on other files.
+
+/*
+PREFIX and DATA_DIR are passed by the make file to the program and hold the the
+path prefix and datadir path accordingly.
+*/
+
+/*
+ * If PORTABLE is defined, Open Yahtzee will be compiled for the Portable Edition. Add "-DPORTABLE" to the CXXFLAGS when compiling.
+ */
+
+#include "wx/wx.h"
+#include "MainFrame.h"
+// #ifdef WIN32 
+// 	#include openyahtzee.rc
+// #endif
+
+
+// Declare the application class
+class MyApp : public wxApp 
+{
+public:
+	// Called on application startup
+	virtual bool OnInit();
+};
+
+
+
+	// Implements MyApp& GetApp()
+	DECLARE_APP(MyApp) /*just to satisfy kdevelop*/;
+	// Give wxWidgets the means to create a MyApp object
+	IMPLEMENT_APP(MyApp) /*just to satisfy kdevelop*/;
+	// Initialize the application
+
+bool MyApp::OnInit()
+{
+	//load all image handlers
+	::wxInitAllImageHandlers();
+
+	// Create the main application window
+	MainFrame *frame = new MainFrame(wxT("Open Yahtzee"), wxDefaultSize, wxDEFAULT_FRAME_STYLE & (~wxRESIZE_BORDER));
+	
+	//Show it
+	frame->Show(true);	
+	return true;
+}
Index: /trunk/src/wxDynamicBitmap.cpp
===================================================================
--- /trunk/src/wxDynamicBitmap.cpp	(revision 134)
+++ /trunk/src/wxDynamicBitmap.cpp	(revision 134)
@@ -0,0 +1,121 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+#include "wxDynamicBitmap.h"
+#include <wx/wx.h>
+#include "ObjectsID.h"
+
+#include <iostream>
+
+wxDynamicBitmap::wxDynamicBitmap(wxWindow* parent, wxWindowID id, wxBitmap *bitmap,
+				const wxPoint& pos, const wxSize& size,
+				long style, const wxString& name)
+{
+	wxControl::Create(parent,id,pos,size,style,wxDefaultValidator,name);
+	Connect(id, wxEVT_PAINT, wxPaintEventHandler(wxDynamicBitmap::OnPaint));
+	Connect(id, wxEVT_LEFT_UP,wxMouseEventHandler(wxDynamicBitmap::OnClick));
+	SetBitmap( bitmap);
+	m_grayscale=false;
+	
+}
+
+void wxDynamicBitmap::OnPaint(wxPaintEvent& event)
+{
+	wxPaintDC dc(this);
+	PaintBitmap(dc);
+}
+
+wxBitmap wxDynamicBitmap::GetBitmap()
+{
+	return m_bitmap;
+}
+
+void wxDynamicBitmap::SetBitmap( wxBitmap *bitmap)
+{
+	m_bitmap = *bitmap;
+	SetGrayScale(m_grayscale);
+	wxWindow::Refresh();
+	wxWindow::Update();
+}
+
+void wxDynamicBitmap::PaintBitmap(wxDC& dc)
+{
+	wxColour backgroundColour = GetBackgroundColour();
+	if (!backgroundColour.Ok())
+		backgroundColour = wxSystemSettings::GetColour(wxSYS_COLOUR_3DFACE);
+	dc.SetBrush(wxBrush(backgroundColour));
+	dc.SetPen(wxPen(backgroundColour, 1));
+	wxRect windowRect(wxPoint(0, 0), GetClientSize());
+
+	dc.DrawRectangle(windowRect);
+
+	dc.DrawBitmap((m_grayscale?m_graybitmap:m_bitmap) , 0 , 0, true);
+	
+}
+
+wxSize wxDynamicBitmap::DoGetBestSize() const
+{
+	
+	return wxSize(m_bitmap.GetWidth(),m_bitmap.GetHeight());
+}
+
+void wxDynamicBitmap::OnClick(wxMouseEvent& event)
+{
+	//A hack that makes propogates wxEVT_COMMAND_BUTTON_CLICKED events to the parent of this control
+	wxCommandEvent newevent( wxEVT_COMMAND_BUTTON_CLICKED, GetId() );
+	newevent.SetEventObject( this );
+	GetEventHandler()->ProcessEvent( newevent );
+}
+
+void wxDynamicBitmap::SetGrayScale(bool grayscale)
+{
+	m_grayscale = grayscale;
+	
+	//regenerate the grayscale bitmap;
+	if (grayscale) {
+		wxImage tempimage;
+		tempimage = m_bitmap.ConvertToImage();
+		ConvertToGrayScale(tempimage);
+		m_graybitmap = wxBitmap(tempimage);
+	}
+	wxWindow::Refresh();
+	wxWindow::Update();
+}
+
+void wxDynamicBitmap::ConvertToGrayScale(wxImage& image) const
+{
+	double red2Gray    = 0.297;
+	double green2Gray = 0.589;
+	double blue2Gray = 0.114;
+	int w = image.GetWidth(), h = image.GetHeight();
+	unsigned char *data = image.GetData();
+	int x,y;
+	for (y = 0; y < h; y++)
+		for (x = 0; x < w; x++)
+		{
+			long pos = (y * w + x) * 3;
+			char g = (char) (data[pos]*red2Gray +
+				data[pos+1]*green2Gray +
+				data[pos+2]*blue2Gray);
+			data[pos] = data[pos+1] = data[pos+2] = g;
+		}
+}
+
Index: /trunk/src/wxDynamicBitmap.h
===================================================================
--- /trunk/src/wxDynamicBitmap.h	(revision 134)
+++ /trunk/src/wxDynamicBitmap.h	(revision 134)
@@ -0,0 +1,58 @@
+// $Header$
+/***************************************************************************
+ *   Copyright (C) 2006-2007 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+/**\file wxDynamicBitmap.h
+ *\brief Header file for DBwrapper class.
+ *
+ * This file contains the header for the wxDynamicBitmap class and all the nessecery include files.
+*/
+
+#include <wx/wx.h>
+//#include <wx/control.h>
+
+#ifndef WXDYNAMICBITMAP
+#define WXDYNAMICBITMAP
+
+/// wxDynamicBitmap class - a wrapper for databases
+/**
+the wxDynamicBitmap class is a wxWidgets class for dynamicly displaying bitmaps. This is different
+than wxStaticBitmap in the fact that it immediatly draws the bitmap and doesn't wait for the paint event.
+*/
+
+class wxDynamicBitmap : public wxControl {
+public:
+	wxDynamicBitmap (wxWindow* parent, wxWindowID id, wxBitmap  *bitmap,
+		 const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
+		 long style = wxNO_BORDER, const wxString& name = wxPanelNameStr);
+	virtual void SetBitmap(wxBitmap  *bitmap);
+	wxBitmap GetBitmap();
+	void OnPaint(wxPaintEvent& event);
+	void OnClick(wxMouseEvent& event);
+	wxSize DoGetBestSize() const;
+	void SetGrayScale(bool grayscale=true);
+	void ConvertToGrayScale(wxImage& image) const;
+private:
+	void PaintBitmap(wxDC& dc);
+	wxBitmap m_bitmap;
+	wxBitmap m_graybitmap;
+	bool m_grayscale;
+};
+
+#endif //WXDYNAMICBITMAP
Index: /trunk/templates/cpp
===================================================================
--- /trunk/templates/cpp	(revision 134)
+++ /trunk/templates/cpp	(revision 134)
@@ -0,0 +1,19 @@
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
Index: /trunk/templates/h
===================================================================
--- /trunk/templates/h	(revision 134)
+++ /trunk/templates/h	(revision 134)
@@ -0,0 +1,19 @@
+/***************************************************************************
+ *   Copyright (C) 2006 by Guy Rutenberg   *
+ *   guyrutenberg@gmail.com   *
+ *                                                                         *
+ *   This program is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU General Public License as published by  *
+ *   the Free Software Foundation; either version 2 of the License, or     *
+ *   (at your option) any later version.                                   *
+ *                                                                         *
+ *   This program is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU General Public License for more details.                          *
+ *                                                                         *
+ *   You should have received a copy of the GNU General Public License     *
+ *   along with this program; if not, write to the                         *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
Index: /trunk/windows/openyahtzee.exe.manifest
===================================================================
--- /trunk/windows/openyahtzee.exe.manifest	(revision 134)
+++ /trunk/windows/openyahtzee.exe.manifest	(revision 134)
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
+<assemblyIdentity
+    version="0.64.1.0"
+    processorArchitecture="x86"
+    name="Controls"
+    type="win32"
+/>
+<description>Open Yahtzee: A full-featured cross-platform version of the classic dice game Yahtzee.</description>
+<dependency>
+    <dependentAssembly>
+        <assemblyIdentity
+            type="win32"
+            name="Microsoft.Windows.Common-Controls"
+            version="6.0.0.0"
+            processorArchitecture="X86"
+            publicKeyToken="6595b64144ccf1df"
+            language="*"
+        />
+    </dependentAssembly>
+</dependency>
+</assembly>
Index: /trunk/windows/windows_installer.nsi
===================================================================
--- /trunk/windows/windows_installer.nsi	(revision 134)
+++ /trunk/windows/windows_installer.nsi	(revision 134)
@@ -0,0 +1,139 @@
+; installer.nsi
+;
+; This is the NSIS installer script for Open Yahtzee. 
+;
+;
+; 
+;--------------------------------
+!define version 1.8
+;--------------------------------
+;Include Modern UI
+
+  !include "MUI.nsh"
+
+;--------------------------------
+
+; The name of the installer
+Name "OpenYahtzee ${version}"
+
+; The file to write
+OutFile "OpenYahtzee-${version}.exe"
+
+; The default installation directory
+InstallDir $PROGRAMFILES\OpenYahtzee
+
+;hides details of the install and uninstall but allows the users to see them if he wants
+ShowInstDetails hide
+ShowUninstDetails hide
+
+; Registry key to check for directory (so if you install again, it will 
+; overwrite the old one automatically)
+InstallDirRegKey HKLM "Software\OpenYahtzee" "Install_Dir"
+
+; set the icon for installer
+;Icon "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico"
+!define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico"
+!define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\orange-uninstall.ico"
+
+;--------------------------------
+;Interface Settings
+
+  !define MUI_ABORTWARNING
+
+;--------------------------------
+;Pages
+
+  !insertmacro MUI_PAGE_LICENSE "COPYING.txt"
+  !insertmacro MUI_PAGE_COMPONENTS
+  !insertmacro MUI_PAGE_DIRECTORY
+  !insertmacro MUI_PAGE_INSTFILES
+  
+  !insertmacro MUI_UNPAGE_CONFIRM
+  !insertmacro MUI_UNPAGE_INSTFILES
+  
+;--------------------------------
+
+; The stuff to install
+Section "OpenYahtzee-${version} (required)" SecOpenYahtzee
+
+  SectionIn RO
+  
+  ; Set output path to the installation directory.
+  SetOutPath $INSTDIR
+  
+  ; Put file there
+  File "openyahtzee.exe"
+  File "mingwm10.dll"
+  File "openyahtzee.exe.manifest"
+  File "COPYING.txt"
+  File "ChangeLog.txt"
+  File "icon32.ico"
+  
+  ; Write the installation path into the registry
+  WriteRegStr HKLM SOFTWARE\OpenYahtzee "Install_Dir" "$INSTDIR"
+  
+  ; Write the uninstall keys for Windows
+  WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenYahtzee" "DisplayName" "OpenYahtzee"
+  WriteRegStr HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenYahtzee" "UninstallString" '"$INSTDIR\uninstall.exe"'
+  WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenYahtzee" "NoModify" 1
+  WriteRegDWORD HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenYahtzee" "NoRepair" 1
+  WriteUninstaller "uninstall.exe"
+  
+SectionEnd
+
+; Optional section (can be disabled by the user)
+Section "Start Menu Shortcuts" SecStartMenu
+  ; Remove old shortcuts, if any
+  Delete "$SMPROGRAMS\OpenYahtzee\*.*"
+
+  CreateDirectory "$SMPROGRAMS\OpenYahtzee"
+  CreateShortCut "$SMPROGRAMS\OpenYahtzee\OpenYahtzee.lnk" "$INSTDIR\openyahtzee.exe" "" "$INSTDIR\icon32.ico" 0
+  CreateShortCut "$SMPROGRAMS\OpenYahtzee\Uninstall.lnk" "$INSTDIR\uninstall.exe" "" "$INSTDIR\uninstall.exe" 0
+  
+SectionEnd
+;--------------------------------
+;Languages
+ 
+  !insertmacro MUI_LANGUAGE "English"
+
+;--------------------------------
+;Descriptions
+
+  ;Language strings
+  LangString DESC_SecOpenYahtzee ${LANG_ENGLISH} "The OpenYahtzee game files and the required libraries."
+  LangString DESC_SecStartMenu ${LANG_ENGLISH} "Create shortcuts in the Start menu"
+
+  ;Assign language strings to sections
+  !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
+    !insertmacro MUI_DESCRIPTION_TEXT ${SecOpenYahtzee} $(DESC_SecOpenYahtzee)
+    !insertmacro MUI_DESCRIPTION_TEXT ${SecStartMenu} $(DESC_SecStartMenu)
+  !insertmacro MUI_FUNCTION_DESCRIPTION_END
+
+;--------------------------------
+
+; Uninstaller
+
+Section "Uninstall"
+  
+  ; Remove registry keys
+  DeleteRegKey HKLM "Software\Microsoft\Windows\CurrentVersion\Uninstall\OpenYahtzee"
+  DeleteRegKey HKLM SOFTWARE\OpenYahtzee
+
+  ; Remove files and uninstaller
+  Delete "$INSTDIR\openyahtzee.exe"
+  Delete "$INSTDIR\openyahtzee.exe.manifest"
+  Delete "$INSTDIR\mingwm10.dll"
+  Delete "$INSTDIR\COPYING.txt"
+  Delete "$INSTDIR\ChangeLog.txt"
+  Delete "$INSTDIR\icon32.ico"
+  Delete "$INSTDIR\uninstall.exe"
+  Delete "$INSTDIR\*"
+
+  ; Remove shortcuts, if any
+  Delete "$SMPROGRAMS\OpenYahtzee\*.*"
+
+  ; Remove directories used
+  RMDir "$SMPROGRAMS\OpenYahtzee"
+  RMDir "$INSTDIR"
+
+SectionEnd
