mirror of
https://bitbucket.org/smil3y/kde-workspace.git
synced 2025-02-24 02:42:50 +00:00
dolphin: show the file(s) staged for commit in git plugin commit dialog
or should it show diff rather? Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
parent
6b689bbdbc
commit
ec94a7cf06
3 changed files with 26 additions and 10 deletions
|
@ -369,7 +369,7 @@ void FileViewGitPlugin::slotCommit()
|
||||||
const QStringList changedgitfiles = changedGitFiles();
|
const QStringList changedgitfiles = changedGitFiles();
|
||||||
Q_ASSERT(!changedgitfiles.isEmpty());
|
Q_ASSERT(!changedgitfiles.isEmpty());
|
||||||
|
|
||||||
GitCommitDialog gitdialog;
|
GitCommitDialog gitdialog(changedgitfiles, nullptr);
|
||||||
if (gitdialog.exec() != QDialog::Accepted) {
|
if (gitdialog.exec() != QDialog::Accepted) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,22 +26,33 @@
|
||||||
#include <git2/message.h>
|
#include <git2/message.h>
|
||||||
#include <git2/errors.h>
|
#include <git2/errors.h>
|
||||||
|
|
||||||
GitCommitDialog::GitCommitDialog(QWidget *parent)
|
GitCommitDialog::GitCommitDialog(const QStringList &changedfiles, QWidget *parent)
|
||||||
: KDialog(parent),
|
: KDialog(parent),
|
||||||
m_vbox(nullptr),
|
m_mainvbox(nullptr),
|
||||||
m_commit(nullptr)
|
m_commit(nullptr),
|
||||||
|
m_detailsvbox(nullptr),
|
||||||
|
m_changedfiles(nullptr)
|
||||||
{
|
{
|
||||||
setCaption(i18nc("@title:window", "<application>Git</application> Commit"));
|
setCaption(i18nc("@title:window", "<application>Git</application> Commit"));
|
||||||
setButtons(KDialog::Ok | KDialog::Cancel);
|
setButtons(KDialog::Details| KDialog::Ok | KDialog::Cancel);
|
||||||
setDefaultButton(KDialog::Ok);
|
setDefaultButton(KDialog::Ok);
|
||||||
setButtonText(KDialog::Ok, i18nc("@action:button", "Commit"));
|
setButtonText(KDialog::Ok, i18nc("@action:button", "Commit"));
|
||||||
|
|
||||||
m_vbox = new KVBox(this);
|
m_mainvbox = new KVBox(this);
|
||||||
setMainWidget(m_vbox);
|
setMainWidget(m_mainvbox);
|
||||||
|
|
||||||
m_commit = new KTextEdit(m_vbox);
|
m_commit = new KTextEdit(m_mainvbox);
|
||||||
m_commit->setLineWrapMode(QTextEdit::FixedColumnWidth);
|
m_commit->setLineWrapMode(QTextEdit::FixedColumnWidth);
|
||||||
m_commit->setLineWrapColumnOrWidth(72);
|
m_commit->setLineWrapColumnOrWidth(72);
|
||||||
|
|
||||||
|
m_detailsvbox = new QGroupBox(m_mainvbox);
|
||||||
|
m_detailsvbox->setTitle(i18n("The following files are staged for commit"));
|
||||||
|
m_detailslayout = new QVBoxLayout(m_detailsvbox);
|
||||||
|
m_changedfiles = new KTextEdit(m_detailsvbox);
|
||||||
|
m_changedfiles->setReadOnly(true);
|
||||||
|
m_changedfiles->setText(changedfiles.join(QLatin1String("\n")));
|
||||||
|
m_detailslayout->addWidget(m_changedfiles);
|
||||||
|
setDetailsWidget(m_detailsvbox);
|
||||||
}
|
}
|
||||||
|
|
||||||
GitCommitDialog::~GitCommitDialog()
|
GitCommitDialog::~GitCommitDialog()
|
||||||
|
|
|
@ -22,19 +22,24 @@
|
||||||
#include <kdialog.h>
|
#include <kdialog.h>
|
||||||
#include <kvbox.h>
|
#include <kvbox.h>
|
||||||
#include <ktextedit.h>
|
#include <ktextedit.h>
|
||||||
|
#include <QGroupBox>
|
||||||
|
#include <QVBoxLayout>
|
||||||
|
|
||||||
class GitCommitDialog : public KDialog
|
class GitCommitDialog : public KDialog
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
GitCommitDialog(QWidget *parent = nullptr);
|
GitCommitDialog(const QStringList &changedfiles, QWidget *parent = nullptr);
|
||||||
~GitCommitDialog();
|
~GitCommitDialog();
|
||||||
|
|
||||||
QByteArray message() const;
|
QByteArray message() const;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
KVBox* m_vbox;
|
KVBox* m_mainvbox;
|
||||||
KTextEdit* m_commit;
|
KTextEdit* m_commit;
|
||||||
|
QGroupBox* m_detailsvbox;
|
||||||
|
QVBoxLayout* m_detailslayout;
|
||||||
|
KTextEdit* m_changedfiles;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // GITCOMMITDIALOG_H
|
#endif // GITCOMMITDIALOG_H
|
||||||
|
|
Loading…
Add table
Reference in a new issue