forked from qt-creator/qt-creator
ClearCase: Make a some items proper data members
Change-Id: I7d1c8490ca72c6ba0b16111d2191826583037c6e Reviewed-by: Orgad Shaneh <orgads@gmail.com>
This commit is contained in:
@@ -148,6 +148,13 @@ static const VcsBaseEditorParameters editorParameters[] = {
|
||||
"text/x-patch"}
|
||||
};
|
||||
|
||||
static const VcsBaseSubmitEditorParameters submitParameters = {
|
||||
Constants::CLEARCASE_SUBMIT_MIMETYPE,
|
||||
Constants::CLEARCASECHECKINEDITOR_ID,
|
||||
Constants::CLEARCASECHECKINEDITOR_DISPLAY_NAME,
|
||||
VcsBaseSubmitEditorParameters::DiffFiles
|
||||
};
|
||||
|
||||
// Utility to find a parameter set by type
|
||||
static const VcsBaseEditorParameters *findType(int ie)
|
||||
{
|
||||
@@ -216,7 +223,7 @@ public:
|
||||
static ClearCasePluginPrivate *instance();
|
||||
|
||||
QString ccGetCurrentActivity() const;
|
||||
QList<QStringPair> activities(int *current = nullptr) const;
|
||||
QList<QStringPair> activities(int *current = nullptr);
|
||||
QString ccGetPredecessor(const QString &version) const;
|
||||
QStringList ccGetActiveVobs() const;
|
||||
ViewData ccGetView(const QString &workingDir) const;
|
||||
@@ -339,10 +346,18 @@ private:
|
||||
|
||||
QAction *m_menuAction = nullptr;
|
||||
bool m_submitActionTriggered = false;
|
||||
QMutex *m_activityMutex;
|
||||
QMutex m_activityMutex;
|
||||
QList<QStringPair> m_activities;
|
||||
QSharedPointer<StatusMap> m_statusMap;
|
||||
|
||||
ClearCaseSettingsPage m_settingsPage;
|
||||
|
||||
VcsSubmitEditorFactory m_submitEditorFactory {
|
||||
submitParameters,
|
||||
[] { return new ClearCaseSubmitEditor; },
|
||||
this
|
||||
};
|
||||
|
||||
friend class ClearCasePlugin;
|
||||
#ifdef WITH_TESTS
|
||||
bool m_fakeClearTool = false;
|
||||
@@ -357,9 +372,8 @@ ClearCasePluginPrivate::~ClearCasePluginPrivate()
|
||||
{
|
||||
cleanCheckInMessageFile();
|
||||
// wait for sync thread to finish reading activities
|
||||
m_activityMutex->lock();
|
||||
m_activityMutex->unlock();
|
||||
delete m_activityMutex;
|
||||
m_activityMutex.lock();
|
||||
m_activityMutex.unlock();
|
||||
}
|
||||
|
||||
void ClearCasePluginPrivate::cleanCheckInMessageFile()
|
||||
@@ -583,13 +597,6 @@ QString ClearCasePluginPrivate::findTopLevel(const QString &directory) const
|
||||
return ccManagesDirectory(directory);
|
||||
}
|
||||
|
||||
static const VcsBaseSubmitEditorParameters submitParameters = {
|
||||
Constants::CLEARCASE_SUBMIT_MIMETYPE,
|
||||
Constants::CLEARCASECHECKINEDITOR_ID,
|
||||
Constants::CLEARCASECHECKINEDITOR_DISPLAY_NAME,
|
||||
VcsBaseSubmitEditorParameters::DiffFiles
|
||||
};
|
||||
|
||||
bool ClearCasePlugin::initialize(const QStringList & /*arguments */, QString *errorMessage)
|
||||
{
|
||||
Q_UNUSED(errorMessage)
|
||||
@@ -604,7 +611,6 @@ void ClearCasePlugin::extensionsInitialized()
|
||||
|
||||
ClearCasePluginPrivate::ClearCasePluginPrivate()
|
||||
: VcsBase::VcsBasePluginPrivate(Context(CLEARCASE_CONTEXT)),
|
||||
m_activityMutex(new QMutex),
|
||||
m_statusMap(new StatusMap)
|
||||
{
|
||||
dd = this;
|
||||
@@ -631,10 +637,6 @@ ClearCasePluginPrivate::ClearCasePluginPrivate()
|
||||
connect(SessionManager::instance(), &SessionManager::startupProjectChanged,
|
||||
this, &ClearCasePluginPrivate::projectChanged);
|
||||
|
||||
new ClearCaseSettingsPage(this);
|
||||
|
||||
new VcsSubmitEditorFactory(submitParameters, [] { return new ClearCaseSubmitEditor; }, this, this);
|
||||
|
||||
// any editor responds to describe (when clicking a version)
|
||||
const auto describeFunc = [this](const QString &source, const QString &changeNr) {
|
||||
describe(source, changeNr);
|
||||
@@ -2071,18 +2073,18 @@ QList<QStringPair> ClearCasePluginPrivate::ccGetActivities() const
|
||||
|
||||
void ClearCasePluginPrivate::refreshActivities()
|
||||
{
|
||||
QMutexLocker locker(m_activityMutex);
|
||||
QMutexLocker locker(&m_activityMutex);
|
||||
m_activity = ccGetCurrentActivity();
|
||||
m_activities = ccGetActivities();
|
||||
}
|
||||
|
||||
QList<QStringPair> ClearCasePluginPrivate::activities(int *current) const
|
||||
QList<QStringPair> ClearCasePluginPrivate::activities(int *current)
|
||||
{
|
||||
QList<QStringPair> activitiesList;
|
||||
QString curActivity;
|
||||
const VcsBasePluginState state = currentState();
|
||||
if (state.topLevel() == state.currentProjectTopLevel()) {
|
||||
QMutexLocker locker(m_activityMutex);
|
||||
QMutexLocker locker(&m_activityMutex);
|
||||
activitiesList = m_activities;
|
||||
curActivity = m_activity;
|
||||
} else {
|
||||
|
@@ -120,8 +120,7 @@ void SettingsPageWidget::apply()
|
||||
ClearCasePlugin::setSettings(rc);
|
||||
}
|
||||
|
||||
ClearCaseSettingsPage::ClearCaseSettingsPage(QObject *parent)
|
||||
: Core::IOptionsPage(parent)
|
||||
ClearCaseSettingsPage::ClearCaseSettingsPage()
|
||||
{
|
||||
setId(ClearCase::Constants::VCS_ID_CLEARCASE);
|
||||
setDisplayName(tr("ClearCase"));
|
||||
|
@@ -34,7 +34,7 @@ namespace Internal {
|
||||
class ClearCaseSettingsPage final : public Core::IOptionsPage
|
||||
{
|
||||
public:
|
||||
explicit ClearCaseSettingsPage(QObject *parent);
|
||||
ClearCaseSettingsPage();
|
||||
};
|
||||
|
||||
} // namespace ClearCase
|
||||
|
Reference in New Issue
Block a user