mirror of
https://bitbucket.org/smil3y/kde-extraapps.git
synced 2025-02-26 11:52:54 +00:00
84 lines
2.2 KiB
C++
84 lines
2.2 KiB
C++
/***************************************************************************
|
|
* Copyright 2008 Andreas Pakulat <apaku@gmx.de> *
|
|
* *
|
|
* 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. *
|
|
* *
|
|
***************************************************************************/
|
|
|
|
#ifndef KDEVPLATFORM_VCSPLUGINHELPER_H
|
|
#define KDEVPLATFORM_VCSPLUGINHELPER_H
|
|
|
|
#include "vcsexport.h"
|
|
|
|
#include <kurl.h>
|
|
#include "vcsrevision.h"
|
|
|
|
class KJob;
|
|
class QAction;
|
|
class QActionGroup;
|
|
class QMenu;
|
|
|
|
namespace KTextEditor
|
|
{
|
|
class View;
|
|
class Document;
|
|
}
|
|
|
|
using KTextEditor::View;
|
|
|
|
namespace KDevelop
|
|
{
|
|
class VcsDiff;
|
|
class IPlugin;
|
|
class IBasicVersionControl;
|
|
class Context;
|
|
class ContextMenuExtension;
|
|
class VcsCommitDialog;
|
|
class ProjectBaseItem;
|
|
|
|
class KDEVPLATFORMVCS_EXPORT VcsPluginHelper
|
|
: public QObject
|
|
{
|
|
Q_OBJECT
|
|
public:
|
|
VcsPluginHelper(IPlugin * parent, IBasicVersionControl * vcs);
|
|
virtual ~VcsPluginHelper();
|
|
|
|
void setupFromContext(KDevelop::Context*);
|
|
void addContextDocument(const KUrl& url);
|
|
KUrl::List const & contextUrlList();
|
|
QMenu* commonActions();
|
|
|
|
public Q_SLOTS:
|
|
void commit();
|
|
void add();
|
|
void revert();
|
|
void history(const VcsRevision& rev = VcsRevision::createSpecialRevision( VcsRevision::Base ));
|
|
void annotation();
|
|
void annotationContextMenuAboutToShow( KTextEditor::View* view, QMenu* menu, int line);
|
|
void diffToBase();
|
|
void diffForRev();
|
|
void diffForRevGlobal();
|
|
void update();
|
|
void pull();
|
|
void push();
|
|
void diffJobFinished(KJob* job);
|
|
|
|
void revertDone(KJob* job);
|
|
void disposeEventually(KTextEditor::Document*);
|
|
void disposeEventually(View*, bool);
|
|
|
|
private Q_SLOTS:
|
|
void delayedModificationWarningOn();
|
|
|
|
private:
|
|
struct VcsPluginHelperPrivate;
|
|
QScopedPointer<VcsPluginHelperPrivate> d;
|
|
};
|
|
|
|
} // namespace KDevelop
|
|
|
|
#endif
|