Commit 58111b2d authored by Friedemann Kleint's avatar Friedemann Kleint
Browse files

API Documentation: Add VCSBase.

parent 34a96d88
......@@ -108,6 +108,10 @@
\o \l{Debugger}
\o Debugging functionality.
\row
\o \l{VCSBase}
\o Base classes for version control support.
\endtable
*/
......
......@@ -14,7 +14,8 @@ headerdirs = . \
../../src/plugins/coreplugin \
../../src/plugins/find \
../../src/plugins/locator \
../../src/plugins/debugger
../../src/plugins/debugger \
../../src/plugins/vcsbase
sourcedirs = . \
../../src/libs/aggregation \
......@@ -25,7 +26,8 @@ sourcedirs = . \
../../src/plugins/coreplugin \
../../src/plugins/find \
../../src/plugins/locator \
../../src/plugins/debugger
../../src/plugins/debugger \
../../src/plugins/vcsbase
# -- Generate complete documentation. Set this to 'false'
# to generate public API documentation only.
......
......@@ -43,6 +43,19 @@
typedef QMap<QString, QTextCharFormat> ChangeNumberFormatMap;
/*!
\class VCSBase::BaseAnnotationHighlighter
\brief Base for a highlighter for annotation lines of the form 'changenumber:XXXX'.
The change numbers are assigned a color gradient. Example:
\code
112: text1 <color 1>
113: text2 <color 2>
112: text3 <color 1>
\endcode
*/
namespace VCSBase {
struct BaseAnnotationHighlighterPrivate {
......
......@@ -42,12 +42,6 @@ namespace VCSBase {
struct BaseAnnotationHighlighterPrivate;
// Base for a highlighter for annotation lines of the form
// 'changenumber:XXXX'. The change numbers are assigned a color gradient.
// Example:
// 112: text1 <color 1>
// 113: text2 <color 2>
// 112: text3 <color 1>
class VCSBASE_EXPORT BaseAnnotationHighlighter : public TextEditor::SyntaxHighlighter
{
Q_OBJECT
......
......@@ -43,6 +43,27 @@
#include <QtCore/QDir>
#include <QtGui/QMessageBox>
/*!
\class VCSBase::BaseCheckoutWizard
\brief A Core::IWizard implementing a wizard for initially checking out a project using
a version control system.
Implements all of Core::IWizard with the exception of
name()/description() and icon().
Pops up a QWizard consisting of a Parameter Page which is created
by a virtual factory function and a progress
page containing a log text. The factory function createJob()
creates a job with the output connected to the log window,
returning the path to the checkout.
On success, the wizard tries to locate a project file
and open it.
\sa VCSBase::BaseCheckoutWizardPage
*/
namespace VCSBase {
struct BaseCheckoutWizardPrivate {
......
......@@ -49,20 +49,6 @@ namespace VCSBase {
class AbstractCheckoutJob;
struct BaseCheckoutWizardPrivate;
/* A Core::IWizard implementing a wizard for initially checking
* out a project using a version control system.
* Implements all of Core::IWizard with the exception of
* name()/description() and icon().
* Pops up a QWizard consisting of a Parameter Page which is created
* by a virtual factory function and a progress
* page containing a log text. The factory function createJob()
* creates a job with the output connected to the log window,
* returning the path to the checkout.
* On success, the wizard tries to locate a project file
* and open it.
* BaseCheckoutWizardPage is provided as a convenience base class
* for parameter wizard pages. */
class VCSBASE_EXPORT BaseCheckoutWizard : public Core::IWizard
{
Q_OBJECT
......
......@@ -36,6 +36,18 @@
#include <QtGui/QIcon>
/*!
\class VCSBase::BaseCheckoutWizardPage
\brief Base class for a parameter page of a checkout wizard.
Lets the user specify the repository, a checkout directory and
the path. Contains a virtual to derive the checkout directory
from the repository as it is entered.
\sa VCSBase::BaseCheckoutWizard
*/
namespace VCSBase {
struct BaseCheckoutWizardPagePrivate {
......
......@@ -46,11 +46,6 @@ namespace Ui {
struct BaseCheckoutWizardPagePrivate;
/* Base class for a parameter page of a checkout wizard.
* Let's the user specify the repository, a checkout directory and
* the path. Contains a virtual to derive the checkout directory
* from the repository as it is entered. */
class VCSBASE_EXPORT BaseCheckoutWizardPage : public QWizardPage {
Q_OBJECT
Q_PROPERTY(bool isBranchSelectorVisible READ isBranchSelectorVisible WRITE setBranchSelectorVisible)
......
......@@ -41,6 +41,14 @@
#include <QtCore/QCoreApplication>
/*!
\class VCSBase::BaseVCSEditorFactory
\brief Base class for editor factories creating instances of VCSBaseEditor subclasses.
\sa VCSBase::VCSBaseEditorWidget
*/
namespace VCSBase {
struct BaseVCSEditorFactoryPrivate
......
......@@ -45,8 +45,6 @@ namespace VCSBase {
struct BaseVCSEditorFactoryPrivate;
// Base class for editor factories creating instances of VCSBaseEditor
// subclasses.
class VCSBASE_EXPORT BaseVCSEditorFactory : public Core::IEditorFactory
{
Q_OBJECT
......
......@@ -43,6 +43,16 @@
#include <utils/qtcassert.h>
enum { debug = 0 };
/*!
\class VCSBase::AbstractCheckoutJob
\brief Abstract base class for a job creating an initial project checkout.
It should be something that runs in the background producing log messages.
\sa VCSBase::BaseCheckoutWizard
*/
namespace VCSBase {
AbstractCheckoutJob::AbstractCheckoutJob(QObject *parent) :
......@@ -82,6 +92,12 @@ static inline QSharedPointer<QProcess> createProcess()
return Utils::SynchronousProcess::createProcess(flags);
}
/*!
\class VCSBase::ProcessCheckoutJob
\brief Convenience implementation of a VCSBase::AbstractCheckoutJob using a QProcess.
*/
ProcessCheckoutJobPrivate::ProcessCheckoutJobPrivate() :
process(createProcess())
{
......
......@@ -70,8 +70,6 @@ signals:
void output(const QString &what);
};
/* Convenience implementation using a QProcess. */
class VCSBASE_EXPORT ProcessCheckoutJob : public AbstractCheckoutJob
{
Q_OBJECT
......
......@@ -40,6 +40,15 @@
#include <QtGui/QApplication>
#include <QtGui/QCursor>
/*!
\class VCSBase::CheckoutProgressWizardPage
\brief Page showing the progress of an initial project checkout. Turns complete when the job
succeeds.
\sa VCSBase::BaseCheckoutWizard
*/
namespace VCSBase {
namespace Internal {
......
......@@ -46,9 +46,6 @@ namespace Ui {
class CheckoutProgressWizardPage;
}
/* Page showing the progress of an initial project
* checkout. Turns complete when the job succeeds. */
class CheckoutProgressWizardPage : public QWizardPage {
Q_OBJECT
Q_DISABLE_COPY(CheckoutProgressWizardPage)
......
......@@ -40,6 +40,13 @@
#include <QtGui/QPushButton>
/*!
\class VCSBase::Internal::CheckoutWizardDialog
Dialog used by \sa VCSBase::BaseCheckoutWizard. Overwrites reject() to first
kill the checkout and then close.
*/
namespace VCSBase {
namespace Internal {
......
......@@ -44,10 +44,6 @@ class AbstractCheckoutJob;
namespace Internal {
class CheckoutProgressWizardPage;
/* See BaseCheckoutWizard.
* Overwrites reject() to first kill the checkout
* and then close. */
class CheckoutWizardDialog : public Utils::Wizard {
Q_OBJECT
public:
......
......@@ -53,6 +53,17 @@
#include <QtCore/QFuture>
#include <QtCore/QtConcurrentRun>
/*!
\class VCSBase::CleanDialog
\brief File selector dialog for files not under version control.
Completely clean a directory under version control
from all files that are not under version control based on a list
generated from the version control system. Presents the user with
a checkable list of files and/or directories. Double click opens a file.
*/
enum { nameColumn, columnCount };
enum { fileNameRole = Qt::UserRole, isDirectoryRole = Qt::UserRole + 1 };
......
......@@ -45,11 +45,6 @@ QT_END_NAMESPACE
namespace VCSBase {
struct CleanDialogPrivate;
/* CleanDialog: Completely clean a directory under version control
* from all files that are not under version control based on a list
* generated from the version control system. Presents the user with
* a checkable list of files and/or directories. Double click opens a file. */
class VCSBASE_EXPORT CleanDialog : public QDialog {
Q_OBJECT
public:
......
......@@ -34,6 +34,17 @@
#include "corelistener.h"
#include "vcsbasesubmiteditor.h"
/*!
\class VCSBase::Internal::CoreListener
\brief CoreListener catching closing of a submit editor.
Catch the closing of a submit editor to trigger the submit.
One instance of this class exists, connected to the instances
of VCSBasePlugin, which dispatch if the editor kind matches theirs
(which is why the approach of passing the bool result was chosen).
*/
namespace VCSBase {
namespace Internal {
......
......@@ -42,11 +42,6 @@ class VCSBaseSubmitEditor;
namespace Internal {
// Catch the closing of a submit editor to trigger the submit.
// One instance of this class exists, connected to the instances
// of VCSBasePlugin, which dispatch if the editor kind matches theirs
// (which is why the approach of passing the bool result was chosen).
class CoreListener : public Core::ICoreListener
{
Q_OBJECT
......@@ -58,6 +53,6 @@ signals:
void submitEditorAboutToClose(VCSBaseSubmitEditor *e, bool *result);
};
}
}
} // Internal
} // VCSBase
#endif // CORELISTENER_H
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment