-
Notifications
You must be signed in to change notification settings - Fork 3
Expand file tree
/
Copy pathsettingspage.cpp
More file actions
86 lines (77 loc) · 3.38 KB
/
settingspage.cpp
File metadata and controls
86 lines (77 loc) · 3.38 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
/****************************************************************************
**
** Team Foundation Server plugin for Qt Creator
** Copyright (C) 2014 Jesper Hellesø Hansen
**
** This library is free software; you can redistribute it and/or
** modify it under the terms of the GNU Lesser General Public
** License as published by the Free Software Foundation; either
** version 2.1 of the License, or (at your option) any later version.
**
** This library is distributed in the hope that it will be useful,
** but WITHOUT ANY WARRANTY; without even the implied warranty of
** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
** Lesser General Public License for more details.
**
** You should have received a copy of the GNU Lesser General Public
** License along with this library; if not, write to the Free Software
** Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
**
****************************************************************************/
#include "settingspage.h"
#include "teamfoundationsettings.h"
#include "teamfoundationplugin.h"
using namespace TeamFoundation::Internal;
using namespace Utils;
SettingsPageWidget::SettingsPageWidget(QWidget *parent) :
QWidget(parent)
{
m_ui.setupUi(this);
m_ui.pathChooser->setExpectedKind(PathChooser::ExistingCommand);
m_ui.pathChooser->setPromptDialogTitle(tr("Team Foundation Command"));
m_ui.tfptPathChooser->setExpectedKind(PathChooser::ExistingCommand);
m_ui.tfptPathChooser->setPromptDialogTitle(tr("Team Foundation Power Tools Command"));
}
TeamFoundationSettings SettingsPageWidget::settings() const
{
TeamFoundationSettings rc;
rc.setValue(TeamFoundationSettings::binaryPathKey, m_ui.pathChooser->rawPath());
rc.setValue(TeamFoundationSettings::powerToolsBinaryPathKey, m_ui.tfptPathChooser->rawPath());
rc.setValue(TeamFoundationSettings::userNameKey, m_ui.usernameLineEdit->text());
rc.setValue(TeamFoundationSettings::passwordKey, m_ui.passwordLineEdit->text());
rc.setValue(TeamFoundationSettings::timeoutKey, m_ui.timeOutSpinBox->value());
rc.setValue(TeamFoundationSettings::revertUnchangedFilesBeforeCheckinKey, m_ui.revertUnchangedFilesBeforeCheckin->isChecked());
return rc;
}
void SettingsPageWidget::setSettings(const TeamFoundationSettings &s)
{
m_ui.pathChooser->setFileName(s.binaryPath());
m_ui.tfptPathChooser->setFileName(s.tftpBinaryPath());
m_ui.usernameLineEdit->setText(s.stringValue(TeamFoundationSettings::userNameKey));
m_ui.passwordLineEdit->setText(s.stringValue(TeamFoundationSettings::passwordKey));
m_ui.timeOutSpinBox->setValue(s.intValue(TeamFoundationSettings::timeoutKey));
m_ui.revertUnchangedFilesBeforeCheckin->setChecked(s.boolValue(TeamFoundationSettings::revertUnchangedFilesBeforeCheckinKey));
}
SettingsPage::SettingsPage(QObject *parent)
: VcsBaseOptionsPage(parent)
, m_widget(nullptr)
{
setId("T.TeamFoundation");
setDisplayName(tr("TeamFoundation"));
}
QWidget *SettingsPage::widget()
{
if (!m_widget) {
m_widget = new SettingsPageWidget;
m_widget->setSettings(TeamFoundationPlugin::instance()->settings());
}
return m_widget;
}
void SettingsPage::apply()
{
TeamFoundationPlugin::instance()->setSettings(m_widget->settings());
}
void SettingsPage::finish()
{
delete m_widget;
}