/**
* \mainpage TortoiseSVN
* \section introduction Introduction
* TortoiseSVN is a windows shell integration for the Subversion
* source versioning system. Subversion is the successor
* of the famous CVS. See http://subversion.tigris.org for
* more information on Subversion.
*
* TortoiseSVN was inspired by the similar program TortoiseCVS.
*
* With TortoiseSVN you can use Subversion directly from the
* Windows Explorer. The Subversion status of your project
* files are clearly visible and all commands Subversion
* provides are accessible directly from the Explorer Context-Menu
* (right-click).
*
* \section Requirements Requirements
* TortoiseSVN runs under Win2k and later.
* You also need at least Internet Explorer Version 5 or higher.
*
* \section Installation Installation
* TortoiseSVN comes with an installer. Just run the installer and follow
* the simple steps of the wizard. You may need to restart your computer
* to get TortoiseSVN to work, depending on your registry settings. If you're
* not sure, fire up the explorer, right click on a folder and check if
* the TortoiseSVN menus are there.
*
* \section Sourcecode Source code
* The full source code of TortoiseSVN is available at http://tortoisesvn.net.
*
* For information on how to build TortoiseSVN from the source code see \ref build
*
* \section Internals Internals
* TortoiseSVN is a shell extension. All commands and dialogs are started by
* using the shell context menu on files and folders.
*
* The shell extension part is separate from the main application to reduce
* the memory use in the shell. The shell extension only does what's absolutely
* necessary and then creates a new process of the main application to do the
* real work. The main application is TortoiseProc. The shell passes all the
* information to TortoiseProc via command line switches and temporary files.
*
* To avoid loading the whole TortoiseShell dll if it isn't really wanted (e.g.,
* in applications other than the explorer itself), there's a stub dll which
* is registered in the shell as the extension. That stub dll then loads the
* TortoiseShell dll if required.
*/
/**
* \page licensesvn Subversion license
*
Subversion License
* ================================================================
* Copyright (c) 2004 CollabNet. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
* met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
*
* 3. The end-user documentation included with the redistribution, if
* any, must include the following acknowledgment: "This product includes
* software developed by CollabNet (http://www.Collab.Net/)."
* Alternately, this acknowledgment may appear in the software itself, if
* and wherever such third-party acknowledgments normally appear.
*
* 4. The hosted project names must not be used to endorse or promote
* products derived from this software without prior written
* permission. For written permission, please contact info@collab.net.
*
* 5. Products derived from this software may not use the "Tigris" name
* nor may "Tigris" appear in their names without prior written
* permission of CollabNet.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL COLLABNET OR ITS CONTRIBUTORS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
* IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
* ====================================================================
*
* This software consists of voluntary contributions made by many
* individuals on behalf of CollabNet.
*/
/**
* \page license TortoiseSVN license
* GNU General Public License
* also available at http://www.gnu.org/licenses/gpl.html
* \n
* Version 2, June 1991
* \n
* Copyright (C) 1989, 1991 Free Software Foundation, Inc.
* \n
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* \n
* Everyone is permitted to copy and distribute verbatim copies
* of this license document, but changing it is not allowed.
* \n
* 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.
* \n
* 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.
* \n
* 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.
* \n
* 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.
* \n
* 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.
* \n
* 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.
* \n
* 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.
* \n
* The precise terms and conditions for copying, distribution and modification follow.
*
* TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
* -# 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".
* \n
* 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.
* -# 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.
* \n
* 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.
* -# 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:
* - You must cause the modified files to carry prominent notices stating
* that you changed the files and the date of any change.
* - 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.
* - 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.
* \n
* 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.
* \n
* 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.
* -# 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:
* - 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,
* - 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,
* - 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.
* \n
* 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.
* -# 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.
* -# 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.
* -# 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.
* -# 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.
* \n
* 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.
* \n
* 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.
* \n
* This section is intended to make thoroughly clear what is believed to be a consequence
* of the rest of this License.
* -# 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.
* -# 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.
* \n
* 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.
* -# 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
* -# 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.
* -# 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.
*
*/
/**
* \defgroup TortoiseShell TortoiseShell
* Windows-Shell integration of TortoiseSVN.
* This project links to a COM object implementing all required
* interfaces a shell extension needs.
* The shell extension draws the overlay icons, provides the right-click menu,
* the property sheet and the SVN column (in Win2k and later).
*/
/**
* \defgroup TortoiseProc TortoiseProc
* Main program of TortoiseSVN. TortoiseShell calls this program
* to execute the required commands, the commands are specified in
* the command line.
*/
/**
* \defgroup TortoiseMerge TortoiseMerge
* A separate Diff/Merge program, shipped with TortoiseSVN.
*/
/**
* \defgroup TortoiseBlame TortoiseBlame
* A viewer for Subversion blame information.
*/
/**
* \defgroup TortoiseIDiff TortoiseIDiff
* An image diff viewer.
*/
/**
* \defgroup TortoiseUDiff TortoiseUDiff
* An unified diff viewer.
*/
/**
* \defgroup ResText ResText
* An utility to extract resource strings from executable files and apply
* translated strings back to them. Used for translating.
*/
/**
* \defgroup SubWCRev SubWCRev
* A tool to get information about a Subversion working copy.
*/
/**
* \defgroup Utils Utils
* Utility classes and functions not specific to TortoiseSVN, i.e. they
* could be used in other programs too.
*/
/**
* \defgroup SVN SVN
* Wrappers for the Subversion API.
*/
/**
* \defgroup TSVNCache TSVNCache
* Cache for Subversion status of files and folders.
*/
*/