annotate hgtabwidget.h @ 145:644bd31e8301

* Include the uncommitted item in general graph layout (in case it is not at the head, when other items will need to avoid it)
author Chris Cannam
date Wed, 01 Dec 2010 17:41:14 +0000
parents e6c6b88d19b9
children 2fef6b0dfbe8
rev   line source
Chris@57 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@57 2
Chris@57 3 /*
Chris@57 4 EasyMercurial
Chris@57 5
Chris@57 6 Based on HgExplorer by Jari Korhonen
Chris@57 7 Copyright (c) 2010 Jari Korhonen
Chris@57 8 Copyright (c) 2010 Chris Cannam
Chris@57 9 Copyright (c) 2010 Queen Mary, University of London
Chris@57 10
Chris@57 11 This program is free software; you can redistribute it and/or
Chris@57 12 modify it under the terms of the GNU General Public License as
Chris@57 13 published by the Free Software Foundation; either version 2 of the
Chris@57 14 License, or (at your option) any later version. See the file
Chris@57 15 COPYING included with this distribution for more information.
Chris@57 16 */
Chris@57 17
Chris@96 18 #ifndef HGTABWIDGET_H
Chris@96 19 #define HGTABWIDGET_H
jtkorhonen@0 20
Chris@43 21 #include "changeset.h"
jtkorhonen@0 22 #include "common.h"
Chris@92 23 #include "filestates.h"
jtkorhonen@0 24
Chris@50 25 #include <QMenu>
Chris@50 26 #include <QListWidget>
Chris@50 27 #include <QGroupBox>
Chris@50 28 #include <QVBoxLayout>
Chris@50 29 #include <QCheckBox>
Chris@50 30 #include <QLabel>
Chris@88 31 #include <QTabWidget>
Chris@86 32
Chris@88 33 class FileStatusWidget;
Chris@116 34 class HistoryWidget;
jtkorhonen@0 35
Chris@96 36 class HgTabWidget: public QTabWidget
jtkorhonen@0 37 {
jtkorhonen@0 38 Q_OBJECT
jtkorhonen@0 39
jtkorhonen@0 40 public:
Chris@96 41 HgTabWidget(QWidget *parent, QString remoteRepo, QString workFolderPath);
Chris@91 42
jtkorhonen@0 43 void updateWorkFolderFileList(QString fileList);
Chris@120 44
Chris@120 45 void setNewLog(QString hgLogList);
Chris@120 46 void addIncrementalLog(QString hgLogList);
Chris@120 47
jtkorhonen@0 48 void setWorkFolderAndRepoNames(QString workFolderPath, QString remoteRepoPath);
Chris@115 49 void setState(QString state);
jtkorhonen@0 50
Chris@145 51 void setCurrent(QStringList ids, bool showUncommittedChanges);
Chris@128 52
Chris@116 53 FileStates getFileStates() { return m_fileStates; }
Chris@90 54
Chris@90 55 bool canCommit() const;
Chris@109 56 bool canRevert() const;
Chris@92 57 bool canAdd() const;
Chris@92 58 bool canRemove() const;
Chris@95 59 bool canDoDiff() const;
Chris@95 60
Chris@95 61 QStringList getAllSelectedFiles() const;
Chris@103 62
Chris@95 63 QStringList getSelectedCommittableFiles() const;
Chris@103 64 QStringList getAllCommittableFiles() const;
Chris@103 65
Chris@109 66 QStringList getSelectedRevertableFiles() const;
Chris@109 67 QStringList getAllRevertableFiles() const;
Chris@109 68
Chris@95 69 QStringList getSelectedAddableFiles() const;
Chris@103 70 QStringList getAllAddableFiles() const;
Chris@103 71
Chris@95 72 QStringList getSelectedRemovableFiles() const;
Chris@103 73 QStringList getAllRemovableFiles() const;
Chris@95 74
Chris@95 75 signals:
Chris@95 76 void selectionChanged();
jtkorhonen@0 77
Chris@141 78 void commit();
Chris@141 79 void revert();
Chris@141 80 void diffWorkingFolder();
Chris@141 81
Chris@141 82 void updateTo(QString id);
Chris@141 83 void diffToPrevious(QString id);
Chris@141 84 void diffToCurrent(QString id);
Chris@141 85 void mergeFrom(QString id);
Chris@141 86 void tag(QString id);
Chris@141 87
Chris@94 88 public slots:
Chris@94 89 void clearSelections();
Chris@94 90
jtkorhonen@0 91 private:
Chris@116 92 FileStatusWidget *m_fileStatusWidget;
Chris@116 93 HistoryWidget *m_historyWidget;
Chris@116 94 FileStates m_fileStates;
jtkorhonen@0 95
Chris@91 96 Changesets parseChangeSets(QString changeSetsStr);
jtkorhonen@0 97 };
jtkorhonen@0 98
Chris@96 99 #endif // HGTABWIDGET_H