# HG changeset patch # User Chris Cannam # Date 1290637495 0 # Node ID f70ccc15c9d0610ecae572c1ca4b17f98a82ac9d # Parent f9af5e93de0ebe59612d8f85e76c104fc04e4de8 * Add ConfirmCommentDialog diff -r f9af5e93de0e -r f70ccc15c9d0 confirmcommentdialog.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/confirmcommentdialog.cpp Wed Nov 24 22:24:55 2010 +0000 @@ -0,0 +1,78 @@ +/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ + +/* + EasyMercurial + + Based on hgExplorer by Jari Korhonen + Copyright (c) 2010 Jari Korhonen + Copyright (c) 2010 Chris Cannam + Copyright (c) 2010 Queen Mary, University of London + + 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. See the file + COPYING included with this distribution for more information. +*/ + +#include "confirmcommentdialog.h" + +#include +#include + +bool ConfirmCommentDialog::confirmFilesAction(QWidget *parent, + QString title, + QString introText, + QString introTextWithCount, + QStringList files) +{ + QString text; + if (files.size() <= 10) { + text = "" + introText; + text += ""; + foreach (QString file, files) { + text += file + "
"; + } + text += "
"; + } else { + text = "" + introText.arg(files.size()); + } + return (QMessageBox::information(parent, + title, + text, + QMessageBox::Ok | QMessageBox::Cancel, + QMessageBox::Ok) + == QMessageBox::Ok); +} + +bool ConfirmCommentDialog::confirmAndComment(QWidget *parent, + QString title, + QString introText, + QString introTextWithCount, + QStringList files, + QString &comment) +{ + QString text; + if (files.size() <= 10) { + text = "" + introText; + text += ""; + foreach (QString file, files) { + text += file + "
"; + } + text += "
"; + } else { + text = "" + introText.arg(files.size()); + } + return confirmAndComment(parent, title, text, comment); +} + +bool ConfirmCommentDialog::confirmAndComment(QWidget *parent, + QString title, + QString introText, + QString &comment) +{ + bool ok = false; + comment = QInputDialog::getText(parent, title, introText, + QLineEdit::Normal, comment, &ok); + return ok; +} diff -r f9af5e93de0e -r f70ccc15c9d0 confirmcommentdialog.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/confirmcommentdialog.h Wed Nov 24 22:24:55 2010 +0000 @@ -0,0 +1,48 @@ +/* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ + +/* + EasyMercurial + + Based on hgExplorer by Jari Korhonen + Copyright (c) 2010 Jari Korhonen + Copyright (c) 2010 Chris Cannam + Copyright (c) 2010 Queen Mary, University of London + + 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. See the file + COPYING included with this distribution for more information. +*/ + +#ifndef CONFIRMCOMMENTDIALOG_H +#define CONFIRMCOMMENTDIALOG_H + +#include +#include +#include + +class ConfirmCommentDialog +{ +public: + static bool confirmFilesAction(QWidget *parent, + QString title, + QString introText, + QString introTextWithCount, + QStringList files); + + static bool confirmAndComment(QWidget *parent, + QString title, + QString introText, + QString introTextWithCount, + QStringList files, + QString &comment); + + static bool confirmAndComment(QWidget *parent, + QString title, + QString introText, + QString &comment); + +}; + +#endif // CONFIRMCOMMENTDIALOG_H diff -r f9af5e93de0e -r f70ccc15c9d0 easyhg.pro --- a/easyhg.pro Wed Nov 24 19:57:30 2010 +0000 +++ b/easyhg.pro Wed Nov 24 22:24:55 2010 +0000 @@ -32,7 +32,8 @@ multichoicedialog.h \ selectablelabel.h \ filestates.h \ - filestatuswidget.h + filestatuswidget.h \ + confirmcommentdialog.h SOURCES = main.cpp \ mainwindow.cpp \ hgtabwidget.cpp \ @@ -56,7 +57,8 @@ multichoicedialog.cpp \ selectablelabel.cpp \ filestates.cpp \ - filestatuswidget.cpp + filestatuswidget.cpp \ + confirmcommentdialog.cpp macx-* { SOURCES += common_osx.mm diff -r f9af5e93de0e -r f70ccc15c9d0 filestatuswidget.cpp --- a/filestatuswidget.cpp Wed Nov 24 19:57:30 2010 +0000 +++ b/filestatuswidget.cpp Wed Nov 24 22:24:55 2010 +0000 @@ -66,7 +66,7 @@ m_descriptions[FileStates::Unknown] = tr("These files are in your working folder but are not under version control.
" "Select a file and use Add to place it under version control or Ignore to remove it from this list."); - m_highlightExplanation = tr("Files highlighted in red " + m_highlightExplanation = tr("Files highlighted in red " "have appeared since your most recent commit or update."); for (int i = int(FileStates::FirstState);