===============================================================================
This file contains a summary of any concern about the CvsPart plugin for Gideon
===============================================================================

MEMO (for me, for others ;-)

(Feel free to add your comments here, but first fill this section so we can
know who said what and elaborate :-)
[M] == Mario Scalas [marios]

[M] This is an experimental attempt to integrate Cervisia HEAD's cvsservice into
    gideon (read FAQ). This part _does_ require cvsservice being installed on
    your system: I'm not an auto* wizard so you have to manually pass to the
    configure script the options:
    --with-extra-libs=$HOME/kde/lib --with-extra-includes=$HOME/kde/include
    (where $HOME/kde is where I install my own kde stuff so I don't mess with
    working kde installation)

    WARNING: Keep in mind that there are incoming changes in cvsservice architecture
    which could make this part quite subject to heavy modifications.
    WARNING2: If it doesn't compile try to update your cvsservice.

Implementation of this componente is done by:
- class CvsPart, which does provide integration within gideon, set-up GUI
  integration, forward cvs commands to the implementation (m_impl). It does also
  intercepts signals like "mew files added to project" and "... removed from ...".
- class CvsPartImpl & CvsServiceImpl do implement the actus feature: more general
  functions (like checking for whether files are in repository, provide checks
  on file lists, ...) so that it can be used for other implementations: currently
  I've only provided that using CvsService from Cervisia HEAD.
- class CvsProcessWidget provides output wrapping for commands (ok, it is useful
  for debugging too ;-). This seems to be pretty *** buggy *** and needs to be
  fixed.
- class CvsOptions provides info about the user preferences when executing commands:
  settings are stored in myprj.kdevses file, loaded when project is opened and
  saved when project is closed.
- There is a bunch of dialog classes for collecting useful data about the operations
  one wants to perform: the only exception is LogForm which does perform some
  complex text parsing and so encapsulates much logic (It was already made in this
  way: I simply ported to CvsService ;-)

Current features:
* because this is a (buggy) direct conversion, as in parts/cvs.
* it is possbile to 'add as binary' files to repository
* checkout from remote repository ability added to the appwizard/importdlg
* should handle :ext: repositories thanks to cvsservice
* can tag / un-tag files
* Can revert and diff between specific releases
* ...

To Do list

(Ok, this is based on cvsservice so we have already the features: we need only to
integrate them ;-)

1. There is need of testing for the SSH repositories!
2. Share a common outputview between VCS: CvsProcessWidget should be reworked :-/

F.A.Q.

Q: Does cvspart support login with :pserver: or :ext: ?
A: Well, I dunno ;-) I have no ssh repositories to test so feel free to provide
feedback on the subject :-))

